Este guia mostra como usar o console do Dialogflow CX para criar e testar um agente de pedidos de camisetas usando fluxos. Ao interagir com esse agente, peça a localização da loja, o horário de funcionamento ou compre uma camiseta.
O diagrama a seguir mostra o agente concluído deste guia:

Antes de começar
Conclua as tarefas a seguir antes de ler este guia:
- Leia os conceitos básicos de fluxo.
- Execute as etapas de configuração.
Criar um agente
Crie um agente para este guia:
- Abra o console do Dialogflow CX.
- Criar ou escolher um projeto
- Clique em Criar agente.
- Selecione Build your own.
- Preencha o formulário para as configurações básicas do agente.
- Insira um nome de exibição.
- Selecione um local. Clique no botão Editar se quiser mudar as configurações avançadas de local.
- Selecione um fuso horário.
- Selecione o idioma padrão.
- Como opção, ative o Cloud Logging.
- Clique em Salvar.
Importação opcional de agente
Neste guia, você vai conhecer as etapas para criar um agente de pedidos de camisas.
Para ignorar as etapas do console, faça o download do agente e importe-o.
Fluxo e intents padrões
O fluxo e as intents a seguir são criados automaticamente para um novo agente.
Para encontrar as intents, clique em Gerenciar e em Intents. Para encontrar o fluxo, clique em Criar.
| X | Item |
|---|---|
| Intent de boas-vindas padrão | A intent de boas-vindas padrão tem frases de treinamento como "Oi" ou "Olá", que correspondem à entrada inicial do usuário. É possível editar essa intent conforme necessário. |
| Intent negativa padrão | A intent negativa padrão pode ser usada para adicionar frases de treinamento ao intent que atuam como exemplos negativos. |
| Fluxo inicial padrão | O fluxo inicial padrão pode ser usado como um fluxo único. É o fluxo que será usado neste guia. Para agentes mais complexos, é possível adicionar mais fluxos. Esse fluxo tem uma rota de intent padrão com o Intent de boas-vindas padrão como um requisito de intent. |
Testar a mensagem de resposta de boas-vindas padrão
O fluxo e as intents padrão podem realizar uma conversa básica com apenas uma mensagem de boas-vindas.
Para testar o novo agente:
- Clique no botão Testar agente para abrir o simulador.
- Digite
hellono campo de texto e pressione "Enter". - O agente responde com uma mensagem de boas-vindas padrão.
- Feche o simulador.

O agente realiza as seguintes etapas para essa entrada do usuário final:
- Quando você fornece uma entrada, o agente avalia os manipuladores de estado no escopo do Fluxo inicial padrão ativo e da página inicial do fluxo.
- O agente identifica e executa uma rota que corresponde à intent de boas-vindas padrão.
- O agente seleciona uma das mensagens de resposta de fulfillment aleatoriamente e a adiciona à fila de respostas.
- Como a rota não tem destino de transição, o fluxo e a página ativos permanecem inalterados.
- O agente envia o conteúdo da fila de respostas para você.
Editar a mensagem de resposta de boas-vindas
Para editar a mensagem de resposta de boas-vindas:
- Clique na guia Criar.
- Selecione o Fluxo inicial padrão na seção Fluxos.
- Clique no nó Página inicial no gráfico.
- Encontre a rota com a intent de boas-vindas padrão como um requisito de intent e clique nela para abrir o painel de edição de rotas.
- Na seção de fulfillment, na subseção de respostas do agente, exclua todas as mensagens de resposta atuais.
- Adicione
Hello, this is a shirt ordering virtual agent. How can I help you?como a única resposta. - Clique em Salvar.
- Feche o painel de edição de rotas.

