中文

BitsAI-CR:基于 LLM 的实用自动代码审查

软件工程 2025-01-28 v1

摘要

代码审查是软件开发中至关重要且资源密集型的过程,在大型工业环境中尤为具有挑战性。虽然大型语言模型(LLM)在自动化代码审查方面显示出前景,但现有解决方案在精度和实用性方面存在显著局限性。本文提出了 BitsAI-CR,一种创新框架,通过两种阶段的方法结合 RuleChecker 进行初始问题检测和 ReviewFilter 进行精度验证来增强代码审查.该系统基于完整的审查规则分类学,并实现数据飞轮机制,通过结构化反馈和评估指标实现持续的性能改进。我们的方法引入了一种过时率指标,可反映开发人员对审查评论的实际采纳情况,使其能够在大规模情况下进行自动化评估和系统优化。实证评估表明,BitsAI-CR有效,实现了75.0%的审查评论生成准确率。对于在字节跳动中占主导地位的 Go 语言,我们保持了26.7%的过时率。该系统已成功部署在字节跳动,服务超过12,000名每周活跃用户(WAU)。我们的工作为自动化代码审查的实际应用提供了宝贵的见解,并为寻求在大规模环境中实施自动化代码审查的组织提供了一个蓝图。

关键词

引用

@article{arxiv.2501.15134,
  title  = {BitsAI-CR: Automated Code Review via LLM in Practice},
  author = {Tao Sun and Jian Xu and Yuanpeng Li and Zhao Yan and Ge Zhang and Lintao Xie and Lu Geng and Zheng Wang and Yueyan Chen and Qin Lin and Wenbo Duan and Kaixin Sui},
  journal= {arXiv preprint arXiv:2501.15134},
  year   = {2025}
}