Guide du formateur â Session 4 (Niveau intermĂ©diaire)
RAG : donner de la mémoire au modÚle
Programme : Applied AI â Yann Isola DurĂ©e : 2 h 00 Public : professionnels ayant suivi les sessions 1 Ă 3 (embeddings, fenĂȘtre de contexte, prompting) Module source : Module 3, partie 1
1. Objectifs pédagogiques
Ă la fin de la session, chaque participant doit ĂȘtre capable de :
- Expliquer pourquoi la connaissance dâun LLM (Large Language Model, grand modĂšle de langage) est limitĂ©e : figĂ©e Ă la date de coupure, publique uniquement, stockĂ©e de maniĂšre compressĂ©e et avec pertes dans les poids du modĂšle.
- DĂ©crire le principe du RAG (Retrieval-Augmented Generation, câest-Ă -dire GĂ©nĂ©ration AugmentĂ©e par la RĂ©cupĂ©ration) : transformer chaque question en « examen Ă livre ouvert ».
- Dessiner les deux pipelines : ingestion (hors ligne) et requĂȘte (en ligne), avec leurs Ă©tapes respectives.
- Prendre des décisions de découpage (chunking) : taille de chunk, chevauchement, découpe sur la structure, tables entiÚres.
- Diagnostiquer un Ă©chec de RAG : distinguer une erreur de rĂ©cupĂ©ration (mauvais chunks, document manquant) dâune erreur de gĂ©nĂ©ration (hallucination du modĂšle).
2. Prérequis et matériel
| ĂlĂ©ment | DĂ©tail |
|---|---|
| Prérequis participants | Session 1 (embeddings : le sens devient géométrie), Session 2-3 (contexte, prompting) |
| Matériel formateur | Vidéoprojecteur, slides de la session, page web interactive webpage/index.html (fonctionne hors ligne) |
| Matériel participants | Ordinateur portable recommandé pour les exercices 2 et 3 (papier possible) |
| Documents Ă imprimer | Feuille dâexercices (1 par personne), quiz (1 par personne), 5 exit tickets |
Vérification avant la séance : ouvrir webpage/index.html dans un navigateur, tester le simulateur de pipeline RAG et le visualiseur de chunking. Aucune connexion Internet requise.
3. Déroulé minuté (120 minutes)
Bloc A â Le problĂšme : une mĂ©moire figĂ©e (0:00 â 0:20, 20 min)
| Temps | Activité | Slides |
|---|---|---|
| 0:00â0:05 | Accueil + rappel express Session 1 : « le sens devient gĂ©omĂ©trie » (embeddings) | 1â3 |
| 0:05â0:15 | Les trois limites de la mĂ©moire dâun LLM | 4â7 |
| 0:15â0:20 | Mini-dĂ©mo : question sur un fait interne fictif â le modĂšle ne peut pas savoir | 8 |
Notes formateur :
- Ouvrir avec une question au groupe : « Si je demande à un modÚle le montant de vos congés restants, que va-t-il répondre ? » Réponses attendues : il ne sait pas, ou pire, il invente. Les deux cas illustrent le problÚme.
- Marteler les trois limites :
- FigĂ©e : la connaissance sâarrĂȘte Ă la date de coupure dâentraĂźnement (knowledge cutoff). Tout ce qui est postĂ©rieur nâexiste pas pour le modĂšle.
- Publique : le modĂšle a Ă©tĂ© entraĂźnĂ© sur des donnĂ©es publiques. Vos documents internes, contrats, procĂ©dures, tickets â jamais vus.
- Avec pertes : mĂȘme la connaissance publique est stockĂ©e de façon lossy (compressĂ©e avec pertes) dans les poids. Analogie : le modĂšle a « lu » WikipĂ©dia mais ne peut pas le rĂ©citer mot pour mot â comme vous aprĂšs avoir lu un livre il y a dix ans.
- Analogie centrale Ă installer dĂšs maintenant : examen Ă mĂ©moire fermĂ©e vs examen Ă livre ouvert. Le LLM seul = Ă©tudiant qui passe lâexamen de mĂ©moire. Le RAG = on lui donne le droit dâapporter les bons documents.
- PiĂšge frĂ©quent : des participants pensent que le fine-tuning (rĂ©-entraĂźnement partiel) est la solution pour injecter des connaissances. Noter lâobjection au tableau, y revenir en fin de bloc B : le fine-tuning apprend des comportements (style, format), pas des faits fiables et Ă jour ; il est coĂ»teux et doit ĂȘtre refait Ă chaque mise Ă jour documentaire. Le RAG met Ă jour lâindex en quelques secondes.
Bloc B â Le principe du RAG et les deux pipelines (0:20 â 0:55, 35 min)
| Temps | Activité | Slides |
|---|---|---|
| 0:20â0:30 | DĂ©finition du RAG + vue dâensemble des deux pipelines | 9â11 |
| 0:30â0:40 | Pipeline dâingestion (hors ligne) : dĂ©couper â vectoriser â indexer | 12â14 |
| 0:40â0:50 | Pipeline de requĂȘte (en ligne) : vectoriser la question â rĂ©cupĂ©rer k chunks â assembler le prompt â gĂ©nĂ©rer | 15â17 |
| 0:50â0:55 | DĂ©mo interactive : simulateur de pipeline sur la page web | 17 |
Notes formateur :
- DĂ©finir chaque terme Ă la premiĂšre utilisation â rĂšgle du cours :
- RAG = Retrieval-Augmented Generation, Génération Augmentée par la Récupération.
- Chunk = fragment de document (on gardera le mot anglais, standard dans le métier, en le traduisant une fois : « morceau »).
- Embedding = plongement vectoriel, vu en Session 1 : un texte devient un point dans un espace gĂ©omĂ©trique oĂč la proximitĂ© = similaritĂ© de sens.
- Top-k = les k rĂ©sultats les plus proches (k est un nombre quâon choisit, souvent 3 Ă 10 â ).
- Insister sur la séparation temporelle des deux pipelines :
- Ingestion : se fait une fois (puis Ă chaque mise Ă jour des documents), hors ligne, sans utilisateur. Câest la prĂ©paration de la bibliothĂšque.
- RequĂȘte : se fait Ă chaque question, en ligne, en quelques centaines de millisecondes â . Câest la consultation de la bibliothĂšque.
- SchĂ©ma au tableau (le refaire Ă la main, mĂȘme sâil est dans les slides â le geste aide la mĂ©morisation) :
INGESTION (hors ligne, une fois)
Documents â DĂ©coupage en chunks â Embedding de chaque chunk â Index vectoriel
REQUĂTE (en ligne, Ă chaque question)
Question â Embedding de la question â Recherche des k chunks les plus proches
â Assemblage du prompt (instruction + chunks + question) â GĂ©nĂ©ration
- Point clĂ© conceptuel : la question et les chunks vivent dans le mĂȘme espace gĂ©omĂ©trique. Câest pour ça que « chercher les chunks proches de la question » a un sens. Relier explicitement Ă la Session 1.
- Exemple concret à dérouler oralement de bout en bout : « Quelle est la politique de télétravail pour les nouveaux embauchés ? »
- La question devient un vecteur.
- Lâindex renvoie 4 chunks : deux extraits du rĂšglement intĂ©rieur, un extrait de lâaccord tĂ©lĂ©travail 2025, un extrait du guide dâonboarding.
- Le prompt assemblé : « Réponds uniquement à partir du contexte suivant. [4 chunks] Question : ⊠»
- Le modĂšle gĂ©nĂšre une rĂ©ponse citant lâaccord tĂ©lĂ©travail.
- Démo (5 min) : projeter
webpage/index.html, onglet « Simulateur de pipeline ». Taper une question, faire dérouler les 4 étapes une à une. Demander au groupe de prédire quels chunks vont sortir avant de cliquer.
Pause (0:55 â 1:05, 10 min)
Bloc C â Les dĂ©cisions de chunking et les mĂ©tadonnĂ©es (1:05 â 1:30, 25 min)
| Temps | Activité | Slides |
|---|---|---|
| 1:05â1:15 | Chunking : taille, chevauchement, structure, tables | 18â21 |
| 1:15â1:20 | MĂ©tadonnĂ©es : source, section, date, niveau dâaccĂšs | 22 |
| 1:20â1:30 | Exercice 1 en binĂŽmes : stratĂ©gie de dĂ©coupage dâun document rĂ©el | â |
Notes formateur :
- Le chunking est le levier n°1 de qualitĂ© dâun RAG. Le dire tel quel.
- Les quatre décisions :
- Taille : typiquement 300 Ă 800 tokens â (rappel : 1 token â 0,75 mot en anglais, un peu moins en français â ). Trop petit = le chunk perd son contexte (« il » â qui ça, « il » ?). Trop grand = le chunk mĂ©lange plusieurs sujets et son embedding devient une moyenne floue.
- Chevauchement (overlap) : faire se recouvrir les chunks de 10 Ă 20 % â pour ne pas couper une information pile Ă la frontiĂšre.
- DĂ©couper sur la structure : titres, sections, paragraphes â jamais au milieu dâune phrase. Un chunk = idĂ©alement une unitĂ© de sens.
- Tables entiĂšres : ne jamais couper un tableau en deux. Une ligne de tableau sans son en-tĂȘte est illisible (exemple : « 42 | 15 % | oui » â de quoi parle-t-on ?).
- Analogie : découper un livre en fiches de révision. Une bonne fiche est autonome (compréhensible seule), ni trop courte ni trop longue, et ne coupe pas un tableau de conjugaison en deux.
- MĂ©tadonnĂ©es : chaque chunk transporte une Ă©tiquette â source (quel document), section, date, niveau dâaccĂšs. Trois usages :
- Filtrage avant recherche : « ne chercher que dans les documents RH postérieurs à 2024 ».
- Citations : la rĂ©ponse peut pointer vers le document source â indispensable pour la confiance et la vĂ©rification.
- SĂ©curitĂ© : un commercial ne doit pas rĂ©cupĂ©rer des chunks du dossier paie. Le filtre par niveau dâaccĂšs se fait Ă la rĂ©cupĂ©ration, pas aprĂšs gĂ©nĂ©ration.
- Exercice 1 (10 min, binĂŽmes) : voir feuille dâexercices. Distribuer lâextrait de document fourni. Circuler entre les binĂŽmes. DĂ©brief express : 2 binĂŽmes prĂ©sentent leur dĂ©coupage, comparer les choix sur le tableau intĂ©grĂ©.
Bloc D â Recherche hybride et modes dâĂ©chec (1:30 â 1:50, 20 min)
| Temps | Activité | Slides |
|---|---|---|
| 1:30â1:38 | Recherche hybride : vecteurs + mots-clĂ©s | 23â24 |
| 1:38â1:48 | Modes dâĂ©chec : la faute Ă la rĂ©cupĂ©ration, pas au modĂšle | 25â27 |
| 1:48â1:50 | « RĂ©ponds uniquement Ă partir du contexte » + refus Ă©lĂ©gant | 28 |
Notes formateur :
- Recherche hybride : les embeddings capturent le sens, mais ratent les chaĂźnes exactes. Exemple frappant Ă donner : chercher « erreur REF-2024-8812 » â sĂ©mantiquement, ce code ne « veut rien dire », son embedding est proche de nâimporte quel autre code. Une recherche par mots-clĂ©s (type BM25, algorithme classique de recherche lexicale) le trouve instantanĂ©ment. Autres cas : noms propres rares, rĂ©fĂ©rences produit, numĂ©ros dâarticle de loi. Solution : combiner les deux et fusionner les rĂ©sultats.
- Modes dâĂ©chec â le message le plus important de la session : quand un RAG rĂ©pond mal, le rĂ©flexe est dâaccuser le modĂšle. Dans la majoritĂ© des cas â , câest la rĂ©cupĂ©ration qui a Ă©chouĂ© :
- Mauvais chunks rĂ©cupĂ©rĂ©s : la question Ă©tait ambiguĂ«, ou les chunks mal dĂ©coupĂ©s, ou k trop petit. Le modĂšle gĂ©nĂšre Ă partir dâun contexte hors sujet â rĂ©ponse hors sujet. Le modĂšle a fait son travail avec de mauvais ingrĂ©dients.
- Document manquant : lâinformation nâa jamais Ă©tĂ© ingĂ©rĂ©e. Aucun modĂšle ne peut retrouver ce qui nâest pas dans lâindex.
- Analogie : le cuisinier (modÚle) et le commis (récupération). Si le plat est raté parce que le commis a apporté du sel au lieu du sucre, changer de cuisinier ne résoudra rien.
- ConsĂ©quence pratique : toujours inspecter les chunks rĂ©cupĂ©rĂ©s avant dâaccuser le modĂšle. Câest le premier rĂ©flexe de dĂ©bogage dâun RAG.
- Lâinstruction de cadrage : « RĂ©ponds uniquement Ă partir du contexte fourni. Si la rĂ©ponse ne sây trouve pas, dis-le. » Deux effets :
- Réduit fortement les hallucinations (le modÚle ne comble plus avec sa mémoire interne).
- Permet le refus Ă©lĂ©gant : « Je ne trouve pas cette information dans les documents fournis » est une bonne rĂ©ponse â infiniment meilleure quâune invention plausible. Le dire explicitement : dans un RAG dâentreprise, un refus honnĂȘte est un succĂšs, pas un Ă©chec.
Bloc E â Quiz, synthĂšse, exit tickets (1:50 â 2:00, 10 min)
| Temps | Activité |
|---|---|
| 1:50â1:56 | Quiz (10 QCM, correction collective rapide ou en autonomie) |
| 1:56â1:59 | SynthĂšse : les 5 idĂ©es Ă retenir |
| 1:59â2:00 | Exit tickets |
Les 5 idées à retenir (à projeter ou dicter) :
- La mĂ©moire dâun LLM est figĂ©e, publique et avec pertes â le RAG rend lâexamen « Ă livre ouvert ».
- Deux pipelines : ingestion (hors ligne) et requĂȘte (en ligne).
- Le chunking est le levier n°1 : 300â800 tokens â , chevauchement, dĂ©coupe structurelle, tables entiĂšres.
- Hybride = vecteurs (sens) + mots-clés (codes exacts).
- Quand le RAG Ă©choue, suspecter dâabord la rĂ©cupĂ©ration â inspecter les chunks avant dâaccuser le modĂšle.
4. Exit tickets (5 questions)
Distribuer un ticket par participant (une seule question chacun, en tournant), rĂ©ponse en 1â2 phrases, ramassage Ă la sortie. Objectif : mesurer la comprĂ©hension rĂ©elle, pas noter.
Ticket 1. Citez les trois limites de la connaissance dâun modĂšle de langage seul, sans RAG. Attendu : figĂ©e Ă la date de coupure ; uniquement publique ; stockĂ©e avec pertes dans les poids.
Ticket 2. Quelle est la diffĂ©rence entre le pipeline dâingestion et le pipeline de requĂȘte ? Quand chacun sâexĂ©cute-t-il ? Attendu : ingestion = hors ligne, prĂ©paration (dĂ©coupage, embedding, indexation), une fois / Ă chaque mise Ă jour ; requĂȘte = en ligne, Ă chaque question (embedding de la question, rĂ©cupĂ©ration, assemblage du prompt, gĂ©nĂ©ration).
Ticket 3. Pourquoi ne faut-il jamais couper un tableau en deux lors du chunking ? Donnez un exemple de ce qui se passerait. Attendu : une ligne sĂ©parĂ©e de son en-tĂȘte devient inintelligible ; ex. « 42 | 15 % » sans savoir ce que reprĂ©sentent les colonnes.
Ticket 4. Votre RAG donne une rĂ©ponse fausse. Quel est votre premier rĂ©flexe de diagnostic, et pourquoi ? Attendu : inspecter les chunks rĂ©cupĂ©rĂ©s ; la cause la plus frĂ©quente est une rĂ©cupĂ©ration dĂ©faillante (mauvais chunks ou document absent de lâindex), pas le modĂšle.
Ticket 5. Pourquoi combine-t-on recherche vectorielle et recherche par mots-clĂ©s (recherche hybride) ? Donnez un exemple de requĂȘte que les vecteurs seuls rateraient. Attendu : les vecteurs capturent le sens mais ratent les chaĂźnes exactes ; ex. un code produit « REF-2024-8812 », un nom propre rare, un numĂ©ro dâarticle.
5. Difficultés anticipées et parades
| Difficulté | Parade |
|---|---|
| « Pourquoi pas juste mettre tous les documents dans le prompt ? » | FenĂȘtre de contexte limitĂ©e et coĂ»teuse ; qualitĂ© qui se dĂ©grade avec un contexte trĂšs long ; coĂ»t par requĂȘte. Le RAG sĂ©lectionne le pertinent. |
| Confusion embedding de chunk / embedding de question | Rappeler : mĂȘme modĂšle dâembedding, mĂȘme espace. Câest la condition pour que la proximitĂ© ait un sens. |
| « Le fine-tuning ferait pareil » | Fine-tuning = comportement, pas faits ; coĂ»teux ; obsolĂšte Ă chaque mise Ă jour documentaire ; pas de citations ; pas de contrĂŽle dâaccĂšs. |
| Participants perdus sur « lossy » | Analogie du livre lu il y a dix ans : on retient lâidĂ©e, pas le texte exact. |
| Sur-optimisme (« le RAG résout les hallucinations ») | Non : il les réduit avec un bon cadrage, mais une mauvaise récupération produit de mauvaises réponses. Le RAG déplace le problÚme vers la qualité de la récupération. |
6. Prolongements (si le groupe est rapide)
- Discuter le choix de k : petit k = risque de rater lâinfo ; grand k = bruit dans le contexte et coĂ»t. Valeurs courantes 3â10 â .
- Ăvoquer le reranking (rĂ©-ordonnancement des chunks rĂ©cupĂ©rĂ©s par un second modĂšle) comme amĂ©lioration classique â sera approfondi en session suivante.
- Question ouverte : « Quels documents de votre entreprise mettriez-vous dans un RAG en premier, et quelles métadonnées seraient critiques ? »