La première erreur que font la plupart des équipes quand elles déploient un système RAG : elles injectent trop de contexte. L'idée semble intuitive - plus on donne d'information au LLM, mieux il va répondre. En réalité, c'est l'inverse. Un contexte chargé en bruit est aussi problématique qu'un contexte insuffisant. Voici comment structurer un contexte réellement efficace.
Le principe fondamental : la précision avant la quantité
Un LLM a une fenêtre de contexte limitée - et même quand elle est grande, la qualité de l'attention se dégrade au-delà d'un certain volume. Injecter 50 documents pour répondre à une question qui n'en nécessite que 2 produit des réponses confuses, des hallucinations de synthèse et un coût token inutile.
La règle d'or : envoyez au LLM uniquement les fragments de contexte directement utiles à la question posée. Pas plus, pas moins.
Les 5 étapes d'un contexte bien structuré
1. Découpage en chunks intelligents
Évitez de passer des documents entiers. Découpez vos sources en unités sémantiques cohérentes - un paragraphe, un article, une fiche produit, une politique interne. La taille idéale d'un chunk est généralement de 200 à 500 tokens selon le type de contenu.
Le découpage doit respecter les frontières sémantiques : ne coupez pas une phrase en deux, ne mélangez pas deux sujets dans un même chunk.
2. Métadonnées riches
Chaque chunk doit porter des métadonnées : source, date de création, date de dernière mise à jour, auteur, catégorie. Ces métadonnées servent au retrieval (filtrer par date, par source) et à la traçabilité (dire au LLM d'où vient l'information).
3. Déduplication et résolution de conflits
Votre corpus contient probablement des doublons et des contradictions - une politique mise à jour en 2024 cohabitant avec l'ancienne version de 2022, un process décrit différemment dans deux wikis. Avant d'ingérer, dédupliquez et identifiez les conflits. Un LLM qui reçoit deux versions contradictoires d'une même information va soit choisir arbitrairement, soit halluciner une synthèse inexacte.
4. Stratégie de retrieval hybride
La recherche vectorielle seule ne suffit pas. Elle est bonne pour les requêtes sémantiques (concept, intention) mais faible sur les termes exacts (noms de produits, références, acronymes). Combinez recherche vectorielle et BM25 pour un retrieval robuste dans les deux cas.
5. Reranking et filtre de pertinence
Après retrieval, appliquez un reranking pour ne garder que les N chunks les plus pertinents. Un cross-encoder entraîné sur des paires question-document vous permettra de scorer précisément la pertinence de chaque chunk par rapport à la question posée.
Les erreurs les plus courantes
- Chunks trop longs : dilue la pertinence et augmente le bruit.
- Pas de métadonnées : impossible de tracer la source ou de filtrer par date.
- Corpus non dédupliqué : contradictions répercutées dans les réponses.
- Retrieval uniquement vectoriel : mauvaise récupération des termes exacts.
- Pas de mesure RAGAS : on ne sait pas si le contexte s'améliore ou se dégrade.
Mesurer pour progresser
La structuration du contexte est un processus itératif. Sans mesure, vous naviguez à l'aveugle. Mettez en place des métriques RAGAS dès le début :
- Context precision : le contexte récupéré est-il pertinent pour la question ?
- Context recall : les chunks importants ont-ils tous été récupérés ?
- Faithfulness : la réponse est-elle exclusivement fondée sur le contexte fourni ?
Ces trois métriques vous donneront une image claire de la qualité de votre pipeline à chaque itération.