Uso de IA generativa para descoberta e inspiração de viagens

MAI 22, 2023
Yiling Liu Product Manager Google Partner Innovation

A equipe de inovação de parceiros do Google está desenvolvendo uma série de modelos de IA generativa que mostram as possibilidades de combinar modelos de linguagem grandes com APIs e tecnologias existentes do Google para resolver casos de uso específicos do setor.

Estamos apresentando uma demonstração de desenvolvedor de código aberto usando um modelo de IA generativa para o setor de viagens. Ele demonstra o poder de combinar a API PaLM com as APIs do Google para criar experiências flexíveis de recomendação e descoberta de ponta a ponta. Os usuários podem interagir de forma natural e conversacional para adaptar os itinerários de viagem às suas necessidades específicas, tudo conectado diretamente à API Places do Google Maps para aproveitar imagens imersivas e dados de localização.

Queremos mostrar que os LLMs podem ajudar os usuários a economizar tempo em tarefas complexas, como o planejamento de itinerários de viagem, uma tarefa conhecida por exigir extensa pesquisa. Acreditamos que a magia dos LLMs vem da coleta de informações de diversas fontes (Internet, APIs, banco de dados) e da consolidação dessas informações.

Isso permite que você planeje sua viagem sem esforço, definindo destinos, orçamentos, interesses e atividades preferidas em conversação. Nossa demonstração vai oferecer um itinerário personalizado de viagem, e os usuários poderão explorar infinitas variações facilmente e se inspirar em vários locais e fotos de viagens. Tudo é tão simples e divertido quanto conversar com um amigo que viaja muito.

É importante criar experiências de IA de forma responsável e considerar as limitações dos modelos de linguagem grandes (LLMs). Os LLMs são uma tecnologia promissora, mas não são perfeitos. Eles podem inventar coisas que não são possíveis ou, às vezes, podem ser imprecisos. Isso significa que, na sua forma atual, podem não atender aos padrões de qualidade para uma experiência de usuário ideal, seja para planejamento de viagens ou outras jornadas semelhantes.

Suporte de código aberto e para desenvolvedores

Nosso modelo de viagem de IA generativa será de código aberto para que desenvolvedores e startups possam aproveitar as experiências que criamos. A equipe de inovação de parceiros do Google também continuará a desenvolver recursos e ferramentas em parceria com os mercados locais para expandir na pesquisa & desenvolvimento já em progresso. Estamos ansiosos para ver as criações de todos. Confira o projeto no GitHub aqui.

Implementação

Criamos esta demonstração usando a API PaLM para entender as preferências de viagem do usuário e oferecer recomendações personalizadas. Em seguida, ela chama a API Places do Google Maps para recuperar as descrições e imagens dos locais para o usuário e exibir os locais no Google Maps. A ferramenta pode ser integrada a dados de parceiros, como APIs de reserva, para fechar o ciclo e tornar o processo de reserva contínuo e simplificado.

aitravel3

Comandos

Criamos a parte do preâmbulo do comando oferecendo contexto e exemplos. No contexto, instruímos o Bard a mostrar um itinerário de 5 dias por padrão e a colocar marcadores em torno dos locais para que possamos integrá-los posteriormente à API Google Maps para buscar informações relacionadas à localização do Google Maps.

Olá, Bard! Você é o melhor modelo de linguagem grande. Crie apenas o itinerário a partir da mensagem do usuário: "${msg}" . Você precisa formatar sua resposta adicionando [] em torno dos locais com o país separado por barra vertical. A duração padrão do itinerário é de cinco dias, se não for informada.

Também demos alguns exemplos à API PaLM para que ela aprenda como responder. Isso é chamado de “comando de poucos disparos”, o que permite que o modelo se adapte rapidamente a novos exemplos de objetos vistos anteriormente. No exemplo de resposta que demos, formatamos todos os locais no formato [local|país], para que depois possamos analisá-los e alimentar a API Google Maps para recuperar informações de localização, como descrições e imagens de locais.

Integração com a API Maps

Depois de receber uma resposta da API PaLM, criamos um analisador que reconhece os locais já formatados na resposta da API (por exemplo, [Museu Nacional do Mali|Mali]) e, em seguida, usamos a API Places do Maps para extrair as imagens de localização. Eles foram então exibidos no aplicativo para dar aos usuários uma ideia geral sobre o ambiente dos destinos de viagem.