Testar a mensagem de resposta de boas-vindas atualizada
Para testar a resposta atualizada:
- Clique no botão Testar agente para abrir o simulador.
- Digite
hellono campo de texto e pressione "Enter". - O agente responde com a nova mensagem.
- Feche o simulador.
Página "Local da loja"
Uma conversa do Dialogflow CX (sessão) pode ser descrita e visualizada como uma máquina de estado. Os estados de uma sessão do CX são representados por páginas. Como você tem apenas uma página, o agente não é muito útil. Nesta seção, crie outra página que processe perguntas sobre o local da loja.
Criar a intent de local
Uma intent categoriza a intenção do usuário final em cada conversa.
Para criar uma intent que é correspondida quando a entrada do usuário final solicita o local da loja:
- Selecione a guia Manage.
- Clique em Intents.
- Clique em Criar.
- Insira
store.locationpara o nome de exibição da intent. - Digite as seguintes frases de treinamento:
Where is the store?DirectionsTell me the addressWhere do I pick up my order?How do I get there?Where is the store located?What street are you on?What is your address?How do I get to your store?Where are you located?
- Clique em Save.

Criar a página "Local"
Crie uma nova página. Adicione um fulfillment de entrada à página que será executada sempre que ela se tornar ativa. Esse preenchimento de entrada deve ter uma mensagem de resposta que forneça o local da loja.
Para criar a página do local da loja:
- Clique na guia Criar.
- Selecione o Fluxo inicial padrão na seção Fluxos.
- Clique no botão add add na seção Páginas. Uma entrada de texto para o nome de exibição da página aparece.
- Insira
Store Locationcomo o nome de exibição da página e pressione Enter. - Clique no botão more_vert more_vert ao lado do nome de exibição da página.
- Selecione Edit para abrir o painel de edição de página.
- Localize Entry fulfillment e clique em Edit fulfillment.
- Clique em +Adicionar resposta de diálogo para inserir
Our store is located at 1007 Mountain Drive, Gotham City, NJ.no campo Diálogo do agente da seção Respostas do agente. - Clique em Salvar.
- Feche o painel de edição da página.

Adicionar uma rota de intent de local ao fluxo
Agora, crie uma rota que tenha a página "Local da loja" como um destino de transição. Quando essa rota é chamada, a sessão faz a transição para a página "Local da loja". Essa rota é aplicada ao Fluxo inicial padrão. Portanto, ela está no escopo enquanto o fluxo estiver ativo.
Para um agente de fluxo único, isso significa que a rota está sempre no escopo. A qualquer momento da conversa, um usuário final pode pedir o local da loja, e essa rota será chamada.
Para criar a rota:
- Clique na guia Criar.
- Selecione o Fluxo inicial padrão na seção Fluxos.
- Clique no nó Página inicial no gráfico. Esta é a página inicial do Fluxo inicial padrão.
- Adicione a rota de intent a seguir:
- Intent:
store.location - Página de transição:
Store Location
- Intent:
- Clique em Save.
- Feche o painel de edição da rota de intent.

