综述:CSLLM:特定代码的大型语言模型——综述

时间:2026年1月3日
来源:Expert Systems with Applications

编辑推荐:

代码特定大语言模型(CSLLMs)通过领域适应训练和精细调优技术,有效解决通用模型在编程任务中的语法错误、效率低下等问题,但存在伦理风险、计算复杂度及数据偏差等挑战。本文系统梳理2023-2025年312篇文献,构建涵盖架构、训练策略、评估方法的统一分类框架,揭示CSLLMs在代码生成、修复等任务中的优势与局限,并提出以执行验证评估、混合架构优化和伦理框架为核心的未来研究方向。

广告
   X   

Jayesh Umre|Ashish Singh Parihar|Atul Gupta
机构:印度信息技术设计制造学院(IIITDM)计算机科学与工程系,地址:Jabalpur, Madhya Pradesh, 邮政编码:482005,国家:印度

摘要

大型语言模型(LLMs)通过自动化与代码相关的任务(包括代码生成、补全、调试和优化)从根本上改变了代码工程。尽管取得了成功,但通用LLMs有时仍难以应对特定于代码的挑战,如语法错误、代码效率低下和安全漏洞。通过使用专门的数据集、领域适应性训练和针对性的微调技术,代码特定大型语言模型(CSLLMs)应运而生,以解决这些问题。本文综述了现有关于CSLLMs的研究,探讨了它们的架构、训练范式、激励策略、微调技术、基准数据集和评估方法。为了突出它们的优势、局限性及实际应用,本文对Codex、CodeT5、StarCoder和DeepSeekCoder等著名模型进行了对比研究。研究表明,基于标识符感知的预训练、检索增强学习和基于执行的评估等方法,使得CSLLMs在代码准确性、语法正确性和执行可靠性方面通常优于通用模型。然而,仍存在一些重要障碍,包括代码生成中的伦理问题、计算复杂性和数据集偏见。我们的研究强调了令人兴奋的研究方向,支持混合架构、基于执行的强评估方法以及伦理框架,并为工业界和学术界的AI辅助编程未来发展提供了指导。

引言

