Alimente o seu robô

Truques para melhorar e facilitar a curadoria do seu chatbot

Certsys Labs
Chatbotson
7 min readJul 22, 2019

--

Por Luís Hansen

Este artigo é o primeiro de uma série sobre curadoria e chatbots. A segunda parte “Hora do upgrade no seu bot”, pode ser lida aqui.

Seres vivos precisam se alimentar para viver. Isso vale para todas as formas de vida, desde as mais simples — como seres unicelulares — até as mais complexas — como os seres humanos. E ainda que tanto a forma de se fazer isso quanto o alimento em si variem muito, o conceito se mantém o mesmo. Isso vale para os “seres vivos” digitais também.

Quando criamos um chatbot, queremos que ele, pelo menos em parte, se comporte como um humano: queremos que ele converse com outras pessoas de forma natural, entenda o que é dito a ele e mantenha um fluxo de diálogo coerente. Assim, os chatbots, sem sombra de dúvidas, são “seres vivos” digitais. Logo, para crescer, evoluir e melhorar em suas tarefas, ele deve ser alimentado. Mas qual é o alimento dos chatbots?

Vejamos algumas possibilidades:

Dados de treinamento: a maioria dos chatbot utiliza algum sistema de inteligência artificial, com redes neurais por trás de um serviço de entendimento de linguagem natural (NLU,em inglês). Esses sistemas são altamente dependentes de dados de treinamento, portanto esse é um ótimo candidato, e talvez o mais óbvio. Sem um conjunto de dados grande o suficiente, o nosso sistema de inteligência artificial não vai produzir os resultados esperados, o que, no fim, vai fazer nosso chatbot produzir a resposta errada.

Fluxos de conversa mais complexos: fluxos mais complexos podem significar resolução de problemas mais complexos. Além disso, estabelecer um diálogo profundo com seus usuários cria uma conexão muito maior entre eles e nosso chatbot. Mais um candidato forte.

Análise das necessidades dos clientes: talvez, ao invés de termos fluxos mais complexos, podemos ter mais fluxos simples, mas bem focados nas reais necessidades das pessoas que estão falando com nosso robô. Isso vai mostrar que ele entende os usuários e, melhor ainda, vai fazer com que eles voltem quando quiserem outra resposta certeira — eles vão ter certeza de que o nosso chatbot vai saber ajudar. Perfeito.

Com tantos candidatos tão bons, como escolher aquele mais importante? Como decidir qual é o “alimento”, fundamental aos chatbots? Será até que existe resposta para isso? Bom, tenho uma boa notícia: sim, existe. Ela é uma mistura de todos esses itens, que tornam mais fortes uns aos outros. E o nome dela é curadoria.

Curadoria é o alimento dos chatbots.

Mas o que é curadoria afinal? Tudo bem, eu disse que é uma combinação de analisar as necessidades dos clientes, melhorar os fluxos de conversa e treinar a rede neural, mas o que exatamente deve ser feito? E por que eu disse que esses itens se fortalecem juntos? Pois bem, vamos conversar sobre curadoria então.

O que é curadoria

Curadoria, de maneira simples, é o processo de análise e melhoria geral do nosso chatbot. Ela envolve analisar, dentro do contexto do bot, se as necessidades dos usuários estão sendo atendidas por ele, qual percepção geral esses usuários têm do nosso bot e como melhorá-la. Como a curadoria é feita de maneira concreta? Existem diversos fluxos de trabalho e geralmente cada equipe determina a sua própria. Na Certsys Labs, durante as implementações de bots, tivemos contatos com diferentes equipes, e alguns procedimentos são comuns a todas:

  1. Análise dos logs de conversa: a prática mais comum. A partir da análise dos logs, pode-se entender em quais pontos dos fluxos os usuários não estão sendo entendidos, quais assuntos os usuários estão buscando mas não estão mapeados, quais assuntos estão mapeados mas não são acessados pelos usuários (os pontos cegos), e mais vários insights preciosos para o negócio, como quais serviços são realmente usados, os motivos para os usuários não completarem determinados cadastros, etc. Essas análises servem como base para vários outros etapas, como o
  2. Refinamento das intenções: a regra geral diz que quanto mais exemplos, melhor será a acurácia de uma rede neural. Mas isso só é verdade se os dados forem consistentes e mantiverem um padrão de qualidade. Caso contrário, ao invés de melhorar a acurácia, poderemos aumentar a confusão do nosso bot. Tendo feito uma análise daquilo que não foi entendido, podemos criar intenções novas, adicionar exemplos a uma determinada intenção ou até mesmo juntar duas intenções muito similares. Ter intenções balanceadas é outro ponto muito importante em qualquer sistema de NLU.
  3. Criação e ajustes de fluxos de conversa: isso pode acontecer tanto de maneira top-down quanto de maneira bottom-up. Quando se analisa as necessidades dos clientes, através da análise das conversas passadas, podem surgir ideias para novas interações com o bot, novos fluxos, que oferecem novos serviços e trazem valor para os usuários. A partir daí, a equipe de curadoria se reúne e cria propostas de novos fluxos para analisar juntamente com a equipe de desenvolvedores. Essa é a maneira bottom-up, ou seja, partindo do cliente e subindo para a organização.
    Porém, os assuntos e serviços que as pessoas acabam buscando num chatbot podem variar por muitos motivos: a apresentação do chatbot, o contexto em que ele está inserido, a divulgação e o marketing e a própria empresa/entidade que ele representa são apenas alguns exemplos de detalhes que direcionam os usuários. Por esse motivo, nem todos os fluxos de conversa podem ser inferidos apenas analisando o comportamento dos usuários. Muitos dos fluxos fazem parte da “essência” do bot, e são pensados por seus curadores e desenvolvedores para facilitar a vida dos usuários. Essa é a abordagem top-down, em que, de certa maneira, quem dita o que as pessoas podem conversar com o chatbot é a equipe por trás dele. Os bons chatbots devem ser compostos por fluxos nascidos das duas formas. O que acaba acontecendo é que os dois se completam de forma orgânica — primeiro o chatbot guiando os fluxos e então as pessoas, subconscientemente, criando variações desses fluxos, ao falar sobre assuntos não mapeados.

