RepoBench
RepoBench est un benchmark d'autocomplétion de code au niveau du dépôt pour Python et Java qui mesure si un système peut prédire la ligne de code suivante en utilisant à la fois le contexte intra-fichier et le contexte inter-fichiers provenant d'autres fichiers du même dépôt. Il comporte trois tâches — récupération (RepoBench-R), complétion de la ligne suivante (RepoBench-C) et le pipeline de bout en bout (RepoBench-P) — évaluées principalement par Exact Match et Edit Similarity, et par la précision de récupération pour la tâche de récupération.
En savoir plus
- Exemple
- À partir des lignes précédentes d'un fichier source ainsi que d'extraits de code tirés d'autres fichiers du même dépôt (par exemple un module qui définit une fonction ou une classe utilitaire), prédire l'unique ligne de code suivante — généralement une ligne qui appelle ou référence quelque chose défini dans un autre fichier.
- Notation
- Complétion (RepoBench-C et -P) : la ligne suivante prédite est comparée à la ligne de référence par Exact Match (pourcentage de lignes exactement identiques) et Edit Similarity (score 0–100 = 1 − distance d'édition de Levenshtein normalisée) ; le CodeBLEU est également reporté. Récupération (RepoBench-R) : accuracy@k — la proportion d'items dont l'extrait inter-fichiers de référence figure parmi les k meilleurs candidats récupérés.
- Vérification
- La notation est automatique et fondée sur une référence (sans exécution de code) : la ligne produite par le modèle est normalisée puis comparée en tant que chaîne à la vraie ligne suivante mise de côté du dépôt d'origine. Sous Exact Match, une complétion n'est comptée correcte que si elle est identique caractère par caractère à la ligne de référence ; Edit Similarity accorde un crédit partiel ; une récupération est acceptée lorsque l'extrait de référence figure dans le top-k.
- Pourquoi c'est important
- Les vrais assistants de code doivent raisonner sur un dépôt entier, et pas seulement sur le fichier ouvert. RepoBench isole la modélisation du contexte inter-fichiers — récupérer le bon contexte et prédire la ligne suivante qui en dépend — c'est pourquoi il est devenu un banc d'essai standard pour les modèles de code conscients du dépôt et à long contexte.
Exemple résolu
return to_title(raw)
Aucun score vérifié pour ce benchmark à ce jour.