Recherche et science

eRAG, une méthode plus sobre pour évaluer la recherche des assistants IA

Les moteurs de recherche ont été pensés pour des internautes, pas pour des modèles de langage qui doivent exploiter les résultats afin de répondre. Des chercheurs de l’Université du Massachusetts Amherst présentent eRAG, une méthode d’évaluation annoncée comme aussi fiable que les tests complets, mais bien moins coûteuse en calcul.

Chercheuse évaluant les résultats d’un moteur de recherche utilisés par un assistant IA dans un laboratoire.
Illustration : Actu.ai

Lorsqu’un internaute tape quelques mots dans un moteur de recherche, il peut parcourir les liens proposés, modifier sa requête et recouper les informations. Un assistant fondé sur un grand modèle de langage, ou LLM, ne travaille pas tout à fait de cette manière. Pour répondre à une question, il doit déterminer quels documents lui apportent les éléments réellement utiles, puis les mobiliser sans se laisser détourner par des résultats seulement proches en apparence.

C’est ce problème précis que vise eRAG, une méthode présentée par des chercheurs de l’Université du Massachusetts Amherst. Dévoilée dans les actes de la 47e conférence internationale ACM SIGIR sur la recherche et le développement en recherche d’information, elle ne prétend pas inventer un nouveau moteur de recherche. Son rôle est plus en amont et tout aussi stratégique : mesurer, à moindre coût, la qualité des résultats qu’un moteur fournit à une intelligence artificielle.

Les auteurs, Alireza Salemi et Hamed Zamani, annoncent une méthode capable de s’exécuter jusqu’à trois fois plus rapidement qu’une évaluation complète de bout en bout, tout en demandant 50 fois moins de puissance GPU et en conservant un niveau de fiabilité similaire. À une période où les assistants IA s’appuient de plus en plus sur la recherche d’informations externes, la question de l’évaluation devient centrale.

Pourquoi les moteurs de recherche classiques ne suffisent plus

Les moteurs de recherche traditionnels ont d’abord été conçus pour répondre à des personnes. Ce cadre fonctionne bien : face à une requête imprécise, l’utilisateur peut reconnaître un résultat prometteur, cliquer, revenir en arrière ou reformuler progressivement sa demande.

Prenons la recherche d’un livre dont on ne connaît ni le titre ni l’auteur. Une personne peut commencer avec des mots très généraux, observer les premiers résultats et ajouter ensuite un personnage, une époque ou un élément de l’intrigue. Elle utilise son jugement au fil de la recherche.

Un LLM rencontre une difficulté différente. Son savoir initial provient des données utilisées lors de son entraînement. S’il ne dispose pas d’une information ou s’il doit répondre à propos d’un fait récent, il ne peut pas simplement « deviner » la bonne source. Les requêtes vagues et les listes de liens hétérogènes sont donc particulièrement délicates à exploiter pour lui.

Cette différence compte car un résultat qui semble acceptable à un humain ne sera pas nécessairement le plus utile à un modèle de langage. Pour produire une réponse correcte, le modèle a besoin d’informations suffisamment pertinentes, explicites et exploitables dans le contexte de la question posée. La recherche doit ainsi être jugée non seulement à l’aune du clic ou de la satisfaction d’un lecteur, mais aussi selon sa capacité à nourrir une réponse générée par une IA.

Le RAG, le pont entre un modèle de langage et les documents

Pour relier un assistant IA à des sources externes, les chercheurs et les entreprises utilisent notamment le principe du retrieval-augmented generation, souvent abrégé en RAG. En français, on peut le décrire comme une génération augmentée par la recherche.

Le déroulé général est simple :

  1. un utilisateur formule une demande à un agent reposant sur un LLM ;
  2. l’agent envoie une requête à un moteur de recherche ;
  3. le moteur renvoie une liste de documents ou de résultats ;
  4. le modèle exploite certains de ces contenus pour générer sa réponse.

Cette architecture peut aider un assistant à s’appuyer sur des informations qui ne figurent pas directement dans ses données d’entraînement. Mais elle ouvre une question moins visible pour l’utilisateur : comment savoir si les résultats récupérés étaient réellement utiles au modèle ?

Il ne suffit pas qu’un document parle du bon sujet. Il faut encore qu’il améliore la réponse finale. Un résultat peu précis, ambigu ou mal adapté peut ne rien apporter, voire compliquer la génération. Évaluer ce maillon de la chaîne est indispensable pour comparer des moteurs de recherche, ajuster les systèmes RAG et comprendre leurs limites.

Évaluer la recherche pour une IA : trois approches coûteuses ou imparfaites

Avant eRAG, plusieurs familles de méthodes pouvaient être mobilisées pour mesurer la pertinence des résultats de recherche dans un contexte de LLM. Toutes comportent des compromis entre qualité du jugement, coût et vitesse.

