# NLU

Pour Natural Language Understanding, autrement dit Compréhension du Langage Naturel. Nous utilisons pour ce faire deux technologies :

  1. le Machine Learning détecte des intentions et des entités
  2. l'Elastic Search compare l'expression de l'utilisateur avec les expressions clés paramétrées dans le chatbot

Vizir est le seul outil du marché à combiner ces deux technologies.

Nous mettons à disposition de nos clients un certains nombre d'algorithme de compréhension du langage naturel.

Il est possible de choisir ceux que vous souhaitez utiliser dans votre chatbot.

# Intention / entités (machine learning)

Le premier algorithme nous permet Ă  partir d'une requĂȘte utilisateur d'en extraire une intention et des entitĂ©s.

👉 L'intention sera le sujet principal de la phrase.

👉 Les entitĂ©s seront les attributs de cette phrase.

Par exemple: Je veux un billet de train de Paris Ă  Marseille pour demain matin
intention: book_ticket
entités: villes: [Paris, Marseille], date: demain matin.

Cette NLU est trÚs efficace lorsque votre chatbot va réaliser des actions pour l'utilisateur final. (Réserver un billet de train, Créer un ticket, Changer le mot de passe, ...)

Au contraire cette NLU ne sera que trÚs peu performante pour répondre à des sujets de FAQ.
Lorsque vous souhaitez développer un chatbot de FAQ il faut utiliser un autre type d'algorithmes.

Le second algorithme permet au chatbot de chercher dans une base de connaissance en fonction d'expressions clés. C'est notamment trÚs pratique pour les compétences FAQ. Cet algorithme fonctionne comme suit :

  • il prend la question en langage naturel de l'utilisateur
  • il supprime les mots inutiles (et, ou, son, sa, mes,...)
  • il compare l'expression nettoyĂ©e avec les expressions clĂ©s que vous avez paramĂ©trĂ© dans votre contenu
  • il renvoie la ressource dont l'expression clĂ© est la plus similaire Ă  la requĂȘte utilisateur

La majorité des chatbots complets combinent les deux algorithmes. Le Machine Learning va faire le premier tri et renvoyer soit vers une compétence FAQ ou scénario, soit vers une compétence action. Dans le cas d'une compétence FAQ, c'est ensuite l'Elastic Search qui fait le job. Dans le cas d'une compétence action, c'est toujours le machine learning qui travaille en pré-remplissant les questions collectées !