Intents

Uma intent categoriza a intenção do usuário final em cada conversa. Em comparação com as intents do ES, as intents do CX foram simplificadas para torná-las um recurso mais reutilizável.

Uma intent contém os seguintes dados:

Termo Definição
Frases de treinamento As frases de treinamento são exemplos de frases que o usuário final pode digitar ou dizer, conhecidas como entradas do usuário final. Quando a entrada do usuário final se assemelhar a uma dessas frases, o Dialogflow corresponderá à intent. Você não precisa definir todos os exemplos possíveis, porque o machine learning integrado do Dialogflow expande sua lista com outras frases semelhantes.
Parâmetros Você define as frases de treinamento para usar parâmetros que extraem valores de partes específicas da entrada do usuário final.

Correspondência com intents

Quando um usuário final grava ou diz algo, o que é chamado de entrada do usuário final, o Dialogflow compara a entrada com as frases de treinamento de intent para encontrar a melhor correspondência. Esse processo é chamado de correspondência de intent. A correspondência de intent só pode ocorrer com intents associadas a uma rota de intent (um gerenciador de estado com um requisito de intent) no escopo.

Ao pesquisar uma intent correspondente, o Dialogflow pontua possíveis correspondências com uma confiança de detecção de intent, também conhecida como pontuação de confiança. Esses valores variam de 0,0 (completamente incerto) a 1,0 (completamente certo). Depois que as intents são pontuadas, há dois resultados possíveis:

  • Se a intent de pontuação mais alta tiver uma pontuação de confiança maior ou igual à configuração de limite de classificação, ela será retornada como uma correspondência.
  • Se nenhuma intent atingir o limite, um evento sem correspondência será invocado.

Frases de treinamento

Frases de treinamento são frases de exemplo que os usuários finais podem digitar ou dizer, conhecidas como entrada do usuário final. Você cria várias frases de treinamento para cada intent. Quando uma entrada de usuário final for parecida com uma dessas frases, o Dialogflow fará a correspondência com a intent.

Por exemplo, a frase de treinamento "Quero pizza" treina seu agente a reconhecer entradas de usuário final semelhantes a essa frase, como "Compre uma pizza" ou "Peça pizza".

Você não precisa definir todos os exemplos possíveis, porque o machine learning integrado do Dialogflow expande sua lista com outras frases semelhantes. Crie pelo menos 10 a 20 frases (dependendo da complexidade da intent) para que o agente reconheça uma variedade de entradas de usuário final. Por exemplo, se você quer que sua intent reconheça a entradas de um usuário final sobre sua cor favorita, defina as seguintes frases de treinamento:

  • “Gosto de vermelho”
  • “Minha cor favorita é amarelo”
  • “preto”
  • "Azul é a minha favorita"

Anotar frases de treinamento

Você controla como os dados do usuário final são extraídos anotando partes das frases de treinamento e configurando os parâmetros 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 reconhece que essas partes são apenas exemplos de valores reais que serão 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 extrairia o parâmetro date de "Sexta-feira" e o parâmetro location de "Sydney".

Ao criar um agente com o Console, a maioria das anotações é criada automaticamente quando você adiciona frases de treinamento que contêm partes que podem ser correspondidas a um tipo de entidade atual. Essas partes são destacadas no Console. Edite essas anotações e parâmetros conforme necessário.

Para anotar manualmente uma frase de treinamento com o Console, faça o seguinte:

  1. Selecione a parte da frase de treinamento que você quer anotar.
  2. Selecione o tipo de entidade desejado na lista.
  3. Um parâmetro é criado para você na tabela de parâmetros abaixo.

Ao criar um agente com a API, anote as partes da frase de treinamento manualmente. Veja o tipo TrainingPhrase usado pelo tipo Intent.

Selecione um protocolo e uma versão para a referência de intent:

Protocolo V3 V3beta1
REST Recurso de intent Recurso de intent
RPC Interface de intent Interface de intent
C++ IntentsClient Indisponível
C# IntentsClient Indisponível
Go IntentsClient Indisponível
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Indisponível Indisponível
Python IntentsClient IntentsClient
Ruby Indisponível Indisponível

Entidades implícitas criadas por frases de treinamento

A maioria das entidades personalizadas é definida explicitamente criando tipos de entidade e adicionando entradas de entidades. No entanto, entidades personalizadas também podem conter valores implícitos. Isso acontece quando você anota o texto de uma frase de treinamento, em que o texto anotado não é um valor definido pelo tipo de entidade selecionado. O texto anotado se torna um valor de referência de entidade para a entrada de entidade adicionada implicitamente. Se o tipo de entidade for uma entidade de mapa, o texto também se tornará um sinônimo da entrada de entidade.

Intent de boas-vindas padrão

Quando você cria um agente, uma intent de boas-vindas padrão é criada para você. Para alguns idiomas, a intent tem frases de treinamento simples, como "Oi" ou "Olá", que precisam corresponder à entrada inicial do usuário final. É possível editar essa intent como quiser.

Ao usar a API, é possível referir-se a esse intent com o seguinte código de intent:

00000000-0000-0000-0000-000000000000

Intent negativa padrão

Quando você cria um agente, uma intent de negativa padrão é criada para você. É possível adicionar frases de treinamento a essa intent que funcionam como exemplos negativos. Pode haver casos em que a entrada do usuário final tenha uma pequena semelhança com frases de treinamento em intents normais, mas você não quer que essas entradas correspondam a intents normais.

Por exemplo, um agente de reserva de sala pode ter uma frase de treinamento como "Eu gostaria de reservar uma sala". Se o usuário final quiser comprar um livro sobre o assunto, ele poderá dizer "Eu gostaria de comprar um livro sobre salas". Para que a entrada do usuário final não corresponda à sua intent, adicione essa frase como um exemplo negativo.

