본문 바로가기

번역글

[AI] Uber, 대화형 AI 개발/테스트 위한 Plato 플랫폼을 오픈소스로 공개

 Google Dialogflow, Microsoft Bot Framework, Amazon Lex와 같은 툴은 과거보다 쉽게 AI를 개발할 수 있도록 지원하며, Uber의 개발자 역시 자체적인 개발 플랫폼을 통해 장벽을 없애려 하고 있다. Plato Research Dialog System이라 불리는 이 프로젝트는 16 GitHub에서 오픈소스로 공개되었다

 Uber AI 
연구진들은 블로그 포스팅을 통해 Plato가 대화형 AI 에이전트 구축, 교육, 배포를 위해 설계되어 데이터 과학자나 연구자들이 프로토타입과 시연 시스템에서 데이터를 수집할 수 있게 해준다고 설명했다. Plato는 명확하고 이해 가능한 구조로 설계로 되었으며 기존 딥러닝 및 모델 튜닝 최적화 프레임웍과도 통합되어 코드 작성의 필요성을 줄여준다

 Plato 
버전 0.1은 말하기, 텍스트, 구조화된 정보를 통한 상호작용을 지원하고, 각각의 대화형 에이전트는 사용자나 다른 에이전트, 데이터와 상호작용할 수 있다(Plato는 복수의 에이전트를 생성하고, 입출력 데이터를 각 에이전트에게 적절하게 전달하면서 대화를 추적한다). 또한 Plato는 모든 대화형 에이전트 구성 요소에 대해 사전에 훈련시킬 모델을 통합할 수 있으며,각 구성 요소는 상호 작용이나 데이터로부터 훈련 가능하다

 Plato
는 데이터 처리를 음성 인식, 언어 이해, 상태 추적(지금까지의 대화/작업에 대한 정보 집계), API 호출(데이터베이스 검색 등), 대화 정책(에이전트 응답에 대한 추상적 의미 생성), 언어 생성(추상적 의미를 텍스트로 변환), 음성 합성 등 7개 단계로 구분된 모듈 디자인을 통해 이 기능을 구현한다. Plato는 다양한 대화형 AI 아키텍처를 지원하며, 각 요소는 Uber Ludwig, Google TensorFlow, Facebook PyTorch 등 인기 있는 기계학습 라이브러리를 통해 훈련시킬 수 있다

Uber 블로그 설명 이미지

 확장성과 관련하여 Plato 사용자는 자신만의 아키텍쳐를 정의하고 파이썬 클래스 이름과 패키지 경로를 추가함으로써 자신만의 컴포넌트를 추가할 수 있고 모델의 초기화 파라미터를 정의할 수 있다. 모듈이 실행되어야하는 순서대로 나열되어있으면, Plato는 입력 및 출력 래핑, 모듈 연쇄 및 실행 (직렬 또는 병렬), 대화를 용이하게하는 등의 나머지 작업을 처리한다.

 데이터 로깅의 경우, Plato는 Dialogue Episode Recorder라는 구조에서 이벤트를 추적한다. 여기에는 이전 대화 상태, 처리된 actions, 현재 대화 상태 등에 대한 정보가 들어 있다. 심지어 정의된 카테고리에서 처리되지 않은 모든 것을 추적할 수있는 사용자 정의 필드가 있다.

"우리는 Plato가 Ludwig와 TensorFlow에서 PyTorch, Keras 및 학계 및 산업에서 대화형 AI 기술을 선도하는 기타 오픈 소스 프로젝트에 이르기까지 딥러닝 프레임 워크 전반에 걸쳐 대화형 에이전트를 보다 원활하게 훈련시킬 수 있다고 믿습니다." Uber AI 연구원인 Alexandros Papangelis, Yi-Chia Wang, Mahdi Namazifar 및 Chandra Khatri는 이야기 한다. "우리는 대화형 에이전트에게 레스토랑 정보를 요청하는 방법과 다른 에이전트에게 그러한 정보를 제공하는 방법을 쉽게 교육할 수 있도록 Plato를 활용합니다. 시간이 지나면 대화는 점점 더 자연스러워집니다. "

 Plato의 출시에 앞서 사용자가 코드 작성없이 AI 모델을 훈련시키고 테스트하게 해 주는 Google의 TensorFlow 프레임워크을 기반으로 만든 오픈 소스 "툴박스"인 루드비히 (Ludwig)가 나왔다. 지난 12월, Uber는 자체 운전차량, 사기 탐지 및 여행 예측을 지원하기 위해 개발자들이 내부적으로 사용해 온 Horovod를 도입했는데 이는 LF Deep Learning Foundation에 오픈 소스로 공개된 여러 대의 컴퓨터에서 분산 훈련을 위한 프레임워크이다

 

[원문] https://venturebeat.com/2019/07/16/uber-open-sources-plato-for-developing-and-testing-conversational-ai/

 

Uber open-sources Plato for developing and testing conversational AI

Uber AI (Uber's AI research division) has open-sourced Plato, a platform for developing and testing conversational AI agents.

venturebeat.com