LLM2D
思考更久,不占更多资源:通过扩展测试时计算提升软件工程代理
Thinking Longer, Not Larger: Enhancing Software Engineering Agents via Scaling Test-Time Compute
作者: Yingwei Ma, Binhua Li, Yihong Dong, Xue Jiang, Rongyu Cao, Jue Chen, Fei Huang, Yongbin Li
发布日期: 4/1/2025
arXiv ID: oai:arXiv.org:2503.23803v1

摘要

arXiv:2503.23803v1 类型: cross 摘要:近年来,软件工程代理在自动化程序改进方面的表现令人瞩目。然而,它们对闭源或资源密集型模型的依赖在私有环境中带来了重大的部署挑战,引发了关键问题:\textit{如何部署可实现相匹配的代码推理性能的开源LLM?} 为此,我们提出了一种统一的测试时计算扩展框架,该框架利用增加的推理时计算而非更大的模型。该框架结合了两种互补的策略:内部TTC和外部TTC。内部方面,我们引入了一种利用真实世界软件仓库上下文的开发轨迹合成方法,以启动多阶段推理过程,如故障定位和补丁生成。我们进一步通过拒绝抽样来提高轨迹质量,严格评估轨迹的准确性和复杂性。外部方面,我们提出了一种新的基于开发过程的搜索策略,该策略由奖励模型和执行验证引导。这种方法在关键开发决策点实现了有针对性的计算分配,克服了现有“仅端点验证”方法的局限性。 我们在SWE-bench Verified上的评估表明,我们的\textbf{32B模型实现了46%的问题解决率},超过了诸如DeepSeek R1 671B和OpenAI o1等更大模型。此外,我们还在SWE代理中实证验证了测试时计算扩展现象,发现\textbf{模型在面临愈加复杂的问题时动态分配更多的令牌},有效地增强了推理能力。我们已公开发布所有训练数据、模型和代码,以促进未来的研究。https://github.com/yingweima2022/SWE-Reasoner