Esta página explica como criar um app do Google Chat que possa fazer as duas coisas: entender e responder com linguagem natural usando Dialogflow (em inglês). Este guia usa Dialogflow CX, que tem uma integração direta com o Google Chat. Você também pode usar Dialogflow ES para criar uma App Dialogflow ES do Google Chat seguindo as Google Chat: Dialogflow ES guia.
Por exemplo, considere um app do Chat que ajuda pessoas a alugar carros. Um usuário escreve "Quero alugar um carro". A O app do Chat pode responder com uma pergunta como: "Onde você gostaria de pegar o veículo?" que inicia um processo conversa com o usuário em que o app do Chat entende e responde com fala humana ao reservar o aluguel do carro.
Esse é apenas um exemplo. Os apps do Dialogflow Chat são úteis em todas tipos de interações. Se ela exige fala humana natural, ela exige um app Dialogflow Chat. A pré-criados ajudam a começar rapidamente e mostram o que o Dialogflow é capaz de fazer, como:
- Reservar voos
- Agendar consultas médicas
- Pedir comida para entrega
- Responder a perguntas sobre um catálogo de produtos de varejo, por exemplo, se os itens estão disponíveis em outras cores
-
Figura 2. Teste o agente no Dialogflow CX para garantir que a lógica e a configuração dele funcionem conforme o esperado. O diagrama mostra um conjunto sequencial de páginas com temas relacionados a etapas específicas da conversa, como definir um local de embarque e devolução de um carro alugado, e configura a lógica que as conecta. A conversa é testada em um simulador. -
Figura 3. Como configurar um app do Chat para processar respostas usando o agente do Dialogflow CX na página de configuração da API Chat no console do Google Cloud. -
Figura 4. Conversar sobre como reservar um carro alugado com o app Dialogflow Chat no Google Chat.
Objetivos
- Configurar o ambiente.
- Criar e implantar um agente do Dialogflow CX.
- Crie e implante um app do Chat com a tecnologia Agente do Dialogflow CX.
- Teste o app do Chat.
Pré-requisitos
- Uma empresa Conta do Google Workspace com acesso a Google Chat.
- Ter um projeto do Google Cloud com o faturamento ativado. Para verificar se um projeto atual tem o faturamento ativado, consulte Verificar a status de faturamento dos seus projetos. Para criar um projeto e configurar o faturamento, consulte Crie um projeto do Google Cloud.
Arquitetura
O diagrama a seguir mostra a arquitetura App do Chat criado com o Dialogflow:
No diagrama anterior, um usuário interagindo com uma instância do Dialogflow O app do Chat tem o seguinte fluxo de informações:
- Um usuário envia uma mensagem no Chat para App do Chat, seja em mensagem direta ou em uma Espaço do Chat.
- Um agente virtual do Dialogflow, residente no Google Cloud, recebe e processa a mensagem para produzir uma resposta.
- Opcionalmente, usando um Webhook do Dialogflow; o agente do Dialogflow pode interagir com serviços externos de terceiros, como como um sistema de gerenciamento de projetos ou uma ferramenta de emissão de tíquetes.
- O agente do Dialogflow envia uma resposta de volta para o Serviço de app do Chat no Chat.
- A resposta é entregue ao espaço do Chat.
Configure o ambiente
Antes de usar as APIs do Google, você precisa ativá-las em um projeto do Google Cloud. É possível ativar uma ou mais APIs em um único projeto do Google Cloud.No console do Google Cloud, ative as APIs Google Chat e Dialogflow.
Confirme se você está ativando as APIs projeto do Google Cloud e clique em Próxima.
Confirme se você está ativando as APIs corretas e clique em Ativar.
Criar um agente do Dialogflow CX
Um Agente do Dialogflow CX é um agente virtual que lida com conversas simultâneas com os usuários finais. É um módulo de compreensão de linguagem natural que entende as nuances da linguagem humana. O Dialogflow traduz textos do usuário final durante uma conversa com dados estruturados que seus apps e serviços conseguem entender. Você projeta e cria um agente do Dialogflow para lidar com os tipos de conversas necessárias para o sistema.
Um agente do Dialogflow é como um agente humano de call center. Você treina os dois para lidar com cenários esperados de conversas, e o treinamento não precisa ser explícito demais.
Veja como criar o agente do Dialogflow CX:
Abra o console do Dialogflow CX. Clique em Cardápio > Dialogflow CX.
Escolha um projeto do Google Cloud. Para encontrar seu projeto, pode ser necessário clique em Todas e depois pesquise o nome.
Agora você tem a opção de escolher um agente pré-criado ou criar o seu próprio. Se você preferir conhecer o agente personalização em detalhes mais tarde, escolha uma das pré-criados, que também são úteis para saber o que os agentes podem fazer.
Para escolher um agente pré-criado, siga estas etapas:
- Clique em Usar agentes pré-criados.
Selecione um agente pré-criado. Para este guia, selecione Viagem: aluguel de carros.
Os agentes são classificados como iniciantes, intermediário ou avançado, com base em quantos atributos o agente usa e da sofisticação da lógica de conversa. Escolher um de nível intermediário ou avançado podem exigir APIs específicas personalizações e configurações, incluindo a ativação de recursos e APIs em console do Google Cloud.
Clique em Importar como agente.
Para criar seu próprio agente, siga estas etapas:
- Clique em Criar agente.
- Selecione Gerar automaticamente para criar um agente do repositório de dados ou selecione Criar seus próprios agentes para criar outros tipos de agentes.
Para acessar um tutorial detalhado do processo de criação do agente, consulte Crie um agente do Dialogflow CX.
Defina as configurações básicas do agente:
- Em Nome de exibição, digite um nome de exibição.
- Selecione um local. Se você quiser mudar configurações de localização Clique em Editar.
- Selecione o fuso horário.
- Selecione o idioma padrão do agente. Não é possível alterar o idioma padrão de um agente após a criação.
Clique em Criar. o Dialogflow CX começa a criar o agente e depois exibe o fluxo inicial padrão do agente.
Se quiser, personalize o agente. Para um tutorial detalhado, o agente processo de personalização, consulte Crie um agente do Dialogflow CX.
Como prática recomendada, teste o agente:
- Clique em Testar agente.
- Selecione Agente de teste no ambiente.
- Em "Ambiente", selecione Rascunho.
- No fluxo, selecione Fluxo inicial padrão.
- Em "Página", selecione Página inicial.
- Na barra de escrita Talk to agent, digite
Hello
e pressione Enter. O agente responde se apresentando. - Conclua o teste usando o exemplo de conversa de teste.
O agente do Dialogflow CX foi criado. Volte para o console do Dialogflow CX. Clique em Menu > Dialogflow CX.
.Em Agentes, clique em > Copiar nome. Salve esse nome, como que você usa ao configurar o app do Chat.
Criar um app do Chat e conectá-lo ao agente do Dialogflow
Depois de criar um agente do Dialogflow CX, siga estas etapas para transformá-lo em um App do Chat:
No console do Google Cloud, acesse a API Google Chat. Pesquise "API Google Chat" e Clique em API Google Chat e em Gerenciar.
Clique em Configuração e configure o app do Chat:
- Em Nome do app, digite
Dialogflow App
. - No URL do avatar, digite
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
- Em Descrição, digite
Responds to real human conversation
. - Em Funcionalidade, selecione Receber mensagens individuais e Participar de espaços e conversas em grupo
- Em Configurações de conexão, selecione Dialogflow.
- Em Configurações do Dialogflow, selecione Dialogflow CX.
- Em Agent or Environment resource name, cole o agente do Dialogflow CX que você copiou no fim Crie um agente do Dialogflow CX.
- Disponibilizar este app do Chat para pessoas e grupos específicos no seu domínio e digite o endereço de e-mail.
- Em Registros, selecione Registrar erros no Logging.
- Em Nome do app, digite
Clique em Salvar.
O app do Chat está pronto para receber e responder mensagens no Chat.
Teste o app do Chat
Envie uma mensagem para testar o app Dialogflow CX Chat Google Chat
Abra o Google Chat usando a conta do Google Workspace que você fornecido quando você se adicionou como trusted tester.
- Clique em Nova conversa.
- No campo Adicionar uma ou mais pessoas, digite o nome da sua App Chat.
Selecione seu app do Chat nos resultados. Um direto a mensagem será aberta.
Na nova mensagem direta com o app, digite
Hello
e pressioneenter
.O app Dialogflow Chat responde apresentando por conta própria.
- Conclua o teste exemplo de conversa de teste.
Exemplo de conversa de teste
Para testar o app Dialogflow CX Chat no Use o console do Dialogflow CX ou o Google Chat para conversar sobre isso a seguir. A explicação ajuda você a entender como o agente do Dialogflow CX interpreta linguagem natural do usuário e produz sua própria resposta de linguagem natural cada etapa da conversa. Este exemplo de conversa é baseado agente pré-criado chamada Viagens: aluguel de carros.
Dialog | Explicação |
---|---|
Usuário final: Olá, Agente: Olá! Sou o agente virtual de aluguel de carros. Eu consigo ajudar você a fazer uma reserva de aluguel de carro novo. Como posso ajudar? você hoje? |
|
Usuário final:quero alugar um carro. Agente:onde você quer pegar o veículo? |
|
Usuário final: Las Vegas Agente: Ok, sua retirada será em Las Vegas. Agente:seu local de entrega é diferente do local de retirada? |
|
Usuário final:sim. Vou deixar o carro em Los Angeles. Agente: Ok, o desembarque será em Los Angeles. Agente: Em que data e hora você quer retirar o veículo? |
|
Usuário final:quero pegar o carro no dia 5 de março ao meio-dia. Agente: Em que data e hora você quer entregar o veículo? |
|
Usuário final:15 de março ao meio-dia. Agente: Para confirmar: Você vai buscar o veículo em Las Vegas 2024-03-05 12:00:00 e deixar em Los Angeles 15-03-2024 12:00:00 O que você acha? |
|
Usuário final: sim, obrigado. Agente: Ótimo! Agora, vamos escolher um veículo. Agente: Você quer uma opção econômica ou de luxo veículo? |
|
Usuário final:economia, por favor. Agente: Você quer o carro ou o caminhão Cymbal? |
|
Usuário final:Cymbal Truck. Agente: O caminhão Cymbal custa US $50,33 por dia. Ele acomoda quatro pessoas e vem com rádio AM/FM. Quer prosseguir para o pagamento? Usuário final:sim. |
|
Agente: Qual tipo de cartão você vai usar? Usuário final:Altostrat Agente: Insira o número do cartão. Usuário final:1234 1234 1234 1234 Agente: Qual é o nome no cartão? Usuário final: Charlie Agente: Qual é o endereço de faturamento? Usuário final: 1800 Amphibious Blvd. Mountain View, CA Agente: Qual é o CEP de faturamento? Usuário final: 94045 Agente:você vai escolher o carro Cymbal em Las Vegas, 2024-03-05 12:00:00 e deixando para lá, 2024-03-15 12:00:00. O total desta viagem será US$ 175,38. Agente: Agradecemos o aluguel. Tenha um ótimo dia! |
|
Enviar mensagens de cartão do Dialogflow
O Dialogflow pode responder com text ou card. Para responder com um cartão especifique-a como uma payload personalizado no fulfillment.
O JSON a seguir mostra como enviar uma mensagem de card como um payload personalizado no processamento do pedido:
json
{
'cardsV2': [{
'cardId': 'createCardMessage',
'card': {
'header': {
'title': 'A card message!',
'subtitle': 'Sent from Dialogflow',
'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
'imageType': 'CIRCLE'
},
'sections': [
{
'widgets': [
{
'buttonList': {
'buttons': [
{
'text': 'Read the docs!',
'onClick': {
'openLink': {
'url': 'https://developers.google.com/workspace/chat'
}
}
}
]
}
}
]
}
]
}
}]
}
Limites e considerações
- Eventos de interação do chat
têm suporte limitado e algumas considerações:
- O seguinte
tipos de eventos de interação
têm suporte:
MESSAGE
ADDED_TO_SPACE
CARD_CLICKED
- Para eventos
MESSAGE
ouADDED_TO_SPACE
, a entrada da consulta enviada ao O agente do Dialogflow corresponde ao valor do campoargumentText
no a mensagem do Chat. Se a mensagem incluir um comando de barra, o valor o campotext
é usado. - Para eventos
CARD_CLICKED
, a entrada da consulta enviada ao agente do Dialogflow é formatado comoCARD_CLICKED.functionName
, em quefunctionName
corresponde ao valor do campofunction
da Objeto Action anexado ao elemento interativo do card (como um botão). - O payload completo do JSON de cada evento de interação do Chat
é enviada ao Dialogflow como payload personalizado no parâmetro de consulta;
podem ser acessados
Webhook do Dialogflow
consultando o valor do campo
WebhookRequest.payload
.
- O seguinte
tipos de eventos de interação
têm suporte:
- Considerações para responder a
comandos de barra e
como receber dados de cards ou caixas de diálogo:
- Quando os apps do Dialogflow Chat recebem uma mensagem com uma barra
a entrada da consulta vai conter apenas o valor do campo
text
. O campotext
começa com o nome do comando de barra (por exemplo,/command
), que pode ser usado para configurar a intent do agente do Dialogflow para detectar um comando de barra. - Se o agente do Dialogflow precisar processar a Payload JSON do evento de interação do chat: ele pode fazer isso usando Webhook do Dialogflow para inspecionar o payload personalizado no parâmetro de consulta.
- Para exibir uma caixa de diálogo do
agente do Dialogflow, responda com um único payload JSON personalizado que
inclui uma mensagem contendo um
DIALOG
. resposta à ação. - Para processar dados inseridos em cartões, o agente do Dialogflow pode detectar
intents que começam com o texto
CARD_CLICKED
e respondem com uma que contém um único payload JSON personalizado action.
- Quando os apps do Dialogflow Chat recebem uma mensagem com uma barra
a entrada da consulta vai conter apenas o valor do campo
- Visualizações de links não são compatíveis.
- Se o agente do Dialogflow responder com apenas uma mensagem, ela será enviada
é enviada ao Google Chat de maneira síncrona. Se o agente do Dialogflow responder
com várias mensagens, todas serão enviadas para o Chat
de forma assíncrona, chamando o
create
método no recursospaces.messages
na API Chat uma vez para cada mensagem. - Ao usar a integração do Dialogflow CX com o Chat, o agente do Dialogflow e o app do Chat precisam estar configurados no mesmo projeto do Google Cloud. Se você precisar configurar o Dialogflow e Chat em diferentes projetos do Cloud, será possível configurar um servidor intermediário para facilitar a conexão. Para saber como, ver isso Exemplo de integração do Chat para o Dialogflow CX no GitHub.
Resolver problemas
Quando um app ou card retornar um erro, o A interface do chat mostra a mensagem "Algo deu errado". ou "Não foi possível processar sua solicitação". Às vezes, a interface do Chat não exibe nenhuma mensagem de erro, mas o app do Chat ou produz um resultado inesperado; por exemplo, uma mensagem de cartão pode não aparecer.
Embora uma mensagem de erro possa não aparecer na interface do Chat, mensagens de erro descritivas e dados de registro estão disponíveis para ajudar você a corrigir os erros quando a geração de registros de erros nos apps do Chat está ativada. Para receber ajuda com a visualização, depurar e corrigir erros, consulte Resolver problemas e corrigir erros do Google Chat.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelo recursos usados neste tutorial, recomendamos que você exclua os do Google Cloud.
- No console do Google Cloud, acesse a página Gerenciar recursos. Clique em Cardápio > IAM e Administrador > Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
- Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo o projeto.
Temas relacionados
- O Dialogflow CX usa uma
máquina de estado
abordagem de design de agentes do Dialogflow, oferecendo informações claras e explícitas
controle sobre uma conversa, uma melhor experiência do usuário final e um
desenvolvimento de software. Ao criar um Dialogflow
Chat, recomendamos o uso do Dialogflow CX.
- Para saber mais sobre como criar e configurar agentes, consulte Agentes do Dialogflow CX.
- Para um tutorial detalhado sobre como criar e configurar agentes, consulte Crie um agente do Dialogflow CX.
- Criar apps para o Google Chat com o Gemini. Codelab: um exemplo de como criar dados do Dialogflow CX agente de loja, consulte o app Chat de conhecimento o codelab
- Criar apps para o Google Chat com o Gemini. Codelab: um exemplo de como criar um Dialogflow CX agente de conversação, consulte o feedback do app do Chat do codelab
- Dialogflow ES (em inglês) é outra maneira de usar o Dialogflow com um app do Chat.