Pour aller plus loin : comment les améliorer ?
Leurs défauts
- Les langues étrangères Les chatbots sont souvent conçues pour une langue étrangère en particulier, et sont peu à même de soutenir une conversation dans une autre langue, voire même de la reconnaître.
- La répétition Elles ont des difficultés à gérer la répétition : mis à part Elizia et Eliza, elles ne la détectent pas et font comme si l'utilisateur disait quelque chose de nouveau à chaque fois, ce qui amène parfois à des réponses différentes et donc incohérentes.
- La continuité dans l'échange Les chatbots ne gardent généralement pas en mémoire la conversation en entière. il est alors extrèmement difficile de poser une question sur deux tours de paroles (elles ne fonctionnent que sur une question - une réponse à la fois).
Par exemple, "Quelle âge as tu ?" -"Quand ?" -"Aujourd'hui" -"Penser contre son temps, c'est de l'héroïsme". (échange avec Elizia).
Des solutions ?
Nous allons ici nous pencher sur quelques améliorations possibles envisagées dans le cas particulier d'Elizia.
- Les langues étrangères Il suffirait de rajouter plusieurs mots (les plus courants, comme oui, non, bonjour...) de quelques langues parmi les plus utilisées. Bien sûr, il serait difficile de rentrer toutes les langues existantes, en un nombre suffisant pour que le chatbot puisse soutenir une conversation.
- Le vocabulaire On peut en effet rajouter plusieurs mots pour enrichir le lexique. Cependant, si on n'augmente pas le nombre de réponse, Elizia ne sera pas plus efficace. Cependant, cette amélioration risque de demander beaucoup de temps et beaucoup de données, assez lourdes pour un programme.
- Le cas des auxiliaires Avoir, par exemple. Pour le moment, Elizia ne prend en compte que le sens lexical du verbe "avoir" (dans le sens de posséder). Elle ne prend pas en compte toutes les constructions utilisant "avoir" comme auxiliaire, comme le participe passé par exemple, très courant en français. Par conséquent, les réponses qu'elle renvoie ne peuvent pas être adaptées. Il faudrait alors qu'Elizia fonctionne ici non par mots clés mais par une analyse syntaxique, en regardant les combinaisons entre différents éléments.
- Une analyse en mots clés insuffisante ? On l'a vu, l'analyse par mots clés pose parfois quelques problèmes. N'oublions pas le cas de la négation, où, lorsqu'il y a analyse en mots clés, les marqueurs de la négation (qui ne sont pas les éléments principaux mais néanmoins non négligeables à la compréhension du sens) sont ignorés, ce qui empêche l'envoi d'une réponse adaptée. De plus, le choix des mots clés par le programme (qui détermine ses mots clés suivant la fréquence d'apparition attachée à tel ou tel mot) n'est pas toujours justifiée : Lorsqu'on demande à Elizia "Pouvez vous répéter ?" Elle va se focaliser sur le "vous", et ignorer la question posée dont le mot clé devrait plutôt être "répéter". Pour une meilleure efficacité, les chatbots pourraient peut être inclure un fonctionnement syntaxique (c'est à dire tenir compte de la combinaison des mots entre eux).