在这里插入图片描述

📖标题:FeatureBench: Benchmarking Agentic Coding for Complex Feature Development
🌐来源:arXiv, 2602.10975v1

🌟摘要

由大型语言模型(LLM)驱动的代理越来越多地被软件行业采用,作为协作者甚至自主开发人员贡献代码。随着它们的出现,评估其编码能力的当前边界变得非常重要。然而,现有的代理编码基准涵盖了有限的任务范围,例如,在单个拉取请求(PR)中进行bug修复,并且通常依赖于不可执行的评估或缺乏持续更新评估范围的自动化方法。为了解决这些问题,我们提出了FeatureBench,这是一个旨在评估端到端、面向功能的软件开发中代理编码性能的基准。FeatureBench结合了一个基于执行的评估协议和一个可扩展的测试驱动方法,该方法可以以最少的人力从代码存储库中自动派生任务。通过沿着依赖关系图跟踪单元测试,我们的方法可以识别跨越分散在开发时间线上的多个提交和PR的特征级编码任务,同时确保分离后其他功能的正常运行。使用这个框架,我们在基准测试的第一个版本中从24个开源存储库中策划了200个具有挑战性的评估任务和3825个可执行环境。实证评估表明,最先进的代理模型,如Claude 4.5 Opus,在SWE-bench上实现了74.4%的解析率,仅在11.0%的任务上取得成功,为推进代理编码开辟了新的机会。此外,受益于我们的自动化任务收集工具包,FeatureBench可以随着时间的推移轻松扩展和更新,以减少数据泄露。构建环境固有的可验证性也使我们的方法对代理训练具有潜在价值。

🛎️文章简介

🔸研究问题:如何科学评估大语言模型代理在真实复杂功能开发任务中的端到端编码能力?
🔸主要贡献:论文提出FeatureBench——首个面向真实特征开发、支持执行验证、可自动扩展的agentic coding基准,包含200个高难度任务与3825个可执行环境。

📝重点思路

🔸基于单元测试驱动,通过动态追踪构建函数级依赖图,精准识别与目标功能强相关的代码模块。
🔸融合Fail-to-Pass(F2P)与Pass-to-Pass(P2P)测试,确保任务既检验新功能实现,又验证原有功能完整性。
🔸采用图遍历+LLM分类双策略:用LLM识别测试文件中的顶层被测对象,再以该对象为入口进行依赖图BFS遍历,区分“保留”与“提取”节点。
🔸设计两级难度:L1为增量式仓库内开发(保留上下文),L2为完全从零实现(无代码基底),严格隔离开发场景。
🔸全自动流水线:仅需人工配置3分钟安装命令,其余全部自动化生成问题描述、补丁、测试集与Docker环境,并内置防作弊日志检测机制。

🔎分析总结

🔸当前最优代理(Claude Opus 4.5)在FeatureBench上仅解决11.0%任务,远低于其在SWE-bench的74.4%,证实特征级开发是显著更难的挑战。
🔸任务难度与代码行数呈强负相关,但与提交时间无关,说明性能瓶颈源于复杂性而非数据泄露。
🔸显式接口定义(函数签名、调用路径)对成功率至关重要:移除后解决率骤降6.7–43.3个百分点。
🔸L2(从零实现)任务解决率系统性低于L1,表明缺失代码上下文严重削弱多步推理与结构重建能力。
🔸失败主因是跨文件依赖解析错误(NameError)、接口猜测偏差(TypeError/AttributeError)及断言前逻辑正确但后续不满足(AssertionError频发),反映长程一致性建模不足。

💡个人观点

论文核心洞见是真实软件开发的挑战不在单点修复,而在功能边界界定、跨模块协同与架构一致性维护。

🧩附录

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