Fundamentos de design conversacional: dicas para construir um chatbot

Publicados: 2022-03-10
Resumo rápido ↬ As interações humanas são incrivelmente fascinantes se você olhar de perto para elas – a estranheza social, os estilos de comunicação, a forma como o conhecimento é transferido, a forma como as histórias são contadas e a confiança é construída. Mas o que acontece quando uma máquina evoca a mesma resposta? As interfaces de conversação tornaram-se a nova atração no design de UX. O Google está prestes a lançar um novo chatbot de assistente virtual; O Facebook já lançou a plataforma Messenger atualizada com chatbots; e a Microsoft chegou a afirmar que o sistema operacional do futuro não é o Windows, mas “conversa como plataforma”.

As interações humanas são incrivelmente fascinantes se você olhar de perto – a estranheza social, os estilos de comunicação, a maneira como o conhecimento é transferido, a maneira como as histórias são contadas e a confiança é construída.

Mas o que acontece quando uma máquina evoca a mesma resposta?

As interfaces de conversação tornaram-se a nova atração no design de UX. O Google está prestes a lançar um novo chatbot de assistente virtual; O Facebook já lançou a plataforma Messenger atualizada com chatbots; e a Microsoft chegou a afirmar que o sistema operacional do futuro não é o Windows, mas “conversa como plataforma”.

Leitura adicional no SmashingMag:

  • Interfaces de conversação: onde estamos hoje? Para onde estamos indo?
  • A conversa prejudica ou ajuda o Chatbot UX?
  • Como desenvolver um bot de bate-papo com Node.js
Mais depois do salto! Continue lendo abaixo ↓

O que todos os grandes players do setor já descobriram é que os avanços na inteligência artificial (IA) podem resolver um problema de UX muito importante: fazer com que sites e aplicativos de marca sem rosto pareçam realmente pessoais.

Apresentação do Facebook Messenger: reservando um quarto de hotel em movimento
Apresentação do Facebook Messenger: reservar um quarto de hotel em movimento (Ver versão ampliada)

Os chatbots podem criar uma experiência mais genuína e personalizada, que pode ser comparada à experiência em uma loja – você recebe um sorriso do vendedor, um bate-papo e uma piscadela amigável, o que torna toda a experiência de compra mais pessoal e agradável . Para as marcas, isso representa uma oportunidade de ampliar e gerenciar relacionamentos com seus clientes e ir além de ser “apenas um produto”.

No entanto, construir um chatbot genuinamente útil e atraente ainda é um desafio do ponto de vista de UX. Embora agora tenhamos um aprendizado de máquina brilhante, que avança as tecnologias de IA e processamento de linguagem natural (NLP), ainda estamos um pouco limitados no tipo de auxiliar que podemos criar e precisamos aproveitar ao máximo o que temos. Matt Schlicht, fundador da Chatbots Magazine, criou um guia muito completo resumindo o estado atual do ecossistema de chatbots e as oportunidades para designers.

Recentemente, trabalhei no projeto de chatbot para Alty – um bot de mensagens do Facebook para conversar com clientes em potencial, apresentá-los à empresa e aos serviços oferecidos e enviar perguntas por e-mail.

Chatbot
(Ver versão grande)

A experiência foi relativamente nova e desafiadora. Ao contrário da interface gráfica do usuário (GUI) padrão, o aplicativo precisava funcionar perfeitamente com pouca entrada do usuário, fornecer novo valor aproveitando as informações armazenadas e antecipar as necessidades dos usuários. Padrões e fluxos padrão realmente não funcionam no design de conversação, ou então eles precisam de reajustes significativos. Confira o Bot UI Kit para plataforma Messenger, cortesia de Mockuuups e Botframe - uma ferramenta de prototipagem simples para emular conversas desenvolvida por Alsadir Monk para ter uma ideia melhor dos fluxos comuns nesta plataforma.

1. Escolha um kit de ferramentas

Como já foi dito, o primeiro desafio que você provavelmente encontrará é que você tem pouco controle sobre a aparência do aplicativo. Você não precisa se preocupar muito com tipografia, layouts ou estilo. Se você estiver construindo um chatbot de controle de voz, ele nem terá um lado visual! Portanto, abandone a maioria das ferramentas padrão e melhore seu kit de ferramentas com novas ferramentas úteis.

