Comprendre le fonctionnement d’un assistant conversationnel

EVA - Employee Virtual Assistant 12-04-2019   •   5 min de lecture

Comme on l’a vu, un chatbot présente de nombreux bénéfices pour une entreprise. Mais comment un programme informatique peut-il répondre à tant de demandes ? Comment fonctionne un chatbot ? Attardons-nous quelque peu sur les rouages de cette mécanique élaborée. Mais avant toute chose, encore faut-il préciser de quel type d’agent conversationnel on parle…

Le chatbot type arbre de décision

Le premier type de chatbot est sa version la plus simple. Son fonctionnement ne repose pas sur une véritable intelligence artificielle, mais principalement sur un arbre de décision. Autrement dit, l’agent conversationnel va diriger la conversation avec l’utilisateur, de sorte à pouvoir lui répondre grâce à des scénarios préétablis. On parle d’arbre de décision, car chacune des branches représente des choix possibles, en fonction de la situation.

Ainsi, un chatbot de ce type peut proposer une liste déroulante de possibilités en début de conversation. Puis, par exemple, si l’utilisateur choisit « Congés », l’agent conversationnel peut lui fournir automatiquement le formulaire de demande de congés, à télécharger.

Dans le cas ci-dessous, Clevy demande à l’utilisateur s’il souhaite poser ses congés. L’arbre de décision va lui amener une solution différente selon le bouton “Non Merci.” ou “Oui, s’il te plaît !”

Le chatbot « intelligent », à base de NLP

Au contraire, le fonctionnement d’un chatbot peut s’appuyer sur l’intelligence artificielle. Dans ce cas, le programme est capable de comprendre le langage humain et de répondre de façon appropriée. Pour cela, il fait appel au NLP (Natural Language Processing), ou traitement automatique du langage naturel. Il fonctionne alors en suivant trois étapes majeures.

  1. Comprendre la question

La première brique du NLP porte un nom proche. Il s’agit du NLU (Natural Language Understanding), ou compréhension du langage naturel. C’est cette technologie qui permet au programme de comprendre la question posée. Ce qui n’est pas une mince affaire.

Prenons un exemple courant. Imaginons un chatbot RH dans une entreprise. Celui-ci est sollicité par un collaborateur, qui lui demande : « Comment je pose mes congés ? »

  • Reconnaître les mots

Premièrement, l’agent conversationnel doit séparer et identifier la nature des différents mots de la phrase. Ici, il va repérer le point d’interrogation et le mot « Comment », lui permettant de conclure qu’il s’agit d’une question. Il va ensuite reconnaître le verbe « poser », conjugué à la première personne du singulier, avec son sujet « je ». Enfin, il va identifier le complément d’objet direct, composé de deux mots. Ce travail préliminaire peut sembler trivial, mais il n’est pas intuitif pour une machine.

  • Déterminer le sens selon le contexte

D’autant que la tâche est loin d’être terminée à cet instant. Le chatbot doit alors procéder à un traitement sémantique, afin d’attribuer un sens à chacun des mots, séparément. Puis il lui faut replacer ces éléments dans le contexte du locuteur, afin de comprendre la véritable signification de la phrase. On parle alors de traitement pragmatique.

L’exemple choisi ci-dessus n’est sans doute pas le plus complexe. Malgré tout, certains éléments nécessitent un traitement particulier. Par exemple, à qui fait référence le « je » employé ? L’interlocuteur est-il déjà identifié ou faut-il lui demander son nom ?

  • Prendre la bonne décision

Ensuite, après avoir déterminé le sens de la question, le chatbot doit trouver la réponse à fournir. Pour cela, il peut faire appel à un arbre de décision (comme vu ci-dessus), des bases de données, des conversations passées, etc. Grâce au machine learning (ou apprentissage automatique), le programme est en effet capable de s’appuyer sur un historique pour prendre la meilleure décision.

  • Formuler la réponse

Enfin, l’agent conversationnel doit formuler sa réponse. Pour cela, il peut s’appuyer sur le NLG (Natural Language Generation), un autre sous-ensemble du NLP. Son but est de permettre au programme de faire des phrases cohérentes, à la manière d’un être humain.

