论文

代码审查代理基准

Code Review Agent Benchmark

智能体系统Agent任务评测

摘要

软件工程代理在编写代码方面表现出了巨大的潜力。随着人工智能代理渗透到代码编写中,并自动生成大量代码,代码质量问题就成为首要问题。随着自动生成的代码被集成到庞大的代码库中,代码审查和广泛的质量保证问题变得非常重要。在本文中,我们重新审视这个问题,并策划一个代码审查数据集供人工智能代理使用。我们的数据集 c-CRAB(发音为 see-crab)可以评估代码审查任务的代理。具体来说,给定拉取请求(可能来自代码生成代理或人类),如果代码审查代理生成审查,我们的评估框架可以评估代码审查代理的审查能力。我们的评估框架用于评估当今最先进的技术——开源 PR 代理,以及来自 Devin、Claude Code 和 Codex 的商业代码审查代理。我们的 c-CRAB 数据集是根据人类评论系统构建的 - 给定对拉取请求实例的人类评论,我们生成相应的测试来评估代码审查代理生成的评论。这样的基准构建给了我们一些启示。首先,现有的审查代理总共只能解决大约 40% 的 c-CRAB 任务,这表明未来的研究有可能缩小这一差距。其次,我们观察到代理审查经常考虑与人工审查不同的方面,这表明人工与代理协作进行代码审查的潜力可以部署在未来的软件团队中。最后但并非最不重要的一点是,代理从我们的数据集生成的测试充当保留的测试套件,因此代理生成的评论的质量门。这对于代码生成代理、测试生成代理和代码审查代理的未来协作意味着什么——仍有待研究。