[論文レビュー] MAGIS: LLM-Based Multi-Agent Framework for GitHub Issue Resolution
MAGIS は、GitHub の Issue を解決するために LLM を協調させる four-agent フレームワーク(Manager、Repository Custodian、Developer、QA Engineer)を使用し、SWE-bench 上で強力なベースラインよりも大幅に高い Issue 解決率を達成する。
In software development, resolving the emergent issues within GitHub repositories is a complex challenge that involves not only the incorporation of new code but also the maintenance of existing code. Large Language Models (LLMs) have shown promise in code generation but face difficulties in resolving Github issues, particularly at the repository level. To overcome this challenge, we empirically study the reason why LLMs fail to resolve GitHub issues and analyze the major factors. Motivated by the empirical findings, we propose a novel LLM-based Multi-Agent framework for GitHub Issue reSolution, MAGIS, consisting of four agents customized for software evolution: Manager, Repository Custodian, Developer, and Quality Assurance Engineer agents. This framework leverages the collaboration of various agents in the planning and coding process to unlock the potential of LLMs to resolve GitHub issues. In experiments, we employ the SWE-bench benchmark to compare MAGIS with popular LLMs, including GPT-3.5, GPT-4, and Claude-2. MAGIS can resolve 13.94% GitHub issues, significantly outperforming the baselines. Specifically, MAGIS achieves an eight-fold increase in resolved ratio over the direct application of GPT-4, the advanced LLM.
研究の動機と目的
- LLMs がリポジトリレベルの GitHub issue 解決に苦戦する理由を調査し、影響要因を特定する。
- ソフトウェアリポジトリにおける協調的な Issue 解決のための、LLM ベースのマルチエージェント Framework MAGIS を提案する。
- with-Oracle および without-Oracle 設定の下で SWE-bench において強力な LLM ベースラインに対して MAGIS を評価する。
- GitHub issue 解決成功に影響を与える計画とコーディング要因を分析する。
提案手法
- with-Oracle および without-Oracle 設定下での LLM パフォーマンスの経験的分析を行い、行の位置、コード変更の複雑さなどの要因を特定する。
- 4 種類のエージェントタイプと彼らの協調的な計画とコーディングワークフローを備えた MAGIS の設計。
- 関連ファイルの特定、チーム編成、キックオフ計画のアルゴリズムの開発。
- リポジトリレベルの変更を生成するために、LLM プロンプトに guided された反復的なコード変更と QA レビュー。
- SWE-bench 上で適用比と解決比を用いて、GPT-3.5、GPT-4、Claude-2、SWE-Llama のベースラインと評価。
実験結果
リサーチクエスチョン
- RQ1with-Oracle GitHub issue resolution における LLM のパフォーマンスに影響を与える要因(例:行の位置、コード変更の複雑さ)は何か。
- RQ2without-Oracle 解決における LLM のパフォーマンスに影響を与える要因(例:ファイルの取得/ recalls) は何か。
- RQ3マルチエージェント MAGIS フレームワークは、単一の LLM ベースラインと比較して GitHub issue 解決をどう改善するか。
- RQ4計画と QA プロセスが解決の有効性に与える影響は何か。
主な発見
| Method | % Applied | % Resolved |
|---|---|---|
| GPT-3.5 | 11.67 | 0.84 |
| Claude-2 | 49.36 | 4.88 |
| GPT-4 | 13.24 | 1.74 |
| SWE-Llama 7b | 51.56 | 2.12 |
| SWE-Llama 13b | 49.13 | 4.36 |
| Devin [34] | - | 13.86 |
| MAGIS | 97.39 | 13.94 |
| MAGIS (w/o QA) | 92.71 | 10.63 |
| MAGIS (w/o hints) | 94.25 | 10.28 |
| MAGIS (w/o hints, w/o QA) | 91.99 | 8.71 |
- MAGIS は 13.94% の解決率を達成し、GPT-4 ベースラインの性能の8倍に相当する。
- MAGIS は SWE-bench における適用および解決の両方の指標で GPT-4 および Claude-2 を大幅に上回る。
- 行位置の正確さは解決確率と正の相関を示し、特に Claude-2 で顕著。
- コード変更の複雑さは GPT-3.5、GPT-4、Claude-2 の解決と負の相関を示す。
- 計画と QA を有効にした MAGIS のバリアントは顕著な改善を示す。QA またはヒントなしでは、解決は GPT-4 より高いが、完全な MAGIS には及ばない。
- アブレーション研究は、QA と人間のヒントがさらなる性能向上を示す。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。