Essa forma de se fazer curadoria é, sim, muitas vezes efetiva. Tanto durante o desenvolvimento quanto após o lançamento do bot, as melhorias alcançadas utilizando tais metodologias são mensuráveis. Porém, como quase tudo na vida, existem alguns lados negativos. Alguns desses problemas podem ir se acumulando até virar uma bola de neve após algum tempo:

  • Muito trabalho manual: convenhamos, analisar todos os logs de conversa de um bot dá um trabalhão. É um trabalho repetitivo e manual, que acaba tomando muito tempo da equipe de curadoria. Pior ainda é se o bot fizer muito sucesso — a análise de log por log torna-se impossível. Aí deve-se fazer uma escolha: ou aumenta-se a equipe de curadoria ou decide-se não analisar todos os logs, potencialmente perdendo insights importantes;
  • Pouca ou nenhuma visão estatística: mesmo realizando o trabalho manual que gasta muito tempo, não é possível compilar facilmente uma análise estatística dos fluxos de conversa reais que os usuários têm. É possível ter um feeling, por assim dizer, de quais fluxos estão sendo mais ou menos utilizados — nada científico, no entanto;
  • Desconhecimento da real capacidade de entendimento do bot: definir intenções é um trabalho difícil. Mais difícil ainda é saber se elas estão bem treinadas, se não há confusão entre elas, qual o número ideal de exemplos, etc. Não há forma simples de se descobrir esse tipo de métrica, e novamente tudo que se pode obter é um feeling;
  • Correção reativa de erros: ao implantar uma nova versão do bot, como garantir que aquilo que funcionava anteriormente continua funcionando? Apenas testando muito todos as possibilidades de fluxos e variações de intenções e entidades. E quando o bot cresce demais, não há como realizar essa tarefa completa antes da implantação, resultando em uma correção de erros totalmente reativa — é preciso que um usuário se depare com um erro para só depois corrigi-lo;
  • Fluxo de trabalho não estruturado: apesar de existirem essas diversas técnicas, muitas vezes as equipes de curadoria precisam aumentar de tamanho por culpa do volume de trabalho alto. Conforme o bot aumenta de tamanho e de usuários, surgem demandas de todos os lados, para correção de erros, implementações novas, etc. Quando não se há um fluxo de trabalho bem definido, a tendência é essas demandas se acumularem e a equipe perder o controle sobre o bot;
  • Treinamento dos curadores: dependendo de como o bot está implementado, cada novo membro da equipe de curadoria precisará conhecer os detalhes de quase todos os fluxos e intenções em detalhes antes de conseguir efetivamente colocar a mão na massa e fazer alterações. Por isso o tempo de treinamento para cada novo membro da equipe é grande, e membros antigos gastam muitas horas em que deviam estar efetivamente realizando curadoria treinando os novos;

Resumindo: curadoria dá um trabalhão, e são muitas as coisas que podem dar errado ao longo do tempo. Conversando com diversos curadores, nós aqui na Certsys Labs conseguimos levantar diversas ideias para melhorar a curadoria e, principalmente, facilitar o trabalho dos curadores. E foi assim que nasceu nossa arma (agora não mais) secreta para curadoria: o Botgrade.

Conheça o Botgrade

O poder do Botgrade

O upgrade do seu bot começa aqui: www.botgrade.com.br

O nome do Botgrade já é extremamente sugestivo: dar um upgrade no seu bot. Isso porque, através do Botgrade, os curadores têm muito mais poder em suas mãos. Quase todo o trabalho manual é automatizado, e eles podem gastar seu tempo analisando novas possibilidades com os diversos insigths que o Botgrade fornece. Antes de qualquer coisa, vou explicar o que é o Botgrade: é uma plataforma completa de curadoria, que reúne todas as ferramentas que um curador precisa para analisar o comportamento do bot, o que os usuários têm conversado com ele, refinar o treinamento da rede neural e garantir que qualquer mudança feita no chatbot não quebre aquilo que já estava funcionando antes. Mais do que isso, além da parte ferramental, o Botgrade fornece um fluxo de trabalho organizado e coerente, com métricas reais de melhoria.

Isso é feito através de cinco módulos: a dashboard customizável, o motor de testes de acurácia, a visualização das conversas, o mapeador de fluxos e o gerenciador de testes unitários.

No próximo artigo, “Hora do upgrade no seu bot”, explico em detalhes como cada módulo funciona, e como o Botgrade se encaixa dentro de diferentes processos de curadoria, ajudando a definir um fluxo de trabalho coerente e eficiente.

--

--

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.