O que é NLP?


NLP (natural language processing) é uma área dentro da inteligencia artificial voltada à compreender a linguagem falada por humanos, ela é composta por intenções e entidades.


Intenção


intenção é o elemento principal, ou seja, o que levou o usuário à conversar com o bot, traduzindo isso para dentro da Plataforma, são frases ditas pelo usurário, com a intenção de realizar determinada ação.

A Intenção é entender "o que o usuário está querendo", portanto saber identificar quais são as intenções do usuário durante uma conversa é essencial para que o atendimento possa fluir naturalmente. 

Entenda também que a Intenção deve estar diretamente relacionada a uma ação (ou etapa) do fluxo da conversa. Ou seja, uma vez que identificarmos a Intenção do usuário, uma ação deve ser executada para atender a esta Intenção.


Entidade


Entidades são informações bem importantes contidas na mensagem de texto enviada pelo usuário. Conseguir extrair Entidades é um recurso importante da NLP.

Se Intenção é entender "o que o usuário está querendo". Entidade é entender "sobre o que o usuário está falando".


Como configuro a NLP no meu bo? 


Nesse exemplo vamos mostrar como configurar a NLP dentro de um bot e também daremos algumas dicas de boas práticas. Vamos lá !


Após entrar no Fluxo do bot, clique em NLP:




Como cadastrar intenções ? 


   1- Após clicar no botão intenção, clique em Nova Intenção:



Dica #1:  Para começar a usar Intenções no bot, minha sugestão é primeiro listar as principais intenções que o usuário possa  ter quando estiver falando com o bot, por exemplo, se o bot é responsável por fazer o atendimento de um restaurante e anotar os pedidos, estes poderiam ser exemplos de intenções ( Mostrar Menu, Pedido de Refeição, Fechamento de Pedido).


   

   2-  Defina o  Nome: Nome da Intenção;

 

   3-  Escolha o Fluxo de contexto;

Observação # : O Fluxo de contexto define se a intenção criada será utilizada no bot inteiro ou apenas em um Fluxo específico. Para utilizar no bot inteiro escolha a opção Global, para utilizar apenas em um único Fluxo escolha o nome do Fluxo que deseja utilizar.


   4-  Escolha o nível de confiança:




Dica 2 # : Aconselhamos que os níveis de confiança fique em 85 %, pois dessa forma a escrita do usuário não precisa ser totalmente exata, mas também define que o bot não aceite palavras  muito vagas. Quanto maior o nível de confiança, mais exata precisa ser a frase do usuário.


Dica 3 # : Aconselhamos que os níveis de confiança fique em 85 %, pois dessa forma a escrita do usuário não precisa ser totalmente exata, mas também define que o bot não aceite palavras  muito vagas. Quanto maior o nível de confiança, mais exata precisa ser a frase do usuário.


   5- Crie amostras de mensagens:



OBS # : Para o bot entender como identificar uma intenção precisamos incluir algumas amostras de mensagens (ou exemplos) de como o usuário poderia se expressar referente a esta intenção.
Dica 4# : Quanto mais frases configuradas o seu bot tiver, mais humanizada será a interação, pois com uma variedade maior de frases o bot compreende melhor o que o usuário diz, portanto incluir de 3 à 10 amostras justamente para "ensinar" o bot a entender que quando ele ler uma mensagem similar a esta, ele deve considerar a intenção desta amostra.


  6- Agora configure a ação da Intenção e salve:



Observação # : Se você escolher a opção Fluxo/Etapa, Ao receber a intenção do usuário o bot  o direcionará para a Etapa do Fluxo que o usuário solicitou, caso escolha Texto, ao receber a intenção do usuário o bot responderá com o Texto definido.



Como cadastrar Entidades ? 


  1- Clique em Entidade e depois clique em Nova Entidade 


 

2- Agora preencha o nome da Entidade e insira as palavras que você quer que o bot reconheça:



Dica 1# : Quanto maior a quantidade do palavras que o bot tiver, mais ele vai conseguir entender o que o usuário diz.
OBS #: Se a Intenção do usuário aqui é querer fazer um cadastro, o bot entenderia as entidades da seguinte forma:   O usuário quer fazer o (Cadastro) dele na ferramenta, e cadastro, seria a entidade


Treinamento


Pode ser que em alguns momentos o seu bot não entenda a palavra ou frase dita pelo usuário, mas não se preocupe, você consegue treiná-lo.


   10.  Em NLP, clique em Treinamento:



   11. Vincule a palavra não reconhecida à Intenção que ela pertence:




Bom considerando que você já tenha cadastrado uma ou mais intenções. Vamos resumir agora como o bot lida com isso.

Quando o usuário envia uma mensagem de texto o bot realiza 3 passos:


1. Consulta entre as intenções cadastradas, e avalia qual intenção representa melhor a mensagem. Esta avaliação é feita comparando a mensagem com todas as amostras (ou exemplos) de mensagens e calcula se a probabilidade de Matching é maior ou igual a definida no cadastro da intenção.


2. Dando matching, é escolhida a intenção com o maior matching, e verifica se esta intenção possui Variáveis de Intenção. Estas variáveis são responsáveis por identificar Entidades e seus respectivos valores. Esta variável pode ser acessada dentro do fluxo da conversa depois, acessando o objeto de contexto.


3. Para concluir, uma ação do fluxo da conversa é executada para dar continuidade na conversa com o usuário.


Agora vamos testar e ver como ficou ?