RAG (Retrieval-Augmented Generation) — Le guide complet¶
Le RAG (Retrieval-Augmented Generation) est aujourd'hui la technique la plus utilisée en entreprise pour faire répondre un LLM sur des données internes : documentation produit, base de connaissances, contrats, manuels techniques, tickets clients. Cette page est le point d'entrée vers tout ce que j'ai écrit sur le sujet — architecture, optimisation, évaluation, cas d'usage réels.
Je m'appelle Anas Rabhi, je suis consultant IA freelance à Toulouse et le RAG est le sujet sur lequel je passe le plus de temps en mission. Tout ce qui suit vient de projets en production, pas de tutoriels recopiés.
Discuter d'un projet RAG Voir mes articles
Qu'est-ce que le RAG, en une phrase¶
Le RAG est une technique qui permet à un modèle de langage (LLM) de répondre à des questions en s'appuyant sur vos propres documents, en sélectionnant à la volée les passages pertinents et en les injectant dans le contexte du modèle au moment de la requête.
Concrètement, ça résout deux limites des LLMs : la fenêtre de contexte limitée (on ne peut pas charger 10 000 pages d'un coup) et l'absence de connaissances métier (un LLM générique ne connaît pas vos contrats, vos process, vos données internes).
Pour comprendre le fonctionnement détaillé — chunking, vectorisation, retrieval, génération — je l'explique pas à pas dans l'article C'est quoi le RAG ? Définition et fonctionnement.
Pourquoi le RAG est devenu la solution par défaut¶
Avant le RAG, deux options s'offraient pour adapter un LLM à un contexte métier : tout mettre dans le prompt (limite de la fenêtre de contexte), ou faire du fine-tuning (coût élevé, données figées). Le RAG a apporté une troisième voie, plus pragmatique :
- L'information reste à jour sans réentraîner le modèle.
- Les sources sont citables : on sait d'où vient chaque réponse.
- Le coût est maîtrisé : on paie le retrieval + la génération, pas un entraînement.
- Les données restent chez vous : pas besoin d'envoyer vos documents à un fournisseur pour entraîner un modèle.
Si tu hésites entre RAG, fine-tuning ou entraînement, j'ai détaillé l'arbre de décision dans Entraînement, finetuning ou RAG : que choisir pour son IA.
L'architecture d'un RAG, brique par brique¶
Un RAG production se compose de 5 briques qu'il faut chacune optimiser. Chaque brique a son propre article dédié — je donne ici l'essentiel pour t'orienter.
1. Le parsing des documents¶
Avant d'indexer, il faut lire correctement les documents source. Sur des PDFs scannés, des tableaux complexes, des schémas, des contrats avec mise en page riche, c'est souvent là que tout se joue : un parsing médiocre = un RAG médiocre, peu importe la suite.
Approfondissement : Parsing PDF et extraction de documents pour RAG.
2. Le chunking¶
Le chunking est le découpage des documents en passages courts avant indexation. Trop petit : on perd le contexte. Trop grand : on dilue la pertinence. Le bon chunking dépend du type de document et de la nature des questions.
Approfondissement : Le chunking optimal pour le RAG.
3. Les embeddings¶
Les embeddings sont les vecteurs qui capturent la sémantique d'un texte. C'est ce qui permet de retrouver les passages pertinents par similarité. Le choix du modèle d'embeddings (OpenAI, Mistral, BGE-M3, Cohere) a un impact direct sur la qualité du retrieval.
Approfondissement : Comprendre les embeddings et leur importance dans le RAG.
4. Le retrieval¶
Une fois la base indexée, il faut retrouver les bons passages au moment de la requête. La recherche vectorielle pure ne suffit presque jamais en production : on combine généralement BM25 (recherche lexicale) et recherche vectorielle dans une approche hybride, suivie d'un reranker.
Approfondissement : RAG hybride : combiner BM25 et recherche vectorielle.
5. La génération¶
Le LLM final reçoit les chunks récupérés et la question, puis génère la réponse. Trois leviers ici : le choix du modèle (GPT, Claude, Mistral, Llama), le prompt engineering (instructions strictes, citation des sources, format de sortie), et les garde-fous (détection de réponses hors-périmètre, validation).
Optimiser un RAG en production¶
Mettre un RAG en place avec LangChain ou LlamaIndex est facile. Le faire fonctionner vraiment bien sur de vraies données, c'est une autre histoire. Sur tous les projets que j'ai menés, l'écart de performance entre un RAG "basique" et un RAG "optimisé" se mesure en dizaines de points sur les métriques.
Les 8 techniques d'optimisation qui font la différence sont détaillées dans Optimiser son RAG : les 8 techniques qui font vraiment la différence : HyDE, query expansion, reranking, contextual retrieval, semantic cache, filtres métadonnées, multi-query, et fine-tuning des embeddings.
Pour comprendre comment mesurer ces gains, voir Comment évaluer un RAG en production : métriques, RAGAS et méthodologie d'audit — Hit Rate, MRR, faithfulness, dataset de référence et process complet d'audit.
Quand le RAG ne fonctionne pas (et pourquoi)¶
Un RAG mal pensé donne des résultats décevants — c'est la principale raison pour laquelle les projets RAG s'enlisent. J'ai vu les mêmes erreurs revenir mission après mission, et j'ai écrit plusieurs articles pour les identifier et les corriger.
- Les 5 erreurs classiques : Les 5 erreurs RAG les plus fréquentes — méthodologie, données, évaluation, prompt, production.
- Les 4 causes techniques d'échec : Les 4 causes techniques d'échec d'un RAG — analyse fine, à lire si ton RAG tourne mais répond mal.
- Quand le RAG est structurellement inadapté : Pourquoi le RAG ne fonctionne pas (parfois).
- Quand le RAG simple ne suffit plus : Le RAG est trop simple et Le RAG est-il fini ?.
Le constat : un RAG "vanille" couvre 70 % des cas d'usage. Pour les 30 % restants — questions multi-saut, raisonnement, agrégation sur plusieurs documents — il faut passer aux architectures plus avancées.
Au-delà du RAG classique : Agentic RAG¶
Quand le RAG classique atteint ses limites, on passe à l'Agentic RAG : l'agent peut décomposer une question complexe, lancer plusieurs recherches itératives, raisonner sur les résultats et combiner les sources. C'est plus puissant, plus lent et plus cher — donc à réserver aux cas où le RAG simple échoue.
Le détail de la comparaison et des cas d'usage : Agentic RAG vs RAG classique. Et pour le contexte large sur les agents : voir la page Agents IA.
Cas d'usage RAG réels en entreprise¶
J'ai détaillé deux cas d'usage en production sur lesquels je peux donner des chiffres précis.
BTP — Réponse automatique aux appels d'offres¶
Un agent RAG multi-sources qui interroge à la fois la documentation normative, les projets passés et les fiches techniques produits. 83 % de gain de temps mesuré sur la rédaction des sections techniques d'appels d'offres.
Architecture complète : RAG dans le BTP : automatiser les appels d'offres.
Assurance — Traitement des rapports de sinistre¶
Extraction structurée des informations clés, pré-rédaction du rapport, validation expert. 80 % de gain de temps sur le traitement.
Détails : IA et rapports de sinistre en assurance.
Autres cas typiques¶
- E-commerce : assistant RAG sur le catalogue produits et la FAQ.
- Industrie : assistant opérateur sur la documentation technique machine.
- Juridique : recherche sémantique sur des bases contractuelles ou jurisprudentielles.
- Aérospatial / défense (Toulouse) : RAG souverain sur données sensibles avec LLMs hébergés en France.
RAG souverain pour données sensibles¶
Pour les données confidentielles — données spatiales, données de santé, contrats stratégiques — l'enjeu n'est pas seulement la performance, c'est la souveraineté. Plusieurs approches selon le niveau d'exigence :
- LLMs souverains hébergés en France ou en Europe : Mistral, Llama et Qwen self-hosted, ou Mistral via Azure EU.
- Bases vectorielles auto-hébergées : Qdrant, Weaviate ou PGVector sur infrastructure cliente.
- Anonymisation amont : suppression ou masquage des entités sensibles avant indexation.
- Contrôle d'accès granulaire : un utilisateur ne voit que les chunks qu'il a le droit de voir.
- Zéro sortie de données : tout reste dans le périmètre client, y compris pour l'évaluation.
C'est l'approche que j'ai déployée sur un RAG en production sur données spatiales confidentielles — mentionnée en page d'accueil.
Outils et stack¶
La stack RAG en 2026 se compose typiquement de :
| Brique | Outils que j'utilise en mission |
|---|---|
| Parsing | Unstructured, LlamaParse, Docling, MinerU |
| Chunking | Implémentation custom selon le type de document |
| Embeddings | OpenAI text-embedding-3, BGE-M3, Mistral embed |
| Base vectorielle | Qdrant, PGVector, Weaviate |
| Retrieval | BM25 (rank_bm25) + vectoriel + Cohere reranker |
| Orchestration | LangGraph ou code custom (LangChain plus rarement) |
| Évaluation | RAGAS, datasets internes, LLM-as-a-judge |
| Observabilité | Langfuse, OpenTelemetry, Prometheus |
Sur le choix de framework, je suis assez critique des stacks trop lourdes : voir Stack IA production : LangChain / LlamaIndex et leurs limites.
Questions fréquentes sur le RAG¶
Le RAG est-il adapté à mon cas d'usage ?¶
Si tu as une base documentaire (de quelques centaines à plusieurs millions de documents) sur laquelle tu veux pouvoir poser des questions en langage naturel, oui. Si tu as besoin d'agir sur des systèmes externes (créer un ticket, lancer un workflow, modifier un CRM), il te faut un agent IA — voir Agents IA. Souvent, la bonne solution est une combinaison des deux : un agent qui utilise le RAG comme un de ses outils.
Combien coûte un RAG en production ?¶
Un POC se situe entre 5 k€ et 25 k€ selon la complexité des données. Une mise en production complète démarre autour de 30 k€. À cela s'ajoutent les coûts d'infrastructure (API LLM, base vectorielle, hébergement) qui restent modestes : quelques centaines à quelques milliers d'euros par mois pour la plupart des usages. Le détail d'un échange de cadrage est gratuit — c'est le bon moment pour chiffrer.
Combien de temps pour un RAG fonctionnel ?¶
Un POC sur tes vraies données : 2 à 4 semaines. Une mise en production stable avec intégration, monitoring et garde-fous : 2 à 3 mois supplémentaires. Les projets les plus rapides sont ceux où le cadrage initial a été rigoureux.
Le RAG élimine-t-il les hallucinations ?¶
Non, mais il les réduit drastiquement. Sur un RAG bien construit (retrieval hybride, reranking, prompt strict, citation des sources, évaluation continue), on tombe sous les 2 % d'hallucinations sur la plupart des cas d'usage. Le zéro absolu n'existe pas avec un LLM — d'où l'importance des garde-fous et de la citation systématique des sources.
Le RAG fonctionne-t-il avec n'importe quel LLM ?¶
Oui. Le RAG est indépendant du LLM. Il fonctionne avec GPT, Claude, Mistral, Llama, Qwen, hébergé dans le cloud ou on-premise. La qualité finale dépend surtout du modèle d'embeddings et du LLM de génération.
Faut-il un data scientist pour mettre en place un RAG ?¶
Pour un prototype, non — n'importe quel développeur peut brancher LangChain et lancer un RAG basique. Pour un RAG en production qui tient la charge et qui répond correctement, l'expertise compte : choix de l'architecture, gestion des cas limites, évaluation, garde-fous. C'est exactement le type de mission sur laquelle j'interviens.
Travaillons ensemble sur ton projet RAG¶
Tu as un projet RAG à cadrer, un POC à valider, un RAG existant qui ne donne pas les résultats attendus ? Le premier échange est gratuit et sans engagement.
Écrire à Anas Voir la page Consultant IA Toulouse Réserver un créneau
Page rédigée par Anas Rabhi — Consultant IA & Data Scientist freelance à Toulouse. Dernière mise à jour : mai 2026.