RAG

Le RAG le plus dangereux est celui qui répond toujours

Un système qui invente une réponse plausible sur une question hors corpus fait plus de dégâts qu'un système qui se tait. L'abstention est une fonctionnalité, et elle se mesure.

Le chiffre que personne ne regarde

Les tableaux de bord d'un RAG affichent la pertinence : le bon document est-il remonté ? C'est nécessaire, et très insuffisant. Il manque la question symétrique : que fait le système quand la réponse n'existe nulle part dans le corpus ?

Dans notre lab, quatre questions sur vingt n'ont pas de réponse. « Quel est le tarif d'une assurance automobile ? » — le corpus ne parle que d'habitation. « Combien de collaborateurs compte la cellule qualité ? » — la cellule est citée dans deux notes, son effectif nulle part. Un RAG naïf répond aux deux, avec aplomb, en citant un passage qui parle effectivement de la cellule qualité.

Le taux d'abstention mesure exactement cela. C'est l'indicateur le plus souvent absent des évaluations, et le seul qui distingue un assistant d'un générateur de réponses plausibles.

Deux façons de se taire, dans cet ordre

La première est grossière et efficace : si les termes porteurs de la question n'existent nulle part dans l'index, la question porte sur autre chose que ce qu'on indexe. On s'arrête avant même de regarder les passages. C'est ce qui traite « assurance automobile » sur un corpus habitation.

La seconde est plus fine : une question en « combien » appelle un nombre, et ce nombre doit se trouver dans la même phrase qu'un terme de la question. Un chiffre ailleurs dans le passage ne prouve rien — un compte rendu de comité est plein de plafonds et de dates sans répondre à la question posée. Sans cette règle, le système répond « la cellule qualité » en citant une section qui la mentionne sans jamais dire combien elle compte.

Une entité présente dans le corpus n'est pas une réponse. C'est la confusion la plus coûteuse d'un RAG d'entreprise.

Vérifier la réponse, pas seulement la récupération

Une fois qu'un modèle rédige, la question change : chaque affirmation est-elle soutenue par un passage cité ? Pas la réponse dans son ensemble — chaque phrase. Une réponse juste à 90 % avec un montant inventé est une réponse fausse, et c'est la moitié inventée que le lecteur retiendra.

Le contrôle qui rapporte le plus tient en une ligne : chaque nombre d'une phrase doit figurer dans le passage qui la soutient. Montant, délai, date, pourcentage — c'est ce qui engage. Un vérificateur qui compare des mots et ignore les chiffres laisse passer précisément ce qui coûte.

Nous l'éprouvons sur un générateur qui ment délibérément trois fois sur vingt réponses : un plafond inventé, un délai de carence inventé, une adresse inventée. Le vérificateur doit signaler ces trois-là et aucune autre. Si un contrôle d'ancrage ne sait pas faire ça, il ne sert à rien.

Ce qui bloque une régression en production

Un jeu d'évaluation qui produit un rapport que personne ne lit ne protège de rien. Ce qui protège, c'est un seuil qui fait échouer la chaîne d'intégration.

Dans notre lab, une seule question ratée fait tomber le rappel de 100 % à 94 %, sous un seuil de 95 % — et la CI échoue. C'est volontaire. Le jour où quelqu'un change une stratégie de découpage « pour voir », il l'apprend avant la mise en production, pas par un utilisateur.

Les trois refus qui font la différence

  • Refuser de répondre quand le corpus ne contient pas la réponse
  • Refuser d'écrire un chiffre absent des passages cités
  • Refuser de fusionner une régression de pertinence, par un seuil de CI