论文

超越摘要:使用 大语言模型 对代码更改进行结构感知标记

Beyond Summaries: Structure-Aware Labeling of Code Changes with Large Language Models

摘要

代码审查是软件工程中的一项关键实践,但现代项目中代码补丁的规模和频率不断增长,加上人工智能代码助手的广泛采用,使得手动审查变得越来越具有挑战性。识别补丁中的更改类型(例如重命名、移动或逻辑修改)可以通过实现优先级划分、过滤和自动化来显着提高审核效率。然而,现有的基于 LLM 的代码审查方法主要集中在摘要和注释生成上,而结构化代码审查尚未得到充分探索。在本文中,我们提出了使用 大语言模型 (LLM) 对代码补丁中的代码更改进行基于分类的标记的系统研究。我们引入了一个两阶段管道,它将标签分配给差异块,然后对其进行细化以捕获结构关系和语义属性,例如重命名传播和类型更改。我们的方法采用少量提示来生成与语言无关且可定制的标签,而无需传统静态分析管道的工程开销。我们在手动策划的天然和合成补丁基准上跨多个上下文配置评估了四个 LLM。我们的最佳配置可实现高达 $84\%$ 的召回率和 $81\%$ 的精度,并且在提取关系和属性元数据方面具有很高的准确性。这些结果表明,基于 LLM 的标签可以通过实现灵活、多语言和自动化友好的代码审查工作流程来有效补充静态分析。