Ir para o conteúdo

Gerenciar Perguntas e Respostas

Para gerenciar o motor de conversação de Perguntas e Respostas, primeiramente deve existir um componente no fluxo do chatbot. Esse componente permite configurar um motor de conversação que faz buscas numa base de Perguntas e Respostas informada, respondendo com a respectiva resposta da pergunta que mais se assemelha ao texto enviado para o chatbot.

Criando a Base de Perguntas e Respostas

Na Interface de Curadoria, após adicionar o componente no fluxo ou abri-lo para edição será apresentada um botão para adicionar pergunta e resposta.

A pergunta deve ter pelo menos uma primeira variação que é também a forma base. Recomenda-se adicionar mais de uma variação da pergunta, representando formas diferentes de se expressar aquele intenção.

Uma boa lista de variações deve potencializar o motor de conversação, permitindo que técnicas de Processamento de Linguagem Natural extrapolem e levem em consideração palavras correlatas como plural, singular, diferentes conjugações e flexões verbais, uso ou não de pronomes e preposições, dentre outros.

No cadastro da resposta, além do texto simples usual, é possível adicionar uma sequência de mensagens (balões na janela de conversa) dos seguintes tipos: Texto, Figura ou Opções.

Nas mensagens do tipo Texto também podem ser ser utilizadas tags HTML básicas para formatação, se desejado.

Nas mensagens do tipo Figura deve ser informada como entrada, a URL pública de um arquivo de imagem.

Já nas mensagens do tipo Opções, é possível informar um título e uma lista de rótulos e seus valores que irão compor as opções apresentadas para o usuário na resposta. A lista de opções pode ter estilos diferentes e o indicador Mostrar Valor permite definir se o valor de uma determinada opção será exibido na conversa como uma mensagem enviada.

Alerta

Algumas dessas opções de formatação e estilo das opções só funcionam no canal Webchat. É recomendado a realização de um teste visual para avaliar a forma de apresentação e as limitações dos demais canais.

Configurações

O componente ainda permite a configuração de alguns parâmetros que alteram o comportamento da chatbot durante a conversa. Essas configurações podem ser realizadas na seção Configurações:

Segue a lista completa de configurações possíveis:

Parâmetro Descrição Tipo
Quantidade máxima de sugestões O número máximo de respostas buscadas. Em caso de ocorrer desambiguação, define o número de resultados máximos sugeridos. Inteiro
Tolerância da desambiguação Linha de corte para ocorrer desambiguação. Se 90%, os resultados com mais de 90% do maior score são sugeridos. 100% desliga a desambiguação. Decimal
Título dos resultados sugeridos O título usado para apresentar as opções de desambiguação. Texto
Tolerância da busca Fuzzy Quantidade de mudanças toleradas na busca Fuzzy. 0 desliga a busca Fuzzy. Sugere-se usar o valor AUTO que leva em conta o tamanho do texto. Texto
Keywords Lista de keywords que devem ser preservadas sem qualquer pré-processamento. Listar separando por vírgula. Texto
Stopwords Lista de stopwords usadas (palavras removidas da indexação e da busca). Listar separando por vírgula. Texto

Score e Desambiguação

Internamente, ao receber a entrada do usuário no chat, o motor de conversação Perguntas e Respostas realiza uma busca textual nas perguntas e suas variações e calcula um ranking daquelas mais correlatas. Cada pergunta ganhará um score entre 0 e 100%. A pergunta com maior relação textual com a entrada do usuário ganhará score máximo (100%). Perguntas menos relacionadas, irão naturalmente ganhar um score menor. É possível que nenhuma pergunta tenha relação com a entrada e o componente não devolva uma resposta nesse caso.

Há casos em que mais de uma pergunta tem uma boa correlação com a resposta, próxima de 100%. Nesse caso, na seção Configurações é possível definir o limiar onde todas as perguntas acima daquele valor de corte do score sejam consideradas como possíveis opções, acionando a Desambiguação. Nesse caso, será apresentado na janela de chat uma lista de perguntas para o usuário selecionar qual delas melhor representa sua intenção.

Dica

Quanto mais baixo esse limiar, mais a desambiguação irá ocorrer. Deixando o limiar em 1.0 a desambiguação será desligada, pois apenas a resposta de maior score será retornada sempre, se houver alguma.

Stopwords

Nas Configurações também é possível definir a lista de stopwords, palavras excluídas da análise textual. Uma lista inicial é fornecida, mas ela pode ser alterada. É comum que a lista de stopwords contemple preposições, conjunções, pronomes e outras palavras de menor valor semântico que não representam termos-chave úteis para aquele contexto, podendo então serem removidas da análise, simplificando a representação interna daquele conteúdo para o mecanismo de busca.

Keywords

Nas Configurações também é possível definir uma lista de keywords, palavras-chave que serão preservadas de qualquer processamento. Isso é muito útil se houver desconfiança de que as técnicas de Processamento de Linguagem Natural estejam descaracterizando alguma sigla, nome próprio ou mesmo palavra importante, causando confusão e prejudicando a correta diferenciação das perguntas entre sí.