MergeRepair:代码LLMs中合并任务特定适配器用于自动程序修复的探索性研究
软件工程
2025-06-10 v3 人工智能
摘要
大语言模型(LLM)在多个软件开发相关任务中表现出高能力,如程序修复、文档生成、代码重构、调试和测试。然而,训练这些模型需要大量数据和显著的计算资源。适配器是专门设计的小型模块,用于对LLM进行参数高效微调,以适应特定任务、领域或应用,而无需对整个模型进行广泛重新训练。这些适配器提供了一种更高效的方式来根据特定需求定制LLM,利用大型模型的预存能力。模型(和适配器)合并已成为一种开发能够执行多个任务的模型的技术,且只需最少或无需训练。尽管模型和适配器合并在自然语言处理和计算机视觉等领域已显示出有前景的性能,但其在软件工程任务中的适用性仍未被充分探索。在本文中,我们通过我们的方法MergeRepair,在软件工程的背景下研究合并适配器的有效性,特别关注自动程序修复(APR)任务。具体而言,我们使用三种不同的合并方法(包括权重平均、ties和dare-ties)合并多个任务特定适配器,并在APR任务上评估合并适配器的性能。我们引入了一种持续合并方法,这是一种新颖的方法,在该方法中我们按顺序合并任务特定适配器,其中合并适配器的顺序和权重起重要作用。我们进一步将我们的方法与基线方法进行比较,该基线方法对不同适配器的参数应用等权重合并,其中所有适配器具有同等重要性。
引用
@article{arxiv.2408.09568,
title = {MergeRepair: An Exploratory Study on Merging Task-Specific Adapters in Code LLMs for Automated Program Repair},
author = {Meghdad Dehghan and Jie JW Wu and Fatemeh H. Fard and Ali Ouni},
journal= {arXiv preprint arXiv:2408.09568},
year = {2025}
}