Un modèle de langage seul invente parfois des réponses quand il ne connaît pas la réponse exacte à une question pointue — un phénomène appelé hallucination. Le RAG corrige ce problème en obligeant le modèle à s'appuyer sur des documents réels avant de répondre, plutôt que sur sa seule mémoire d'entraînement.
Concrètement, le processus se déroule en trois temps. D'abord, l'indexation : chaque document (rapport, publication, fiche technique) est découpé en fragments appelés chunks, puis chaque chunk est transformé en un vecteur numérique via la vectorisation (ou embedding), qui capture le sens du texte plutôt que ses mots exacts. Ces vecteurs sont stockés dans une base spécialisée — un moteur comme Elasticsearch ou une base vectorielle dédiée — capable de retrouver rapidement les passages les plus proches d'une question, même si elle est formulée différemment du texte source.
Ensuite vient la recherche sémantique : quand une question arrive, elle est elle-même vectorisée, puis comparée à l'ensemble des chunks indexés par un module appelé retriever, chargé de retrouver les passages les plus pertinents — les nuggets d'information. Des facettes (filtres par type de document, date, thématique, langue…) permettent d'affiner cette recherche avant de la transmettre au modèle.
Enfin, la génération augmentée : le modèle de langage reçoit la question accompagnée des extraits les plus pertinents retrouvés, et rédige sa réponse en s'appuyant uniquement sur ce contenu — avec les sources et citations à l'appui, pour que chaque affirmation puisse être vérifiée dans le document d'origine.
PRETAG s'appuie sur ce principe via DeeperMind, une plateforme de RAG documentaire. Pour un aperçu plus détaillé de cette approche, voir la page deepermind.ai.
- RAG
- Retrieval-Augmented Generation — génération de réponses appuyée sur une recherche documentaire préalable, plutôt que sur la seule mémoire du modèle.
- LLM
- Large Language Model — modèle de langage entraîné sur de grands volumes de texte, capable de comprendre une question et de rédiger une réponse en langage naturel.
- Chunk
- Fragment de texte issu du découpage d'un document, taillé pour être indexé et retrouvé indépendamment du reste.
- Vectorisation / Embedding
- Transformation d'un texte en une suite de nombres représentant son sens, pour permettre des comparaisons mathématiques entre contenus.
- Recherche sémantique
- Recherche fondée sur le sens d'une requête plutôt que sur la présence exacte des mots, grâce aux vecteurs.
- Retriever
- Module chargé de comparer la question aux chunks indexés et d'en extraire les passages les plus pertinents, avant qu'ils ne soient transmis au modèle.
- Elasticsearch
- Moteur de recherche et d'indexation open source, souvent utilisé pour stocker et interroger de grands volumes de documents.
- Nugget
- Extrait précis d'information jugé pertinent pour répondre à une question, isolé au sein d'un document plus large.
- Facette
- Filtre de recherche (type, date, thématique, source…) permettant d'affiner les résultats avant ou après la recherche sémantique.
- Base de connaissances
- Ensemble structuré des documents indexés, organisé par projet, équipe ou thématique, sur lequel le système RAG s'appuie.
- Prompt augmenté
- Question posée au modèle, enrichie automatiquement des extraits de documents jugés pertinents avant d'être envoyée.
- Sourcing / Citation
- Association de chaque réponse générée aux passages exacts des documents dont elle est tirée, pour permettre la vérification.