leaking

Procura-se chatbot — o que fazer quando ele se perde

Certsys Labs
Chatbotson
Published in
4 min readJul 30, 2019

--

Aumentando as chances de sucesso do seu chatbot

Vamos voltar para a época dos desenhos antigos. Você lembra uma cena em que o personagem tem um vazamento no encanamento, ele vai tapar este buraco (normalmente com uma rolha) e quando ele está para sair, outro buraco aparece, a historia se repete, até que tudo explode?

ice age
Desesperadamente tentando resolver problemas!!

A razão dessa sessão nostalgia é fazer uma analogia com o mundo de chatbots. Quem já trabalha ou chegou a trabalhar com eles deve ter vivenciado uma situação em que foram adicionadas mais intenções ou novos exemplos em uma intenção e de repente algo que já funcionava bem começa a deixar de funcionar, ou seja, depois que este ponto foi corrigido, outro começa a dar problema e assim vai seguindo até virar um monstro.

Por que isso acontece?

Um chatbot, seja ele feito pelo Watson, Luís, Dialogflow, etc, segue uma premissa básica: intenções que são alimentadas por exemplos que vão servir de base para interpretar a fala do usuário.

Agora imagine o caso em que os exemplos usados no treinamento não foram bem pensados, ou ainda, que como o trabalho de curadoria é dividido, na correria do dia-a-dia alguns exemplos foram mapeados para intenções erradas e outras pessoas do time não sabem que foi inserido - um risco que ocorre em todo retreino. Tudo isso gera confusão entre intenções e por fim um bot que fica cada vez mais perdido.

Todo aumento de intenção ou retreino tem uma chance de criar um “vazamento” em outro ponto que antes estava funcional.

“Todo aumento de intenção ou retreino tem uma chance de criar um “vazamento” em outro ponto que antes estava funcional.”

Mas como resolver?

Não que exista uma solução óbvia, mas algumas sugestões surgiram observando o dia-a-dia de quem trabalha com chatbot, além de pegar inspirações de outras áreas.

A primeira solução vem de aplicações de Machine Learning para validação de modelos. Um bot depende dos dados usados para o seu treino, assim como modelos de reconhecimento de imagem, padrões, etc… O primeiro ponto é garantir que esses dados sejam consistentes e bem escolhidos.

Dentro de ML (Machine Learning para os menos íntimos) existe o conceito de validação cruzada, que de uma maneira simplificada é, testar o modelo sobre ele mesmo. Para fazer isso, separe uma parte desses dados e crie um modelo com os dados restantes. Caso a massa de dados separadas sejam classificadas como deveriam, parabéns, o modelo está bem treinado, caso contrário, temos um problema.

A imagem abaixo exemplifica usando o conceito de Workspace, que traduzindo para outras plataformas seria Agent, Skills ou outras nomenclaturas.

cross validation
Exemplificando cross validation

Outro modelo de solução é que a cada mudança de treinamento, seja feita uma validação para que os fluxos principais continuem funcionando. A priori, podemos fazer isso da maneira mais “simplista” — colocar pessoas para conversar com o bot diretamente, mas isso consome tempo e a menos que tenha algo bem documentado, alguns casos podem passar reto.

Agora partindo para o mundo do desenvolvimento, existe o conceito de testes. Antes de qualquer alteração chegar nas mãos do cliente final, temos um grupo de testes que devem ser executados para ter certeza que algumas funções se mantenham funcionais — e somente se todos os testes passarem, pode-se dizer que tudo que antes funcionava, continuaria da mesma maneira.

Agora se essa prática existe e funciona (quando bem aplicado), porque não usá-las para bots? Devem ser criados testes de fluxos nos bots durante o seu desenvolvimento e antes de qualquer subida para produção? Pense sobre isso.

code
Photo by Henri L. on Unsplash

Enfim…

Existem vários pontos em um bot de sucesso. Esse artigo tratou apenas de garantir uma evolução controlada dele antes que vire uma bola de neve gigante, que ninguém consegue entender o motivo de se perder nos fluxos, diminuir o engajamento por parte do cliente e culminar na perda de tração do projeto… O ponto é, ter consciência desse problema para que as chances de sucesso aumentem.

--

--

Certsys Labs
Chatbotson

Certsys Labs was created with the use of our marketing and software development clients. We work with the most recent technologies and want to share in here.