RAG — Retrieval Augmented Generation — est probablement l'architecture IA la plus mal expliquée de ces trois dernières années. En réalité, c'est simple : on va chercher les bonnes informations, on les colle au prompt, et le LLM répond en s'appuyant dessus. Voilà. Tout le reste, ce sont des détails d'implémentation.
Le problème que RAG résout
Un LLM est figé à sa date d'entraînement et ne connaît rien de vos données privées. Trois options pour corriger ça :
- Fine-tuner le modèle : cher, lent, peu maintenable.
- Long context : coller toute la base dans le prompt. Marche jusqu'à un certain volume, puis explose en coût.
- RAG : ne coller que les passages pertinents à chaque requête.
RAG gagne quasi systématiquement sur le rapport qualité/coût/maintenabilité.
Le pipeline minimal
- Ingestion : découper vos documents en chunks (500-1500 tokens).
- Embeddings : transformer chaque chunk en vecteur via un modèle d'embeddings.
- Stockage : sauvegarder ces vecteurs dans une base vectorielle (Postgres pgvector, Qdrant, Pinecone).
- Recherche : à la requête utilisateur, embedder la question et trouver les K chunks les plus proches.
- Génération : envoyer la question + chunks au LLM avec un system prompt bien structuré.
Les pièges classiques
1. Mauvais chunking
Couper au milieu d'un paragraphe explose le sens. Utilisez du chunking sémantique, pas du découpage à la longueur fixe. LangChain propose des splitters récursifs corrects.
2. Top-K mal calibré
K=3 rate des réponses ; K=20 noie le modèle dans le bruit. Commencez à 5, ajustez selon les évaluations.
3. Absence de reranking
La similarité cosinus ne capture pas la pertinence fine. Un reranker (Cohere Rerank, modèles BGE) sur les 20 premiers résultats pour garder les 5 meilleurs améliore drastiquement la qualité.
4. Pas d'évaluation
Sans jeu de test (questions + réponses attendues), impossible de savoir si votre RAG dérive. Construisez-le dès le jour 1.
RAG hybride : la technique pro
Combinez recherche vectorielle (sémantique) et recherche lexicale (BM25). Les deux capturent des choses différentes ; fusionner les scores via RRF (Reciprocal Rank Fusion) donne systématiquement de meilleurs résultats qu'une seule méthode.
Quand RAG ne marche pas
- Questions qui demandent de synthétiser toute la base (ex : "donne-moi les 10 sujets les plus fréquents"). Là, il faut plutôt des summaries pré-calculés.
- Raisonnement multi-hop complexe : RAG simple rate. Les techniques avancées (query decomposition, iterative retrieval) aident mais complexifient.
- Données très structurées : une requête SQL est plus fiable qu'une recherche vectorielle.
Ma stack recommandée en 2026
- Embeddings : Voyage AI ou OpenAI text-embedding-3-large.
- Base vectorielle : Postgres + pgvector si vous avez déjà Postgres, sinon Qdrant.
- Framework : rien. Écrivez 150 lignes, comprenez ce que ça fait. LangChain et consorts sont souvent plus lourds qu'utiles.
- LLM : Claude pour la qualité, GPT-4o-mini pour le coût.
Besoin de construire un RAG robuste pour votre SaaS ? J'en ai déployé plusieurs en production.