中文

利用大型语言模型自动生成提交信息:一项实证研究及展望

软件工程 2024-11-07 v2

摘要

提交信息生成(CMG)方法旨在根据给定的代码差异自动生成提交信息,这促进了开发者之间的协作,并在开源软件(OSS)中发挥着关键作用。最近,大型语言模型(LLM)在多样化的代码相关任务中展现了广泛的适用性。但很少有研究系统地探索使用 LLM 的有效性。本文进行了首次全面的实验,以调查我们在应用 LLM 生成高质量提交信息方面取得了多大进展。在初步分析的启发下,我们首先根据从业者的标准清理了最广泛使用的 CMG 数据集。随后,我们重新评估了各种最先进的 CMG 方法,并与 LLM 进行了比较,证明了 LLM 相对于最先进的 CMG 方法的优越性能。然后,我们遵循 OSS 的实践进一步提出了四项人工评估指标,包括准确度、完整性、适用性和可读性,并据此评估了各种 LLM。结果显示,GPT-3.5 总体表现最佳,但不同的 LLM 具有不同的优势。为了进一步提升 LLM 在 CMG 任务中的性能,我们提出了一种高效的基于检索的上下文学习(ICL)框架,即 ERICommiter,该框架利用两步过滤来加速检索效率,并引入了语义/词法检索算法来构建 ICL 示例。大量实验表明,ERICommiter 在各种 LLM 上针对不同编程语言的代码差异均实现了显著的性能提升。同时,ERICommiter 在保持几乎相同性能的同时,显著减少了检索时间。我们的研究有助于理解 LLM 在 CMG 领域的能力,并为寻求在其工作流程中利用这些工具的从业者提供了有价值的见解。

关键词

引用

@article{arxiv.2404.14824,
  title  = {Automated Commit Message Generation with Large Language Models: An Empirical Study and Beyond},
  author = {Pengyu Xue and Linhao Wu and Zhongxing Yu and Zhi Jin and Zhen Yang and Xinyi Li and Zhenyu Yang and Yue Tan},
  journal= {arXiv preprint arXiv:2404.14824},
  year   = {2024}
}