Checkpoints
Create the Dialogflow agent
/ 20
Import the Dialogflow agent
/ 20
Set up fulfillment using Cloud Function
/ 40
Test the agent using Dialogflow simulator
/ 20
Como criar o fulfillment do agente virtual
GSP792
Visão geral
Neste laboratório, você continuará trabalhando no agente virtual Pigeon Travel que criou em "Como projetar fluxos de conversa para seu agente", adicionará contexto a ele e definirá o fulfillment para pesquisar e armazenar entradas de reservas no Firestore.
Conteúdo
Neste laboratório, você executará as seguintes tarefas:
- Criar uma coleção do Firestore
- Configurar o fulfillment como código do Cloud Functions para que o agente consiga pesquisar e mudar o nome na reserva
Configuração e requisitos
Antes de clicar no botão Start Lab
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
Confira os requisitos para concluir o laboratório:
- Acesso a um navegador de Internet padrão (recomendamos o Chrome).
- Tempo para concluir o laboratório---não se esqueça: depois de começar, não será possível pausar o laboratório.
Como iniciar seu laboratório e fazer login no console do Google Cloud
-
Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você vai encontrar o seguinte:
- O botão Abrir console do Google Cloud
- O tempo restante
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações, se forem necessárias
-
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer login em outra guia.
Dica: coloque as guias em janelas separadas lado a lado.
Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta. -
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
{{{user_0.username | "Nome de usuário"}}} Você também encontra o Nome de usuário no painel Detalhes do laboratório.
-
Clique em Seguinte.
-
Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.
{{{user_0.password | "Senha"}}} Você também encontra a Senha no painel Detalhes do laboratório.
-
Clique em Seguinte.
Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais. -
Acesse as próximas páginas:
- Aceite os Termos e Condições.
- Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
- Não se inscreva em testes gratuitos.
Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.
Tarefa 1: ativar a API
-
No console do Cloud acesse Menu de navegação () > APIs e serviços > Ativar APIs e serviços.
-
Clique em + Ativar APIs e serviços.
-
Pesquise Dialogflow.
-
Clique no bloco API Dialogflow. Se a API não estiver ativada, clique em Ativar.
-
Pesquise Função do Cloud.
-
Selecione API Cloud Function. Se ela já estiver ativada, clique em Gerenciar.
-
Clique em Desativar API.
Se precisar confirmar, clique em Desativar.
-
Selecione Ativar.
A opção para desativar a API aparece quando ela é ativada novamente.
Configurar permissões do IAM
-
No Menu de navegação (), acesse IAM e administrador > IAM.
-
Para editar as permissões do Agente de serviço do Google Cloud Functions, localize o agente na lista do IAM e selecione o ícone de lápis. A conta de serviço terá o domínio
@gcf-admin-robot.iam.gserviceaccount.com
. -
Se nenhuma conta de serviço aparecer, clique na caixa de seleção Incluir concessões do papel fornecidas pelo Google.
-
Clique em Adicionar outro papel na caixa de diálogo e selecione Artifact Registry > Leitor do Artifact Registry.
-
Clique em Salvar.
Tarefa 2: criar seu agente do Dialogflow
Chame-o de "pigeon-travel".
-
Acesse o Console do Dialogflow.
-
Clique no botão Fazer login com Google e selecione as credenciais que você usou para acessar este laboratório. Depois clique em Permitir.
-
Desmarque a caixa de seleção das preferências de e-mail e marque a dos Termos de Serviço. Clique em Aceitar.
-
No menu à esquerda, clique em Criar agente.
-
Adicione as informações do agente como descrito abaixo:
-
Nome do agente:
pigeon-travel
-
Fuso horário padrão:
America/Denver
- Projeto do Google: use o ID do projeto do laboratório
- Clique em Criar.
Clique em Verificar meu progresso para conferir o objetivo.
Tarefa 3: importar o agente do Dialogflow
No laboratório anterior, você criou e exportou um agente do Dialogflow. Agora você importará o agente para aprimorá-lo.
Um novo projeto de agente virtual será criado. Importe seu trabalho.
- Se você não tiver os arquivos exportados, use este:
- Faça o download do arquivo para sua estação de trabalho local.
-
Clique no ícone de engrenagem ao lado do nome do agente para ver as configurações.
-
Selecione a guia Exportar e importar.
-
Clique em Importar de arquivo Zip.
-
Clique em Selecionar arquivo e navegue até o arquivo ZIP que contém a configuração do seu agente virtual. Se preferir, arraste e solte o arquivo.
-
Digite a palavra IMPORTAR em letras maiúsculas para ativar o botão de importação e clique em Importar.
- Depois que a importação for concluída, clique em Concluído para fechar a janela de upload.
A configuração foi importada para seu novo projeto de agente.
Clique em Verificar meu progresso para conferir o objetivo.
Tarefa 4: configurar o fulfillment usando o Cloud Functions para pesquisar reservas no Firestore
Até agora, o agente conseguiu se comunicar com um cliente para receber informações, incluindo o número da reserva. No entanto, as informações coletadas não são verificadas ou gravadas para permitir uma ação posterior. Nesta seção, você definirá o fulfillment adicionando e implantando o código do arquivo Node.js como uma função do Cloud. Seu agente usará o código para pesquisar a reserva atual e fazer a alteração.
Configure o Firestore
-
No console, acesse Menu de navegação > Bancos de dados > Firestore.
-
Clique em Criar banco de dados.
-
Em Selecione o modo Firestore, escolha Modo nativo (recomendado) e clique em Continuar.
-
Para o local, selecione Multirregião e escolha nam5 (Estados Unidos) como a multirregião.
-
Clique em Criar banco de dados. Quando ele estiver pronto, você poderá criar uma nova coleção.
-
Clique em Iniciar coleção.
-
Preencha os detalhes para replicar os dados listados abaixo e depois clique em Salvar.
-
ID da coleção:
reservations
-
ID do documento:
100
-
Nome do campo:
fname
-
Tipo de campo:
string
-
Valor do campo:
Isabel
- Em seguida, clique no botão Adicionar um campo (+) para adicionar outro:
-
Nome do campo:
lname
-
Tipo de campo:
string
-
Valor do campo:
Costa
- Em seguida, clique no botão Adicionar um campo (+) para adicionar outro:
-
Nome do campo:
newname
-
Tipo de campo:
string
-
Valor do campo:
Você acabou de adicionar seu primeiro documento a uma coleção do Firestore.
Práticas recomendadas para IDs de documentos do Firestore
-
Evite IDs de documentos.
-
Evite usar / (barras) em IDs de documentos.
-
Não use IDs de documento que aumentam constantemente, como estes:
- Cliente1, Cliente2, Cliente3,…
- Produto 1, Produto 2, Produto 3,…
Esses IDs sequenciais podem resultar em pontos de acesso que afetam a latência.
Fulfillment do Dialogflow
-
Acesse o console do Diaglflow e clique em Fulfillment no menu à esquerda. Pode levar alguns minutos para os recursos serem provisionados.
-
Ao lado da opção Editor in-line, mova o controle deslizante para a posição Ativada à direita. Essa opção ativa o editor do Cloud Functions dentro do agente do Dialogflow.
-
Depois que o "Editor in-line" estiver ativado, você verá um modelo padrão na guia index.js.
-
Clique no botão Implantar no canto inferior direito. Isso pode levar alguns minutos.
-
Quando a implantação terminar, acesse o console do Google Cloud. No menu à esquerda, navegue até o Cloud Functions para confirmar que a função foi implantada.
Clique em Verificar meu progresso para conferir o objetivo.
-
Volte para a seção Fulfillment do console do Dialogflow e clique na guia index.js.
-
Veja que já existe um código inicial com funções para lidar com as intents padrão de boas-vindas e de fallback. Primeiro você adicionará as linhas abaixo para poder trabalhar com o Firestore.
Adicione o código a seguir acima da linha process.env.DEBUG = 'dialogflow:debug';
:
Adicione o bloco de código a seguir abaixo da linha process.env.DEBUG = 'dialogflow:debug';
:
- Agora adicione o código a seguir para enviar uma mensagem de erro ou alterar a reserva depois das funções do gerenciador para as intents de boas-vindas e de fallback.
Adicione o bloco de código a seguir abaixo da linha
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
:
- Altere
intentMap
para incluir uma entrada que gerencie o mapeamentoname.reservation-getname
na função que você acabou de adicionar:
O resultado será parecido com este:
- Na guia
package.json
verifique se ofirebase-admin
está definido como"^5.13.1"
:
-
Clique no botão Implantar para salvar e implantar o código.
-
Clique em Intents no menu à esquerda, acesse
name.reservation-getname
dentro da intentname.reservation
e navegue até Fulfillment. Clique no botão Ativar chamada de webhook da intent para ativá-la. Salve a intent. -
Faça o teste no simulador com a pergunta: change name on booking?
Você verá uma resposta padrão, como: "Sure I can help you to change your name on the reservation. Can I have your first name?".
-
Tente inserir algum nome de usuário.
-
Tente digitar 100 quando receber a resposta padrão que pergunta o número da reserva.
-
Depois insira o novo nome da reserva de exemplo: Kelly.
-
Quando terminar, você receberá uma resposta padrão: Thank you dylan. I have changed the name on reservation number 100 to be Kelly.
-
É possível confirmar isso depois no Console do Cloud usando o menu esquerdo e navegando até Firestore > Dados.
Você verá a entrada da alteração do nome. Note que um novo par de chave-valor foi adicionado. Essa informação indica o nome original e o novo.
-
Examine os registros para erros de código no console Dialogflow. No canto inferior esquerdo da seção Fulfillment, clique em Exibir registros de execução no console do Google Cloud para conferir os registros.
-
Acesse Menu de navegação > Operações > Geração de registros para verificar se há algum erro.
-
Na Análise de registros, selecione Função do Cloud > dialogflowFirebaseFulfillment. Aqui é possível verificar todos os registros relacionados.
Como alternativa, acesse Menu de navegação > Cloud Functions. Clique em REGISTROS na função que você criou para exibir os registros.
Clique em Verificar meu progresso para conferir o objetivo.
Tarefa 5: exportar seu código (opcional)
Exporte seu trabalho para usá-lo no próximo laboratório. Clique na guia Origem do Cloud Functions e role para baixo. Você verá o botão Fazer download do arquivo zip.
Exporte seu agente
Exporte seu agente como um arquivo ZIP para importá-lo depois, quando começar o próximo laboratório. Dessa forma, você poderá reutilizar as intents e entidades que já configurou.
-
Clique no ícone de engrenagem ⚙ ao lado do nome do agente no menu esquerdo para ver as configurações.
-
Na página de configurações, acesse a guia Export and Import.
-
Clique em Exportar como arquivo Zip. Seu agente será salvo em um arquivo ZIP local.
Parabéns!
Você adicionou contexto ao agente virtual e definiu o fulfillment para pesquisar e armazenar entradas de reservas no Firestore.
Treinamento e certificação do Google Cloud
Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.
Manual atualizado em 19 de julho de 2024
Manual testado em 19 de julho de 2024
Copyright 2024 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.