中文

利用审稿人经验在代码审阅评论生成中发挥作用

软件工程 2025-08-14 v2 机器学习

摘要

现代代码审阅是软件质量保证的普遍过程,旨在识别新编写代码中的潜在问题。尽管其有效性显著,但需要来自人类审稿人的大量工作量。为缓解这一负担,研究者已训练深度学习模型以模仿人类审稿人提供自然语言代码审阅。该任务被称为代码审阅评论生成。先前的工作通过机器学习技术和神经网络模型(如迁移学习和Transformer架构)在该任务上取得了改进。然而,由于使用开源代码审阅数据进行模型训练,生成审阅质量仍不理想。这部分原因在于来自开源项目的数据中,代码审阅在公开论坛上进行,审稿人拥有不同的软件开发经验水平,可能影响其反馈质量。为此,我们提出一套经验感知训练方法,利用审稿人过往的编写和审阅经验作为反馈质量的信号。具体而言,我们提出经验感知损失函数(ELF),在模型损失函数中使用审稿人对项目的编写和审阅所有权作为权重。通过此方法,经验丰富的审稿人生成的审阅对模型行为的影响更大。与现有SOTA模型相比,ELF能够在准确性、信息丰富性和生成的评论类型方面生成更高质量的审阅。该工作的关键贡献在于示范了如何将诸如审稿人经验等传统软件工程概念整合到基于AI的自动化代码审阅模型设计中。

关键词

引用

@article{arxiv.2409.10959,
  title  = {Leveraging Reviewer Experience in Code Review Comment Generation},
  author = {Hong Yi Lin and Patanamon Thongtanunam and Christoph Treude and Michael W. Godfrey and Chunhua Liu and Wachiraphan Charoenwet},
  journal= {arXiv preprint arXiv:2409.10959},
  year   = {2025}
}

备注

Accepted at ACM Transactions on Software Engineering and Methodology (TOSEM)