Aller au contenu principal

Quiz sur la génération augmentée par récupération (RAG)

Mis à jour le 30 juillet 2026

Ce quiz couvre l’ensemble des concepts RAG abordés dans cette section : embeddings, recherche vectorielle, BM25, recherche hybride, re-ranking et récupération contextuelle.

Question 1 : Qu'est-ce qu'un embedding dans le contexte du RAG ?

Un embedding est une représentation numérique (vecteur) d’un texte dans un espace multidimensionnel. Les textes sémantiquement proches ont des vecteurs proches dans cet espace. On utilise des modèles spécialisés comme voyage-3-large (VoyageAI, le partenaire recommandé par Anthropic — Anthropic ne fournit pas d’API d’embeddings elle-même) pour les générer.

Question 2 : Quelle est la différence entre la recherche vectorielle et BM25 ?
  • Recherche vectorielle : compare la similarité sémantique entre la requête et les documents en utilisant des embeddings. Elle comprend le sens même si les mots exacts ne correspondent pas.
  • BM25 : algorithme de recherche lexicale basé sur la fréquence des termes. Il est performant pour les correspondances exactes de mots-clés mais ne comprend pas la sémantique.
Question 3 : Pourquoi combiner les deux dans une recherche hybride ?

Chaque méthode à ses forces et ses faiblesses. La recherche vectorielle capte le sens mais peut manquer des correspondances exactes. BM25 est précis sur les mots-clés mais ne comprend pas les synonymes ou le contexte. En combinant les deux, on obtient le meilleur des deux mondes.

Question 4 : Comment fonctionne le re-ranking et pourquoi l'utiliser ?

Après la recherche hybride, on envoie les résultats fusionnés à Claude avec la question originale. Claude reordonne les documents par pertinence en utilisant sa compréhension du langage naturel. C’est utile car Claude peut saisir des nuances que ni la similarité vectorielle ni BM25 ne détectent (par ex. : “l’équipe engineering” vs une section de cybersécurité).

Question 5 : Quel est le problème fondamental que résout la récupération contextuelle ?

Quand on découpe un document en chunks, chaque morceau perd son contexte : il ne sait plus d’où il vient ni comment il se rattaché au reste du document. La récupération contextuelle résout ce problème en faisant générer par Claude un court paragraphe de contexte qui est ajouté à chaque chunk avant l’indexation.

Question 6 : Comment optimiser le re-ranking en termes de tokens ?

Au lieu de demander à Claude de renvoyer le texte complet des documents pertinents, on attribue un identifiant unique à chaque chunk et on demande à Claude de renvoyer uniquement les identifiants dans l’ordre de pertinence. Cela réduit considérablement le nombre de tokens en sortie.

Question 7 : Comment gérer les documents trop longs pour la récupération contextuelle ?

On fournit un sous-ensemble réduit du contexte au lieu du document entier :

  • Quelques chunks du début (résumés, introductions)
  • Les chunks immédiatement précédents
  • On saute les chunks du milieu non pertinents

Cela donne assez de contexte sans dépasser la fenêtre de contexte.

Question 8 : Quels sont les compromis du re-ranking ?
  • Avantage : meilleure précision grâce à la compréhension sémantique de Claude
  • Inconvénient : latence supplémentaire (un appel API en plus) et coût additionnel en tokens

Pour la plupart des cas d’usage, le gain en précision justifie ces coûts, surtout pour des requêtes complexes.