Question
Pourquoi un RAG hallucine encore, et que faire
Un RAG peut encore inventer : mauvais passage, passage noyé, modèle qui complète. Les causes, le diagnostic et les parades documentées.
Mis à jour le
Un RAG hallucine encore pour trois raisons : le bon passage n'a pas été retrouvé, il a été retrouvé mais mal exploité, ou le modèle a complété avec ses propres connaissances. Le RAG réduit le risque, il ne le supprime pas (pour la notion elle-même, voir la fiche hallucination du lexique). La documentation d'Anthropic sur la réduction des hallucinations le dit sans détour : ces techniques réduisent nettement les hallucinations mais ne les éliminent pas entièrement, et les informations critiques doivent toujours être validées.
Les causes, de la plus fréquente à la plus subtile
| Cause | Ce qui se passe | Comment la repérer |
|---|---|---|
| Passage non retrouvé | le modèle n'a rien de pertinent et répond quand même | rappel du contexte bas |
| Passage partiel | le morceau a perdu son contexte (quelle entreprise, quelle année ?) | réponse juste sur le fond, fausse sur le périmètre |
| Passage noyé | le bon passage est au milieu d'une longue liste | il figure dans le contexte, mais la réponse l'ignore |
| Passages contradictoires | deux versions d'un document coexistent | réponses qui changent d'une fois à l'autre |
| Complément par le modèle | il ajoute ce qu'il « sait » | fidélité basse alors que le contexte est bon |
| Document piégé | un contenu malveillant ou erroné est entré dans la base | réponse étrange, toujours liée au même document |
Ce que dit la recherche sur le passage noyé
L'étude « Lost in the Middle » (Liu et al., déposée le 06/07/2023) montre que les modèles exploitent mieux une information placée au début ou à la fin d'un long contexte qu'au milieu, y compris des modèles conçus pour les longs contextes. Conséquence pratique : donner plus de passages n'est pas toujours mieux ; les trier pour mettre les plus pertinents en tête aide (voir Reranking).
Le morceau orphelin
Un morceau coupé de son document perd des informations que le modèle va combler. Anthropic cite le cas d'un extrait qui dit seulement que « le chiffre d'affaires de l'entreprise a augmenté de 3 % par rapport au trimestre précédent », sans dire quelle entreprise ni quel trimestre. Sa récupération contextuelle ajoute à chaque morceau une phrase de contexte avant l'indexation. Voir aussi Chunking.
Les techniques documentées par Anthropic
D'après la page dédiée :
- Autoriser « je ne sais pas ». Donner explicitement au modèle la permission d'admettre une incertitude, ce qui peut réduire fortement les fausses informations.
- Citer avant de répondre. Pour les documents longs (plus de 20 000 jetons), demander d'abord l'extraction de citations mot pour mot, puis de répondre à partir de ces seules citations.
- Vérifier par les citations. Faire citer une source pour chaque affirmation ; puis faire rechercher une citation qui étaye chaque affirmation, et retirer celles qui n'en ont pas.
- Restreindre aux documents fournis. Demander explicitement de n'utiliser que les documents fournis, pas les connaissances générales du modèle.
- Comparer plusieurs réponses. Poser la même question plusieurs fois : des incohérences entre les réponses peuvent signaler une hallucination.
Exemple de consigne (illustratif)
Réponds uniquement à partir des extraits fournis entre les balises
<documents>. Pour chaque affirmation, indique l'extrait qui la justifie. Si les extraits ne permettent pas de répondre, écris : « Je ne trouve pas cette information dans les documents disponibles. »
Cette consigne combine les techniques 1, 3 et 4. Elle ne remplace pas une récupération correcte : si le bon passage n'est pas dans les extraits, le modèle répondra honnêtement qu'il ne sait pas, ce qui reste un échec du point de vue de l'utilisateur.
Le cas du document piégé
L'OWASP (fondation qui publie des référentiels de sécurité applicative) range l'empoisonnement de la base de connaissances parmi les faiblesses des systèmes à base de plongements (LLM08:2025) : des données malveillantes ou erronées peuvent venir d'initiés, de fournisseurs de données non vérifiés ou d'un ensemencement volontaire. Parades citées : valider les données avant de les intégrer, vérifier la présence de contenus cachés, n'accepter que des sources vérifiées.
Diagnostiquer avant de corriger
Mesurez d'abord la fidélité de vos réponses : la métrique de Ragas compte la part des affirmations de la réponse étayées par le contexte récupéré. Fidélité basse avec un bon contexte : travaillez les consignes et les citations. Bon score de fidélité mais réponses fausses : c'est la récupération qui a ramené le mauvais passage. La méthode complète est dans Évaluer un RAG.
Questions fréquentes
Un RAG supprime-t-il les hallucinations ?
Non. Il les réduit en donnant au modèle les bons passages, mais la documentation d'Anthropic rappelle que les techniques de réduction ne les éliminent pas entièrement et qu'il faut valider les informations critiques.
Quelle est la consigne la plus simple contre les hallucinations ?
Autoriser explicitement le modèle à dire qu'il ne sait pas. La documentation d'Anthropic indique que cela peut réduire fortement les fausses informations.
Sources
Pages consultées pour écrire cet article :
- https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/reduce-hallucinations
- https://arxiv.org/abs/2307.03172
- https://docs.ragas.io/en/stable/concepts/metrics/available_metrics/faithfulness/
- https://genai.owasp.org/llmrisk/llm082025-vector-and-embedding-weaknesses/
- https://www.anthropic.com/news/contextual-retrieval