Para o nosso projeto, optamos pela ferramenta mais simples - Chatfuel, um construtor de bot gratuito e intuitivo para o Facebook Manager com uma interface de arrastar e soltar e quase nenhuma codificação necessária.

No entanto, se você planeja criar um bot mais avançado, vale a pena analisar as seguintes ferramentas:

  • Twine Este editor de texto não linear cria scripts de texto e sequências de mensagens para seus diálogos.
  • Wit Esta ferramenta indispensável irá ajudá-lo a converter comandos de voz e texto em ações. Dezenas de comandos úteis foram criados pela comunidade e você pode adicionar outros personalizados.
  • Botkit Howdy's Botkit oferece um conjunto prático de comandos e código pronto para você criar seu primeiro chatbot do Slack.
  • Api.ai Recentemente adquirida pelo Google, esta plataforma robusta e abrangente ajudará você a construir qualquer tipo de interface UX conversacional.
  • Botwiki Este wiki responde a todas as perguntas comuns sobre chatbots.

Poucos dos controles ou estilos padrão que usamos em aplicativos padrão se aplicam ao design de conversação.

2. Dica para o usuário sobre como começar

O design conversacional muda completamente a maneira como os usuários interagem com um aplicativo. Normalmente, quando um usuário abre um novo aplicativo iOS, ele vê alguns elementos familiares, como um menu, um painel para fazer login ou criar uma conta, botões e assim por diante - os elementos com os quais eles já sabem interagir com base em esquemas.

No entanto, o primeiro encontro com um chatbot é menos convencional. O usuário estará olhando para uma tela em branco, perdido em suposições sobre o que fazer a seguir ou como interagir com o aplicativo. Eles enfrentam dois problemas simples:

  • “Não tenho ideia do que devo fazer.”
  • “O que exatamente essa coisa pode fazer por mim?”

Os chatbots ainda não parecem intuitivos para a maioria dos usuários. Portanto, sua primeira tarefa é avisar o usuário sobre o que está prestes a acontecer. Comece com uma introdução rápida e um call to action direto, algo como:

Chatbot
(Ver versão grande)

Mantenha isto curto e simples. Convide os usuários para experimentar um benefício rápido do seu aplicativo e aproveitar o resultado imediatamente.

No caso do bot da Alty, optamos por incluir botões na conversa por alguns motivos principais:

  • Digitar em movimento pode ser complicado para alguns usuários, e os chatbots nem sempre são inteligentes o suficiente para detectar erros de digitação (embora falaremos sobre como lidar com isso mais tarde).
  • Os botões podem sugerir aos usuários que tipo de perguntas o bot pode responder e quais ações ele pode executar.

3. Crie o fluxo de conversa certo

Você quer que seu robô pareça um mago, em vez de um obstáculo, certo?

Uma das partes mais desafiadoras de projetar um chatbot é fazer com que a conversa flua da maneira mais natural e eficiente possível. No entanto, a interação humana é tipicamente confusa e não linear. Aqui estão algumas dicas para otimizar o desempenho do aplicativo.

Ensine seu bot a distinguir entre diferentes tipos de perguntas

Crie o escopo inicial de perguntas que seu bot será capaz de processar e responder com eficiência. Você pode usar uma ótima biblioteca chamada qTypes, que tem mais de 40 subclassificações de como as perguntas devem ser respondidas. qType indica o tipo de resposta que o usuário espera e qSubType indica o formato da pergunta:

  • CH . Com a pergunta de escolha alternativa, o bot é solicitado a escolher entre duas alternativas (por exemplo, “Esta camisa é vermelha ou verde?”).
  • WH . Essas são perguntas que começam com quem, o quê, quando, onde ou por quê.
  • SN . Estas são perguntas de sim ou não (por exemplo, “Você tem um cachorro?”).
  • TG . Uma pergunta de tag não é uma pergunta real, mas sim uma opção para manter a conversa fluindo (por exemplo, “Essa praia é linda, não é?”).

Quando seu bot recebe uma das perguntas padrão, ele pode produzir respostas mais precisas com base nos dados da biblioteca:

Chatbot

Evite fazer perguntas retóricas, porque a maioria dos usuários tende a respondê-las de qualquer maneira, mesmo que o chatbot esteja apenas sendo educado.

Agora que seu bot é capaz de entender perguntas, o próximo desafio é ensinar o aplicativo a renderizar comandos apropriados em troca.

Valide os dados de entrada de forma mais eficaz

