通过模型协作实现深度代码模型的即时生成质量提升
《ACM Transactions on Software Engineering and Methodology》:On-the-fly Generation-Quality Enhancement of Deep Code Models via Model Collaboration
【字体:
大
中
小
】
时间:2025年11月08日
来源:ACM Transactions on Software Engineering and Methodology
编辑推荐:
实时优化深度代码模型性能的研究:提出CodEn框架通过多模型协作与动态输出修复提升生成质量,在 assertion generation、bug fixing、code summarization等任务中显著提高BLEU、ROUGE-L、METEOR、CIDEr等指标,并验证跨不同大语言模型的泛化能力。
摘要
深度代码模型在自动化软件工程任务中日益凸显的重要性是不可否认的。然而,它们的部署在“即时性能提升”方面遇到了重大挑战,即在实际执行过程中动态提高深度代码模型的性能。传统技术(如重新训练或微调)在受控的预部署场景中有效,但在部署后进行即时调整时却显得力不从心。CodeDenoise是一种著名的即时性能提升技术,它利用基于不确定性的方法来识别错误分类的输入,并应用“输入修改策略”来纠正分类错误。尽管这种方法对分类任务有效,但由于两个关键问题,它不适用于生成任务:? 基于不确定性的方法不适合识别“具有挑战性的输入”,尤其是在输出多样且开放式的生成任务中。“具有挑战性的输入”指的是一类输入,由于任务的固有复杂性或输入样本中的上下文不足,模型难以生成高质量的输出。? 输入修改策略不能应用于生成任务,因为修改输入可能会不可预测地影响整个生成的输出序列。这些限制凸显了需要新的技术来实时提升深度代码模型的生成质量。
为了填补这一空白,我们提出了CodEn,这是一个旨在通过模型协作和实时输出修复来提升已部署深度代码模型生成质量的框架。CodEn采用集成学习方法,整合了多种通用的输出质量评估指标来识别“具有挑战性的输入”。通过结合这些多样化的指标,CodEn克服了基于不确定性方法的局限性,使其在各种生成任务中都能有效发挥作用。此外,我们还为“具有挑战性的输入”的输出引入了一种复杂的即时修复方法,该方法利用大型语言模型(LLM)和一种新颖的双提示策略。该策略结合了生成和基于选择的提示来提供潜在的修复方案,并采用自适应机制来选择最佳输出。我们在12个深度代码模型、三项流行的代码相关生成任务和四个数据集上进行的实验证明了CodEn的有效性。例如,在断言生成任务中,CodEn将基线模型的SAM(语义准确度匹配)提高了12.14%至21.65%;在漏洞修复任务中,CodEn在TFix数据集上实现了17.51%至30.64%的精确匹配提升;在代码总结任务中,CodEn在关键指标上显著提升了性能:BLEU分数提高了5.72%、ROUGE-L提高了4.41%、METEOR提高了7.70%、CIDEr提高了8.09%。此外,我们还在不同的开源LLM上对CodEn进行了实验,证明其仍能实现显著的改进。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号