来源:互联网 更新时间:2026-08-23 13:56
大型语言模型(LLM)智能体在解决现实世界软件工程(SWE)问题上展现出的潜力已经不容忽视。目前,最先进的开源SWE智能体在SWE-Bench Lite测试中能够成功解决超过27%的真实GitHub问题。但有趣的是,这些复杂的智能体框架并非全能选手——它们各有侧重,在特定任务上表现亮眼,在其他任务上则可能掉链子。正是这种“偏科”现象激发了Salesforce研究团队的灵感:为什么不把它们的特长组合起来呢?于是,DEI(Diversity Empowered Intelligence)框架应运而生,它就像一个元模块,专门用来管理一群智能体,让它们协同作战。实验数据很说明问题:一组开源SWE智能体单独作战时,最大个体解决率只有27.3%,但挂上DEI后,解决率直接飙到34.3%,提升了整整25%,甚至碾压了不少闭源方案。我们表现最好的组合在SWE-Bench Lite上拿下了55%的解决率,直接登顶排行榜。这项研究为协作式AI系统如何攻克复杂软件工程难题提供了新的思路。
1 简介
2 相关工作
3 集成SWE智能体的专业知识
3.1 背景说明
3.2 SWE智能体的多样性
3.3 方法论
3.3.1 软件工程师智能体问题形式化
3.3.2 我们的框架:多元化赋能智能(DEI)
3.3.3 DEIBASE:一个简单但有效的实现
4 实验
4.1 实验设置
4.1.1 基准和智能体
4.1.2 评估指标
4.2 主要结果
4.2.1 研究问题1:LLM基于SWE智能体有多种多样?
4.2.2 研究问题2:DEI对解决率有多大帮助?
4.3 消融和分析
5 结论
参考文献
大型语言模型(LLM)最近的发展可以说是彻底改变了软件工程的玩法。最初,它们只是聊天机器人(比如Schulman等人2022年的工作,以及Team 2024年的工作),但现在已经进化成AI智能体的核心,既能理解和生成类人对话,还能在真实环境和数字世界中自主执行操作。SWE智能体就是这些AI智能体里的一个专业分支,它们把LLM的能力和软件工程工具、技术整合在一起,负责代码生成、自动化测试、项目管理等任务,目标就是识别并修复真实世界的软件问题(Zhang等人,2024年)。
本文聚焦于SWE智能体的一项具体任务:根据问题描述来解决真实的GitHub issue。在代码仓库里自动修bug,这可不是闹着玩的——你得在大规模代码库中导航,理解复杂的函数交互,揪出那些微妙的错误,最后生成正确的修复补丁。SWE智能体的动作空间极大,加上路径又长,导致不同智能体解决GitHub问题的思路千差万别,如图1所示。我们观察到,不同的SWE智能体解决的完全是不同的问题集合(见图1a的彩色网格),尽管它们的解决率差不多(图1b)。这很可能是因为每个智能体都有自己的“独门绝技”。举个例子:OpenDevin(Wang等,2024c)会明确告诉LLM先在问题里复现bug,然后在开发工作区里执行复现脚本,用运行结果来反馈生成的补丁;但其他智能体,比如Moatless Tools(Örwall,2024)和Agentless(Xia等,2024),压根不执行代码。
一个花园的美从来不会只靠一朵花。多样性——无论以何种形式——都是通往卓越的途径。
SWE智能体社区的趋势同样反映了这种多样性:没有任何一个智能体框架能在所有能力上全面称霸。正是这种百花齐放,才不断催生新想法,推动更好的智能体出现。
SWE智能体能力的多样性,直接催生了DEI(多样化增强智能)框架的诞生——它的核心就是利用不同智能体的优势。DEI通过多智能体集成系统和重新排序管道,更高效地解决更广泛的问题,如图1c所示。DEI本身是一个元模块,可以和任何现有的智能体框架集成,实现可扩展的管理和协作,打造一个更强大的多智能体软件工程组织。