Uma GUI padrão permite refinar os dados inseridos facilmente ao processá-los. Este endereço de e-mail é válido? Este nome de usuário está disponível? Este número de telefone é válido? Você pode restringir e refinar facilmente os dados inseridos antes de processá-los.

No entanto, no design de conversação, as coisas ficam um pouco mais complicadas. O usuário é livre para dizer ou digitar o que quiser; portanto, você precisa ser esperto ao construir suas perguntas e processar as respostas.

Ofereça dicas . Evite perguntas abertas sempre que possível, porque geralmente resultam em mais confusão. Em vez disso, solicite o tipo de resposta que você espera. Por exemplo:

Que tipo de estudo de caso você gostaria de ver? Temos aplicativos para viagens, redes sociais, design e finanças pessoais.

Ou você pode apresentar as informações de acordo com o formato da plataforma em que está construindo – por exemplo, listas no caso do Facebook Messenger:

Chatbot
(Ver versão grande)

Além disso, confirme . Se a resposta for válida, repita-a para garantir que tudo está correto e, em seguida, passe para a próxima pergunta:

Entendi. Aplicativos de viagem. E qual orçamento você tem em mente?

Ou sugerir o que deu errado . Se os dados inseridos não forem válidos, explique novamente que tipo de resposta você precisa. O ideal é distinguir entre respostas que você não entende e respostas que são boas, mas que você não pode aceitar:

Chatbot
(Ver versão grande)

Não se esqueça de que os usuários estão conversando com seu aplicativo. Eles podem usar palavras diferentes para descrever a mesma coisa – por exemplo, “qui”, “quinta-feira”, “amanhã” ou uma palavra com um erro de digitação. Você pode pedir que eles confirmem sua entrada ou se concentrar na criação de sequências de mensagens mais avançadas para o seu chatbot.

Você pode refinar os dados inseridos executando-os no Normalizer, uma biblioteca que converte a ortografia do Reino Unido e do Canadá para o inglês dos EUA, explica abreviações comuns e corrige mais de 4.000 palavras com erros ortográficos.

Aguarde entradas críticas. Em alguns casos, você precisará que o usuário insira algumas informações essenciais sem as quais você não pode prosseguir. Em GUIs padrão, o problema geralmente é resolvido com uma janela modal pop-up que bloqueia o acesso a tudo até que o usuário conclua a tarefa: “Você validou seu endereço de e-mail?”, com a janela solicitando “Sim” ou “Não”.

No entanto, no design de conversação, você deve abordar esse problema de uma maneira um pouco diferente. Esse tipo de loop pode ser bastante irritante com um robô, portanto, certifique-se de explicar a ação exata que você precisa e por que você precisa dela de forma tão crítica. Prepare alguns snippets de conversação para evitar que o chatbot fique repetitivo:

Chatbot
(Ver versão grande)

Em geral, pense duas vezes se determinada informação é crítica para prosseguir. Sempre que possível, faça um palpite ou peça a mesma informação novamente durante uma etapa subsequente.

Outra opção é usar botões e textos pré-sugeridos que os usuários podem escolher tanto ao fazer perguntas quanto ao fornecer as respostas. Os botões devem melhorar a qualidade geral das entradas do usuário, no entanto, podem reduzir um pouco o fator de engajamento. Portanto, é melhor usá-los apenas quando precisar receber os dados essenciais para prosseguir.

À medida que a tecnologia de IA avança, pode ficar mais fácil treinar bots para dar certas respostas e ensiná-los a adivinhar a intenção do usuário com base em interações anteriores armazenadas no banco de dados. No entanto, a maioria dos chatbots hoje não tem cérebros sofisticados de IA para responder aos usuários; portanto, para um melhor UX, você precisará fazer esse trabalho sozinho.

4. Concentre-se na microcópia

O designer deve pensar como um redator ao desenvolver um chatbot. O conteúdo e a caixa de diálogo definirão o estilo do seu produto. Os melhores aplicativos geralmente são aqueles que apresentam uma maneira divertida de falar. Portanto, concentre-se no seguinte:

  • Siga o mesmo fluxo de usuário que você faria se estivesse realmente falando com uma pessoa.
  • O bot não deve parecer muito inteligente, usando estruturas gramaticais ou de linguagem complicadas. Mantenha-o simples e seja conciso.
  • Não use pronomes específicos de gênero, porque você nunca sabe quem está do outro lado da conversa.
  • Prepare um conjunto de respostas prontas ligeiramente diferentes para tornar a conversa mais humana.
  • Adicione mensagens de ajuda e sugestões para quando o usuário se sentir perdido.
  • Escreva respostas espirituosas para tópicos não suportados, para que o bot não pareça burro.

