[ChatBot] Quem vence? Diálogo guiado e diálogo sobre linguagem natural

Augustin Missoffe Blocked Unblock Seguir Seguindo 13 de março de 2017

Chatbots estão florescendo em todos os lugares nos dias de hoje. Todos estão muito empolgados com isso e os usuários estão curiosos sobre como será um chatbot antes de usá-lo, como ele responderá e como eles terão que usá-lo. A maioria dos usuários pensa em um chatbot como os serviços Siri ou Alexia, que serão capazes de entender quase tudo e responder a uma ampla variedade de perguntas. Mas, na verdade, existem diferentes padrões de conversa para os chatbots.

Diálogo guiado

Você pode ter encontrado muito esse padrão de conversação em clientes de mensagens. O princípio aqui é orientar o usuário no processo de obtenção do serviço que ele deseja. O bot conduzirá a conversa, fará uma pergunta ao usuário, sugerirá uma série de respostas e permitirá que o usuário escolha uma. Em seguida, o processo continua até que o bot tenha todas as informações necessárias para fornecer ao usuário informações relevantes.

Esse tipo de bot pode parecer bastante básico para um usuário que está esperando uma experiência semelhante à da Siri, mas na verdade é um padrão muito conveniente para a maioria das empresas. O objetivo aqui é incomodar o usuário o menos possível, indo direto ao ponto.

Em termos de desenvolvimentos técnicos, isso também é mais direto ao ponto: o desenvolvedor tem uma lista dos diferentes cenários que ele tem que implementar e pode facilmente construir caminhos para responder a cada um deles. Enquanto o bot manejar por si só a lista de possíveis respostas a uma pergunta, não há muito mais tratamento a ser feito em termos de UX de conversação: o bot entende tudo e sabe como lidar com as respostas.

A complexidade aumenta um pouco quando o bot permite que o usuário responda livremente. Nesse caso, o desenvolvedor precisará implementar mecanismos diferentes para garantir que o bot possa realmente entender e usar o que o usuário diz. Vamos dar um exemplo: se o bot perguntar o nome dele ao usuário, ele deve ser capaz de entender que o usuário não deu o nome dele se ele responder “Por que você quer saber meu nome? » Mesmo que não seja importante entender a essência dessa resposta autônoma, pelo menos ele precisa saber quando deve solicitar ao usuário uma melhor informação. Na verdade, entender o significado de tal resposta pode ser muito mais difícil, e para isso é melhor procurar um diálogo de linguagem natural.

Diálogo em Linguagem Natural

Todo mundo conhece a Siri. Você pode perguntar quase qualquer coisa para Siri, ele vai responder a alguma coisa. Mas o mais importante aqui é que você pode perguntar qualquer coisa usando sua maneira de falar. Isso ocorre porque esse bot foi treinado para entender uma pergunta feita de diferentes maneiras. Isso é o que chamamos de reconhecimento de linguagem natural, e isso é feito graças ao aprendizado profundo.

Desenvolver um bot desse tipo tem uma grande vantagem: oferece uma experiência de usuário muito melhor. Nesse caso, o usuário não é necessariamente guiado pelo bot na conversa, mas pode perguntar qualquer coisa da maneira que desejar. A primeira impressão para o usuário é ter o controle sobre a conversa, o que é bastante reconfortante.

Mas o fato de você permitir que o usuário conduza a conversa globalmente não significa que você não possa usar um diálogo orientado em uma conversa em linguagem natural. Normalmente você usará os dois, conforme mostrado no exemplo abaixo:

Neste exemplo, podemos até simplificar o diálogo guiado se o usuário fornecer mais informações em sua sentença de solicitação. Por exemplo, se ele diz «eu gostaria de reservar um restaurante italiano perto de Nanjing Xi Lu para amanhã», o chatbot pode ser capaz de extrair dele o tipo de restaurante, a localização e a data. Em seguida, no diálogo orientado, ele ignorará automaticamente essas etapas.

O diálogo de linguagem natural, portanto, induz a necessidade de mais design e desenvolvimento.

Em primeiro lugar, você precisará conectar seu chatbot a uma solução de reconhecimento de idioma natural (ou desenvolver um por conta própria, se tiver tempo) e ensinar frases ao seu bot. Esse processo pode ser muito longo, já que você precisa reunir, para cada pergunta, o máximo possível de variantes, a fim de reduzir o risco de ter o bot respondendo "Desculpe, não entendi". Esse ensinamento geralmente não pode ser feito perfeitamente no tempo de desenvolvimento; você precisará vigiar seu bot e rastrear qualquer pergunta não respondida que deveria ter dado uma resposta.

Em segundo lugar, deixar o usuário perguntar qualquer coisa fará com que você tenha que lidar com frases fora do escopo, como “quem é você? »,« Você é um bot esperto? ", " Oque você sabe? », Etc … Essas frases sempre surgem, pois é natural que um usuário desafie seu bot. E, vamos admitir, isso é engraçado!

Finalmente, o desenvolvedor terá que lidar com caminhos exóticos na conversa. Por exemplo, se o usuário disser «O que você quer dizer? »Será necessário saber qual foi a resposta anterior antes de responder a esta pergunta. Isso torna o desenvolvimento muito mais longo e mais complicado, pois os caminhos de conversas podem rapidamente se assemelhar a um prato de espaguete!

Conclusão

Escolher entre um modelo de diálogo orientado e uma mistura com linguagem natural é uma questão de modelo de negócio, objetivos e orçamento. Se você desenvolver um jogo de quizz, provavelmente não desejará introduzir reconhecimento de linguagem natural. A mesma coisa se sua bot tiver como objetivo permitir que os usuários tenham informações sobre restaurantes na cidade.

Mas se você é, digamos, uma companhia de seguros que deseja oferecer um rápido primeiro feedback aos clientes após um acidente ou apenas saber como eles são cobertos dependendo de situações diferentes, você pode preferir introduzir um diálogo de linguagem natural junto com diálogos guiados. . O usuário então iniciará a conversa orientando o bot para o assunto no qual ele deseja ter informações, e um diálogo orientado eventualmente começará a perguntar e fornecer informações.

Finalmente, se você deseja criar um bot cujo objetivo seja ajudar as pessoas a deixar de fumar por meio de uma conversa o mais natural possível, você provavelmente optará por usar apenas o reconhecimento de linguagem natural. A propósito, o primeiro programa na história considerado como um chatbot foi ELIZA, cujo objetivo era simular um psicoterapeuta.

Como você pode ver, desenvolver um chatbot não é implementar um modelo que funcione em qualquer caso. Cada projeto é único e uma estrutura única de chatbot deve ser aplicada a ele. A Phoceis pode ajudá-lo a determinar a melhor maneira de desenvolver seu chatbot.

Créditos: Demonstração de Diálogo construída com o Walkie https://walkiebot.co

Siga-nos no WeChat digitalizando o QR Code

Mais informações :

contato@phoceis.asia

Twitter: @Phoceis

Facebook: @PhoceisAsia

www.phoceis.com