我们在SWE-Bench Lite上对7组候选智能体进行了DEI评估。其中3组是单个开源SWE智能体的多次运行结果,另外4组是SWE-Bench Lite排行榜上的不同智能体,包括一组纯开源智能体。实验发现,不同智能体在解决问题时的多样性非常高:一个平均解决率只有26.6%的智能体群体,如果能有一个“神谕”评审员始终选出最佳候选,它们合起来能解决54.3%的问题。作为开发多样性的第一步,DEI就能把该群体的解决率提升到34.3%(提升25%),这说明LLM确实是个出色的代码评审员。这些发现也呼应了技术行业中多样性的好处——不同的视角和技能能带来更大的创新和问题解决能力。
这部分我们梳理一下基础语言智能体架构、近期专为软件工程开发的智能体,以及多智能体或集成方法。
第一类是静态智能体工作流(Wu等,2024年;GitHub,2023年),预定义智能体的执行流程,通过指定条件触发智能体切换。通过预定状态控制多智能体系统很稳健,但对未知状态或条件缺乏灵活性。
第二类是通过群聊实现集成(Wu等,2023年;Hong等,2024年;Wang等,2024a;Chen等,2023年)。多个智能体在群组频道中互发消息,让想法汇聚在一起。变体包括辩论(Liang等,2023年;Chan等,2023年)和基于模型的集成(Wang等,2024a)。
第三类是分层任务分配(Liu等,2024年;2023年)。将多智能体组织成分层结构有利于自上而下的任务分解,实现高效的多智能体协作。
我们考虑两种类型的多样性:智能体内部多样性和智能体间多样性。
我们根据上下文马尔可夫决策过程(CMDP)框架(Hallak等,2015)来形式化SWE智能体问题,定义为元组 M = (S, C, A, R, P, p0, ρ)。这里,S 表示状态空间,包括智能体可能遇到的所有可能状态(比如文件的当前状态)。上下文空间 C 包括相关的存储库信息和问题描述。动作空间 A 代表SWE智能体可以利用的所有潜在动作或工具(如搜索或编辑)。上下文相关的奖励函数 R:S×A×C→ℝ 根据智能体采取的动作分配分数。举个例子:如果智能体成功解决一个问题,奖励很高;如果动作导致存储库出现新错误,奖励就低。上下文相关的转移函数 P:S×A×C→Δ(S) 定义了在特定动作后存储库或信息的状态如何变化。上下文相关的初始状态分布由 p0:C→Δ(S) 表示,ρ∈Δ(C) 表示上下文分布。
给定初始环境上下文 c ~ ρ 和初始状态 s0 ~ p0(· | c),在每个时间步 t,智能体按策略 π : S×C → Δ(A) 选择动作 at ~ π(st, c),并获得奖励 R(st, at, c)。环境转移到下一个状态 st+1 ~ P(· | st, at, c),为智能体提供新的状态观测。迭代进行到时间 T,得到一条样本轨迹。SWE智能体的目标是最大化沿着轨迹的累积奖励,由价值函数捕捉。
很多工作都在努力实现复杂的智能体系统,以达成方程1中描述的目标。但正如第1节讨论的,这些系统在不同情境下的效果往往参差不齐。要设计一个在所有可能情境下都表现优异的单一智能体,难度极大。
形式上,假设有 N 个智能体策略 {π1, π2, ..., πN},每个策略都是为了应对特定情境 {ρ1, ρ2, ..., ρN} 而设计的。这些情境的并集是整个情境空间的子集,即 ρ1 ∪ ρ2 ∪ ... ∪ ρN ⊆ ρ。对于每个策略 πi,目标是优化在对应情境上的表现。然而,一个策略 πi 在非自身的情境 ρj (j ≠ i) 中可能表现不佳。为了解决这个问题,我们提出了DEI框架。它利用每个智能体在其各自最适合的上下文中的优势,来提升整体性能。
我们引入了一个元策略 πDEI,根据上下文最优地选择可用的智能体策略。πDEI 的目标定义为:根据观察到的上下文 c,从 {π1, π2, ..., πN} 中选择最优的智能体策略。通过为每个上下文动态选择最合适的智能体策略,DEI框架旨在最大化所有可能上下文中的期望累积奖励。
我们提出了 DEIBASE——DEI框架的一个简单而强大的实现,专门针对像 SWE-Bench 这样的问题。设置中的上下文包括存储库、相关文件和问题描述。元策略的动作空间由不同智能体框架生成的最终补丁组成,每个框架都擅长解决某个或某些方面的问题。
DEIBASE 利用一个大语言模型(LLM)作为代码审查委员会。LLM 通过分析所提议改动前后代码库的状态以及问题描述中的上下文信息来评估候选补丁。它会为每个补丁生成详细的解释,根据确定的问题、上下文和具体改动来证明修改的合理性。
当然,其他代码审查和评分方法(比如基于规则的方法)也可以整合进来,但基于LLM的委员会有独特优势。LLM 通常擅长评估解决方案——评估比生成容易时尤其如此。因此,DEIBASE 为基于LLM的SWE评估提供了一个有效基准,突出了不同SWE智能体之间的性能差异,也展示了我们方法的能力。