5. Revele recursos gradualmente

As GUIs padrão geralmente mostram todos os recursos disponíveis na tela de uma só vez. O usuário pode passar o mouse sobre ícones, clicar em botões e acessar o menu para ver o que o aplicativo é capaz de fazer.

Interagir com um chatbot, no entanto, pode parecer que o usuário está falando no vazio. Portanto, indique cada próxima etapa e destaque gradualmente os recursos desconhecidos. Vamos explorar o que isso significa.

Depois de receber o comando inicial do usuário, explique o que está prestes a acontecer e o que o robô fará para concluir a tarefa. Sugira as próximas etapas possíveis e/ou link para a página de perguntas frequentes ou manual do usuário.

Desbloqueie recursos adicionais após a primeira interação bem-sucedida. Desative o “modo de treinamento” e comece a sugerir recursos adicionais e dicas mais avançadas. Baseie esses recursos e dicas no histórico do usuário e nos dados inseridos anteriormente.

Encomendar tacos com o chatbot do Taco Bell
Encomenda de tacos com o chatbot do Taco Bell (Imagem: Taco Bell) (Ver versão ampliada)

Avisar o usuário sobre novas coisas para fazer. Por exemplo, sugira proativamente alguns outros recursos interessantes do seu robô:

Ei, você tem uma festa chegando! Quer que eu peça 5 pizzas grandes?

A agilidade de conversação é um dos principais pontos fortes do bot Taco, por exemplo. A empresa usou o Wit.ai para alimentar diferentes cenários de conversa e até fazer algumas piadas. A tecnologia de processamento de linguagem natural da plataforma, que agora também é usada para alimentar o M Virtual Assistant do Facebook, permite que o bot renderize diferentes estilos de ordenação. Por exemplo, “Posso comer um burrito?”, “Buritto, por favor”, e até mesmo responder hilariamente ao pedido “Estou bêbado”, que aciona o “Ok. Um copo de água adicionado ao seu pedido” responde. Além disso, os usuários podem digitar um comentário de uma linha como “sans cheese” e o bot entenderá que a informação se refere ao burrito pedido anteriormente.

No entanto, se o chatbot iniciar a conversa, certifique-se de que ele dê sugestões relevantes, porque você não quer parecer um spammer desagradável, certo?

Chatbots e reconhecimento de fala

Os comandos de fala estão se tornando uma coisa com a Siri e o Google Now, mas o desenvolvimento desses bots obviamente exige recursos humanos e materiais. Mesmo as redes neurais mais poderosas que são responsáveis ​​pelo reconhecimento de fala são bastante difíceis de treinar no momento. O desafio mais comum é que, enquanto pequenos erros são simples o suficiente para eliminar, os maiores recorrentes podem se tornar ainda maiores devido à multiplicação, como aponta Andrew Gibiansky.

Por exemplo, se um usuário com sotaque pronuncia Apple como Eupple , a rede pode lembrar o comando dessa maneira. Os homófonos são outro grande desafio para o reconhecimento de fala; palavras como “flor” e “farinha” soam idênticas, e entender o contexto certo pode ser difícil.

Portanto, se seu objetivo é construir um chatbot simples, optar por comandos de fala pode não ser sua melhor aposta no momento, a menos que você esteja pronto para investir fortemente na arquitetura e na pilha de tecnologia avançada de aprendizado de máquina.

Notas Finais

Embora os chatbots possam ser uma ótima ferramenta para criar uma experiência de cliente mais personalizada, o design conversacional ainda tem algumas limitações. Como Mariya Yao apontou, há casos claros em que uma conversa pode ajudar ou prejudicar o UX.

Antes de construir um chatbot para o seu negócio, você deve definir claramente o seu propósito e o valor exato que ele pode trazer para o usuário. Ensine o bot a fazer algo extremamente bom, como fornecer previsões meteorológicas ou apresentar o escopo de serviço da empresa antes de experimentar recursos mais avançados. Essa é a principal lição que aprendemos ao desenvolver o bot de abril com base no feedback do usuário.