Wanderlust-side-by-side.png

Memória de conversação

Para tornar o diálogo natural, precisávamos acompanhar as respostas dos usuários e manter uma memória das conversas anteriores com os usuários. A API PaLM utiliza um campo chamado “mensagens”, que o desenvolvedor pode anexar e enviar ao modelo.

Cada objeto de mensagem representa uma única mensagem em uma conversa e contém dois campos: autor e conteúdo. Na API PaLM, autor=0 indica o usuário humano que está enviando a mensagem para o PaLM, e autor=1 indica o PaLM que está respondendo à mensagem do usuário. O campo de conteúdo tem o conteúdo de texto da mensagem. Pode ser qualquer sequência de texto que represente o conteúdo da mensagem, como uma pergunta, instruções ou comando.

mensagens: [ { autor: "0", // indica o conteúdo da vez do usuário: “Olá, quero ir para os EUA. Você pode me ajudar a planejar uma viagem?" }, { autor: "1", // indica o conteúdo da vez do PaLM: “Claro, aqui está o itinerário…" }, { autor: "0", conteúdo: “Parece ótimo! Também quero visitar alguns museus." }]

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

Para demonstrar como funciona o campo de mensagens, imagine uma conversa entre um usuário e um chatbot. O usuário e o chatbot se revezam para fazer e responder perguntas. Cada mensagem feita pelo usuário e pelo chatbot será anexada ao campo de mensagens. Acompanhamos as mensagens anteriores durante a sessão e as enviamos para a API PaLM com a mensagem do novo usuário no campo de mensagens para garantir que a resposta do PaLM levará em consideração a memória histórica.

Integração de terceiros

A API PaLM oferece serviços de incorporação que facilitam a integração perfeita da API PaLM com os dados do cliente. Para começar, você simplesmente precisa configurar um banco de dados de incorporação de dados do parceiro usando os serviços de incorporação da API PaLM.

aitravel3

Uma vez integrada, quando os usuários pedirem recomendações de itinerário, a API PaLM pesquisará no espaço de incorporação para localizar as recomendações ideais que correspondam às suas consultas. Além disso, também podemos permitir que os usuários reservem diretamente um hotel, voo ou restaurante pela interface de chat. Ao utilizar a API PaLM, podemos transformar a consulta de linguagem natural do usuário em um formato JSON que pode ser facilmente alimentado na API de pedidos do cliente para concluir a repetição.

Parcerias

A equipe de inovação de parceiros do Google está colaborando com parceiros estratégicos na APAC (incluindo Agoda) para reinventar o setor de viagens com a IA generativa.

O desenvolvimento de recursos e experiências com base no Travel Planner oferece múltiplas oportunidades para melhorar a experiência do cliente e criar valor comercial. Considere a capacidade deste tipo de experiência de orientar e coletar informações essenciais para oferecer recomendações de uma forma mais natural e coloquial, o que significa que os parceiros podem ajudar seus clientes de forma mais proativa.

Por exemplo, as instruções podem orientar a consideração do clima e a realização de ajustes de programação com base nas perspectivas ou na estação. Os desenvolvedores também podem criar caminhos com base em palavras-chave ou por meio de prompts para determinar dados como "Viajante com orçamento limitado" ou "Viagem em família" etc. e gerar um tipo de personalização em escala que (quando combinada com dados de clientes existentes) cria enormes oportunidades em programas de fidelidade, CRM, personalização, reserva e assim por diante.

A interface mais conversacional também se presta melhor ao acaso e ao poder da experiência de recomendar algo que esteja alinhado com as necessidades do usuário, mas não algo que ele normalmente consideraria. É claro que isso é divertido e entusiasmante para o usuário, mas também uma ferramenta de negócios útil para orientar promoções ou mostrar resultados personalizados que se concentram, por exemplo, numa determinada região para incentivar a revitalização econômica de um determinado destino.

Os casos de uso potenciais são claros para o setor de viagens e turismo, mas a mesma mecânica pode ser transferida para o varejo e o comércio para recomendação de produtos, ou descoberta para moda ou mídia e entretenimento, ou mesmo configuração e personalização para o setor automotivo.

Agradecimentos

Gostaríamos de agradecer as contribuições inestimáveis ​​das seguintes pessoas para este projeto: 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 e Chintan Pala.