La première consiste à demander à des humains d’évaluer les résultats. C’est une pratique classique en recherche d’information. Elle peut fournir un jugement nuancé, mais mobiliser des évaluateurs prend du temps et coûte cher. Surtout, un humain ne reproduit pas parfaitement la manière dont un modèle de langage utilise ou interprète une information.

La deuxième approche confie le jugement à un autre LLM. Elle peut être plus économique, mais sa précision dépend notamment du modèle choisi. Lorsqu’on n’utilise pas les modèles les plus puissants, les auteurs soulignent que la qualité des évaluations peut diminuer.

Enfin, la méthode de référence consiste à évaluer directement la performance complète, dite end-to-end, d’un LLM augmenté par la recherche. Autrement dit, on fait tourner tout le système, de la requête à la réponse, pour mesurer son résultat final. Cette voie est proche de l’usage réel, mais elle exige beaucoup de ressources de calcul et peut être difficile à interpréter.

Méthode d’évaluationPrincipePrincipal atoutLimite signalée par les chercheurs
Panel humainDes personnes jugent la pertinence des résultatsÉvaluation classique et directeCoûteuse, et imparfaite pour refléter la sensibilité des LLM
Jugement par un LLMUn modèle de langage note les résultatsMoins coûteux qu’un panel humainPrécision variable avec des modèles moins puissants
Évaluation end-to-endLe système RAG complet est exécuté et mesuréRéférence proche de la performance finaleCoûteuse et opaque
eRAGLes résultats sont évalués selon leur utilité pour la tâche de l’agentRapidité et moindre besoin de GPUMéthode encore inscrite dans un champ de recherche en évolution

Comment fonctionne eRAG

eRAG a été conçu comme une alternative plus économe à l’évaluation complète de bout en bout. La méthode reprend une situation représentative : un humain interagit avec un agent IA fondé sur un LLM afin d’accomplir une tâche. L’agent formule alors une requête vers un moteur de recherche.

Le moteur renvoie une liste d’environ 50 résultats. eRAG examine ensuite ces entrées pour déterminer lesquelles sont bénéfiques à la production d’une réponse appropriée. L’enjeu n’est donc pas de désigner abstraitement le « meilleur » lien, mais d’identifier les documents qui contribuent effectivement au travail demandé au modèle.

Cette nuance est importante. Dans les systèmes d’IA générative, la qualité finale dépend d’une chaîne complète : formulation de la requête, récupération des documents, sélection des passages utiles, puis génération de la réponse. Une méthode d’évaluation adaptée doit tenir compte de cette relation entre les résultats de recherche et la tâche confiée à l’agent.

Les chercheurs présentent eRAG comme une méthode analogue à l’évaluation de référence, mais plus légère. D’après leurs résultats, elle peut fonctionner jusqu’à trois fois plus vite et avec 50 fois moins de puissance GPU, tout en maintenant une fiabilité similaire. Les GPU, ou processeurs graphiques, sont devenus essentiels pour exécuter de nombreux calculs d’IA. Réduire leur mobilisation peut donc accélérer les expériences et limiter les coûts matériels associés à l’évaluation.

Évaluer un système RAG : eRAG face au test complet

eRAG

  • Évalue l’utilité des résultats récupérés pour la tâche confiée à l’agent IA.
  • Est annoncée comme jusqu’à trois fois plus rapide.
  • Requiert, selon les auteurs, cinquante fois moins de puissance GPU.
  • Vise une fiabilité similaire à celle de l’évaluation de référence.
  • Peut faciliter des itérations d’évaluation moins coûteuses.

Évaluation end-to-end

  • Exécute et mesure le système complet, de la recherche à la réponse générée.
  • Reflète directement la performance finale du système RAG.
  • Constitue la méthode de référence à laquelle eRAG se compare.
  • Demande davantage de ressources de calcul.
  • Reste coûteuse et opaque selon les chercheurs.

Un gain de calcul qui peut compter à grande échelle

À première vue, évaluer des résultats de recherche peut sembler être une opération secondaire. Dans la pratique, elle peut devenir très lourde dès lors que les équipes comparent de nombreux moteurs, de multiples requêtes, différents modèles de langage et plusieurs configurations de RAG.

Une réduction de la puissance GPU nécessaire peut rendre ces tests plus accessibles à des équipes universitaires ou à des organisations qui ne disposent pas d’infrastructures massives. Elle peut aussi accélérer le cycle d’amélioration : un système est évalué, ses réglages sont modifiés, puis il est testé à nouveau.

Il faut néanmoins bien distinguer l’évaluation de l’amélioration immédiate. eRAG ne transforme pas à lui seul les résultats d’un moteur de recherche. Il fournit un moyen de mesurer plus efficacement les résultats les plus utiles à un LLM. C’est ensuite aux concepteurs de moteurs, d’agents et de systèmes RAG d’utiliser ces mesures pour comparer ou améliorer leurs solutions.