Depois que você fechar o painel de edição, um nó da nova página vai aparecer no gráfico. A seta do nó Start para o nó do Localizador de lojas mostra como a sessão faz a transição entre nós.
Testar a página do local da loja
Para testar a página do local da loja, faça o seguinte:
- Clique no botão Testar agente para abrir o simulador.
- Digite
What is the store location?e pressione a tecla Enter. - O agente fornece o endereço
- Feche o simulador.
O agente realiza as seguintes etapas para essa entrada do usuário final:
- Quando você fornece uma entrada, o agente avalia os manipuladores de estado no escopo do Fluxo inicial padrão ativo e da página inicial do fluxo.
- O agente identifica uma rota que corresponde à intent store.location e a executa.
- Como a rota não tem mensagens de resposta de fulfillment, o agente não adiciona nada à fila de respostas.
- O agente transfere a sessão para a página Local da loja.
- O agente adiciona a mensagem de resposta do preenchimento de entrada da página Local da loja à fila de respostas.
- O agente envia o conteúdo da fila de respostas para você.
Página de horário de funcionamento usando a criação inline
Nesta seção, você cria uma página de Horário de funcionamento que lida com perguntas do usuário final sobre o horário de funcionamento. Antes, você criou páginas e intents nas guias Build e Manage. Nesta seção, você vai aprender uma maneira mais rápida de criar esses componentes com a criação inline.
Para criar inline uma rota de intent, um intent e uma página:
- Clique no nó Página inicial no gráfico.
- Ao lado de Rotas, clique em add Adicionar. O painel de edição da rota de intent é aberto.
- Na seção Intent, selecione New intent. O painel de edição de intents é aberto.
Crie um intent
store.hourscom as seguintes frases de treinamento:What are your store hours?What time do you close?
Clique em Salvar. O painel de edição de intents será fechado.
Acesse a seção Transição no painel de edição de rotas.
Para transição de Page, selecione New page.
Digite
Store Hoursna entrada de texto.Clique em Salvar. A nova página aparece no gráfico porque agora há uma transição que leva a ela.
Feche o painel de edição de rotas.
Adicione um fulfillment de entrada que forneça o horário de funcionamento da loja, como você fez para Local da loja.
Feche todos os painéis de edição.
Página de itens do pedido
Em seguida, crie uma página que use parâmetros de formulário. Quando você pede uma nova camisa, a sessão passa para essa página, que coleta o tamanho e a cor do pedido.
Criar um tipo de entidade personalizado para o tamanho da camisa
Os tipos de entidade controlam como os dados da entrada do usuário final são extraídos. O Dialogflow CX fornece entidades predefinidas do sistema que correspondem a tipos de dados comuns, como datas, horários, cores e endereços de e-mail. Também é possível criar entidades personalizadas para dados específicos.
Para esse agente, é possível usar uma entidade do sistema para a cor da camisa, mas você precisa criar uma entidade personalizada para o tamanho da camisa.
O tipo de entidade de tamanho precisa ter as seguintes entradas de entidade:
| Entidade | Sinônimos |
|---|---|
| Pequeno | pequeno, muito pequeno, extra pequeno |
| Média | médio, tamanho único, comum |
| Grande | grande, muito grande, extra grande |
Para criar a entidade:
- Selecione a guia Manage.
- Clique em Tipos de entidade.
- Clique em Criar.
- Defina o nome de exibição como
size. - Adicione as entradas de entidade listadas na tabela.
- Clique em Salvar.
Criar um intent de pedido com parâmetros de intent
Você precisa de uma intent que corresponda à solicitação de um novo pedido de camisa do usuário final. Essa intent também deve capturar opcionalmente a cor ou o tamanho da camisa escolhidos, caso o usuário final forneça essa informação inicialmente.
Parâmetros são usados para capturar e referenciar valores fornecidos pelo usuário final durante uma sessão. Cada parâmetro tem um nome de exibição e um tipo de entidade. Ao contrário da entrada bruta do usuário final, os parâmetros são dados estruturados que podem ser usados para executar uma lógica ou gerar respostas.
Controle como os dados do usuário final são extraídos com a correspondência de intent anotando partes das frases de treinamento e configurando os parâmetros de intent associados.
Por exemplo, considere uma frase de treinamento como "Qual é a previsão amanhã para Tóquio?" Anote "amanhã" com um parâmetro date e "Tóquio" com um parâmetro location. Quando você anota partes de uma frase de treinamento, o Dialogflow CX
reconhece que essas partes são apenas exemplos de valores reais que podem ser
fornecidos pelos usuários finais no ambiente de execução.
Para uma entrada de usuário final, como "Qual é a previsão para Sydney na sexta-feira?",
O Dialogflow CX pode extrair o parâmetro date de "Sexta-feira" e o parâmetro location de "Sydney".
Para anotar uma frase de treinamento no console:
- Destaque a parte da frase de treinamento que você quer anotar.
- Selecione o tipo de entidade necessário na lista.
- O Dialogflow cria um parâmetro na tabela a seguir.
Crie uma intent chamada order.new seguindo estas etapas:
- Para cada frase que contém uma cor, anote a cor com um parâmetro
colore o tipo de entidade do sistema@sys.color. - Para cada frase que contém um tamanho de camisa, anote o tamanho com um parâmetro
sizee o tipo de entidade personalizada@sizeque você criou anteriormente.
As frases e os parâmetros de treinamento precisam ser semelhantes a estes:

Criar uma página de pedidos
Crie uma página de pedidos:
- Nome de exibição:
New Order - Fulfillment de entrada:
Ok, let's start a new order.
Adicionar um formulário à página do pedido
Para cada página, é possível definir um formulário, que é uma lista de parâmetros que precisam ser coletados do usuário final para a página. O agente interage com o usuário final em várias rodadas de conversas até que ele tenha coletado todos os parâmetros de formulário obrigatórios, também chamados de parâmetros de página. Para cada parâmetro de formulário, você também fornece prompts que o agente usa para solicitar essas informações do usuário final. Esse processo é chamado de preenchimento de formulário.
Quando um usuário final fornece parâmetros de intent para uma correspondência de intent, os parâmetros de intent se tornam parâmetros de sessão. Quando uma página fica ativa, todos os parâmetros do formulário são preenchidos previamente com quaisquer parâmetros de sessão que tenham o mesmo nome. Portanto, se o usuário final fornecer o tamanho ou a cor quando a intent order.new for correspondida, esses valores serão preenchidos automaticamente no formulário.
Defina dois parâmetros de formulário obrigatórios para a página Novo pedido:
| Obrigatório | Nome de exibição | Tipo de entidade | É uma lista | Prompt |
|---|---|---|---|---|
| cor | @sys.color | Qual cor você quer? | ||
| size | @size | Que tamanho você quer? |
Para adicionar esse formulário, siga estas etapas:
- Clique na página New Order no gráfico.
- Clique no botão de adição add Parâmetros para abrir o painel de edição de parâmetros.
- Adicione os parâmetros conforme descrito na tabela acima.
- Clique em Save.
- Feche o painel de edição de parâmetros.
Adicionar uma rota de intent de pedido ao fluxo
Adicione uma rota ao Fluxo inicial padrão que faça a transição para a página Novo pedido quando o usuário final quiser fazer um novo pedido:
- Intent: order.new
- Página de destino da transição: Novo pedido
Página de confirmação
A página final confirma o pedido e encerra a sessão.
Criar a página de confirmação
Crie uma página de confirmação com uma resposta que usa os parâmetros de sessão para confirmar a ordem:
- Nome de exibição:
Order Confirmation - Fulfillment de entrada:
You can pick up your order for a $session.params.size, $session.params.color shirt in 7 to 10 business days. Goodbye.
Adicionar rotas de condição à página de pedido
É possível usar condições para determinar se uma rota é chamada. Geralmente, as condições são usadas com frequência para verificar se um formulário foi preenchido ou se estão configuradas para serem chamadas sempre que forem avaliadas.
Para definir condições no console, consulte a documentação Definir condições.
Adicione a seguinte rota à página de pedidos, que é chamada quando o formulário da página de pedidos é preenchido. Essa rota de condição usa referências de parâmetro na resposta ao usuário final e passa a sessão para a página de Confirmação de pedido.
- Condição:
$page.params.status = "FINAL" - Mensagem do agente:
You have selected a $session.params.size, $session.params.color shirt. - Página de transição:
Order Confirmation
Adicione a seguinte rota à página de pedidos. Essa rota é executada para cada fala na conversa enquanto a página está ativa e a rota de condição é avaliada. Quando a condição acima for avaliada e chamada, a página ficará inativa. Portanto, essa rota de condição true não será avaliada:
- Condição:
true - Mensagem do agente:
I'd like to collect a bit more information from you.
Criar uma rota de condição para finalizar a sessão.
Adicione a seguinte rota de condição à página Confirmação do pedido para encerrar a sessão depois que a página se tornar ativa e o fulfillment de entrada for processado:
- Condição:
true - Página de destino da transição:
End Session
Testar o agente concluído
Teste o agente com a seguinte caixa de diálogo:
| Diálogo | Explicação |
|---|---|
|
Usuário final: Olá Agente: Olá, este é um agente virtual de pedidos. Como posso ajudá-lo? |
|
|
Usuário final: quero comprar uma camisa azul Agente: Ok, vamos começar um novo pedido. Agente: gostaria de coletar mais informações suas. Agente: qual é o tamanho desejado? |
|
|
Usuário final: grande Agente: você selecionou uma camisa grande azul. Agente: você receberá o pedido de uma camisa azul grande de 7 a 10 dias úteis. Goodbye. |
|
Preparação para a produção
Antes de executar seu agente na produção, implemente as Práticas recomendadas para produção.