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 bot ?
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 ?