Pourquoi les ChatBots hallucinent-ils ?


Ceux d’entre vous qui ont utilisé ChatGPT, Google Bard ou des outils similaires, ont probablement constaté que parfois ces chatbots inventent les réponses à nos questions. C’est ce que l’on appelle communément les hallucinations.
Pour comprendre pourquoi elles se produisent, la première chose est de comprendre à un niveau très basique comment ces chatbots fonctionnent. L’élément fondamental est constitué par les modèles de langage (LLMs, large language models). Ces modèles sont entraînés sur de grandes quantités de données, telles que des pages web sur Internet et des livres du domaine public, entre autres. La tâche des LLMs est d’essayer de prédire le mot ou la séquence de mots suivante à partir d’un texte que l’utilisateur saisit. Par exemple, si nous posons une question, le modèle prédit les mots juste après cette question. Comme le modèle a été entraîné sur des millions de documents, il est probable que dans un (ou plusieurs) de ces documents, il ait vu une question similaire, accompagnée de la réponse. Grosso modo, le LLM fonctionne comme un modèle statistique : d’abord, pendant son entraînement, il apprend la probabilité que deux mots ou plus aillent ensemble, puis lors de son utilisation, il utilise cette probabilité pour prédire la prochaine séquence de mots ;
Par exemple, si nous demandons : De quelle couleur est le ciel ?

Pendant son entraînement, il a appris que la séquence de mots la plus probable est : Le ciel est bleu.
Cependant, si nous lui posons une question sur une planète qui n’existe pas, nous pouvons voir ce qui se passe :

Au lieu de répondre qu’il n’y a pas de telle planète, il prédit incorrectement que le ciel est bleu ou noir. C’est parce que statistiquement, ces mots semblent être les plus susceptibles de suivre la question.
Le problème survient parce que nous utilisons les LLMs comme s’ils étaient des bases de connaissances, alors qu’en réalité ce sont des modèles statistiques qui ont été entraînés avec des bases de connaissances. Leur fonction première est de prédire, pas d’interroger une base de connaissances. Si le modèle a vu pendant l’entraînement la réponse à notre question, il sera probablement capable de répondre correctement, avec sa prédiction. Mais s’il n’a pas trouvé de question similaire, ni d’information à ce sujet, le modèle hallucinera.
Résoudre le problème des hallucinations est l’un des grands défis sur lesquels travaillent les data scientists et les ingénieurs. Une approche qui est explorée avec de bons résultats consiste à utiliser le modèle de langage non pas pour répondre directement à la question, mais pour la traduire en une requête vers une base de données. De cette manière, nous n’utilisons plus le modèle comme une base de connaissances, mais nous l’utilisons comme un intermédiaire capable de comprendre le langage naturel et de le traduire en requêtes vers la base de connaissances. ChatGPT, par exemple, introduit des plugins qui, entre autres choses, permettent d’accéder directement à des sources de connaissances, comme le plugin Wikipedia.
Un autre problème avec les modèles actuels est que leur entraînement est très coûteux et prend beaucoup de temps (on estime que l’entraînement de GPT-4 a coûté plus de 100 millions de dollars), ce n’est donc pas quelque chose que l’on fait tous les jours. Cela signifie que les informations qu’ils retournent ne sont souvent pas à jour. Cependant, en utilisant des bases de connaissances externes, qui sont beaucoup plus faciles à mettre à jour, ce problème est considérablement atténué.
Maintenant, la prochaine fois que vous parlez à une IA et qu’elle hallucine, vous saurez pourquoi elle le fait. Et si elle a accès à des sources externes, vous pouvez la guider pour chercher les réponses dans ces sources, ce qui a plus de chances de réussir.
Sources
Youtube Conférence ValgrAI - What’s wrong with LLMs and what we should be building instead?