ChatPaper.aiChatPaper

SWE-Fixer: Training van Open-Source LLM's voor Effectieve en Efficiënte Oplossing van GitHub Issues

SWE-Fixer: Training Open-Source LLMs for Effective and Efficient GitHub Issue Resolution

January 9, 2025
Auteurs: Chengxing Xie, Bowen Li, Chang Gao, He Du, Wai Lam, Difan Zou, Kai Chen
cs.AI

Samenvatting

Grote Taalmodellen (LLM's) hebben opmerkelijke bekwaamheid aangetoond bij een verscheidenheid aan complexe taken. Een belangrijke toepassing van LLM's is het aanpakken van software-engineeringuitdagingen, met name bij het oplossen van praktische taken op GitHub door code te repareren op basis van de door gebruikers gemelde problemen. Veel huidige benaderingen vertrouwen echter op eigen LLM's, wat de reproduceerbaarheid, toegankelijkheid en transparantie beperkt. De cruciale componenten van LLM's voor het aanpakken van software-engineeringproblemen en hoe hun mogelijkheden effectief kunnen worden verbeterd, blijven onduidelijk. Om deze uitdagingen aan te pakken, introduceren we SWE-Fixer, een nieuw open-source LLM dat is ontworpen om GitHub-problemen effectief en efficiënt op te lossen. SWE-Fixer bestaat uit twee essentiële modules: een codebestandsophaalmodule en een codebewerkingsmodule. De ophaalmodule maakt gebruik van BM25 samen met een lichtgewicht LLM-model om grove tot fijne bestandsopvraging te bereiken. Vervolgens gebruikt de codebewerkingsmodule het andere LLM-model om patches te genereren voor de geïdentificeerde bestanden. Vervolgens, om het gebrek aan openbaar beschikbare datasets te verhelpen, compileren we een uitgebreide dataset die 110K GitHub-problemen bevat, samen met hun bijbehorende patches, en trainen we de twee modules van SWE-Fixer afzonderlijk. We beoordelen onze aanpak op de SWE-Bench Lite en Verified benchmarks en behalen state-of-the-art prestaties onder open-source modellen met respectievelijk scores van 23,3% en 30,2%. Deze resultaten benadrukken de doeltreffendheid van onze aanpak. We zullen ons model, dataset en code openbaar beschikbaar maken op https://github.com/InternLM/SWE-Fixer.
English
Large Language Models (LLMs) have demonstrated remarkable proficiency across a variety of complex tasks. One significant application of LLMs is in tackling software engineering challenges, particularly in resolving real-world tasks on GitHub by fixing code based on the issues reported by the users. However, many current approaches rely on proprietary LLMs, which limits reproducibility, accessibility, and transparency. The critical components of LLMs for addressing software engineering issues and how their capabilities can be effectively enhanced remain unclear. To address these challenges, we introduce SWE-Fixer, a novel open-source LLM designed to effectively and efficiently resolve GitHub issues. SWE-Fixer comprises two essential modules: a code file retrieval module and a code editing module. The retrieval module employs BM25 along with a lightweight LLM model to achieve coarse-to-fine file retrieval. Subsequently, the code editing module utilizes the other LLM model to generate patches for the identified files. Then, to mitigate the lack of publicly available datasets, we compile an extensive dataset that includes 110K GitHub issues along with their corresponding patches, and train the two modules of SWE-Fixer separately. We assess our approach on the SWE-Bench Lite and Verified benchmarks, achieving state-of-the-art performance among open-source models with scores of 23.3% and 30.2%, respectively. These outcomes highlight the efficacy of our approach. We will make our model, dataset, and code publicly available at https://github.com/InternLM/SWE-Fixer.

Summary

AI-Generated Summary

PDF152January 10, 2025