Aller au contenu
English
Compte : non connecté, synchronisation possible Mon apprentissage
Selectionner le thème
English

RAG : augmenter un LLM avec vos données

Par mis à jour le

Améliorer cette page

Logo Python

Un modèle de langage répond à côté quand on l'interroge sur une documentation interne : il ne l'a jamais vue. Le RAG, Retrieval-Augmented Generation, résout ce problème sans réentraîner le modèle : il cherche les passages pertinents dans vos documents, puis les injecte dans le prompt pour produire une réponse précise et sourcée. Cette page est la porte d'entrée du parcours RAG : elle explique l'architecture en deux phases, les quatre décisions qui pèsent le plus sur la qualité, et enchaîne sur les guides pratiques, de l'extraction du contenu jusqu'au RAG en production. Public visé : développeur qui veut construire un assistant fiable sur ses propres données.

  • Ce qu'est un RAG et le problème concret qu'il résout.
  • L'architecture en deux phases : indexation et recherche.
  • Les quatre décisions clés qui déterminent la qualité.
  • Le parcours complet, étape par étape, jusqu'à la production.

Un modèle de langage connaît énormément de choses, mais pas les vôtres : ni votre documentation interne, ni vos runbooks, ni vos post-mortems. Posez-lui une question dessus, et il invente une réponse plausible, une hallucination, ou avoue son ignorance.

Le RAG renverse l'approche. Au lieu d'espérer que le modèle « connaisse » vos documents, on les lui fournit au moment de la question. Le système cherche les passages utiles dans votre base documentaire, les place dans le prompt, et le modèle rédige sa réponse à partir de ce contexte.

Le RAG n'est pas la seule façon d'adapter un modèle, et il ne couvre pas tous les besoins. Le tableau ci-dessous situe quand il s'impose et quand une autre approche convient mieux.

BesoinApproche adaptée
Répondre à partir de docs internes, wiki, runbooksRAG
Données qui changent souventRAG
Imposer un style (ton, format)Prompt engineering, fine-tuning
Agir : déployer, ouvrir un ticketAgent + outils
Ancrer des connaissances générales durablesFine-tuning

Trois propriétés expliquent que le RAG soit devenu l'approche par défaut pour exploiter des données propriétaires.

Il est à jour. La base documentaire se met à jour indépendamment du modèle : un document modifié ce matin est interrogeable cet après-midi, sans réentraînement.

Il est vérifiable. Comme la réponse s'appuie sur des passages identifiés, le RAG peut citer ses sources, l'utilisateur remonte au document d'origine et tranche lui-même. C'est la différence entre une réponse opaque et une réponse auditable.

Il est économe. Pas de fine-tuning, pas de GPU d'entraînement : un RAG se construit avec une base vectorielle, un modèle d'embedding et un modèle de génération, tous trois exécutables en local, sur l'infrastructure que vous maîtrisez.

Un RAG se décompose en deux phases distinctes, qui ne s'exécutent pas au même moment. Le schéma les empile : en haut, l'indexation hors ligne remplit la base vectorielle ; en dessous, la phase à l'exécution, découpée en recherche (retrieval) puis génération par le LLM.

Pipeline RAG en trois blocs : l'indexation hors ligne découpe les documents (PDF, MD, HTML) en chunks, les transforme en vecteurs par embedding et les stocke dans une base vectorielle ; à l'exécution, la question de l'utilisateur déclenche une recherche sémantique dans cet index, qui renvoie les top-K chunks ; ils sont injectés dans le prompt avec la question, et le LLM produit une réponse augmentée.indexinjecte les chunksGénérationPrompt + contexteLLMRéponseaugmentéeRetrieval (à l'exécution)QuestionutilisateurRecherchesémantiqueTop-KchunksIndexation (hors ligne)découpevecteursstockeDocumentsPDF, MD, HTMLChunkingEmbeddingVector DB
Source · SVG
Échap pour fermer, + et − pour zoomer, défilement pour se déplacer. 100 %

La phase d'indexation prépare les documents. Elle tourne une fois, puis à chaque mise à jour du corpus, c'est du traitement par lots, hors ligne.

  1. Collecter, récupérer le contenu : pages web, Markdown, PDF.

  2. Nettoyer, retirer le HTML résiduel, normaliser l'encodage et les espaces.

  3. Découper, diviser chaque document en chunks de quelques centaines de mots.

  4. Encoder, transformer chaque chunk en vecteur numérique (embedding).

  5. Stocker, ranger les vecteurs dans une base vectorielle (Qdrant).

La phase de recherche et génération s'exécute, elle, à chaque question de l'utilisateur, en ligne, en temps réel.

  1. Encoder la question, la transformer en vecteur, avec le même modèle d'embedding.

  2. Rechercher, trouver les chunks les plus proches par similarité.

  3. Construire le prompt, injecter les chunks pertinents dans le contexte.

  4. Générer, le modèle rédige la réponse à partir de ce contexte.

  5. Citer, joindre les sources des chunks utilisés.

