MAGIS: LLM-Based Multi-Agent Framework for GitHub Issue Resolution

📄 arXiv: 2403.17927v2 📥 PDF

作者: Wei Tao, Yucheng Zhou, Yanlin Wang, Wenqiang Zhang, Hongyu Zhang, Yu Cheng

分类: cs.SE, cs.AI

发布日期: 2024-03-26 (更新: 2024-06-27)


💡 一句话要点

提出MAGIS框架以解决GitHub问题

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 多代理框架 大型语言模型 GitHub问题解决 软件演化 代码生成 质量保证 协作机制

📋 核心要点

  1. 现有方法在解决GitHub问题时存在局限,尤其是在代码整合和维护方面的挑战。
  2. MAGIS框架通过四个定制代理的协作,提升了LLMs在GitHub问题解决中的有效性。
  3. 实验结果显示,MAGIS解决了13.94%的GitHub问题,显著优于GPT-4等基线模型,提升幅度达到八倍。

📝 摘要(中文)

在软件开发中,解决GitHub仓库中的紧急问题是一项复杂的挑战,涉及新代码的整合和现有代码的维护。大型语言模型(LLMs)在代码生成方面表现出色,但在解决GitHub问题时,尤其是在仓库层面上,面临困难。为了解决这一挑战,本文通过实证研究分析了LLMs在解决GitHub问题时的失败原因,并提出了一种新颖的基于LLM的多代理框架MAGIS,包含四个针对软件演化定制的代理:管理者、仓库管理员、开发者和质量保证工程师。该框架利用各代理在规划和编码过程中的协作,释放LLMs解决GitHub问题的潜力。实验结果表明,MAGIS在解决GitHub问题的能力上显著优于现有的主流LLMs。

🔬 方法详解

问题定义:本文旨在解决GitHub仓库中紧急问题的处理难题。现有的LLMs在这一领域的应用效果不佳,主要由于缺乏有效的协作机制和针对性设计。

核心思路:MAGIS框架的核心思想是通过多代理的协作来提升LLMs的性能。每个代理负责特定的任务,从而形成一个高效的工作流程,解决复杂的GitHub问题。

技术框架:MAGIS框架由四个主要代理组成:管理者负责整体协调,仓库管理员处理代码维护,开发者进行代码生成,质量保证工程师确保代码质量。各代理之间通过信息共享和协作来优化问题解决过程。

关键创新:MAGIS的创新在于引入了多代理协作机制,使得LLMs能够在复杂的代码环境中更有效地工作。这一设计与传统的单一模型应用形成鲜明对比,显著提升了解决问题的能力。

关键设计:在设计中,MAGIS采用了特定的参数设置和损失函数,以确保各代理能够高效协作。此外,框架的网络结构经过优化,以适应软件演化的需求。具体细节包括代理间的通信协议和任务分配策略。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,MAGIS在解决GitHub问题方面的表现显著优于现有的主流LLMs,解决率达到13.94%。与直接应用GPT-4相比,MAGIS的解决率提升了八倍,展示了多代理协作的有效性。

🎯 应用场景

MAGIS框架的潜在应用领域包括软件开发、开源项目管理和代码审查等。通过提高GitHub问题的解决效率,MAGIS能够帮助开发团队更快地响应用户反馈,提升软件质量和用户满意度。未来,该框架还可扩展至其他代码管理平台,具有广泛的实际价值。

📄 摘要(原文)

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.