Tech

Petit lexique des chatbots : définitions et explications des termes fréquents

Petit-lexique-des-chatbots

Nous vous proposons ici un lexique reprenant les principaux termes utiles à la compréhension ainsi qu’à la mise en place d’un chatbot.

1/ Chatbot ou Agent Conversationnel

Un chatbot est la combinaison des mots anglais chat et robot, on le traduira en français par “robot conversationnel” ou agent conversationnel. C’est un logiciel présenté sous forme de messagerie instantanée, capable d’interagir avec les humains à l’aide de réponses pré-enregistrées. Les réponses sont envoyées en fonction de ce que le chatbot a compris dans la phrase de l’utilisateur.

Chatbot-ou-Agent-Conversationnel

Un chatbot peut répondre à différents projets/besoins :

  • Service après-vente
  • Expérience client
  • Achats guidés
  • Publicité personnalisée
  • etc.

Il peut être intégré sur un site internet (en pleine page ou via un plug-in) ou une application de messagerie (Facebook Messenger, Twitter DM, Slack, etc.). On parle aussi également régulièrement de VoiceBot. Ce sont des agents conversationnels qui interagissent non plus à travers du texte, mais à travers la voix.

Pour aller plus loin…

Découvrez notre série d’article « Comment Créer un chatbot » :

2/ Quick replies et Saisie Libre

  • Quick replies : Ce sont des boutons intégrés dans la conversation afin de faciliter la réponse de l’utilisateur qui n’a qu’à cliquer sur le bouton de son choix au lieu d’écrire sa réponse. Cela permet un gain de temps pour l’utilisateur mais aussi de le guider dans sa progression.
Quick-replies
  • Saisie libre : l’utilisateur écrit sa réponse lui-même dans la zone de saisie du texte.
Saisie-libre

3/ Machine Learning

Le machine learning est le fait d’entraîner un algorithme, ou modèle, à prendre des décisions ou à engager des actions à partir de l’analyse de mots, d’images, de chiffres, de données, etc.

C’est donc un système capable d’apprendre à partir des expériences ou données qui lui sont fournies.

Exemple : entraîner un modèle à reconnaître une photo de chat en lui fournissant différentes photos de chats.

Le machine learning s’applique aux chatbots lorsqu’il doit par exemple détecter l’intention du message de l’utilisateur. Il permet aux chatbots de gérer des conversations plus complexes.

4/ NLP (Natural Language Processing) : Traitement Automatique du Langage Naturel

Le NLP est la branche du machine learning qui utilise des modèles capables de comprendre les textes.

Les modèles NLP sont entraînés pour apprendre à faire le lien entre le langage humain et les ordinateurs. Leur but principal est d’apporter la meilleure réponse possible à l’utilisateur en garantissant la compréhension des saisies libres (via la détection d’intentions ou de mots-clefs).

Pour aller plus loin…

5/ Intention

Les intentions permettent au chatbot de comprendre la question posée par l’utilisateur.

Il y a 2 manières de détecter une intention :

  • Détection par modèle NLP
  • Détection par mots clés

5.1/ Détection par modèle NLP

La détection d’intention par modèle NLP permet d’entraîner le chatbot à reconnaître l’intention qu’il recherche, si celle-ci est présente, et à la reconnaître parmi différentes formulations. Elle s’articule en deux phases : d’abord l’entraînement de l’agent conversationnel (assimilation de phrases contenant ou non l’intention), puis l’interprétation (détection de l’intention ou non) de ces phrases.

PHASE 1 (ENTRAÎNEMENT) :

Le chatbot va recevoir une série d’exemples de phrases ayant la même intention, formulées différemment; mais également des phrases qui ne comportent pas l’intention, et qu’il ne devra donc pas reconnaître. Il appuiera ainsi son analyse sur l’expérience qui lui aura été fournie.

Dans un premier temps, le chatbot reçoit plusieurs exemples de formulations pour la détection de l’intention « réserver un billet de train » pour une compagnie ferroviaire :

  • Je souhaite réserver un billet
  • Je veux une place de train
  • J’aimerais commander un ticket
  • Réservation d’un billet pour un voyage
  • etc

La liste complète contiendrait plusieurs centaines de phrases.

Dans un second temps, le chatbot reçoit une série d’exemples qui ne contiennent pas l’intention “réserver un billet de train” :

  • Je veux acheter un billet d’avion
  • Réserver un covoiturage
  • Je souhaite louer une voiture
  • Annuler une chambre d’hôtel

PHASE 2 (Interprétation) :

Le chatbot interprète les phrases des utilisateurs et détecte l’intention « réserver un billet de train » même pour des formulations différentes de celles de la phase 1.

Voici des exemples de formulations jamais vues mais qui seraient détectées :

  • Je veux commander un billet
  • J’aimerais acheter un aller-retour
  • Se procurer un billet
  • Réserver un voyage en train

5.2/ Détection par mots clés

