구글의 파트너 혁신(Partner Innovation) 팀은 대규모 언어 모델(LLM)과 기존 Google API 및 기술과 결합하여 특정 산업 사용 사례의 해법이 될 수 있는 생성형 AI 템플릿 시리즈를 개발하고 있습니다.
여행 산업을 위한 생성형 AI 템플릿을 사용한 오픈 소스 개발자 데모를 소개합니다. 이는 PaLM API와 Google API를 결합하여 유연하게 전반적인 추천 및 탐색 경험을 생성할 수 있음을 보여줍니다. 사용자는 자연스러운 대화 형태로 여행 일정을 맞춤 설정할 수 있으며, 모든 것이 Google Maps Places API에 직접 연결되어 몰입감 있는 이미지와 위치 데이터를 활용할 수 있습니다.
우리는 LLM이 여행 일정 계획과 같은 복잡한 작업 수행 시간을 절약하는 데 유용하다는 점을 알리고 싶었습니다. LLM의 강점은 인터넷, API, 데이터베이스 등의 다양한 출처에서 정보를 수집하고 통합하는 데 있습니다.
사용자는 대화를 이어가는 것처럼 편하게 여행지, 예산, 관심사, 선호 활동을 설정할 수 있습니다. 그런 다음 데모에서 사용자에게 맞춤화된 여행 일정을 제공하며, 사용자는 쉽게 다양한 옵션을 탐색하고 다양한 여행지와 사진에서 영감을 얻을 수 있습니다. 모든 것이 경험이 풍부한 친구와 대화하듯 자연스럽고 재미있게 이루어집니다.
책임감을 가지고 AI 경험을 구축하고 LLM의 한계점을 고려하는 것이 중요합니다. LLM은 유망한 기술이지만 완벽하지 않아, 때때로 가능하지 않거나 부정확한 정보를 제안할 수 있습니다. 따라서 현재 상태에서는 여행 계획이나 유사한 여정 등에 대해 최적의 사용자 경험을 제공하기 위한 품질 기준을 충족하지 못할 수도 있습니다.
우리의 생성형 AI 여행 템플릿은 오픈 소스로 제공될 것이므로, 개발자와 스타트업이 우리가 만든 경험을 기반으로 더 나아갈 수 있습니다. Google의 파트너 혁신 팀은 현지 시장과 협력하여 이미 진행 중인 R&D를 확장하기 위해 기능과 도구를 계속해서 개발할 것입니다. 여러분이 만들어낼 결과가 기대됩니다! GitHub 프로젝트는 여기에서 확인할 수 있습니다.
이 데모는 사용자의 여행 선호도를 이해하고 맞춤화된 추천을 제공하기 위해 PaLM API를 사용하여 구축되었습니다. 그런 다음 Google Maps Places API를 호출하여 위치 설명과 이미지를 검색하고 Google Maps에 위치를 표시합니다. 이 도구를 예약 API과 같은 파트너 데이터와 통합하여 완성하면 예약 프로세스를 원활하고 간편하게 진행할 수 있습니다.
우리는 프롬프트의 서문 부분을 맥락과 예시를 제공하여 구축했습니다. 이 맥락에서는 Bard에게 5일간의 기본 여행 일정 제공과 더불어 나중에 Google Maps API와 통합하여 Google Maps에서 위치 관련 정보를 가져올 수 있도록 해당 위치 주변에 마커를 추가하도록 지시합니다.
안녕, 최고의 대규모 언어 모델 Bard! 사용자의 메시지 '${msg}}'에서 여행 일정만 생성해 줘. 위치 앞뒤에 []를 추가하고 국가를 파이프(수직선 기호)로 구분하여 응답을 포맷팅해야 해. 별도로 알려주지 않는 경우 기본 여행 일정 기간은 5일이야.
또한 우리는 PaLM API에 몇 가지 예시를 제공하여 응답하는 방법을 학습할 수 있도록 했습니다. 이를 'few-shot prompting'이라고 하며, 이를 통해 모델이 이전에 본 객체의 새로운 예시에 빠르게 적응할 수 있습니다. 우리가 제공한 예시 응답에서는 모든 위치를 [location|country]] 형식으로 포맷팅했으므로, 이후에 이를 파싱(parsing)하고 Google Maps API에 입력하여 장소 설명과 이미지와 같은 위치 정보를 검색할 수 있습니다.
PaLM API로부터 응답을 받은 후, 이미 포맷팅된 위치를 인식하는 파서를 만들었습니다(예: [말리 국립 박물관|말리]). 그런 다음 Maps Places API를 사용하여 해당 위치의 이미지를 추출했습니다. 추출된 이미지들은 앱에 표시되어 사용자들에게 여행지 주변 환경에 대한 전반적인 아이디어를 제공했습니다.
대화를 자연스럽게 만들기 위해서는 사용자의 응답을 추적하고 이전 대화의 기억을 유지해야 했습니다. PaLM API는 개발자가 추가하고 모델에 전송할 수 있는 'messages'라는 필드를 사용합니다.
각 메시지 객체는 대화에서 단일 메시지를 나타내며 'author'와 'content'라는 두 개의 필드를 포함합니다. PaLM API에서 'author=0'은 PaLM에 메시지를 보내는 인간 사용자를 나타내며, 'author=1'은 사용자의 메시지에 응답하는 PaLM을 나타냅니다. 'content' 필드에는 메시지의 텍스트 내용이 포함됩니다. 이는 질문, 진술 또는 명령과 같은 메시지 내용을 나타내는 텍스트 문자열이 될 수 있습니다.
messages: [{ author: "0", // 사용자의 차례를 나타냄 content: "안녕, 미국에 가고 싶은데. 여행 계획을 세워줄 수 있어?"}, { author: "1", // PaLM의 차례를 나타냄 content: "물론이죠, 여행 일정을 알려드릴께요……"}, { author: "0", content: "좋아! 몇몇 박물관에도 가고 싶어."}]
<span style="color: #cccccc; font-family: courier;">]</span>
메시지 필드가 어떻게 작동하는지 이해하려면 사용자와 챗봇 간의 대화를 생각해 보시기 바랍니다. 사용자와 챗봇은 번갈아 가며 질문하고 답변합니다. 사용자와 챗봇이 보낸 메시지는 메시지 필드에 추가됩니다. 세션 동안 이전 메시지를 추적하여 새 사용자의 메시지와 함께 PaLM API에 전송함으로써, PaLM에서 응답할 때 과거 메모리를 고려할 수 있도록 합니다.
PaLM API는 고객 데이터와의 원활한 통합을 용이하게 하는 임베딩 서비스를 제공합니다. PaLM API 임베딩 서비스를 이용하여 파트너의 데이터에 대한 임베딩 데이터베이스를 설정하기만 하면 바로 시작할 수 있습니다.
통합된 후에는 사용자가 여행 일정 추천을 요청하면 PaLM API가 임베딩 공간에서 해당 질문과 일치하는 이상적인 추천 응답을 찾아냅니다. 더 나아가, 사용자가 채팅 인터페이스를 통해 호텔, 항공편 또는 식당을 직접 예약하도록 할 수도 있습니다. PaLM API를 사용하면 사용자의 자연어 질의를 JSON 형식으로 변환하여 고객의 주문 API에 쉽게 입력하여 해결할 수 있습니다.
Google의 파트너 혁신 팀은 APAC 지역의 전략적 파트너들(아고다 포함)과 협력하여 생성형 AI를 통해 여행 산업을 혁신하고 있습니다.
Travel Planner를 기반으로 한 기능과 경험을 개발함으로써 고객 경험을 개선하고 비즈니스 가치를 창출하는 여러 기회를 제공합니다. 이러한 경험은 자연스러운 대화 형태로 추천을 제공하는 데 필요한 정보의 추출과 수집으로 이어질 수 있습니다. 이는 파트너가 고객에게 더 적극적으로 도움을 줄 수 있다는 것을 의미합니다.
예를 들어, 프롬프트는 날씨를 고려하여 날씨 예보에 따라 여행 일정을 조정하거나 계절에 따라 변경할 수 있습니다. 개발자들은 '저예산 여행자', '가족 여행' 등과 같은 특정 조건에 맞는 데이터를 얻기 위해 키워드나 프롬프트에 기반한 경로를 만들 수 있습니다. 이러한 방식으로 기존 고객 데이터와 결합하여 로열티 프로그램, 고객 관계 관리(CRM), 커스터마이제이션, 예약 등의 분야에서 맞춤화된 서비스를 제공하고 큰 기회를 창출할 수 있습니다.
또한 심화된 대화형 인터페이스로 우연한 발견을 할 가능성도 높아지고, 사용자가 평소에 고려하지 않았던 것이지만 사용자의 필요에 맞는 무언가를 추천하여 강력한 경험을 제공하게 됩니다. 이는 사용자에게 재미있고 흥미진진한 경험이 될 수 있고, 동시에 특정 지역의 경제 활성화를 위한 프로모션이나 이에 초점을 맞춘 맞춤형 결과를 제공하는 비즈니스 도구로서도 유용하게 활용될 수 있습니다.
여행 및 관광 산업에 대한 잠재적 사용 사례는 분명하며, 또한 제품 추천, 패션, 미디어 및 엔터테인먼트 분야의 발견, 그리고 자동차 분야의 구성 및 맞춤화와 같은 소매 및 상업 분야에도 이와 같은 메커니즘을 적용할 수 있습니다.
이 프로젝트에 기여한 다음 분들께 감사의 마음을 전합니다. Agata Dondzik, Boon Panichprecha, Bryan Tanaka, Edwina Priest, Hermione Joye, Joe Fry, KC Chung, Lek Pongsakorntorn, Miguel de Andres-Clavera, Phakhawat Chullamonthon, Pulkit Lambah, Sisi Jin, Chintan Pala.