Agent Retrieval Bench: Evaluating Repository Context Retrieval for Coding Agents
Cet article présente Agent Retrieval Bench, un benchmark complet au niveau des fichiers pour évaluer la récupération de contexte dans les agents de codage en utilisant des signaux de flux de travail réels, ce qui révèle qu'aucune méthode de récupération unique ne domine à travers diverses tâches et souligne des lacunes importantes dans la capacité des agents actuels à identifier les fichiers nécessaires du dépôt.
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que vous êtes un détective tentant de résoudre un mystère dans une bibliothèque immense et chaotique. Vous avez un indice — une page déchirée, un murmure ou un bruit étrange — mais pour résoudre l'affaire, vous devez d'abord trouver le bon livre sur l'étagère. Dans le monde de l'informatique, cette « bibliothèque » est le code d'un projet logiciel, et les « détectives » sont des agents d'IA conçus pour écrire et corriger du code. Pendant longtemps, nous avons surtout jugé ces détectives de l'IA en fonction de leur capacité à finir par écrire la solution parfaite. Mais cet article soutient qu'avant même qu'une IA puisse penser à rédiger un correctif, elle doit réussir à jouer à une partie de « Où est Charlie ? » au sein du code. Si elle saisit le mauvais livre, elle ne résoudra jamais le mystère, peu importe la finesse de son raisonnement. Cette nouvelle étude, appelée Agent Retrieval Bench, est un test géant conçu spécifiquement pour voir à quel point ces détectives de l'IA sont doués pour trouver les bons fichiers dans un répertoire avant de commencer à taper.
Les chercheurs ont construit un terrain d'essai rigoureux utilisant 427 scénarios de codage réels extraits de 25 projets logiciels différents. Ils ont créé cinq types différents d'« indices » pour voir comment l'IA réagit. Parfois, l'indice est la description d'une nouvelle fonctionnalité (demandant à l'IA de trouver les tests associés) ; parfois, c'est le commentaire d'un réviseur sur un fichier spécifique (demandant à l'IA de trouver les autres fichiers nécessaires pour comprendre ce commentaire) ; parfois, c'est un rapport de plantage (demandant à l'IA de trouver le code de la cause racine) ; et parfois, c'est un petit changement (demandant à l'IA de trouver tous les autres fichiers qui pourraient être cassés à cause de celui-ci). Il y avait même un groupe de indices délicats où la réponse ne se trouvait pas du tout dans la bibliothèque, testant si l'IA savait dire : « Je ne trouve pas cela ici ».
Les résultats ont été un choc pour l'idée selon laquelle « plus c'est gros, mieux c'est » ou qu'un type d'outil de recherche gagne à chaque fois. L'étude a révélé qu'aucune méthode unique n'est le champion incontesté. C'est comme essayer de trouver une aiguille dans une botte de foin : parfois, un aimant (la recherche sémantique, qui cherche le sens) fonctionne le mieux ; d'autres fois, une carte de la disposition de la bibliothèque (la recherche structurelle, qui observe comment les fichiers sont connectés) est le seul moyen de trouver l'aiguille. En fait, le « meilleur » outil changeait en fonction du type spécifique d'indice et de l'espace de lecture (budget de contexte) dont disposait l'IA.
L'une des découvertes les plus intéressantes est que même lorsque les détectives de l'IA sont autorisés à demander plus d'aide et à chercher de manière interactive, ils manquent toujours les fichiers corrects dans environ 27 % à 35 % des cas. Il s'avère que ce n'est pas parce qu'une IA peut chercher qu'elle sait où chercher. L'article a également montré que si vous donnez un « indice » (une liste de fichiers pré-sélectionnés) à une IA basé sur une recherche intelligente, elle résout les problèmes plus rapidement et avec moins d'efforts inutiles que si vous lui jetiez simplement des fichiers au hasard. Cependant, l'étude a aussi infirmé une idée porteuse d'espoir : les simples scores de confiance ne suffisent pas pour dire à l'IA quand arrêter de chercher et admettre : « Ceci n'est pas dans cette bibliothèque ».
En fin de compte, l'article suggère que construire une IA de codage véritablement utile ne consiste pas à trouver un moteur de recherche magique. Il s'agit plutôt de mélanger différentes stratégies — comme utiliser ensemble une carte sémantique et une carte structurelle — pour garantir que l'IA trouve le bon contexte avant de tenter de corriger le code. Les auteurs précisent avec prudence que si cela aide l'IA à trouver les bons fichiers, cela ne garantit pas qu'elle écrira la correction parfaite, mais sans trouver les bons fichiers, une correction est impossible.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.