Automated Program Repair (APR) attempts to patch software bugs and reduce manual debugging efforts. Very recently, with the advances in Large Language Models (LLMs), an increasing number of APR techniques have been proposed, facilitating software development and maintenance and demonstrating remarkable performance. However, due to ongoing explorations in the LLM-based APR field, it is challenging for researchers to understand the current achievements, challenges, and potential opportunities. This work provides the first systematic literature review to summarize the applications of LLMs in APR between 2020 and 2025. We analyze 189 relevant papers from LLMs, APR and their integration perspectives. First, we categorize existing popular LLMs that are applied to support APR and outline four types of utilization strategies for their deployment. Besides, we detail some specific repair scenarios that benefit from LLMs, e.g., semantic bugs and security vulnerabilities. Furthermore, we discuss several critical aspects of integrating LLMs into APR research, e.g., input forms and open science. Finally, we highlight a set of challenges remaining to be investigated and the potential guidelines for future research. Overall, our paper provides a systematic overview of the research landscape to the APR community, helping researchers gain a comprehensive understanding of achievements and promote future research.
翻译:自动程序修复(APR)旨在修补软件缺陷并减少人工调试工作量。近年来,随着大语言模型(LLMs)的发展,越来越多的APR技术被提出,这些技术促进了软件的开发与维护,并展现出卓越的性能。然而,由于基于LLM的APR领域仍处于持续探索阶段,研究人员难以全面把握当前取得的成就、面临的挑战以及潜在的机遇。本文首次提供了系统性文献综述,总结了2020年至2025年间LLMs在APR中的应用。我们从LLMs、APR及其融合的视角分析了189篇相关论文。首先,我们对当前应用于支持APR的流行LLMs进行了分类,并概述了四种部署它们的利用策略。此外,我们详细阐述了受益于LLMs的一些具体修复场景,例如语义缺陷和安全漏洞。进一步地,我们讨论了将LLMs集成到APR研究中的若干关键方面,例如输入形式和开放科学。最后,我们重点指出了一系列有待研究的挑战以及未来研究的潜在指导方向。总体而言,本文为APR领域的研究人员提供了系统性的研究概览,有助于他们全面理解现有成果并推动未来研究。