Ce qu’il faut retenir
- Un embedding place un texte dans un espace vectoriel appris. La proximité y est un signal produit par un modèle et une métrique précis ; elle ne prouve ni l’équivalence de deux clauses ni la validité d’une interprétation.
- La qualité d’une recherche dépend autant de l’unité indexée que du modèle : page, section, tableau, paragraphe ou fragment avec son titre ne répondent pas aux mêmes questions.
- Un index de voisins approximatifs accélère la recherche, mais peut écarter un vecteur que le calcul exact aurait retenu. Ce défaut technique doit être mesuré séparément des erreurs de pertinence du retriever.
- Recall@k, MRR et nDCG@k ne racontent pas la même histoire : couverture des passages pertinents, rang du premier résultat utile et qualité graduée de toute la tête de liste.
- Dans un RAG assurance, la recherche vectorielle forme un ensemble de candidats. Le filtrage, la recherche lexicale, le reranking et les citations conservent chacun une responsabilité distincte.
Ce qu’un embedding représente réellement
Un modèle d’embedding transforme une entrée en une suite fixe de nombres. Pour un modèle de recherche dense, la requête et les passages sont encodés de façon à rendre comparables leurs vecteurs. Le système classe ensuite les passages selon une fonction de proximité. Cette chaîne permet de retrouver une formulation différente de celle de la requête, mais elle ne construit pas un dictionnaire universel du sens.
La position d’un texte dépend du modèle, de sa version, de son entraînement, de la préparation de l’entrée et parfois d’un préfixe indiquant le rôle « requête » ou « document ». Deux vecteurs de même dimension produits par deux versions différentes ne sont pas comparables par défaut. La dimension n’est qu’un format ; elle ne garantit pas que les axes appris coïncident.
Sentence-BERT illustre la construction de représentations de phrases destinées à être comparées par cosinus. Dense Passage Retrieval illustre une architecture à deux encodeurs qui apprend des représentations de questions et de passages pour la recherche. Ces travaux établissent des mécanismes et des résultats sur leurs jeux d’essai ; ils ne démontrent aucune performance sur des contrats d’assurance.
Test de vocabulaire. « Proche dans l’espace du modèle » est une observation calculée. « Même garantie », « même exclusion » ou « document applicable » sont des conclusions métier qui exigent une référence et des critères supplémentaires.
Le bon modèle dépend de la tâche évaluée
Un modèle bien classé en similarité de phrases n’est pas nécessairement le meilleur retriever pour une question portant sur une clause. Le benchmark MTEB a précisément montré, dans son périmètre expérimental, qu’aucune méthode testée ne dominait toutes les familles de tâches. Le choix raisonnable consiste à présélectionner quelques modèles compatibles avec la langue, la longueur et les contraintes d’hébergement, puis à les comparer sur les requêtes et documents du cas visé.
Cette comparaison doit inclure des négatifs difficiles : passages qui partagent le produit, le vocabulaire et plusieurs entités, mais diffèrent sur une condition décisive. Un corpus composé seulement de réponses évidentes mesure surtout la capacité à retrouver le thème.
Cosinus, produit scalaire et distance : choisir une géométrie cohérente
Soient deux vecteurs x et y. Le produit scalaire x·y combine leur orientation et leur norme. La similarité cosinus divise ce produit par ||x|| × ||y|| et compare donc leur direction. Lorsque tous les vecteurs sont normalisés à une norme de un, classer par cosinus ou par produit scalaire donne le même ordre ; la distance euclidienne au carré vérifie alors ||x−y||² = 2 − 2 cos(x,y).
Cette équivalence mathématique ne donne pas la permission de changer de métrique au hasard. Il faut appliquer la fonction attendue par le modèle et la configuration de l’index, puis l’enregistrer comme un paramètre versionné. Si les vecteurs ne sont pas normalisés, la norme peut modifier le classement au produit scalaire alors que le cosinus l’écarte.
| Signal | Ce qu’il compare | Condition à contrôler | Erreur d’interprétation |
|---|---|---|---|
| Cosinus | Angle entre deux vecteurs non nuls | Convention du modèle et normalisation | Le lire comme un pourcentage de sens commun |
| Produit scalaire | Orientation et amplitude combinées | Normes et entraînement du modèle | Supposer qu’il équivaut toujours au cosinus |
| Distance euclidienne | Écart géométrique dans l’espace | Échelle et normalisation | Comparer des vecteurs issus de versions différentes |
| Score lexical | Correspondances de termes pondérées | Analyseur, langue et champs indexés | L’opposer systématiquement au dense |
Pourquoi un seuil global est fragile
Le score varie avec la longueur, le domaine, la formulation de la requête et la distribution du corpus. Un seuil calibré pour rapprocher des libellés de sinistre ne gouverne pas automatiquement la recherche de clauses. Même dans un seul usage, un ajout massif de documents proches peut changer les candidats autour d’une requête sans modifier son vecteur.
Pour décider d’une abstention, il vaut mieux apprendre sur un lot annoté la relation entre scores, rangs et erreurs, puis observer cette relation par segment. Le seuil reste un paramètre de produit : il doit porter un objectif, une version, une date et un comportement lorsque aucun résultat ne le franchit.
Choisir l’unité d’indexation avant le modèle
La question « quel embedding ? » arrive souvent trop tôt. Le retriever ne peut rendre que les unités placées dans son index. Une notice entière apporte du contexte mais dilue une clause courte ; une phrase isolée se rapproche facilement d’une requête mais peut perdre son titre, ses exceptions ou sa portée. Le découpage transforme donc la tâche de recherche.
Les expériences de Dense X Retrieval confirment, sur les tâches étudiées, que la granularité de l’unité influence la recherche et la tâche aval. Elles ne fondent pas une règle universelle en faveur de la proposition ou de la phrase. Pour l’assurance, l’unité doit d’abord préserver la structure nécessaire à la vérification.
| Unité candidate | Avantage | Risque | Test à prévoir |
|---|---|---|---|
| Document ou notice | Conserve la portée générale | Vecteur trop agrégé, coût aval élevé | Questions ciblant une petite clause |
| Section avec son titre | Bon compromis entre thème et contexte | Sections très inégales ou renvois externes | Garanties avec sous-conditions |
| Paragraphe | Passage lisible et localisable | Exception portée par le paragraphe voisin | Paires clause/exclusion |
| Phrase | Grande précision apparente | Perte de la définition et de la portée | Négations, pronoms et renvois |
| Ligne de tableau | Accès à un plafond ou une franchise | En-têtes et unités séparés de la valeur | Restitution avec titre de colonne |
Chaque fragment doit garder son identité documentaire
Le texte encodé peut contenir le titre de la section ou un chemin hiérarchique utile, mais l’index doit aussi conserver séparément les métadonnées canoniques : identifiant du document, version, produit, date d’effet, page, ordre, niveau de confidentialité et relations avec les fragments voisins. Ces champs ne servent pas tous au vecteur. Ils servent au filtrage, à la citation, aux droits et à la reconstruction du contexte.
Le chevauchement entre fragments peut éviter de couper une condition, mais il duplique aussi des candidats presque identiques. La recette doit comparer plusieurs tailles et recouvrements, puis mesurer la diversité de la tête de liste et la présence de l’ensemble de preuve minimal. Si l’entrée provient d’un scan, le découpage ne corrige pas les défauts d’OCR ou de lecture de tableau : l’article sur le Document AI, l’OCR et la mise en page détaille cet étage amont.
De la matrice de vecteurs à l’index ANN
Une recherche exacte calcule la proximité avec tous les vecteurs admissibles, puis trie les résultats. Elle fournit une référence simple, mais son coût croît avec le nombre de vecteurs et leur dimension. Un index de recherche approximative des plus proches voisins — ANN, pour approximate nearest neighbours — réduit ce travail en organisant les vecteurs dans une structure parcourue sélectivement.
HNSW est un exemple d’index fondé sur un graphe hiérarchique navigable. Son article décrit une construction en couches et une recherche qui descend vers des voisinages prometteurs. Une implémentation réelle expose des paramètres de construction et de requête qui modifient mémoire, temps d’indexation, latence et probabilité de retrouver les mêmes voisins que la recherche exacte.
Deux recalls@k à ne jamais confondre
- Rappel technique de l’ANN : parmi les k voisins retournés par une recherche exacte dans le même espace, quelle proportion apparaît dans les k résultats approximatifs ? Ce test isole l’index.
- Rappel de pertinence du retriever : parmi les passages jugés pertinents pour la requête, quelle proportion figure dans les k candidats ? Ce test couvre modèle, découpage, filtres et corpus.
Un ANN peut reproduire presque parfaitement le top-k exact d’un mauvais embedding. À l’inverse, un excellent retriever évalué en calcul exact peut perdre un passage lorsque l’index est réglé trop agressivement. Les deux courbes doivent être conservées : rappel ANN contre latence, puis pertinence métier contre taille k.
Construire une référence exacte échantillonnée
Pour chaque version d’index, sélectionnez un échantillon de requêtes et calculez les voisins exacts sur le même sous-corpus après les mêmes filtres. Comparez intersections, rangs et latence avec l’ANN. Le lot doit inclure des zones denses — plusieurs avenants presque identiques — car c’est là que de petits écarts de score peuvent réordonner les résultats.
Les chiffres d’un fournisseur sur un corpus public ne remplacent pas ce test : matériel, taille, dimension, distribution des vecteurs, filtres et objectif de rappel changent le compromis. Le résultat attendu est une frontière acceptable pour cet usage, pas un palmarès abstrait.
Construire une requête avec ses filtres
Une requête de recherche assurance comporte généralement deux familles de contraintes. La première exprime une proximité textuelle : « dans quelles conditions le vol est-il couvert ? ». La seconde détermine les documents admissibles : produit, version applicable, juridiction, tenant, droits de l’utilisateur ou date d’effet. Un vecteur ne doit pas décider seul de cette admissibilité.
Filtrer avant ou après la recherche
Un préfiltrage limite l’espace aux vecteurs autorisés avant le classement. Un postfiltrage recherche plus largement puis retire les résultats interdits ou hors périmètre. Selon le moteur, le préfiltrage peut réduire les chemins accessibles dans l’index ; le postfiltrage peut rendre moins de k résultats et expose un risque de surcollecte si la séparation des droits est mal conçue. Le comportement exact dépend du produit et de sa configuration : il doit être vérifié, pas supposé.
Pour les frontières de confidentialité, la priorité est l’absence de résultat non autorisé. Pour les métadonnées fonctionnelles, l’équipe mesure en plus le rappel et la latence sur des filtres fréquents et rares. Les journaux de test ne doivent pas devenir une copie durable des documents sensibles.
Conserver une voie lexicale
Les références de contrat, numéros d’articles, noms de garanties, montants et formulations rares bénéficient d’une correspondance lexicale. Le benchmark BEIR a trouvé BM25 robuste comme baseline dans son évaluation hétérogène, tandis que les familles denses, lexicales, à interaction tardive et de reranking présentaient des compromis différents. Ce résultat justifie une comparaison locale, pas l’affirmation que BM25 gagne toujours.
Une architecture hybride peut récupérer deux listes, normaliser ou fusionner leurs rangs, dédupliquer les passages puis transmettre davantage de candidats au reranker. La règle de fusion fait partie du modèle expérimental : son changement doit déclencher la même non-régression qu’un changement d’embedding.
Diagnostiquer avec recall@k, MRR et nDCG@k
Avant tout calcul, il faut produire des jugements de pertinence — souvent appelés qrels — qui relient une requête à un ou plusieurs fragments pertinents. Une requête doit être formulée comme elle le sera en usage. Les évaluateurs disposent du corpus et de consignes précises : passage suffisant, passage partiellement utile, contradictoire ou non pertinent.
| Métrique | Question répondue | Quand elle aide | Angle mort |
|---|---|---|---|
| Recall@k | Quelle part des passages pertinents jugés apparaît dans les k premiers ? | Le dossier exige plusieurs éléments de preuve | Dépend de l’exhaustivité des jugements |
| Hit@k | Au moins un passage pertinent apparaît-il dans les k premiers ? | Un seul passage suffit réellement | Ignore les autres éléments nécessaires |
| MRR | À quel rang apparaît le premier résultat pertinent, en moyenne ? | L’utilisateur ouvre surtout le premier bon résultat | Ignore tout ce qui suit ce premier résultat |
| nDCG@k | La liste place-t-elle tôt les résultats les plus utiles selon des grades ? | Plusieurs niveaux de pertinence sont défendables | Dépend de la qualité et de la cohérence des grades |
Recall@k : la couverture des preuves
Pour une requête q, Recall@k = pertinents retrouvés dans le top-k / pertinents jugés. Si deux fragments sont nécessaires — garantie et exclusion — et qu’un seul apparaît, le rappel vaut 0,5 pour cette requête. Cette lecture suppose que le jeu de jugements connaît les deux fragments ; un corpus faiblement annoté peut compter comme erreur un passage utile non jugé.
Publiez donc le nombre de requêtes, la méthode de jugement, le taux de requêtes sans pertinent identifié et les intervalles ou dispersions utiles avec la moyenne. Segmentez au minimum par produit, type de question, langue, forme du document et ancienneté.
MRR : le premier résultat pertinent
Le rang réciproque vaut 1 si le premier résultat est pertinent, 1/2 s’il arrive en deuxième position, 1/3 en troisième, et 0 si aucun résultat pertinent n’est trouvé dans la profondeur évaluée. Le MRR en fait la moyenne sur les requêtes. Le NIST documente cette mesure pour les campagnes de questions-réponses TREC.
Le MRR convient si l’enjeu est de faire remonter rapidement un premier passage suffisant. Il devient trompeur lorsqu’une réponse contractuelle requiert plusieurs passages, car il ne récompense pas leur présence après le premier pertinent.
nDCG@k : un ordre avec pertinence graduée
Le DCG cumule les gains attribués aux résultats en réduisant la contribution de ceux placés plus bas. Le nDCG divise ce score par celui d’un classement idéal pour la même requête. Il permet, par exemple, de distinguer un fragment directement probant, un contexte utile et une simple proximité thématique. Les choix de gains, de décote et de profondeur k doivent être publiés ; ils changent le sens du score. Wang et al. analysent précisément les propriétés de différentes mesures de type nDCG.
Lire les métriques comme un arbre de diagnostic
- Si le pertinent manque même en recherche exacte, inspecter le modèle, la requête, le découpage, les filtres et les qrels.
- S’il existe en exact mais manque en ANN, ajuster l’index ou son budget de recherche.
- S’il est présent à k=50 mais absent à k=10, comparer fusion hybride et reranking.
- S’il est premier mais insuffisant, corriger la définition de pertinence et l’unité indexée.
- Si les scores globaux montent mais qu’un segment critique baisse, refuser la moyenne comme critère unique de passage.
Scénario pédagogique : retrouver une garantie dans des notices versionnées
Ce scénario ne décrit ni un client ni une production existante. Un courtier souhaite retrouver les passages nécessaires pour répondre à une question sur la prise en charge du vol d’effets personnels dans un véhicule. Le corpus de recette contient des notices synthétiques versionnées, leurs avenants et des pages de tableaux. Une personne compétente a annoté les fragments attendus.
Le corpus et les unités
L’équipe compare trois découpages : section complète, paragraphe avec titre hiérarchique et phrase avec contexte voisin. Chaque unité garde un identifiant canonique, le produit, la version, la date d’effet, la page et la liste des unités adjacentes. Les tableaux sont restitués avec leurs en-têtes plutôt que ligne par ligne sans contexte.
Les requêtes couvrent des formulations courtes, des questions en langage métier, des fautes réalistes et des négatifs difficiles : vol du véhicule au lieu des effets, bagages au domicile, version antérieure du produit, plafond voisin mais non applicable. Les exemples sont écrits pour tester la méthode ; aucun taux de réussite n’est annoncé ici.
La chaîne comparée
- Le filtre d’accès et la version du produit définissent les documents admissibles.
- Une recherche lexicale et une recherche dense produisent deux listes de candidats.
- La fusion conserve les identifiants et signale l’origine de chaque candidat.
- Un reranker réordonne un ensemble borné sans inventer de nouveaux passages.
- La réponse éventuelle ne peut citer que les fragments effectivement présents et localisables.
- Si garantie et limite ne sont pas toutes deux retrouvées, le système s’abstient ou escalade selon la règle définie.
Le tableau de résultats affiche recall@k pour la couverture du couple garantie/limite, MRR pour le premier passage utile, nDCG@k pour l’ordre gradué, rappel ANN contre exact, latence par étape et taux de listes vides après filtre. Les erreurs sont relues par famille avant tout réglage.
Les signaux d’arrêt
- un document non autorisé apparaît avant ou après filtrage ;
- la version obsolète passe devant la version applicable ;
- la garantie est retrouvée sans son exclusion nécessaire ;
- le rappel ANN chute sur les filtres les plus sélectifs ;
- une migration de modèle change les résultats sans lot comparatif ni possibilité de retour.
Articuler candidats, reranking et citations
Un dual encoder calcule séparément les représentations de requête et de document, ce qui rend possible la préindexation. Cette efficacité limite les interactions observées lors du score initial. Un reranker peut ensuite examiner ensemble la requête et chaque candidat avec un calcul plus riche, mais sur un nombre réduit de passages.
La recherche dense répond donc « quels passages méritent un examen plus coûteux ? ». Le reranking répond « dans quel ordre présenter ces candidats pour cette requête ? ». La citation répond encore à une autre question : « quelle source canonique et quelle localisation permettent de vérifier l’affirmation ? ». Le guide sur le reranking et les citations en RAG assurance développe ces deux derniers contrats.
Le nombre transmis au reranker doit être assez grand pour préserver le rappel et assez borné pour maîtriser coût et latence. Si le passage pertinent n’est pas dans les candidats, le reranker ne peut pas le créer. C’est pourquoi la chaîne RAG vérifiable mesure chaque étage au lieu d’attribuer toute erreur au modèle génératif.
Enfin, une citation correcte au sens technique ne garantit pas que le passage soutient la proposition. Les tests de fidélité et de complétude restent nécessaires. La batterie des huit tests d’un assistant contractuel complète la recette de retrieval par les contrôles de réponse et d’usage.
Versionner et détecter la dérive
Un index vectoriel est un artefact construit, pas une simple vue intemporelle du corpus. Il dépend au minimum du modèle d’embedding, du tokenizer ou prétraitement associé, de la métrique, de la normalisation, du découpage, des métadonnées, du corpus et des paramètres ANN. Un changement de l’un de ces éléments peut exiger une réindexation et une nouvelle recette.
| Artefact à versionner | Empreinte minimale | Contrôle de migration |
|---|---|---|
| Encodeur | Fournisseur ou dépôt, identifiant immuable, dimension, préfixes | Lot de requêtes rejoué dans un index séparé |
| Préparation | Nettoyage, langue, extraction de tableau, taille et recouvrement | Diff des unités et de leur provenance |
| Corpus | Document, version, date d’effet, statut d’indexation | Comptage des ajouts, retraits et fragments orphelins |
| Index | Métrique, bibliothèque, algorithme et paramètres | Rappel ANN versus exact et courbe de latence |
| Evaluation | Requêtes, qrels, consignes, segments et métriques | Comparaison à politique de jugement constante |
Ne pas mélanger silencieusement les espaces
Lors d’un changement d’encodeur, créez un nouvel index avec un identifiant distinct et encodez requêtes et documents avec la configuration correspondante. Une stratégie parallèle permet de comparer les listes avant de basculer. Mélanger des documents encodés par l’ancien modèle et des requêtes du nouveau ne produit pas une comparaison interprétable, sauf mécanisme de compatibilité démontré et testé.
Le retour arrière conserve l’ancien index, sa configuration et la route applicative jusqu’à la décision de migration. Les événements de mise à jour documentaire doivent pouvoir être rejoués sur les deux versions ou faire l’objet d’une fenêtre de gel explicitée.
Surveiller quatre formes de dérive
- Dérive du corpus : nouvelles gammes, avenants, langue ou formats modifient les voisinages.
- Dérive des requêtes : les utilisateurs posent d’autres questions ou emploient un nouveau vocabulaire.
- Dérive des jugements : les consignes ou la population d’évaluateurs changent la notion de pertinence.
- Dérive technique : alias de modèle, bibliothèque, paramètres ou filtres évoluent sans nouvelle recette.
Les alertes portent sur les distributions et les segments : part de résultats vides, scores, recouvrement entre dense et lexical, corrections humaines, latence et métriques sur un lot stable. Une variation déclenche une enquête ; elle ne prouve pas seule une baisse de qualité.
Plan de recette avant pilote
- Écrire le contrat de pertinence. Définir ce qui est suffisant, partiel, contradictoire et hors périmètre pour chaque famille de requêtes.
- Geler un corpus versionné. Conserver provenance, droits, dates d’effet et relations entre fragments.
- Comparer les unités. Tester section, paragraphe et variante avec contexte, sans choisir une taille arbitraire.
- Établir les baselines. Mesurer lexical seul, dense exact, puis hybride avant d’ajouter l’ANN et le reranking.
- Séparer les diagnostics. Calculer rappel ANN contre exact, puis recall@k, MRR et nDCG@k contre les jugements humains.
- Tester les filtres. Couvrir droits, produits, versions, dates et sélectivités extrêmes ; vérifier aussi l’absence de fuite.
- Introduire des négatifs difficiles. Inclure clauses proches, anciennes versions, montants voisins, négations et exceptions.
- Ajouter reranking et citations. Vérifier leur gain propre sans masquer une perte de rappel en amont.
- Mesurer le coût complet. Indexation, stockage, latence par étage, fréquence de mise à jour et revue humaine.
- Préparer migration et repli. Double index, identifiants immuables, critères de bascule et conservation temporaire de la version précédente.
Critère de sortie. Un pilote n’est pas prêt parce que quelques requêtes renvoient des passages plausibles. Il est prêt lorsque l’équipe sait quels passages devaient être retrouvés, pourquoi certains manquent, quel étage porte l’erreur et comment revenir à la version précédente.
Sources et références primaires
La recherche documentaire de cette révision a été contrôlée le 12 août 2026. Les résultats expérimentaux cités décrivent leurs jeux de données et configurations ; ils ne constituent pas une preuve de performance sur un corpus d’assurance.
- Reimers et Gurevych, « Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks », EMNLP-IJCNLP 2019 — représentations de phrases et comparaison par cosinus.
- Karpukhin et al., « Dense Passage Retrieval for Open-Domain Question Answering », EMNLP 2020 — dual encoder et recherche dense de passages.
- Malkov et Yashunin, « Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs » — architecture HNSW et recherche approximative.
- Thakur et al., « BEIR: A Heterogeneous Benchmark for Zero-shot Evaluation of Information Retrieval Models », NeurIPS Datasets and Benchmarks 2021 — comparaison hétérogène de familles de retrievers.
- Muennighoff et al., « MTEB: Massive Text Embedding Benchmark », EACL 2023 — évaluation multi-tâches des modèles d’embedding.
- Chen et al., « Dense X Retrieval: What Retrieval Granularity Should We Use? » — comparaison expérimentale de granularités d’indexation.
- NIST, collections Question Answering de TREC — définition opérationnelle du rang réciproque moyen pour ces campagnes.
- Wang et al., « A Theoretical Analysis of NDCG Type Ranking Measures », COLT 2013 — propriétés des mesures nDCG et de leur décote.
Transformer le moteur en système mesurable
Le choix d’un modèle d’embedding n’est qu’une ligne du dossier de décision. La valeur vient de l’ensemble : unités vérifiables, corpus admissible, géométrie cohérente, index dont l’approximation est mesurée, jugements métier, métriques adaptées et migration réversible.
Concevoir une recette de recherche sur vos documents
Jacques Joly Blary accompagne les équipes assurance pour constituer un lot de requêtes, des jugements de pertinence et une architecture de recherche dont chaque erreur peut être attribuée.



