跳到主要内容
返回时间线
arXiv来源发表:

代码审查智能体五个月把抓虫率从47.7%推到71.9%,但企业私有仓库上明显变弱

核心概要

CRBugBench用1800个由人工修复确认的缺陷考代码审查智能体:最强配置在top-5评论里抓到79.6%合并前缺陷,但换到企业私有仓库上性能明显下降。

Source-provided article image: (When) Should a Software Factory be Lights-off? Benchmarking Code Review Agents on Bug Detection
Figure 1 · arXiv

深度剖析

代码审查智能体已经能在真实开源仓库里找出人类确认过的缺陷,最强配置在top-5条评论内覆盖79.6%合并前被人类发现的缺陷,以及64.2%合并后才被发现的缺陷。 此前评估代码审查主要拿人类评论当标准答案,要求AI评论在字面或语义上与之匹配,而人类评论本身可能只是吹毛求疵或因社交压力被接受,也可能漏掉AI能提出的有效问题。 CRBugBench包含1000个来自98个GitHub开源仓库的审查任务,另有800个来自某大型公司两个私有仓库的任务,覆盖5种编程语言;任务由人工修复过的缺陷反向构造,随机抽检40个任务中37个(92.5%)被判定为有效。

审查能力随模型迭代稳步上升,从2026年2月到7月,平均抓虫率由47.7%(opus-4.6)升到71.9%(opus-5)。 同一套基准、同一套copilot-cli审查流程下,不同代际模型的差距被直接量出来,而不是跨论文比较。 在合并前缺陷上,claude-opus-5的top-5召回为79.6%,claude-opus-4.6为59.1%;合并后缺陷上分别为64.2%和36.4%。

智能体在需要项目上下文、跨文件推理或运行时证据的缺陷上明显变弱,私有仓库任务中这类缺陷占比更高。 开源任务里46.1%的缺陷可直接从diff看出,私有仓库任务里只有22.8%;仅按缺陷可见性调整就解释了20%的性能差距。 多变量逻辑回归显示,diff可见缺陷的检出几率比为2.621,非功能性可用性缺陷为0.454,更严重缺陷为1.906。

扩大测试时算力最划算的方式是改提示词,而不是堆多智能体:鼓励全面输出的提示词带来最高5.8%的提升,成本只增加约10%。 多智能体集成的提升幅度在原文两处表述不一致:引言写提升4.7%、成本5.55倍,RQ4小结写平均提升2.8%、成本3.68倍;把推理强度从低调到最高可把gpt-5.6-luna从约36%提到57%,但成本是23.22倍。 在gpt-5.6-sol上,全面提示词把合并前top-5召回从65.6%提到71.3%,合并后从49.0%提到54.0%,成本基本持平。

启示与展望

该基准只衡量审查智能体对已知缺陷的召回,不衡量评论的整体有用性;任务来自成熟活跃的开源项目与两个大型企业私有仓库,覆盖Python、Rust、C#、JavaScript/TypeScript和Java。作者建议团队用同样的数据构造方法为自己的仓库建立定制基准,并随模型演进定期重估审查配置。

作者明确说明回归估计的是调整后关联而非因果效应,未测量因素和LLM标注误差可能混淆或削弱估计;基准构造仍可能产生错误标准答案或不可解任务;智能体行为具有随机性且对改动敏感;结果偏向成熟活跃项目,对更小更年轻的项目、少见语言或配置密集型代码可能不同。