RAG Formation Continue · 02 · Construire une base RAG

Construire votre chatbot RAG à partir de zéro.

Un prompt à copier-coller, un plan de construction et une checklist pour créer avec Codex ou Claude Code une première base documentaire fiable.

Objectif pédagogique

Construire un premier chemin document-question-réponse fonctionnel, puis l’étendre en quatre canaux de recherche complémentaires. Chaque réponse doit rester fondée sur le contexte retrouvé, nommer ses documents sources, ou refuser explicitement.

1 · Donner ce prompt à un assistant de code IA

Utilisez ce brief complet avec Claude Code, Codex ou votre propre implémentation. Validez chaque étape avec une vraie question avant de passer à la suivante.

Vous construisez un chatbot de questions-réponses documentaires pour un corpus interne fixe. Construisez-le de bout en bout, étape par étape ; ne passez pas à l’étape suivante avant que la précédente ne réponde à une vraie question.

Corpus et ingestion
- Accepter un dossier de documents sources, en commençant par du texte brut ou des PDF convertis en texte.
- Parser et découper chaque document en passages chevauchants dimensionnés pour la recherche, non pour l’affichage.
- Générer et stocker un résumé court de chaque document entier.

Quatre canaux de recherche — construire les quatre :
1. Vecteurs de chunks : intégrer chaque passage et proposer une recherche de similarité top-k.
2. Vecteurs de résumés : intégrer les résumés de documents et proposer une recherche top-k.
3. Texte intégral / mots-clés : recherche de termes exacts et quasi exacts dans le texte brut.
4. Graphe : extraire les entités et relations entre documents, avec parcours multi-sauts.

Fusion et assemblage
- Interroger les quatre canaux en parallèle pour chaque question.
- Dédupliquer les résultats qui se chevauchent avant d’appliquer un budget de contexte.
- Un canal indisponible est un statut, pas une exception qui fait échouer toute la requête.

Génération et citations
- Répondre strictement à partir du contexte assemblé, jamais avec des connaissances externes.
- Nommer le ou les documents utilisés par chaque réponse.
- Refuser explicitement lorsque le contexte retrouvé ne permet pas de répondre.

Hors périmètre de cette base
- Capture de feedback et commentaires sur chaque réponse.
- Gestion multi-tour ou des questions de suivi : traiter chaque question indépendamment.

Définition de fini : poser dix vraies questions couvrant paraphrase, recherche large de document, recherche de code exacte et relations multi-sauts. Chaque question obtient une réponse fondée et citée, ou un refus honnête.

2 · Construire un chemin complet avant d’étendre

Commencez par les chunks, un index vectoriel et une génération citée. Lorsque ce chemin répond à une vraie question, ajoutez les autres canaux un par un pour que chaque échec reste observable.

  1. Corpus et parsing. Donnez à chaque source des identifiants stables et référencables avant d’écrire la recherche.
  2. Chunks, vecteurs de chunks et génération. Livrez ce premier canal jusqu’à une réponse citée.
  3. Résumés et index de résumés. Générez chaque résumé une fois, stockez-le, puis intégrez-le.
  4. Index texte intégral. Utilisez un moteur de recherche établi au lieu de coder vous-même l’appariement et le classement.
  5. Index graphe. Ajoutez les entités et relations en dernier : ce canal coûte le plus à maintenir.
  6. Fusion, déduplication et budget de contexte. Rendez cette étape testable indépendamment d’un appel LLM.
  7. Génération fondée et citations. Exigez les sources nommées et un refus explicite en l’absence de preuve.
  8. Test de fumée à dix questions. Exécutez une question par spécialité de canal avant de déclarer la base terminée.

3 · Checklist de la base

  • Les documents peuvent être ajoutés et réindexés sans redémarrage complet.
  • Chacun des quatre canaux peut être interrogé et inspecté séparément.
  • La fusion élimine les résultats qui se chevauchent avant le budget de contexte.
  • Chaque réponse générée nomme le ou les documents utilisés.
  • Le chatbot refuse au lieu de deviner quand aucune preuve pertinente n’est retrouvée.
  • Le test de fumée enregistre le canal qui a contribué à chaque réponse.
  • La capture de feedback et les suivis restent volontairement hors périmètre de cette base.

Leçon suivante

Lorsque cette base fonctionne, ajoutez les logs d’interaction, le feedback utilisateur et les questions de suivi afin de créer une boucle d’amélioration de production fondée sur les preuves.

Ouvrir la boucle d’amélioration en production