La détection de mots clés se fait à partir d’une liste de mots clés inscrits manuellement. Lorsque le chatbot détecte un mot appartenant à la liste, il apportera la réponse correspondante. Cette méthode ne demande pas d’entraînement du chatbot puisqu’il est limité à la simple détection de mots qu’on lui a fourni.

Exemple : les mots suivants peuvent être reconnus automatiquement comme des mots clés liés à “oui”

  1. Oui
  2. D’accord
  3. Ok
  4. Très bien
  5. Ça marche

6/ Fuzzy Matching

Le fuzzy matching est une méthode permettant au chatbot de détecter des mots clés, même si ceux-ci sont mal orthographiés.

Exemple où le mot “chatbot” serait mal orthographié :

Fuzzy-Matching

7/ Entité

Le chatbot va classer certains mots/groupes de mots dans des catégories pré-définies comme un lieu, un numéro de téléphone, une adresse mail. On appelle entité les mots associés à ces informations. Elles servent à préciser l’intention de l’utilisateur et notamment ses paramètres.

Par exemple, le chatbot reçoit le message suivant :

Entite

Ici, l’intention de l’utilisateur identifiée est de réserver une chambre. Le chatbot va alors chercher les informations manquantes (= Entités) pour répondre au mieux aux attentes de son utilisateur :

– Entité 1: Le type de chambre souhaitée : « chambre double »

– Entité 2 : La date à laquelle l’utilisateur souhaite sa chambre : « demain »

8/ UX design : User eXperience design

L’UX design définit différentes normes et bonnes pratiques dont le but est d’obtenir un produit, (un site web, une application mobile, et donc un chatbot) capable de répondre aux besoins de l’utilisateur, tout en s’assurant que son expérience soit la meilleure possible.

On parle donc régulièrement d’UX conversationnelle, discipline qui permet de concevoir des agents conversationnels les plus performants et agréables à utiliser.

9/ Arborescence

Une arborescence, ou arbre de décision, sert à définir le comportement du chatbot en matérialisant des états/étapes et les conditions de transition entre chaque état.

arbo

10/ Etat

L’état indique à quelle étape se trouve l’utilisateur dans l’arborescence du chatbot. Il y a changement d’état lorsque le chatbot parvient à comprendre la demande de l’utilisateur et à y répondre. Les conditions de changement d’état sont définies pour chaque état.

11/ Escalade / Takeover

Lorsque le chatbot n’arrive plus à comprendre la conversation, ou bien quand il fait face à un interlocuteur agressif, un humain peut être alerté pour reprendre la main sur la conversation. C’est ce qu’on appelle l’escalade.

12/ Faux positif / Faux négatif

On distingue les notions suivantes :

  • Faux positif : intention non présente mais détectée par le chatbot
  • Faux négatif : intention présente mais non détectée par le chatbot
  • Vrai positif : intention présente et détectée par le chatbot
  • Vrai négatif : intention non présente et non détectée par le chatbot
Petit lexique des chatbots
  • Prenons pour exemple l’intention « aimer les SUV« 
aimer-les-SUV
  • Ceci est un faux positif : l’intention “aimer les SUV” n’était pas présente, pourtant elle a été détectée par le chatbot.
faux-positif
  • Ceci est un faux négatif : l’intention “aimer les SUV” était présente, pourtant le chatbot ne l’a pas détectée.
faux-negatif
  • Ceci est vrai positif : l’intention “aimer les SUV” était présente et le chatbot l’a détectée.
vrai-positif
  • Ceci est un vrai négatif : l’intention “aimer les SUV” n’était pas présente, et le chatbot ne l’a pas détectée.

13/ SAV de Niveau 0 / Niveau 1

SAV Niveau 0 : il s’agit d’un niveau de prise en charge des questions simples et fréquentes des utilisateurs par le service client. Les réponses à ces questions sont les mêmes pour tous les utilisateurs.

Exemples :

  • les horaires d’un magasin
  • les moyens de paiement acceptés
  • l’adresse d’un magasin

SAV Niveau 1 : il s’agit d’un niveau de prise en charge supérieur, nécessitant en général des informations personnelles de l’utilisateur comme son adresse mail ou son numéro de commande. Les réponses à ces questions sont dépendantes de l’utilisateur qui fait la demande.

Exemples :

  • Débloquer une carte bancaire
  • Gérer le retour d’un colis.

Dans les deux cas, le but d’un chatbot sera de faire gagner du temps aux opérateurs humains sur les tâches répétitives à faible valeur ajoutée de niveau 0 ou de niveau 1. Pour les prises en charge plus complexes, le chatbot fera appel à un opérateur humain.

14 / Transformer

Un transformer est un algorithme qui transforme un mot en élément compréhensible par l’ordinateur (un vecteur). Cet élément représente le sens du mot dans le contexte d’apparition du mot dans une phrase. On peut par exemple citer Word2Vec ou BERT comme Transformer connus. Word2Vec est une représentation statique des mots, alors que pour BERT la représentation d’un mot dépend du contexte dans lequel il est employé.

NLU_Word-Embedding-Transoformer-BERT

Nous espérons que ces définitions vous serons utiles ! Si vous souhaitez-nous suggérer des ajouts