论文

SmellBench:评估 LLM 代理的架构代码气味修复

SmellBench: Evaluating LLM Agents on Architectural Code Smell Repair

智能体系统Agent任务评测

摘要

架构代码会侵蚀软件的可维护性,并且手动修复成本高昂,但与局部错误不同,它们需要对设计意图进行跨模块推理,这对开发人员和自动化工具都提出了挑战。虽然 大语言模型 代理擅长错误修复和代码级重构,但它们修复架构代码异味的能力仍未得到探索。我们提出了 LLM 代理在建筑代码气味修复方面的首次实证评估。我们贡献了 SmellBench,这是一个任务编排框架,它包含特定于气味类型的优化提示并支持迭代多步骤执行,以及单独评估修复有效性、误报识别和净代码库影响的评分方法。我们在 Python 项目 scikit-learn 中 PyExamine 检测到的 65 种严重架构气味上评估了来自 4 个模型系列(GPT、Claude、Gemini、Mistral)的 11 种代理配置,并根据专家判断进行了验证。专家验证表明,检测到的气味中有 63.1% 是误报,而最佳代理的解析率达到 47.7%。代理以高达 $κ= 0.94$ 的专家协议识别误报,但修复积极性和网络代码库质量成反比:最积极的代理会引入 140 种新气味。这些发现揭示了当前 LLM 本地化代码转换功能与跨模块重构所需的架构理解之间的差距。 SmellBench 提供可重用的基础设施,用于跟踪自动化软件工程这一尚未充分探索的维度的进展。我们在 https://doi.org/10.5281/zenodo.19247588 发布我们的代码和数据。