生成式AI的出现为与代码相关的任务带来了一个新时代,将这一领域从纯粹的手动工作转变为AI辅助的工作流程。大型语言模型(LLMs)已深度融入开发者体验中,提供了从实时代码补全到自动程序修复等多种功能(Hou, 2024; Lajkó, Csuvik, Vidács, 2022; Xiao, Zuo, Lu, Dong, Cao, Beschastnikh, 2025; Xu, Alon, Neubig, Hellendoorn, 2022a)。然而,尽管通用LLMs在自然语言处理方面表现出色(Deepseek, 2024; Deepmind, 2025; Openai, Chatgpt, 2023; Rasool, Shahzad, Aslam, Chan, Arshad, 2025),但它们在编程任务中经常遇到问题,如语法错误、逻辑不一致性和缺乏结构理解(Billah, Roy, Codabux, Roy, 2024; Chang, Shirazi, 2025; Kalyan, 2024; Kotsiantis, Ai, 2024; Lee, 2024b; Pan, 2024; Shah, Stackeval, 2024)。这些局限性主要是由于它们的预训练主要依赖于自然语言语料库,而这些语料库未能充分捕捉编程语言的严格语法和语义规律(Openai, Chatgpt, 2023; Son, Kim, 2023)。
为了解决这些问题,一类专门的模型——代码特定大型语言模型(CSLLMs)应运而生(图1)。在本文中,我们使用“CSLLMs”一词指主要在代码语料库上进行预训练或针对编程任务进行专门微调的模型,而“通用LLMs”则指如GPT-4或Gemini这样的文本聚焦模型。
这些专门模型采用了标识符感知的预训练、检索增强学习和基于执行的评估等技术(Haque, Ahmad, Lourentzou, Brown, 2023; Wang, Wang, Joty, Hoi, 2021; Yang, Chen, Gao, Li, Hu, Liu, Xia, 2025h),使它们在代码生成、修复、摘要、测试和漏洞检测等任务中更为有效(Ai, et al. Codegemma, 2024; Gu, 2025; Kang, 2024)。图2展示了典型的CSLLM处理流程。
2023至2025年间的一系列调查研究了LLMs在软件工程中的应用([107])和评估实践([56],详见表1)。尽管这些研究很有价值,但它们往往(i)将通用LLMs和代码特定LLMs混为一谈,(ii)侧重于描述性列举而非批判性综合,或(iii)忽略了新兴范式,如CSLLM特定的提示和基于执行的评估。因此,目前仍缺乏对CSLLMs的创建、训练和评估方法的全面理解。我们的工作是迄今为止首个专门针对CSLLMs的系统性综合研究(2023–2025),它在一个统一的分析框架内整合了架构、预训练数据集、微调策略、提示技术、评估实践、应用、挑战和未来发展方向。与以往仅关注通用LLMs或将其范围限制在个别任务(如生成、补全或基准测试)的研究不同,我们批判性地分析了312项CSLLM研究(2023-2025),揭示了跨领域的模式、方法论差距和新兴研究趋势。这种统一而全面的视角是我们研究的关键创新点。
为了证明我们是首个专注于CSLLMs的系统性综合研究,我们对表1中列出的六项最新调查进行了轻量级的内容重叠分析。我们的分析显示,任何一项先前的调查都只涵盖了统一分类中不到32%的主题(架构、预训练数据集、提示策略、基于执行的评估、安全风险和CSLLM特定应用),且没有一项研究同时涵盖了三个以上的研究问题维度。此外,对312篇论文的引用网络分析表明,先前的调查所基于的证据基础要小得多且范围更窄(通常为45-120篇论文),且较少包含2024-2025年的CSLLM相关研究,如Code Llama、StarCoder2、DeepSeek-Coder和CodeGemma以及基于代理的管道。这一实证比较表明,我们的综述比现有研究更广泛、更新,从而支持了我们所提供的首个专门针对CSLLMs的全面且系统的综合研究的观点。
鉴于这些不足,我们的调查在以下方面做出了贡献:
  • 1.
    我们系统地回顾了300多篇(2023-2025年)专门针对CSLLMs的文章,严格区分了它们与通用LLMs,以确保领域特异性。
  • 2.
    我们构建了一个全面的CSLLMs分类体系(涵盖架构、应用、训练策略和评估方法),统一了先前研究中的定义差异并解决了不一致之处。
  • 3.
    我们提供了批判性的综合分析,而非简单的总结,重点关注了基准测试污染、任务-指标不匹配和可重复性挑战等系统性问题。
  • 4.
    我们根据研究发现制定了具体的研究议程,将基于执行的评估、混合架构和伦理考虑作为优先事项。
  • 我们的分析基于五个研究问题(RQ1–RQ5),探讨了CSLLMs的演变、数据集使用、微调过程、提示技术和应用/挑战。这种方法确保了一个系统性的框架,不仅梳理了现有进展,还指出了未来工作的空白。
    本文的其余部分安排如下:第2节详细介绍了我们的方法论,包括搜索策略和纳入标准。第3节定义了CSLLM并将其与通用LLMs区分开来。第4-8节回答了我们的关键研究问题(RQ1–RQ5)。最后,第9节总结了研究发现并为未来研究提供了方向性建议。

    方法论

    为了确保对CSLLM领域的严谨分析,我们遵循了系统文献综述(SLR)的既定指南[138]。我们的方法论包括四个阶段:(1)制定研究问题(第2.1节);(2)进行全面的文献搜索(第2.2节);(3)研究筛选和选择(第2.3节);以及(4)数据提取和综合(第2.4节)。该工作流程的可视化概述见图3。

    代码特定大型语言模型的定义

    系统回顾这一领域的一个关键挑战是先前研究中使用的术语不一致。一些研究将通用模型归类为“用于代码的LLMs”,而另一些研究则将范围限制在仅针对源代码进行预训练的模型上。为了避免歧义并确保方法论的一致性,我们采用以下正式定义:
    代码特定大型语言模型(CSLLM)是指:(i)主要在大规模源代码上进行预训练的LLM

    RQ1:CSLLMs的关键进展是什么?这些模型是如何随时间演变的?

    本节探讨了CSLLMs随时间的演变过程,识别出区分现代代码特定模型与其通用前身的架构、训练和设计创新。通过建立这一演变路径,我们为解释相关数据集(RQ2)、提示策略(RQ3)和评估实践(RQ4)提供了必要的背景。

    RQ2:CSLLMs通常使用哪些训练数据集和微调策略?

    本节研究了决定CSLLMs实际表现的数据基础和适应机制。我们的目标是描述通用文本数据集与代码特定数据集的分布情况,分析数据治理和去污实践对可靠性的影响,并梳理近期研究中采用的微调策略。
    通过建立这些基础,RQ2为解释提示效果(RQ3)和评估可靠性(RQ4)提供了实证依据。

    RQ3:哪些最有效的提示工程技术可以提升CSLLMs的性能?

    本节研究了不同的提示工程策略如何影响CSLLMs在代码相关任务上的表现和效果。我们的目标是确定哪些模式(从零样本和少样本方法到思维链(CoT)和检索增强生成(RAG))最常被使用,以及在什么条件下能够带来可测量的提升。通过澄清这一领域,RQ3将RQ2中建立的模型能力与实证结果联系起来。

    RQ4:CSLLMs最常用的评估指标是什么?

    本节调查了CSLLM评估的现状,将现有方法分为四个互补的类别:基于文本的相似性、基于执行的正确性、效率分析分类/排名。我们的目标是确定哪些指标在不同任务中占主导地位,揭示它们的局限性,并提出构建可靠评估协议的实际建议。
    评估代码生成与一般文本生成有本质区别。

    RQ5:CSLLM研究的主要应用、挑战和未来方向是什么?

    本节总结了CSLLMs的实际应用、限制其部署的关键技术挑战以及塑造下一代代码聚焦模型的新兴研究方向。通过整合RQ1–RQ4的发现,我们提供了对当前实践状况和未来研究议程的战略性差距的全面视角。
    为了解决先前调查在范围上的模糊性,我们采用了严格的分类框架。

    结论

    代码特定大型语言模型(CSLLMs)已从通用模型演变为专门用于软件工程的独立模型家族。在这项调查中,我们对CSLLM领域进行了全面的批判性分析,研究了其架构演变、数据治理、提示策略和评估方法。我们的文献分析揭示了一个清晰的演变轨迹:虽然自动化代码生成和补全仍然是主要功能,

    CRediT作者贡献声明

    Jayesh Umre:概念化、方法论、形式分析、初稿撰写。Ashish Singh Parihar:概念化、方法论、监督、审稿与编辑。Atul Gupta:监督、审稿与编辑。

    利益冲突声明

    作者声明他们没有已知的财务利益或个人关系可能影响本文的研究结果。

    生物通微信公众号
    微信
    新浪微博


    生物通 版权所有