Mais pour l’heure, cette technologie demeure balbutiante et de nombreux progrès restent à accomplir. Par conséquent, la plupart des réponses données par un chatbot ont en réalité été rédigées au préalable par un humain. C’est le cas dans l’exemple ci-dessous, avec deux formulations de questions différentes.

Quel type de chatbot choisir ?

Les différents fonctionnements de chatbots permettent de choisir la solution la plus adaptée à son besoin.

Arbre de décision

Premièrement, si les options ou informations nécessaires pour obtenir la réponse attendue sont nombreuses, préférez l’arbre de décision.

Prenons l’exemple d’Owlie, le petit chatbot psy. La cofondatrice, Clara — avec qui nous avons fait également un podcast, pour parler de la croissance fulgurante de son bot — a créé son chatbot sur Facebook Messenger, sous forme d’arbre de décision.

Pourquoi ? Car ce petit chatbot, ne peut pas anticiper toutes les demandes des utilisateurs. Leurs demandes peuvent traiter d’anxiété, d’humeur, ou témoigner d’un besoin d’aide urgent. Il y a donc plusieurs choix, et chacun mène lui-même à beaucoup d’autres options.

Cela permet également à l’utilisateur de voir directement les réponses proposées par Owlie et de ne pas se perdre dans un nombre infini de possibilités.

Un tel bot peut aussi s’avérer utile au sein d’une entreprise. En effet, des demandes telles que sur les cotisations de retraite sont des questions complexes. Car la réponse dépend d’un grand nombre de conditions : l’âge, le nombre d’années de travail, le statut du collaborateur, etc.

Cependant, les désavantages peuvent se faire sentir au niveau de l’expérience utilisateur. Ne pouvant cliquer que sur des boutons, l’utilisateur sera effectivement obligé de fonctionner comme sur un site web, avec des clics et des menus déroulants.  

Par ailleurs, contrairement au NLP (voir ci-dessous), l’arbre de décision peut augmenter les risques d’abandon. Car si l’utilisateur ne trouve pas sa question parmi les propositions, il peut laisser tomber sa recherche. Et ce, sans qu’il soit possible de connaître la raison de son recours au chatbot (congés en août, problème de retraite spécifique, événement en juin…). La seule solution consiste donc à prévoir toutes les branches en amont, ou bien à faire grandir la base de connaissance au fil de l’eau, avec beaucoup d’allers-retours utilisateurs.

NLP

Il s’agit cette fois de l’agent comme on l’entend. Cette version du chatbot favorise la conversation avec l’utilisateur, à la façon dont nous communiquons avec notre responsable RH.

Toutes les sociétés de chatbots de ce nom doivent avoir la capacité de faire du NLP. Il faudra d’ailleurs différencier les entreprises propriétaires de leur propre technologie NLP, de celles qui utilisent des technologies open source. Celles qui utilisent de l’open source peuvent en effet avoir des problèmes de sécurité. De plus, elles ont peu de contrôle sur les données de leurs clients, étant  dépendantes de ce système.

De son côté, le NLP permet de créer une base de connaissance à partir des questions posées pour les RH, l’IT, le juridique… et d’apporter une réponse immédiate aux collaborateurs. Il peut ainsi dialoguer avec les équipes, et ce, sur un grand nombre de sujets.

À l’inverse de l’arbre de décision, la technologie permet de plus au responsable du support de générer très rapidement un ensemble de questions et de réponses. Mais aussi d’obtenir toutes les nouvelles demandes des collaborateurs restées insatisfaites. Il peut alors alimenter la base de connaissance du bot et envoyer directement la réponse à l’utilisateur qui a posé cette question. Le chatbot peut ainsi devenir totalement autonome, à partir du moment où plus de 90 % des questions ont été intégrées à la base.

Combinaison de l’arbre de décision et du NLP

Cette combinaison d’outils, proposée notamment par Clevy, permet d’alterner entre un besoin de communication simple (NLP) et une situation où les choix sont multiples (arbre de décision). Ce moyen très élaboré permet au support de minimiser le temps passé sur la plateforme, pour se concentrer sur du travail à plus forte valeur ajoutée. Les utilisateurs pourront eux obtenir la réponse à leurs questions plus simplement !

Tags