Une recherche distinguée à SIGIR 2024

Les travaux ont reçu le Best Short Paper Award lors de SIGIR 2024, une conférence de l’Association for Computing Machinery consacrée à la recherche d’information. Cette distinction souligne l’intérêt de la communauté scientifique pour le problème étudié : les usages de la recherche évoluent à mesure que les agents conversationnels deviennent une nouvelle porte d’accès à l’information.

Les auteurs ont également mis à disposition un paquet Python public contenant le code d’eRAG. Cette ouverture permet à d’autres chercheurs et développeurs d’examiner la méthode, de la reproduire et de l’intégrer à leurs propres expériences. Dans le domaine des systèmes RAG, où les résultats peuvent dépendre fortement des jeux de données, des modèles et des configurations retenus, cet accès au code est particulièrement utile.

La publication rappelle aussi qu’il n’existe pas, à ce stade, de moteur de recherche compatible de façon généralisée avec tous les LLM développés. Les modèles n’ont pas tous les mêmes capacités, le même contexte de travail ni la même manière d’exploiter les documents récupérés. Une mesure robuste de la pertinence doit donc éviter de confondre les besoins d’un utilisateur humain avec ceux d’un agent IA.

Ce qu’il faut surveiller pour la recherche assistée par IA

La multiplication des assistants capables d’aller chercher des informations externes rend la qualité de la récupération documentaire aussi importante que la qualité du texte généré. Une réponse fluide n’est pas forcément une réponse solidement appuyée. La sélection des documents qui l’alimentent devient un enjeu technique central.

Les travaux autour d’eRAG invitent à suivre plusieurs points. D’abord, la capacité des méthodes d’évaluation à rester fiables avec des LLM et des tâches variés. Ensuite, la façon dont les moteurs adapteront leurs résultats aux contraintes propres des agents IA. Enfin, l’effet réel de ces outils sur le coût de développement des systèmes RAG, dans un secteur où l’usage des GPU est une ressource déterminante.

Pour les utilisateurs, la promesse est indirecte mais concrète : si les systèmes de recherche sont mieux évalués pour les assistants IA, ces derniers pourraient être davantage capables de trouver les documents pertinents avant de répondre. La méthode eRAG ne règle pas tous les défis de la recherche augmentée par l’IA, mais elle propose un instrument plus sobre pour les mesurer, condition indispensable à des progrès vérifiables.

Questions fréquentes

Qu’est-ce qu’eRAG ?

eRAG est une méthode d’évaluation conçue pour les systèmes de génération augmentée par la recherche, ou RAG. Elle sert à déterminer quels résultats fournis par un moteur de recherche sont réellement utiles à un agent reposant sur un modèle de langage pour accomplir une tâche et produire une réponse appropriée.

Quelle différence entre eRAG et un moteur de recherche ?

eRAG n’est pas un moteur de recherche destiné au grand public. La méthode ne remplace pas le moteur qui trouve des documents. Elle évalue la valeur des résultats renvoyés par ce moteur pour un LLM, afin de mesurer plus efficacement la qualité de la récupération d’informations dans un système RAG.

Pourquoi les LLM ont-ils besoin de résultats de recherche adaptés ?

Un LLM s’appuie d’abord sur les données de son entraînement et ne peut pas accéder seul à une information absente de cette base. La recherche externe peut compléter ses connaissances, mais les résultats doivent être suffisamment pertinents et exploitables pour la question posée. Les besoins du modèle ne coïncident pas toujours avec ceux d’un internaute.

Quels gains eRAG annonce-t-il par rapport à une évaluation complète ?

Les chercheurs indiquent qu’eRAG peut s’exécuter jusqu’à trois fois plus rapidement qu’une évaluation end-to-end d’un LLM augmenté par la recherche. Ils annoncent aussi un besoin cinquante fois inférieur en puissance GPU, tout en conservant un niveau de fiabilité similaire à cette méthode de référence.

Le code d’eRAG est-il disponible publiquement ?

Oui. Les auteurs ont publié un paquet Python contenant le code d’eRAG sur GitHub. Cette mise à disposition permet à d’autres équipes de consulter l’implémentation, de reproduire les expériences et d’étudier l’usage de la méthode dans leurs propres systèmes de recherche augmentée par l’IA.

Sources

Références consultées pour la rédaction de cet article. Les adresses sont indiquées à titre informatif et ne sont pas des liens.

  1. Dépôt GitHub officiel du projet eRAG et code Pythongithub.com/alirezasalemi7/eRAG
  2. Site officiel de SIGIR 2024, conférence ACM sur la recherche d’informationsigir-2024.github.io