Multi-Objective Fine-Tuning for Enhanced Program Repair with LLMs
arxiv(2024)
摘要
Large language models (LLMs) have demonstrated remarkable capabilities on a
broad spectrum of downstream tasks. Within the realm of software engineering,
specialized tasks on code, such as program repair, present unique challenges,
necessitating fine-tuning to unlock state-of-the-art performance. Fine-tuning
approaches proposed in the literature for LLMs on program repair tasks are
however generally overlooking the need to reason about the logic behind code
changes, beyond syntactic patterns in the data. High-performing fine-tuning
experiments also usually come at very high computational costs. With MORepair,
we propose a novel perspective on the learning focus of LLM fine-tuning for
program repair: we not only adapt the LLM parameters to the syntactic nuances
of the task of code transformation (objective 1), but we also specifically
fine-tune the LLM with respect to the logical reason behind the code change in
the training data (objective 2). Such a multi-objective fine-tuning will
instruct LLMs to generate high-quality patches.
We apply MORepair to fine-tune four open-source LLMs with different sizes and
architectures. Experimental results on C++ and Java repair benchmarks show that
the implemented fine-tuning effectively boosts LLM repair performance by 7.6
to 10
strategy yields superior performance compared to the incumbent state-of-the-art
in fine-tuned models for program repair, Fine-tune-CoT and RepairLLaMA.
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要