Réparer 7 400 bugs pour 1 $ : Réparation de programmes sur site à bas coût
Fixing 7,400 Bugs for 1$: Cheap Crash-Site Program Repair
May 19, 2025
Auteurs: Han Zheng, Ilia Shumailov, Tianqi Fan, Aiden Hall, Mathias Payer
cs.AI
Résumé
L'avancée rapide des techniques de détection de bogues a conduit à la découverte d'un nombre de vulnérabilités supérieur à ce que les développeurs peuvent raisonnablement corriger, créant un besoin urgent de méthodes efficaces de réparation automatisée de programmes (Automated Program Repair, APR). Cependant, la complexité des bogues modernes rend souvent l'analyse précise des causes racines difficile et peu fiable. Pour relever ce défi, nous proposons la réparation au site de crash afin de simplifier la tâche de réparation tout en atténuant le risque d'exploitation. De plus, nous introduisons une approche de génération de correctifs guidée par des modèles, qui réduit significativement le coût en tokens des modèles de langage de grande taille (Large Language Models, LLMs) tout en maintenant à la fois l'efficacité et l'efficience.
Nous implémentons notre système prototype, WILLIAMT, et l'évaluons par rapport aux outils APR les plus performants. Nos résultats montrent que, lorsqu'il est combiné avec l'agent le plus performant, CodeRover-S, WILLIAMT réduit le coût en tokens de 45,9 % et augmente le taux de correction des bogues à 73,5 % (+29,6 %) sur ARVO, un benchmark de vulnérabilités logicielles open source de référence. Par ailleurs, nous démontrons que WILLIAMT peut fonctionner efficacement même sans accès aux LLMs de pointe : même un modèle local exécuté sur un Mac M4 Mini atteint un taux de réparation raisonnable. Ces résultats mettent en évidence l'applicabilité et l'évolutivité étendues de WILLIAMT.
English
The rapid advancement of bug-finding techniques has led to the discovery of
more vulnerabilities than developers can reasonably fix, creating an urgent
need for effective Automated Program Repair (APR) methods. However, the
complexity of modern bugs often makes precise root cause analysis difficult and
unreliable. To address this challenge, we propose crash-site repair to simplify
the repair task while still mitigating the risk of exploitation. In addition,
we introduce a template-guided patch generation approach that significantly
reduces the token cost of Large Language Models (LLMs) while maintaining both
efficiency and effectiveness.
We implement our prototype system, WILLIAMT, and evaluate it against
state-of-the-art APR tools. Our results show that, when combined with the
top-performing agent CodeRover-S, WILLIAMT reduces token cost by 45.9% and
increases the bug-fixing rate to 73.5% (+29.6%) on ARVO, a ground-truth open
source software vulnerabilities benchmark. Furthermore, we demonstrate that
WILLIAMT can function effectively even without access to frontier LLMs: even a
local model running on a Mac M4 Mini achieves a reasonable repair rate. These
findings highlight the broad applicability and scalability of WILLIAMT.Summary
AI-Generated Summary