ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Automated Code Review Using Large Language Models with Symbolic Reasoning

Automated Code Review Using Large Language Models with Symbolic Reasoning

文章主要内容总结

本文聚焦于代码审查的自动化问题,指出手动代码审查存在耗时、主观、易出错等缺陷,而现有大型语言模型(LLMs)在代码审查中存在逻辑推理和深层语义理解不足的局限。为此,研究提出了一种混合方法:将符号推理技术与微调后的LLMs相结合,通过整合包含编码最佳实践和缺陷模式的知识图谱,提升自动化代码审查的准确性和效率。

实验采用CodexGlue数据集,对CodeT5、CodeBERT、GraphCodeBERT三种模型在四种场景(基础模型、基础模型+少样本学习、微调模型、混合方法)下的性能进行了对比。结果显示,混合方法(微调模型+少样本学习+知识图谱整合)显著提升了模型性能,其中GraphCodeBERT表现最优,平均准确率提升16%,优于同类结合LLMs与符号推理的研究(如SYNCHROMESH的12%提升)。

文章创新点

  1. 提出混合方法:将符号推理与微调后的LLMs结合,弥补LLMs在逻辑推理和语义理解上的不足,增强代码审查的可靠性。
  2. 知识图谱整合:构建包含20种Python常见缺陷模式和最佳实践的知识图谱(如命名反模式、不可达代码、资源泄漏等),为模型提供结构化先验知识,引导其更精准地检测缺陷。
  3. 多策略结合:在混合方法中融合微调、少样本学习和知识图谱,通过多维度优化提升模型性能,实验证明该方法对不同LLMs均有显著改进效果。

翻译部分

摘要
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进