SWE-Fixer:効果的かつ効率的なGitHub課題解決のためのオープンソースLLMのトレーニング

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

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

要旨

大規模言語モデル(LLMs)は、さまざまな複雑なタスクにおいて驚異的な能力を示しています。LLMsの重要な応用の1つは、GitHub上の実世界の課題をユーザーから報告された問題に基づいてコード修正することで、ソフトウェアエンジニアリングの課題に取り組むことです。しかし、多くの現行アプローチはプロプライエタリなLLMsに依存しており、再現性、アクセシビリティ、透明性が制限されています。ソフトウェアエンジニアリングの課題に対処するためのLLMsの重要な構成要素と、その能力を効果的に強化する方法は依然として不明です。これらの課題に対処するために、SWE-Fixerという新しいオープンソースのLLMを紹介します。このモデルは、GitHubの問題を効果的かつ効率的に解決するために設計されています。SWE-Fixerには、コードファイルの取得モジュールとコード編集モジュールの2つの重要なモジュールが含まれています。取得モジュールは、BM25と軽量なLLMモデルを使用して粗-細のファイル取得を実現します。その後、コード編集モジュールは、特定されたファイルにパッチを生成するために別のLLMモデルを使用します。次に、一般に利用可能なデータセットの不足を緩和するために、110KのGitHubの問題とそれに対応するパッチを含む包括的なデータセットを編纂し、SWE-Fixerの2つのモジュールを別々にトレーニングします。私たちは、SWE-Bench LiteおよびVerifiedベンチマークでのアプローチを評価し、それぞれ23.3%と30.2%のスコアを記録し、オープンソースモデルの中で最先端のパフォーマンスを達成しました。これらの結果は、私たちのアプローチの有効性を示しています。私たちは、当該モデル、データセット、およびコードを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

PDF142January 10, 2025