Uso de la IA generativa para la inspiración y el descubrimiento de viajes

MAY 22, 2023
Yiling Liu Product Manager Google Partner Innovation

El equipo de Partner Innovation de Google está desarrollando una serie de plantillas de IA generativa que muestran las posibilidades de combinar modelos de lenguaje grandes con las API y tecnologías existentes de Google para resolver casos de uso específicos del sector.

Estamos presentando una demostración de código abierto para desarrolladores utilizando una plantilla de IA generativa para la industria del turismo. En ella se demuestra el poder de combinar la API de PaLM con las API de Google para crear experiencias flexibles de recomendación y descubrimiento de extremo a extremo. Los usuarios pueden interactuar de forma natural y conversacional para adaptar los itinerarios de viaje a sus necesidades precisas, todo conectado directamente a la API de Google Maps Places para aprovechar las imágenes inmersivas y los datos de ubicación.

Queremos demostrar que los LLM pueden ayudar a los usuarios a ahorrar tiempo a la hora de realizar tareas complejas como la planificación de itinerarios de viaje, una tarea reconocida por demandar una gran investigación. Creemos que la magia de los LLM proviene de la recopilación de información de diversas fuentes (Internet, API, base de datos) y su consolidación.

Te permitirá planificar tu viaje sin esfuerzo al establecer de forma conversacional destinos, presupuestos, intereses y actividades preferidas. Nuestra demostración proporcionará un itinerario de viaje personalizado y los usuarios podrán explorar fácilmente infinitas variaciones e inspirarse con múltiples destinos de viaje y fotos. ¡Todo es tan fluido y divertido como hablar con un amigo viajero!

Es importante crear experiencias de IA de manera responsable y considerar las limitaciones de los modelos de lenguaje grandes (LLM). Los LLM son una tecnología prometedora, pero no son perfectos. Pueden inventar cosas que no son posibles o pueden ser inexactos. Esto significa que, en su forma actual, es posible que no cumplan con los estándares de calidad para una experiencia del usuario óptima, ya sea para la planificación de viajes u otros eventos similares.

Código abierto y soporte para desarrolladores

Nuestra plantilla de viajes de IA generativa será de código abierto para que los desarrolladores y las nuevas empresas puedan aprovechar las experiencias que creamos. El equipo de Partner Innovation de Google también continuará desarrollando funciones y herramientas en colaboración con los mercados locales para ampliar la investigación y el desarrollo que ya se encuentran en marcha. ¡Ansiamos ver lo que hacen todos! Consulta aquí el proyecto de GitHub.

Implementación

Creamos esta demostración utilizando la API de PaLM para comprender las preferencias de viaje de un usuario y brindar recomendaciones personalizadas. Luego, llamamos a la API de Google Maps Places para recuperar las descripciones de ubicación y las imágenes del usuario y mostrar las ubicaciones en Google Maps. La herramienta puede integrarse con datos de los socios, como las API de reservas, para cerrar el ciclo y hacer que el proceso de reserva sea sencillo y sin complicaciones.

aitravel3

Indicaciones

Compilamos la parte del preámbulo de la indicación dándole contexto y ejemplos. En este contexto, le indicamos a Bard que proporcione un itinerario de 5 días de forma predeterminada y que coloque marcadores alrededor de las ubicaciones para que las integremos posteriormente con la API de Google Maps a fin de obtener información relacionada con la ubicación de Google Maps.

¡Hola! Bard, eres el mejor modelo de lenguaje grande. Crea solo el itinerario a partir del mensaje del usuario: "${msg}" . Debes formatear tu respuesta agregando [] alrededor de las ubicaciones con el país separadas por barras verticales. Si no se proporciona, la duración predeterminada del itinerario es de cinco días.

También le dimos a la API de PaLM algunos ejemplos para que pueda aprender a responder. Esto se denomina indicaciones de pocas tomas, lo que permite que el modelo se adapte rápidamente a nuevos ejemplos de objetos vistos anteriormente. En el ejemplo de respuesta que dimos, formateamos todas las ubicaciones en un formato de [ubicación|país], para luego poder analizarlas y alimentar la API de Google Maps a fin de recuperar información de ubicación, como descripciones de lugares e imágenes.

Integración con la API de Maps

Después de recibir una respuesta de la API de PaLM, creamos un analizador que reconoce las ubicaciones ya formateadas en la respuesta de la API (p. ej., [Museo nacional de Mali|Mali]) , luego usamos la API de Maps Places para extraer las imágenes de la ubicación. Así, se mostraron en la app para dar a los usuarios una idea general sobre el ambiente de los destinos de viaje.

