UniDebugger:面向统一软件调试的层级式多智能体框架
UniDebugger: Hierarchical Multi-Agent Framework for Unified Software Debugging
AI总结:
针对现有大模型调试方法聚焦孤立步骤、难处理复杂缺陷的问题,提出层级多智能体端到端框架FixAgent模拟开发者调试认知流程,在Defects4J基准上修复缺陷数达SOTA方法的1.25-2.56倍,且无需真实根因信息。
摘要:
软件调试是一项耗时的工作,涉及故障定位、补丁生成等一系列步骤,每一步都需要对底层逻辑进行全面分析和深度理解。尽管大语言模型(LLM)在编码任务中展现出可观潜力,但其在调试任务上的表现仍存在局限。当前基于LLM的方法往往聚焦于孤立步骤,难以处理复杂缺陷。本文提出首个通过多智能体协同实现统一调试的端到端框架FixAgent,它模拟开发者完整的认知调试流程,每个智能体专门负责该流程中的特定环节,而非像此前多智能体系统那样复刻独立专家的行为。智能体遵循调试认知模型,通过三层设计实现协调,可自适应处理不同复杂度的缺陷。在大量基准上开展的实验表明,FixAgent性能显著优于当前最优修复方法:在仓库级基准Defects4J上,其修复的缺陷数量是基线方法的1.25倍至2.56倍。与基线方法不同,该性能无需依赖真实根因代码语句即可实现。项目源码可在https://github.com/AcceptePapier/UniDebugger获取。
英文摘要:
Software debugging is a time-consuming endeavor involving a series of steps, such as fault localization and patch generation, each requiring thorough analysis and a deep understanding of the underlying logic. While large language models (LLMs) demonstrate promising potential in coding tasks, their performance in debugging remains limited. Current LLM-based methods often focus on isolated steps and struggle with complex bugs. In this paper, we propose the first end-to-end framework, FixAgent, for unified debugging through multi-agent synergy. It mimics the entire cognitive processes of developers, with each agent specialized as a particular component of this process rather than mirroring the actions of an independent expert as in previous multi-agent systems. Agents are coordinated through a three-level design, following a cognitive model of debugging, allowing adaptive handling of bugs with varying complexities. Experiments on extensive benchmarks demonstrate that FixAgent significantly outperforms state-of-the-art repair methods, fixing 1.25$\times$ to 2.56$\times$ bugs on the repo-level benchmark, Defects4J. This performance is achieved without requiring ground-truth root-cause code statements, unlike the baselines. Our source code is available on https://github.com/AcceptePapier/UniDebugger.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。