适应知识提示调优以提升自动程序修复
软件工程
2025-04-03 v1
摘要
自动程序修复(APR)旨在通过自动生成bug修复补丁来提升软件可靠性。最近的研究通过对预训练大语言模型(如CodeT5)进行微调来提升APR的业界最佳水平(SOTA),但在数据稀缺场景下,微调效果会减弱,而数据稀缺在实际应用中很常见,限制了微调性能。为缓解这一局限,本文适应提示调优以提升APR,并在数据稀缺场景下进行全面评估,使用六个不同大小的LLM和四种编程语言的六个数据集。提示调优通过添加额外提示标记来重写模型输入,并在小数据集上调优模型和提示。这些标记为APR提供任务特定知识,尤其在数据稀缺场景下尤为关键。此外,领域知识在许多代码智能任务中已被证明至关重要,但现有研究未能在APR的提示调优中利用领域知识。为弥合这一差距,我们引入知识提示调优,即一种将六种不同类型的代码或bug相关领域知识适应用于APR的提示调优方法。本工作是我们所知的首次将提示调优及其在数据稀缺环境下对代码或bug相关领域知识的有效性进行适应和评估。我们的评估结果表明,带有知识的提示调优通常优于微调,在各种实验设置下平均提升了87.33%。
引用
@article{arxiv.2504.01523,
title = {Adapting Knowledge Prompt Tuning for Enhanced Automated Program Repair},
author = {Xuemeng Cai and Lingxiao Jiang},
journal= {arXiv preprint arXiv:2504.01523},
year = {2025}
}