Além disso, adicione possíveis frases que estão fora do escopo do agente, para que elas não correspondam a nenhuma intent. No entanto, evite adicionar uma quantidade muito grande dessas frases. Por exemplo, se você define 10.000 frases de intent negativas padrão, isso afeta negativamente a correspondência normal de intents.

Revise essas frases regularmente, porque algumas delas podem estar fora do escopo do agente, mas foram adicionadas posteriormente às intents.

A intent negativa padrão tem impacto em todas as correspondências de intent. As frases adicionadas a ele podem beneficiar a correspondência de uma intent, mas a correspondência de danos para outra. Por exemplo, é possível adicionar "chamadas internacionais" à intent negativa padrão para evitar a correspondência com uma intenção de viagem internacional. No entanto, isso também impede que essa frase corresponda a uma intent de chamada internacional.

Ao usar a API, é possível referir-se a esse intent com o seguinte código de intent:

00000000-0000-0000-0000-000000000001

Cancelar intents

Durante uma conversa, o usuário final pode querer cancelar o tópico da conversa atual. Por exemplo, a página atualmente ativa pode estar pedindo uma data para um novo agendamento, mas o usuário final decidiu não criar um novo compromisso. O usuário final pode dizer algo como "cancelar" ou "Não quero um novo compromisso". Para lidar com essa situação, é possível criar uma ou mais cancelamentos de intent para seu agente. É possível nomear essas intents de cancelamento como quiser, mas é costume incluir "cancelar" no nome. É necessário associar essas intents de cancelamento às rotas de intent que estão no escopo em pontos relevantes da conversa. Essas rotas de intent deverão fazer a transição para uma página adequada para processar o cancelamento.

As frases de treinamento para intents de cancelamento precisam lidar com tentativas genéricas e específicas de tópicos que serão canceladas. Exemplo:

  • Cancelar
  • Parar
  • Mudei de ideia
  • Cancelar
  • Voltar
  • Voltar
  • Não quero um novo compromisso
  • Cancelar novo compromisso
  • Excluir novo compromisso

Como criar uma intent

Para criar um intent:

Console

  1. Abra o Console do Dialogflow CX.
  2. Escolha seu projeto do GCP.
  3. Selecione seu agente.
  4. Selecione a guia Gerenciar.
  5. Clique em Intents.
  6. Clique em Criar.
  7. Digite os dados da intent.
  8. Clique em Save.

API

Veja o método create para o tipo Intent.

Selecione um protocolo e uma versão para a referência de intent:

Protocolo V3 V3beta1
REST Recurso de intent Recurso de intent
RPC Interface de intent Interface de intent
C++ IntentsClient Indisponível
C# IntentsClient Indisponível
Go IntentsClient Indisponível
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Indisponível Indisponível
Python IntentsClient IntentsClient
Ruby Indisponível Indisponível

Excluir uma intent

Para excluir um intent:

Console

  1. Abra o Console do Dialogflow CX.
  2. Escolha seu projeto do GCP.
  3. Selecione seu agente.
  4. Selecione a guia Gerenciar.
  5. Clique em Intents.
  6. Passe o cursor sobre o intent que você quer excluir.
  7. Clique no botão de exclusão .

API

Veja o método delete para o tipo Intent.

Selecione um protocolo e uma versão para a referência de intent:

Protocolo V3 V3beta1
REST Recurso de intent Recurso de intent
RPC Interface de intent Interface de intent
C++ IntentsClient Indisponível
C# IntentsClient Indisponível
Go IntentsClient Indisponível
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Indisponível Indisponível
Python IntentsClient IntentsClient
Ruby Indisponível Indisponível

Acessar dados da intent

Para acessar os dados do intent:

Console

  1. Abra o Console do Dialogflow CX.
  2. Escolha seu projeto do GCP.
  3. Selecione seu agente.
  4. Selecione a guia Gerenciar.
  5. Clique em Intents.
  6. Clique na intent que você quer acessar.
  7. Visualizar ou atualizar dados de intent.
  8. Clique em Salvar para salvar as alterações.

API

Veja os métodos get e patch/update para o tipo Intent.

Selecione um protocolo e uma versão para a referência de intent:

Protocolo V3 V3beta1
REST Recurso de intent Recurso de intent
RPC Interface de intent Interface de intent
C++ IntentsClient Indisponível
C# IntentsClient Indisponível
Go IntentsClient Indisponível
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Indisponível Indisponível
Python IntentsClient IntentsClient
Ruby Indisponível Indisponível

Ao projetar agentes, pode ser útil pensar nas intents como intents principais ou intents complementares. Esses termos são apenas conceituais, e o Dialogflow não os diferencia.

Uma intent principal identifica a principal finalidade do usuário final para interagir com um agente. Uma intent complementar identifica as perguntas subsequentes de um usuário final relacionadas à intent principal. As perguntas subsequentes podem fornecer mais contexto para as necessidades do usuário final ou perguntas de acompanhamento que ajudam o usuário final a esclarecer ou entender melhor algo.

Normalmente, a intent principal é uma das primeiras intents correspondentes em uma conversa, e as outras perguntas do usuário final correspondem às intents complementares. Exemplo:

Diálogo Explicação
Usuário final: ative o novo smartphone
Agente: Claro, posso ajudar você com isso. Quais são os últimos quatro dígitos do número de telefone que você quer ativar?
A intent de cabeça corresponde
Usuário final: 1234
Agente: Você está pronto para ativar o smartphone agora?
Um parâmetro é definido
Usuário final: todas as minhas mensagens são transferidas para o novo smartphone?
Agente: ...
A correspondência complementar é feita