paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Impact of Code Language Models on Automated Program Repair

代码语言模型对自动程序修复的影响
ICSE 2023 IEEE/ACM 45th International Conference on Software Engineering (ICSE)2023匹配度 3/10 · 该论文聚焦代码语言模型在自动程序修复(APR)中的评测与微调,虽处于PL与ML交叉领域并涉及benchmark与数据泄漏,但与用户核心关注的静态分析、形式化验证、Agentic程序分析、浮点程序分析及贝叶斯程序分析均无直接关系。引用 248 inbox
Nan Jiang, Kevin Liu, Thibaud Lutellier, Lin Tan
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:首次系统评估与微调代码语言模型用于自动程序修复,并揭示其显著修复能力、微调收益及数据泄漏问题。

自动程序修复(APR)通过生成补丁提升软件可靠性。本文首次在四个 APR 基准上系统评估十个代码语言模型(CLM),发现未经微调的最佳 CLM 比当前最优深度学习 APR 技术多修复 72% 的缺陷;为避免数据泄漏,作者还构建了一个新基准。本文首次使用 APR 训练数据微调 CLM,带来 31%–1,267% 提升,使其比现有 DL APR 技术多修复 46%–164% 的缺陷。研究还表明,原始 CLM 难以有效利用缺陷行,而微调后可能过度依赖缺陷行;并分析了不同 CLM 的规模、时间与内存效率,呼吁公平全面评估与透明报告预训练仓库。

问题
自动程序修复需要为有缺陷程序生成补丁,但代码语言模型的修复能力及其微调效果缺乏全面深入评估。
方法
在四个 APR 基准上评估十个 CLM,构建避免数据泄漏的新基准,用 APR 数据微调,并分析缺陷行、规模/时间/内存效率。
评估
通过修复缺陷数量与相对现有深度学习 APR 技术的改进,以及缺陷行影响和效率指标进行分析评估。
原文摘要(Abstract)

Automated program repair (APR) aims to help developers improve software reliability by generating patches for buggy programs. Although many code language models (CLM) are developed and effective in many software tasks such as code completion, there has been little comprehensive, in-depth work to evaluate CLMs' fixing capabilities and to fine-tune CLMs for the APR task. Firstly, this work is the first to evaluate ten CLMs on four APR benchmarks, which shows that surprisingly, the best CLM, as is, fixes 72% more bugs than the state-of-the-art deep-learning (DL)-based APR techniques. Secondly, one of the four APR benchmarks was created by us in this paper to avoid data leaking for a fair evaluation. Thirdly, it is the first work to fine-tune CLMs with APR training data, which shows that fine-tuning brings 31%-1,267% improvement to CLMs and enables them to fix 46%-164 % more bugs than existing DL-based APR techniques. Fourthly, this work studies the impact of buggy lines, showing that CLMs, as is, cannot make good use of the buggy lines to fix bugs, yet fine-tuned CLMs could potentially over-rely on buggy lines. Lastly, this work analyzes the size, time, and memory efficiency of different CLMs. This work shows promising directions for the APR domain, such as fine-tuning CLMs with APR-specific designs, and also raises awareness of fair and comprehensive evaluations of CLMs and calls for more transparent reporting of open-source repositories used in the pre-training data to address the data leaking problem.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2302-05020,
  title = {Impact of Code Language Models on Automated Program Repair},
  author = {Nan Jiang and Kevin Liu and Thibaud Lutellier and Lin Tan},
  booktitle = {ICSE},
  year = {2023},
  doi = {10.1109/icse48619.2023.00125}
}