Quatre choix pèsent plus que tous les autres sur la qualité d'un RAG. Les garder en tête dès le départ évite des refontes.

La taille des chunks d'abord. Trop petits, ils perdent leur contexte et deviennent incompréhensibles ; trop grands, leur embedding se dilue et noie le signal. Quelques centaines de mots, avec un léger recouvrement entre chunks voisins, est le bon équilibre de départ.

Le modèle d'embedding ensuite. C'est lui qui décide si deux textes « se ressemblent ». Un modèle inadapté à votre langue ou à votre domaine fait échouer la recherche en amont de tout le reste, un RAG francophone exige un modèle d'embedding multilingue.

Le nombre de chunks récupérés, le top-K. Trop peu, et l'information utile est manquée ; trop, et le contexte se remplit de bruit qui dégrade la réponse. Une poignée de chunks bien choisis vaut mieux qu'une vingtaine au hasard.

Le type de recherche enfin. La recherche dense seule, par similarité de sens, rate les termes exacts : codes d'erreur, identifiants, noms de fonctions. Sur de la documentation technique, la combiner à une recherche lexicale (recherche hybride) change nettement les résultats.

Le reste du parcours déroule chaque étape dans l'ordre. Suivez-le linéairement pour une progression logique, ou sautez à rag-pratique pour assembler un RAG d'un coup.

Avant d'indexer, il faut un corpus propre. Ces trois guides couvrent la collecte et la préparation du texte.

Pour extraire du contenu web, le guide Trafilatura récupère le texte utile d'une page, sans menus ni publicités. La leçon pour nettoyer les textes normalise l'encodage, segmente en phrases et prépare le texte pour l'indexation, puis découper en chunks compare les stratégies de chunking : taille fixe, récursif, structurel, sémantique.

Le cœur du RAG : transformer le texte en vecteurs et le stocker dans une base capable de recherche par similarité.

Les embeddings et la similarité transforment du texte en vecteurs, expliquent la similarité cosinus et le choix d'un modèle. Le guide sur les bases de données vectorielles détaille leur rôle, l'indexation et les cas d'usage. FAISS est la bibliothèque de recherche vectorielle en mémoire, idéale pour prototyper, et Chroma une base vectorielle embarquée, simple à prendre en main en développement.

Une fois les briques connues, on assemble le pipeline, on en améliore la pertinence, puis on le met en production.

RAG pratique construit un RAG complet sur Qdrant : indexation, recherche, génération sourcée. RAG avancé améliore la qualité du retrieval avec la recherche hybride, le re-ranking et le RAG agentique. RAG en production traite la sécurité, le filtrage par droits, l'évaluation et l'observabilité d'un RAG exploité.

Quelques erreurs reviennent systématiquement sur un premier RAG. Les connaître à l'avance fait gagner des heures de débogage.

ErreurConséquenceCorrection
Chunks trop grosEmbeddings dilués, bruitQuelques centaines de mots par chunk
Pas de recouvrementContexte perdu aux frontièresRecouvrement léger entre chunks voisins
Recherche dense seuleRate les codes et identifiants exactsAjouter une recherche lexicale (hybride)
Prompt trop permissifLe modèle hallucine hors contexte« Réponds uniquement à partir du contexte »
Documents mal extraitsRetrieval incohérentNettoyer le corpus avant indexation
Aucune métriqueImpossible de mesurer un progrèsÉvaluer le RAG sur un jeu de questions
  • Le RAG fournit au modèle vos documents au moment de la question, pas de réentraînement.
  • Il est à jour, vérifiable (sources citées) et économe (exécutable en local).
  • L'architecture a deux phases : indexation hors ligne, recherche et génération en temps réel.
  • Quatre décisions dominent : taille des chunks, modèle d'embedding, top-K, type de recherche.
  • La recherche hybride dépasse la recherche dense seule sur la documentation technique.
  • Sans évaluation, on pilote un RAG à l'aveugle.

Vérifiez que l'essentiel de ce guide est acquis. Les questions portent uniquement sur ce qui vient d'être expliqué ici.

Contrôle de connaissances

Validez vos connaissances avec ce quiz interactif

6 questions
6 min.
70% requis

Informations

  • Le chronomètre démarre au clic sur Démarrer
  • Questions à choix multiples, vrai/faux et réponses courtes
  • Vous pouvez naviguer entre les questions
  • Les résultats détaillés sont affichés à la fin

Lance le quiz et démarre le chronomètre

Ce projet vous est utile ?

Les guides, formations, quiz et labs restent gratuits. Si vous les utilisez régulièrement, vous pouvez contribuer à leur maintenance et à leur développement.

Devenir membre de soutien (nouvel onglet) Soutenir une fois (nouvel onglet) En savoir plus

Suivez aussi le projet sur LinkedIn