摘要
arXiv:2505.07372v1 宣称类型: cross
摘要:本文提出了一种新的方法,通过利用大型语言模型(LLMs)生成合成数据来增强自化程序修复(APR)。当前的APR系统受到高质量训练数据的限制,这些数据需要涵盖多种编程语言中的各种类型错误。本文提出的方法通过一个两阶段过程解决了这一限制:首先生成合成样本,然后进行严格的质量评估。使用了多种最先进的LLMs,生成了约30,000个跨12种编程语言和13种错误类别包含错误代码与修复代码的配对示例。随后,这些样本根据五个标准:正确性、代码质量、安全性、性能和完整性,进行了跨模型评估。在VulRepair测试集数据集上的实验评估显示,在某些场景中,经过质量筛选的合成数据集在完美预测率方面表现出显著提高,超过了基线和真实提交数据的配置。该方法通过严格的统计测试得到了验证,包括ANOVA和后续Tukey's诚实显著差异分析。此外,最佳配置在使用相对较少计算强度的解码策略的情况下,仍然超过了现有的系统。该研究确立了一个自举范式,在该范式中,LLMs生成并评估自己的训练数据,有可能改变软件工程任务中数据稀缺性的方法,并推动开发稳健且适应性强的自动化代码维护工具。