如图2所示,DEIBASE为单个问题提供多个候选补丁。这些补丁可能来自同一个SWE智能体的多次运行,也可能来自多个不同的SWE智能体。DEIBASE 给每个候选补丁打分,然后选择得分最高的候选作为最可能有效的补丁。
我们的实验围绕两个研究问题展开:1)基于LLM的SWE智能体在智能体内和智能体间多样性上到底有多大差异?2)DEI能在多大程度上利用这种多样性,提升这些SWE智能体的性能?
我们对智能体内部和外部多样性使用同一组指标,因为这些指标是为多个候选解决方案定义的,不要求它们来自同一个候选源。
这些指标之间的差距能回答我们的研究问题:Union@k - Intersect@ 衡量了智能体的多样性,n@k - A verage@k 衡量了DEI在从中选出正确候选方面的帮助程度。注意,随着 k 增大,候选添加的顺序很重要,特别是当 k 个候选来自不同智能体时。实验中,我们按生成顺序添加来自单个智能体的候选,按固定顺序添加来自不同智能体的解决方案(参见附录A.1)。
为了回答这个问题,我们在图3中报告了10个不同智能体和10次单个智能体运行的“@k”指标。具体数值见表2。

从结果中能看出几点:

我们将DEIBASE应用于图3中添加到组里的候选者,发现:
基于以上结论,我们组建了三个DEIBASE组,每个候选来自不同的智能体,每个实例最多有5个候选。成员和表现见表1。DEIBASE-1包含排名前2的智能体,DEIBASE-2包含5个在排行榜上表现优异的闭源智能体,DEIBASE-Open包含4个开源智能体(方便未来研究人员复现整个流程)。如表1所示,所有三个DEIBASE实例的表现都优于组中最佳候选。令人惊讶的是,DEIBASE-Open的解决率提升了7%,击败了大部分闭源系统。

为了探究框架中不同组件的有效性,我们做了一些消融实验,回答以下问题。所有消融实验都在我们自己复制的开源SWE智能体或官方生成的智能体上进行,以倡导开放科学。


本文提出了多样性增强智能(DEI),一个设计用于与任何现有SWE智能体框架集成的元策略模块,实现专业智能体之间的可扩展管理和协作,从而打造更强大的软件工程组织。通过大量评估,我们发现不同智能体在解决问题方面展现出很大的多样性:一组平均解决率只有26.6%的智能体,如果有一个总能选对候选者的“神谕”,能解决54.3%的问题。DEI是我们迈出的第一步,利用这种多样性,将该组的解决率提升到34.3%(+7%),证明LLM确实是出色的代码评审员。这些发现也映射了技术行业多样性的好处——不同的视角和技能能带来更大的创新和问题解决能力。
腾讯ima怎么把微信内容一键导入知识库?
黄金价格不断创新高!黄金稳定币XAU、PAXG市值达11亿美元
腾讯ima怎么创建共享知识库?
Celestia价格预测2026-2032:TIA币能否引领山寨币上涨行情?历史价格回顾
新浪互联网热点小时报丨2026年07月26日16时_今日实时互联网热点速递
比特币(BTC)核心周期指标复刻历史走势 价格或跌破5.8万美元关键支撑位
新浪机器学习热点小时报丨2026年07月25日18时_今日实时机器学习热点速递
WorkBuddy微信版怎么获得积分?
新浪人工智能热点小时报丨2026年07月30日18时_今日实时人工智能热点速递
比特币 2025 年价格预测:BTC 的未来走势
车载冰箱重置到出厂设置几步?
5000元起的鼠标哪个最值得入手?
管线机怎么接云米净水器
短剧《史上最强洪荒修为》剧情介绍
Aptos(APT)2026-2032年价格预测与历史走势梳理
笔记本移动电源推荐哪款?
结婚家电首选:Leader懒人三筒Ultra热泵洗烘一体
kimi提示词专家使用方法新手指南
短剧《仙人跳获透视,古玩玉器我全拿捏》剧情介绍
腾讯ima知识库怎么分类管理?
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc