Criar um agente do Dialogflow ES
Use o console do Dialogflow ES para criar e testar um agente.
Antes de começar
Antes de começar, siga estas etapas:
- Leia os Conceitos básicos do Dialogflow.
- Conclua as etapas de configuração.
Criar um agente
- Acesse o console do Dialogflow ES.
- Faça login no console do Dialogflow, se solicitado. Para mais informações, consulte Visão geral do console do Dialogflow.
- No menu da barra lateral, expanda Carregando agentes.
- Clique em Criar novo agente.
- Insira o nome do agente, o idioma padrão e o fuso horário padrão.
- Insira um projeto. Para permitir que o console do Dialogflow crie um projeto, selecione Criar um novo projeto do Google.
- Clique em Criar.
Intents
Intents categorizam a intenção de um usuário final para uma conversa. Você define várias intents para cada agente, e a combinação delas pode manter uma conversa do início ao fim.
Intents padrão
Quando você cria um agente, o Dialogflow cria duas intents padrão para você:
- Intent de boas-vindas padrão:ela é associada quando o usuário final conversa com seu agente. Ela retorna uma resposta que mostra ao usuário final o que dizer para iniciar uma conversa ou o que o agente faz.
- Intent de fallback padrão:ela é associada quando o agente não pode associar a expressão do usuário final a qualquer outra intent.
Para ver essas intents, acesse a lista de intents do seu agente:
- Acesse o console do Dialogflow ES.
- Selecione o agente criado.
- Clique em Intents no menu da barra lateral.
A parte central do console do Dialogflow mostra a lista de intents do agente.

Testar a intent de fallback padrão

O simulador Dialogflow fica no lado direito do console. Com o ele, você testa seu agente falando ou digitando mensagens.
Teste o agente agora:
- Clique no campo Testar agora.
- Digite
What is your name?. - Pressione Enter.
A resposta do agente é exibida na seção Resposta padrão. Como sua entrada não correspondeu a nenhuma intent, a intent de fallback padrão foi usada e você recebeu uma das respostas padrão.
Como criar uma intent
As etapas desta seção criam uma intent que responde à pergunta "Qual é o seu nome?". Para cada intent, você define várias frases de treinamento. Uma frase de treinamento é um exemplo do que um usuário final pode digitar ou dizer ao seu agente, também conhecida como expressão de usuário final. Defina frases de treinamento que ajudem o Dialogflow a associar expressões a uma intent.
Como criar uma intent:
- Clique no botão add para adicionar uma intent , ao lado de Intents no menu da barra lateral.
- Insira
get-agent-nameno campo Nome da intent. - Na seção Frases de treinamento, clique em Adicionar frases de treinamento.
Insira as seguintes frases de treinamento:
What is your name?Do you have a name?Tell me your name

Na seção Respostas, digite o seguinte na seção Resposta de texto:
My name is Dialogflow!

Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.
Testar a intent

No simulador, digite What's your name? e pressione Enter.
O agente responde à expressão corretamente, mesmo que ela seja um pouco diferente das frases de treinamento fornecidas.
O Dialogflow usa frases de treinamento como exemplos em um modelo de machine learning para corresponder expressões de usuários finais às intents. O modelo compara a expressão a cada intent no agente, atribui uma pontuação a cada intent e corresponde à intent de maior pontuação. Se a intent de maior pontuação tiver uma pontuação muito baixa, a intent de fallback será correspondida.
Parâmetros e entidades
Quando uma intent é correspondida no ambiente de execução, o Dialogflow fornece os valores extraídos da expressão do usuário final como parâmetros. Cada parâmetro tem um tipo, chamado de tipo de entidade, que dita exatamente como os dados são extraídos. Ao contrário da entrada bruta do usuário final, os parâmetros são dados estruturados que podem ser facilmente usados para executar uma lógica ou gerar respostas.Para controlar como os dados são extraídos ao criar um agente, anote partes das suas frases de treinamento e configure os parâmetros associados.
Crie parâmetros
Criar parâmetros de intent:
- Clique no botão add ao lado de Intents no menu da barra lateral.
- Nomeie a intent
set-languagena parte superior do formulário de intent. - Adicione as frases de treinamento a seguir:
I know EnglishI speak FrenchI know how to write in German
Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.

O Dialogflow detecta automaticamente os parâmetros nas frases de treinamento, que são reconhecidos como entidades do sistema. Elas são entidades fornecidas pelo Dialogflow para muitos tipos de dados comuns, como local, cor e data.
Depois de adicionar frases de treinamento, o Dialogflow cria uma linha na tabela Ação e parâmetros:

- Obrigatório:não marcado; esse parâmetro é opcional.
- Nome do parâmetro:nomeado automaticamente como
languageporque é reconhecido como um idioma. - Entidade:reconhecida como uma entidade do sistema
@sys.language. - Valor:o identificador usado ao fazer referência ao valor desse parâmetro.
- É lista:não marcado; esse parâmetro não é uma lista.
Usar dados de parâmetro em uma resposta
É possível usar o valor de um parâmetro nas respostas. Por exemplo, use a referência de parâmetro $language nas suas respostas ao criar um agente. No ambiente de execução, o agente o substitui pelo idioma especificado na expressão do usuário final.
Adicione uma resposta que use um parâmetro:
- Acesse a seção Respostas.
- Na seção Resposta de texto, adicione o seguinte:
Wow! I didn't know you knew $language. - Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.
Testar o parâmetro

No simulador, digite I know Russian. O Dialogflow extrai corretamente o parâmetro language com o valor Russian, e Russian foi inserido corretamente onde a referência de parâmetro foi usada na resposta.
Criar as próprias entidades
Na maioria dos casos, você precisa coletar dados específicos de usuários que não são fornecidos por entidades do sistema. Você pode criar entidades personalizadas para lidar com isso.
Crie uma entidade personalizada:
- Clique no botão add para adicionar entidade ao lado de Entidades no menu da barra lateral.
- Insira
language-programmingcomo o nome da entidade. Adicione as entradas de entidade (linhas) a seguir:
Valor de referência Sinônimos JavaScript JavaScript, js, ECMAScript Java Java Python Python, py Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.

O Dialogflow pode lidar com casos simples, como pluralidade e capitalização. Adicione todos os sinônimos possíveis para suas entradas. Quanto mais sinônimos você adicionar, melhor será a capacidade do agente de identificar as entidades.
Usar a entidade nova
Adicione frases de treinamento à intent set-language que usa a nova entidade:
- Clique em Intents no menu da barra lateral.
- Clique na intent
set-language. - Adicione as seguintes frases de treinamento:
I know javascriptI know how to code in Java
- As linguagens de programação nessas frases de treinamento são anotadas automaticamente e adicionadas aos parâmetros na seção Ação e parâmetros.
- Na seção Respostas, adicione a segunda resposta de texto a seguir:
$language-programming is an excellent programming language. - Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.
Testar sua nova entidade

No simulador, digite I know how to code in py. O Dialogflow extrai corretamente py para o parâmetro language-programming, o identifica como a entidade Python e insere o valor na resposta.
Contextos
Para controlar o fluxo da conversa, é possível usar contextos.
Adicionar uma intent de continuidade
As intents de continuidade permitem controlar uma conversa sem criar e gerenciar contextos manualmente.
Ao criar uma intent de continuidade, um contexto de saída é adicionado à intent pai e um contexto de entrada com o mesmo nome é adicionado à intent filho. Isso significa que a correspondência com a intent de continuidade é feita somente quando a intent pai é correspondida na conversa anterior.
Adicione uma intent de continuidade personalizada à intent set-language:
- Selecione a intent
set-languagecriada nas etapas anteriores. - Na seção Resposta, atualize a resposta de texto:
Wow! I didn't know you knew $language. How long have you known $language?
- Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.
- Clique em Intents no menu da barra lateral.
- Aponte o cursor para a intent
set-languagee clique em Adicionar intent de continuidade. - Clique em Personalizada na lista.
- Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.
O Dialogflow nomeia automaticamente a intent de continuidade set-language - custom.

Correspondência com intents de continuidade
A correspondência com intents de continuidade é feita apenas após a correspondência com a intent pai. Como
a intent set-language - custom só é correspondida após a set-language
intent, o usuário acabou de receber a pergunta "Há quanto tempo você conhece
$language?" Adicione frases de treinamento para respostas prováveis do usuário a essa pergunta:
- Clique em Intents no menu da barra lateral.
- Clique na intent
set-language - custom. - Adicione as frases de treinamento a seguir:
3 yearsabout 4 daysfor 5 years
- Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.
Testar a intent de continuidade
Insira I know French no simulador e responda à pergunta How long have you known French com about 2 weeks.
Embora não haja resposta para a segunda expressão (about 2 weeks),
você verá que a expressão é correspondida à intent correta
(set-language - custom), e o parâmetro de duração é analisado corretamente
(2 weeks).
Intents e contextos
Analise a intent set-language para ver set-language-followup listado
como um contexto de saída precedido pelo número 2. Esse número é chamado de
vida útil.

Depois da correspondência da intent set-language, o contexto set-language-followup
fica ativo e vinculado à conversa para ser usado duas vezes (vida útil: 2).
Portanto, quando você responde a uma pergunta como How long have you known $language?, o contexto set-language-followup está ativo.
Analise a set-language - custom intent para ver set-language-followup
listado como um contexto de entrada, que é o mesmo que o contexto de saída para a
set-language intent.
Todas as intents com contexto de entrada correspondente a um contexto ativo são priorizadas quando o Dialogflow corresponde a intents.
Contextos e parâmetros
Os contextos armazenam valores de parâmetro, e é possível acessar os valores definidos na intent set-language quando o contexto de saída está ativo. Na intent set-language - custom, você só pediu a duração em que o usuário conhece o idioma, e não o idioma referenciado.
Para mencionar a linguagem na resposta:
- Atualize a resposta de texto da intent
set-language - customparaI can't believe you've known #set-language-followup.language for $duration! - Clique no botão Salvar e aguarde até que a caixa de diálogo Treinamento do agente indique que o treinamento foi concluído.
A referência #set-language-followup.language é uma
referência de parâmetro para um contexto ativo.
Testar o parâmetro de contexto
Insira I know French no simulador e responda à pergunta com 1 week. Observe que o valor do parâmetro language é recuperado a partir do contexto.
Production
Antes de executar seu agente na produção, implemente as práticas recomendadas de produção.
A seguir
Confira o guia de início rápido do Fulfillment.