SWE-bench-java: Un benchmark per la risoluzione di issue su GitHub per Java
SWE-bench-java: A GitHub Issue Resolving Benchmark for Java
August 26, 2024
Autori: Daoguang Zan, Zhirong Huang, Ailun Yu, Shaoxin Lin, Yifan Shi, Wei Liu, Dong Chen, Zongshuai Qi, Hao Yu, Lei Yu, Dezhi Ran, Muhan Zeng, Bo Shen, Pan Bian, Guangtai Liang, Bei Guan, Pengjie Huang, Tao Xie, Yongji Wang, Qianxiang Wang
cs.AI
Abstract
La risoluzione di issue su GitHub è un'attività cruciale nell'ingegneria del software, che recentemente ha attirato una significativa attenzione sia in ambito industriale che accademico. All'interno di questo contesto, SWE-bench è stato rilasciato per valutare le capacità di risoluzione di issue dei modelli linguistici di grandi dimensioni (LLM), ma finora si è concentrato esclusivamente sulla versione Python. Tuttavia, supportare più linguaggi di programmazione è altrettanto importante, data la forte domanda nel settore industriale. Come primo passo verso il supporto multilingue, abbiamo sviluppato una versione Java di SWE-bench, chiamata SWE-bench-java. Abbiamo reso pubblico il dataset, insieme al corrispondente ambiente di valutazione basato su Docker e alla leaderboard, che verranno continuamente mantenuti e aggiornati nei prossimi mesi. Per verificare l'affidabilità di SWE-bench-java, abbiamo implementato un metodo classico, SWE-agent, e testato diversi potenti LLM su di esso. Come è ben noto, sviluppare un benchmark multilingue di alta qualità richiede tempo e sforzi considerevoli, pertanto accogliamo con favore contributi tramite pull request o collaborazioni per accelerarne l'iterazione e il perfezionamento, aprendo la strada alla programmazione completamente automatizzata.
English
GitHub issue resolving is a critical task in software engineering, recently
gaining significant attention in both industry and academia. Within this task,
SWE-bench has been released to evaluate issue resolving capabilities of large
language models (LLMs), but has so far only focused on Python version. However,
supporting more programming languages is also important, as there is a strong
demand in industry. As a first step toward multilingual support, we have
developed a Java version of SWE-bench, called SWE-bench-java. We have publicly
released the dataset, along with the corresponding Docker-based evaluation
environment and leaderboard, which will be continuously maintained and updated
in the coming months. To verify the reliability of SWE-bench-java, we implement
a classic method SWE-agent and test several powerful LLMs on it. As is well
known, developing a high-quality multi-lingual benchmark is time-consuming and
labor-intensive, so we welcome contributions through pull requests or
collaboration to accelerate its iteration and refinement, paving the way for
fully automated programming.