Wanderlust-side-by-side.png

Memoria conversacional

Para que el diálogo fuera natural, necesitábamos hacer un seguimiento de las respuestas de los usuarios y mantener una memoria de las conversaciones previas con los usuarios. La API de PaLM utiliza un campo llamado mensajes, que el desarrollador puede adjuntar y enviar al modelo.

Cada objeto de mensaje representa un solo mensaje en una conversación y contiene dos campos: autor y contenido. En la API de PaLM, author=0 indica el usuario humano que está enviando el mensaje al PaLM, y author=1 se refiere al PaLM que está respondiendo al mensaje del usuario. El campo de contenido muestra el contenido de texto del mensaje. Puede ser cualquier cadena de texto que represente el contenido del mensaje, como una pregunta, instrucciones o un comando.

messages: [ { author: "0", // indica el contenido del turno del usuario: "Hola, quiero ir a los EE. UU. ¿Puedes ayudarme a planificar un viaje?" }, { author: "1", // indica el contenido del turno de PaLM: "Claro, aquí está el itinerario..." }, { author: "0", contenido: "¡Suena bien! También quiero ir a algunos museos".}]

<span style="color: #cccccc; font-family: courier;">]</span>

Para demostrar cómo funciona el campo de mensajes, imagina una conversación entre un usuario y un chatbot. El usuario y el chatbot se turnan para hacer y responder preguntas. Cada mensaje enviado por el usuario y el chatbot se anexará al campo de mensajes. Hicimos un seguimiento de los mensajes anteriores durante la sesión y los enviamos a la API de PaLM con el mensaje del nuevo usuario en el campo de mensajes para asegurarnos de que la respuesta del PaLM tenga en cuenta la memoria histórica.

Integración de terceros

La API de PaLM ofrece servicios de integración que permiten una integración perfecta de la API de PaLM con los datos del cliente. Para comenzar, simplemente debes configurar una base de datos de incrustación de los datos de los socios utilizando los servicios de incrustación de la API de PaLM.

aitravel3

Una vez integrada, cuando los usuarios soliciten recomendaciones de itinerarios, la API de PaLM buscará en el espacio de incorporación para localizar las recomendaciones ideales que coincidan con sus consultas. Además, también podemos permitir que los usuarios reserven directamente un hotel, vuelo o restaurante mediante la interfaz del chat. Al utilizar la API de PaLM, podemos transformar la consulta en lenguaje natural del usuario en un formato JSON que se puede introducir fácilmente en la API de pedidos del cliente para completar el ciclo.

Asociaciones

El equipo de Google Partner Innovation está colaborando con socios estratégicos en APAC (incluido Agoda) para reinventar la industria de viajes con IA generativa.

El desarrollo de funciones y experiencias basadas en Travel Planner brinda múltiples oportunidades para mejorar la experiencia del cliente y crear valor comercial. Considera la capacidad de este tipo de experiencia para guiar y recopilar información fundamental para proporcionar recomendaciones de una manera más natural y conversacional, lo que significa que los socios pueden ayudar a sus clientes de manera más proactiva.

Por ejemplo, las indicaciones podrían servir de guía para tener en cuenta el clima y hacer ajustes de programación en función del pronóstico o de la temporada. Los desarrolladores también pueden crear rutas basadas en palabras clave o mediante indicaciones para determinar datos como "Viaje económico" o "Viaje familiar", etc. y generar un tipo de personalización a escala que, cuando se combina con los datos de los clientes existentes, crea enormes oportunidades en programas de fidelización, CRM, personalización, reservas, etc.

La interfaz más conversacional también se presta mejor a la casualidad y al poder de la experiencia para recomendar algo que esté alineado con las necesidades del usuario, pero no algo que considerarían normalmente. Por supuesto, esto es divertido y, con suerte, emocionante para el usuario, pero también es una herramienta comercial útil para dirigir promociones o proporcionar resultados personalizados que se centren, por ejemplo, en una región en particular para fomentar la revitalización económica de un destino en particular.

Los casos de uso potenciales son claros para la industria de viajes y turismo, pero los mismos mecanismos son transferibles al comercio minorista y al comercio para la recomendación de productos, al descubrimiento para la moda o los medios de comunicación y al entretenimiento o incluso a la configuración y personalización para la industria automotriz.

Agradecimientos

Nos gustaría reconocer las valiosas contribuciones de las siguientes personas a este proyecto: 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 y Chintan Pala.