Boosting Automatic Java-to-Cangjie Translation with Multi-Stage LLM Training and Error Repair
Nanjing University of Aeronautics and Astronautics(南京航空航天大学)
本文提出多阶段LLM训练框架,结合编译器反馈和错误修复,提升Java到Cangjie的翻译准确性与语义一致性,实验显示在有限平行数据下功能等价性提升6.06%。
2026-05-08 cs.SE
Unlocking LLM Repair Capabilities Through Cross-Language Translation and Multi-Agent Refinement
City University of Hong Kong(香港城市大学);Beijing JudaoYouda Network Technology Co. Ltd.(北京极道有道网络科技有限公司);SnT, University of Luxembourg(卢森堡大学科学与技术学院);Aalto University(阿尔托大学);University of Melbourne(墨尔本大学)
本文提出LANTERN方法,通过跨语言翻译和多代理迭代修复,提升LLM在多语言程序修复中的能力,尤其在Rust等较少使用语言上表现突出。
2026-03-30 cs.SE
An Iterative Test-and-Repair Framework for Competitive Code Generation
Zhejiang University(浙江大学);University College London(伦敦大学学院)
FixAudit通过迭代测试与修复循环改进代码生成,通过共享模型和专门角色联合训练,提升代码质量与测试覆盖率。
2026-07-01 cs.SE
Assessing the Latent Automated Program Repair Capabilities of Large Language Models using Round-Trip Translation
Simula Research Laboratory(Simula研究实验室)
本研究探索利用往返翻译(RTT)通过大语言模型进行自动化程序修复,发现该方法能生成合理补丁,并可作为APR框架的补充组件。
2025-10-15 cs.CL cs.LG cs.SE
GLAD: Neural Predicate Synthesis to Repair Omission Faults
现有的模板和基于学习的APR工具已经成功地为许多基准测试故障找到了补丁。然而,我们对现有结果的分析表明,遗漏故障对这些技术构成了重大挑战。对于基于模板的方法,遗漏错误不提供应用模板的位置;对于将修复公式化为神经机器翻译(NMT)的基于学习的方法,遗漏错误类似地不提供要翻译的错误代码。为了解决这些问题,我们提出了GLAD,一种新的基于学习的修复技术,专门针对if子句合成。GLAD不需要错误行,因为它基于生成语言模型(LM)而不是机器翻译;因此,它可以修复遗漏错误。GLAD使用基于类型的语法智能地约束语言模型。此外,它有效地降低了验证成本,通过执行动态排名的候选补丁使用调试器。由于从翻译到合成的转变,GLAD与现有技术高度正交:GLAD可以正确修复以前基于NMT的技术无法修复的16个Defects 4J v1.2故障,同时保持合理的运行时成本,强调其作为APR工具的实用性和在实践中补充现有工具的潜力。对GLAD修复的错误的检查表明,GLAD可以快速生成表达式,这对其他技术来说是一个挑战。
2022-04-14 cs.SE
BabelCoder: Agentic Code Translation with Specification Alignment
Concordia University(康科迪亚大学);York University(约克大学)
BabelCoder通过代理协作框架提升代码翻译准确性,实现94.16%的平均准确率。
2026-09-28 cs.AI cs.SE
Rectifier: Code Translation with Corrector via LLMs
Zhejiang University(浙江大学);University of Texas at Dallas(德克萨斯大学达拉斯分校);Central University of Finance and Economics(中央财经大学)
针对大语言模型代码翻译易产生多类错误的问题,提出名为Rectifier的微型通用校正模型,从现有LLM的错误中学习以修复任意LLM的翻译错误,在多语言翻译任务上验证了修复有效性与方法鲁棒性。
2024-07-10 cs.AI cs.SE
Learning to Generate Corrective Patches using Neural Machine Translation
Bug修复通常是一项手工密集型任务。然而,最近的工作提出了自动程序修复的想法,其目的是修复(至少是一个子集)的错误,以不同的方式,如代码突变等以下在同一行的工作自动修复错误,在本文中,我们的目标是利用过去的修复,提出修复当前/未来的错误。具体来说,我们提出了棘轮,一个纠正补丁生成系统,使用神经机器翻译。通过使用神经序列到序列模型学习过去修复中相应的预校正和后校正代码,Ratchet能够为给定的容易出错的代码查询生成修复代码。我们进行了实证研究与五个开源项目,即Ambari,骆驼,Hadoop,Jetty和Wicket,评估棘轮的有效性。我们的研究结果表明,棘轮可以生成语法有效的语句98.7%的时间,并实现F1的措施之间的0.29 - 0.83的实际修复采用的代码库。此外,我们使用20名参与者进行定性验证,看看生成的语句是否有助于纠正错误。我们的调查显示,Ratchet的输出被认为在许多情况下有助于修复错误,即使修复不是100%正确。
2019-07-04 cs.SE
SEDCoT: Enhancing LLM-Based COBOL Code Translation via Symbolic Execution and Delta Debugging
University of Lugano(卢加诺大学);Technical University of Munich(慕尼黑工业大学);University of Augsburg(奥格斯堡大学)
针对COBOL代码翻译难题,提出SEDCoT框架。先利用大语言模型初译,再结合符号执行与大语言模型指导生成测试套件修复语义差异,最后用增量调试最小化失败测试,提升翻译性能与可读性。
2026-09-02 cs.SE
Automated Program Repair: Emerging trends pose and expose problems for benchmarks
Arizona State University(亚利桑那州立大学);University of Michigan(密歇根大学);Santa Fe Institute(圣达菲研究所)
本文指出 ML 与 LLM 在自动化程序修复中的普及使传统 APR 基准面临有效性和泛化性挑战,尤其是训练数据可能包含评测问题的数据泄露风险。
2024-05-08 cs.LG cs.SE
Tea: Program Repair Using Neural Network Based on Program Information Attention Matrix
Microsoft Asia-Pacific Technology Company Ltd.(微软亚太科技有限公司);University of Chinese Academy of Sciences(中国科学院大学);Institute of Software, Chinese Academy of Sciences(中国科学院软件研究所)
机器学习(ML)驱动的自然语言处理(NLP)的进步为软件程序的自动错误修复指明了一个有希望的方向,因为修复有错误的程序可以转换为翻译任务。虽然软件程序包含比一维自然语言文档更丰富的信息,但使用ML驱动的NLP技术进行自动程序修复的开创性工作只考虑了有限的此类信息。我们假设,更全面的软件程序的信息,如果适当利用,可以提高ML驱动的NLP方法在修复软件程序的有效性。作为证明这一假设的第一步,我们提出了一个统一的表示来捕捉软件程序的语法,数据流和控制流方面,并设计了一种方法来使用这样的表示来指导Transformer模型从NLP更好地理解和修复错误的程序。我们的初步实验证实,更全面的软件程序使用的信息,更好的ML驱动的NLP技术可以执行在这些程序中修复错误。
2021-07-17 cs.AI cs.SE
Is Three the Magic Number? An Empirical Evaluation of LLM-Based Repair Loops
Humboldt-Universität zu Berlin(柏林洪堡大学);Korea University(高丽大学)
研究基于大语言模型的修复循环迭代限制,通过多个软件工程任务观察到收益递减模式,前几次迭代收获大,后续贡献小,还发现修复行为受工作流编排和反馈设计影响更大。
2026-07-07 cs.SE
Neural Program Repair with Execution-based Backpropagation
神经机器翻译(NMT)架构在自动程序修复方面取得了可喜的成果。然而,它们具有生成低质量补丁的限制(例如,不可编译的补丁)。这是因为现有的工作仅优化基于字符和标记的纯语法损失函数,而没有在神经网络权重优化期间并入程序特定的信息。在本文中,我们提出了一种新的程序修复模型称为奖励修复。RewardRepair的核心新颖性是通过基于程序编译和测试执行信息的损失函数来改进基于NMT的程序修复,奖励网络生成可编译且不会过拟合的补丁。我们进行了几个实验来评估RewardRepair,表明使用编译和测试执行结果来优化底层神经修复模型是可行和有效的。RewardRepair在四个基准测试中正确修复了207个错误。我们报告修复成功的121个错误是固定的第一次在文献中。此外,RewardRepair生成高达45.3%的可编译补丁,比最先进的39%有所提高。
2022-04-10 cs.SE
Patching as Translation: the Data and the Metaphor
Columbia University(哥伦比亚大学);University of California, Davis(加利福尼亚大学戴维斯分校)
来自其他领域的机器学习模型,如计算语言学,已经被移植到软件工程任务中,通常非常成功。然而,一个移植模型在特定任务上的初步成功并不一定意味着它非常适合该任务。在这项工作中,我们研究了这种现象的一个常见的例子:“软件修补就像语言翻译”的自负。我们的经验表明,序列到序列模型和翻译模型之间有微妙的,但关键的区别:虽然程序修复大大受益于前者,一般的建模架构,它实际上受到设计决策内置到后者,无论是在翻译的准确性和多样性。鉴于这些发现,我们展示了如何更原则的方法来模型设计,基于我们的实证研究结果和软件开发的一般知识,可以导致更好的解决方案。我们的研究结果也提供了强有力的支持,最近的趋势,合成编辑的代码有条件的错误的上下文,以修复错误。我们自己实现这样的模型作为“概念验证”工具,并根据经验证实,它们的行为在根本上不同的,更有效的方式比研究的预防为基础的架构。总的来说,我们的研究结果证明了在软件工程中研究机器学习模型的复杂性的优点:这不仅可以帮助阐明可能被准确性提高所掩盖的潜在问题;它还可以帮助在这些模型上进行创新,以进一步提高最先进的水平。我们将在https://github.com/ARiSE-Lab/Patch-as-translation上公开发布我们的复制数据和材料。
2020-09-01 cs.LG cs.PL cs.SE
C2RustXW: Program-Structure-Aware C-to-Rust Translation via Program Analysis and LLM
State Key Laboratory for Novel Software Technology, Nanjing University(南京大学新型软件技术重点实验室);Jiangsu Police Institute(江苏警官学院)
本文提出C2RustXW工具,通过程序分析与LLM结合,实现结构感知的C到Rust翻译,提高代码正确性和可维护性,实验显示在CodeNet和GitHub上达到高语法正确率和代码压缩效果。
2026-03-30 cs.SE
Feedback Loops and Code Perturbations in LLM-based Software Engineering: A Case Study on a C-to-Rust Translation System
Otto von Guericke University(奥托·冯·格里克大学);Bosch Research(博世研究)
本文研究了反馈循环、LLM选择和代码扰动对C到Rust翻译系统性能的影响,发现反馈循环可减少模型差异并提升系统鲁棒性。
2026-08-06 cs.AI cs.SE
Less Training, More Repairing Please: Revisiting Automated Program Repair via Zero-shot Learning
本文提出零样本APR工具AlphaRepair,直接利用预训练CodeBERT依据上下文预测正确代码,无需缺陷修复训练数据,并在Defects4J上显著优于现有基线。
2024-12-05 cs.SE
INTERVENOR: Prompting the Coding Ability of Large Language Models with the Interactive Chain of Repair
Northeastern University(东北大学);Tsinghua University(清华大学)
该研究提出 INTERVENOR,通过代码学习者与代码教师角色交互及编译器反馈构建修复链,提升 LLM 的代码生成、翻译与缺陷修复能力。
2024-06-13 cs.AI cs.SE
Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFT
Northeastern University(东北大学);EmbodyX Inc(EmbodyX公司);Aibao LLC(Aibao有限责任公司)
本研究针对C到Rust代码翻译任务,对Qwen3-27B采用三阶段微调课程,结合SACTOR框架评估后,其性能优于基线模型及其他LLM。
2026-09-01 cs.AI cs.ET cs.LG
Project Prometheus: Bridging the Intent Gap in Agentic Program Repair via Reverse-Engineered Executable Specifications
Nanjing University of Aeronautics and Astronautics(南京航空航天大学)
本文提出普罗米修斯框架,通过规范推断而非代码生成解决代理程序修复中的意图差距问题,实现了93.97%的正确补丁率和74.4%的救援率。
2026-04-19 cs.AI cs.SE
Scalable, Validated Code Translation of Entire Projects using Large Language Models
针对大语言模型代码翻译可扩展性差、长代码成功率低的问题,提出含特性映射与类型兼容性的模块化翻译方法,在Go转Rust任务中实现了更高的函数验证成功率。
2024-12-11 cs.PL cs.SE
Neural Program Repair: Systems, Challenges and Solutions
自动程序修复(APR)旨在自动修复源代码中的错误。近年来,随着深度学习(Deep Learning,DL)领域的发展,神经程序修复(Neural Program Repair,NPR)研究兴起,它将APR描述为从错误代码到正确代码的翻译任务,并采用基于编码器-解码器架构的神经网络。与其他APR技术相比,NPR方法在适用性方面具有很大的优势,因为它们不需要任何规范(即,测试套件)。虽然非线性重构已经成为一个热门的研究方向,但目前还没有对这一领域的研究综述。为了帮助感兴趣的读者了解现有的NPR系统的架构,挑战和相应的解决方案,我们在本文中的最新研究进行了文献综述。首先介绍了该领域的背景知识。接下来,为了便于理解,我们将NPR过程分解为一系列模块,并详细说明每个模块上的各种设计选择。此外,我们确定了几个挑战,并讨论现有解决方案的效果。最后,我们总结并提出了一些有前途的研究方向。
2022-09-21 cs.NE cs.SE
Automated Test Case Repair Using Language Models
针对测试用例维护成本高、损坏测试用例影响开发流程的问题,提出基于预训练代码语言模型的TaRGET方法,通过两步微调流程实现自动化修复,在TaRBench基准上达66.1%精确匹配准确率,并提供实用指南与扩展性分析。
2025-02-14 cs.SE
Well Begun is Half Done: Location-Aware and Trace-Guided Iterative Automated Vulnerability Repair
Yangzhou University(扬州大学);Nanjing University of Posts and Telecommunications(南京邮电大学)
\sysname通过位置感知和跟踪引导的迭代方法,改进了漏洞修复的补丁生成质量与准确性。
2025-12-23 cs.SE
Workflows vs Agents for Code Translation
Code Metal
研究比较了工作流与代理方法在MATLAB到HDL代码翻译中的效果,发现代理方法在语法修复和提升模拟覆盖率方面表现更优。
2025-12-15 cs.AI cs.SE
SafeTrans: LLM-assisted Transpilation from C to Rust
Stony Brook University(石溪大学);Amazon Web Services(亚马逊云服务);University of California, Davis(加州大学戴维斯分校)
本文提出SafeTrans框架,利用LLM自动将C代码转换为Rust代码并修复错误,通过引导修复技术提升转换成功率,并评估转换过程中的安全影响。
2026-04-22 cs.CR cs.SE
CIRCLE: Continual Repair across Programming Languages
自动程序修复(APR)的目的是以较少的人工调试工作来修复有缺陷的源代码,它在提高软件可靠性和开发效率方面起着至关重要的作用。最近的APR工作通过应用深度学习(DL),特别是神经机器翻译(NMT)技术取得了显着进展。然而,我们观察到现有的基于DL的APR模型至少有两个严重的缺点:(1)他们大多只能生成一个单一的编程语言的补丁,因此,要修复多种语言,我们必须建立和训练许多修复模型。(2)大多数都是以离线方式开发的。因此,当有新的需求出现时,它们将不起作用。为了解决上述问题,提出了一种基于T5的APR框架,该框架具有跨多种程序设计语言的持续学习能力,即\emph{C} ont \emph{I} nual \emph{R} epair a \emph{C} ross Programming \emph{L} anguag \emph{E} s(\emph{CIRCLE})。具体而言,(1)CIRCLE利用提示功能来缩小自然语言处理(NLP)预训练任务与APR之间的差距。(2)CIRCLE采用基于难度的排练策略,在不访问完整历史数据的情况下实现APR的终身学习。(3)采用弹性正则化方法进一步增强CIRCLE的持续学习能力,防止其发生灾难性遗忘。(4)CIRCLE采用一种简单而有效的重修复方法来修正由于跨多个程序设计语言而产生的错误。我们训练CIRCLE四种语言(即,C、JAVA、JavaSc…
2022-12-03 cs.SE
TransAgent: Enhancing LLM-Based Code Translation via Fine-Grained Execution Alignment
Fudan University(复旦大学);Tsinghua University(清华大学)
TransAgent通过细粒度执行对齐本地化错误代码块,提升LLM代码翻译的准确性与修复性能,优于现有方法33.3%和56.7%。
2026-04-07 cs.AI cs.SE
Beyond Translation Accuracy: Addressing False Failures in LLM-Based Code Translation
Concordia University(康科迪亚大学)
本文指出LLM代码翻译中许多失败并非逻辑错误,而是评估框架导致的编译器标志、库链接缺失或运行时环境未配置等问题,通过大规模实验揭示了虚假负样本的分类及改进评估标准的必要性。
2026-05-08 cs.SE
Porting Declarative UI to HarmonyOS: A Heuristic-guided Approach for lightweight LLMs
Shandong University(山东大学);University Of Jinan(济南大学);Tianjin University(天津大学);University of Glasgow(格拉斯哥大学);Peking University(北京大学)
针对鸿蒙系统从Android/iOS迁移声明式UI的需求,提出ArkTrans方法,通过启发式构建骨架和模式匹配修复语法错误,实现高编译成功率和视觉保真度。
2026-06-05 cs.SE
Automatic Repair and Type Binding of Undeclared Variables using Neural Networks
Iowa State University(爱荷华州立大学)
深度学习已被用于程序分析中,用于使用软件缺陷数据集预测隐藏的软件缺陷,使用生成对抗网络预测安全漏洞,以及通过学习程序代码上经过训练的神经机器翻译来识别语法错误。然而,所有这些方法要么需要缺陷数据集,要么需要可执行的无缺陷源代码来训练深度学习模型。我们的神经网络模型既没有使用任何缺陷数据集进行训练,也没有使用无缺陷的编程源代码,而是使用抽象树(AST)的结构语义细节进行训练,其中每个节点代表源代码中出现的一个构造。这个模型的实现是为了修复最常见的语义错误之一,比如未声明的变量错误,以及在程序编译之前推断它们的类型信息。通过该方法,在1059个程序的Prutor数据集上,只有未声明变量错误的程序,该模型能正确定位和识别81%的程序,并能正确推断出80%的程序类型。
2019-07-14 cs.CL cs.FL cs.LG
Neuron Patching: Semantic-based Neuron-level Language Model Repair for Code Generation
Monash University(莫纳什大学);Technical University of Munich(慕尼黑工业大学);Chongqing University(重庆大学)
本文提出神经元定向模型改进方法MINT,利用语言模型语义特性定位并修补最少数量(通常一至两个)的关键神经元,在三个代码生成任务上显著优于现有方法,实现高效、精确且可靠的代码语言模型修复。
2024-11-20 cs.CL cs.LG cs.SE
Entropy-based Code Adversarial Translation for Real-world Repository Migration
针对LLM迁移仓库难达可运行状态的问题,提出多智能体框架ECAT,引入A2H-RepoBench基准,迁移质量达74.7%且优于现有方法。
2026-08-12 cs.AI cs.SE
Systematic LLM Translation of Legacy Scientific Code to Differentiable Frameworks: Application to a Land Surface Model
University of California, Los Angeles(加州大学洛杉矶分校);NASA Goddard Space Flight Center(国家航空航天局戈达德空间飞行中心)
提出基于LLM的五阶段流水线,将遗留Fortran代码自动翻译为JAX可微分框架,在CLM-ml-v2模型上实现完整雅可比矩阵计算和24倍加速。
2026-06-04 cs.AI cs.CE cs.MA
A Survey of Learning-based Automated Program Repair
本文系统综述了基于深度学习的自动程序修复技术,梳理其工作流程、关键组件、数据集与评估方法,并给出未来研究指南。
2023-11-01 cs.SE
EvoC2Rust: A Skeleton-guided Framework for Project-Level C-to-Rust Translation
Shanghai Jiao Tong University(上海交通大学);Huawei Technologies Co., Ltd(华为技术有限公司)
EvoC2Rust通过结合规则和LLM方法,提升项目级C到Rust翻译的准确性和安全性
2026-01-13 cs.AI cs.SE
Exploring and Unleashing the Power of Large Language Models in Automated Code Translation
Shandong University(山东大学);Beihang University(北京航空航天大学);City University of Hong Kong(香港城市大学);Peking University(北京大学)
本文评估 LLM 与学习型转译器的代码翻译能力,定位其理解与 I/O 指令等缺陷,并提出结合测试生成、执行验证和迭代修复的 UniTrans 框架,在六种跨语言设置上显著提升三类 LLM。
2024-05-11 cs.AI cs.SE
Automatically Generating Commit Messages from Diffs using Neural Machine Translation
University of Notre Dame(圣母大学)
提交消息是理解软件演化的宝贵资源,因为它们提供了诸如功能添加和错误修复之类的更改记录。不幸的是,程序员经常忽视编写好的提交消息。已经提出了不同的技术来帮助程序员自动编写这些消息。这些技术在描述变更内容方面是有效的,但通常是冗长的,并且缺乏理解变更背后的基本原理的上下文。相比之下,人类写的信息很短,总结了高层次的理由。在本文中,我们采用神经机器翻译(NMT)来自动“翻译”差异到提交消息。我们使用来自前1k个Github项目的差异和人类编写的提交消息的语料库训练了一个NMT算法。我们设计了一个过滤器来帮助确保我们只在更高质量的提交消息上训练算法。我们的评估揭示了一种模式,在这种模式中,我们生成的消息往往要么质量很高,要么质量很低。因此,我们创建了一个质量保证过滤器来检测我们无法生成好消息的情况,并返回一个警告。
2017-08-30 cs.CL cs.SE
SmartPaste: Learning to Adapt Source Code
Microsoft Research(微软研究院)
深度神经网络已被证明在一系列自然语言任务中取得了成功,如机器翻译和文本摘要。虽然最近考虑了源代码(即形式语言)的任务,但这一领域的大多数工作并不试图利用其已知语法和结构所提供的独特机会。在这项工作中,我们介绍SmartPaste,第一个任务,需要使用这些信息。该任务是程序修复问题的一个变体,需要将给定的(粘贴的)代码片段适应周围的现有源代码。作为第一个解决方案,我们设计了一组深度神经模型,这些模型学习以数据流敏感的方式表示每个变量位置和变量使用的上下文。我们的评估表明,我们的模型可以在许多情况下学习解决SmartPaste任务,达到58.6%的准确率,同时学习变量使用的有意义的表示。
2017-05-22 cs.LG cs.SE
LLMigrate: Transforming "Lazy" Large Language Models into Efficient Source Code Migrators
LLMigrate通过函数级拆分与静态分析,结合GPT-4o和编译器驱动修复,实现高效C到Rust迁移,在Linux内核模块上仅需修改少于15%代码,显著优于纯GPT-4o方法。
2025-03-31 cs.PL cs.SE
Towards Certificate-Driven Software Porting: A Self-Improving Agentic Harness for Scientific Program Optimization
Georgia Institute of Technology(佐治亚理工学院);Lawrence Berkeley National Laboratory(劳伦斯伯克利国家实验室)
本文提出证书驱动进化搜索(CDES),通过记录失败候选的可执行限制来增强LLM进化搜索,应用于Geant4的CPU到GPU移植,实现最高23.54倍加速,并将正确性通过率从55%提升至90%。
2026-09-29 cs.AI cs.PL cs.SE
Learning the Relation between Code Features and Code Transforms with Structured Prediction
Shandong University(山东大学);Universitat Politècnica de Catalunya(加泰罗尼亚理工大学);KTH Royal Institute of Technology(KTH皇家理工学院);University of Luxembourg(卢森堡大学)
提出基于 CRF 的 AST 级代码转换结构化预测方法,并在 Java 修复转换预测中验证其准确率与补丁生成价值。
2023-06-02 cs.LG cs.PL cs.SE
Multi-Agent Strategies for Bridging Programming Language Gaps in Code Generation
University of Luxembourg(卢森堡大学)
针对大语言模型在多语言代码生成中能力差异大、现有方案孤立处理目标语言的问题,XL-CoGen提出协调多智能体架构,通过数据驱动桥接语言选择等机制,在多语言代码生成上比基线提升13个百分点,验证了跨语言知识迁移价值。
2026-10-20 cs.SE
Test-Driven Approaches to Software Engineering with Large Language Models: A Survey of Phases, Tasks, and Agent Skills
Chengdu Institute of Computer Applications, Chinese Academy of Sciences(中国科学院成都计算机应用研究所);University of Chinese Academy of Sciences(中国科学院大学);Institute of Multidisciplinary Research for Advanced Materials (IMRAM), Tohoku University(东北大学先进材料多学科研究所);Artificial Intelligence Research Institute, Shenzhen University of Advanced Technology(深圳先进技术研究院人工智能研究所)
本综述围绕测试改变何种决策,系统梳理大语言模型与软件工程智能体中测试驱动方法,区分多种测试范式,提出机制分类法并指出研究方向。
2026-09-14 cs.SE
Explainable AI for Pre-Trained Code Models: What Do They Learn? When They Do Not Work?
该研究利用注意力机制这一可解释AI方法,分析CodeBERT和GraphCodeBERT在三类代码下游任务中的学习重点与失效常见模式,并提出缓解挑战的建议。
2023-08-28 cs.SE
Cross-Language Code Search using Static and Dynamic Analyses
随着代码搜索渗透到软件开发中的大多数活动中,代码到代码搜索已经出现,以支持使用代码作为查询并在搜索结果中检索相似的代码。应用程序包括用于重构的重复代码检测、用于程序修复的补丁识别和语言翻译。现有的代码到代码搜索工具依赖于静态相似性方法,例如比较标记和抽象语法树(AST)来近似动态行为,导致精度低。大多数工具不支持跨语言代码到代码搜索,而那些支持的工具依赖于需要标记训练数据的机器学习模型。我们提出了跨语言的代码到代码搜索(COSAL),一种跨语言技术,使用静态和动态分析来识别相似的代码,不需要机器学习模型。基于代码标记相似性、结构相似性和行为相似性,使用非支配排序对代码片段进行排名。我们在43,146个Java和Python文件和55,499个Java文件的两个数据集上对COSAL进行了经验评估,发现1)与单一或加权度量相比,基于静态和动态相似性度量的非支配排名的代码搜索更有效; 2)与最先进的语言内和跨语言代码到代码搜索工具相比,COSAL具有更好的精确度和召回率。我们探讨了在大型开源存储库上使用COSAL的潜力,并讨论了更多语言和相似性度量的可扩展性,为实用的多语言代码到代码搜索提供了一个网关。
2021-06-16 cs.SE
On the Reliability and Explainability of Language Models for Program Generation
本文实证研究了八个语言模型在五个数据集上的自动化程序生成能力,发现严重数据重复导致性能被高估,并利用可解释AI揭示模型能识别代码语法但对输入变化鲁棒性有限,为提升评估严谨性提供指导。
2024-01-08 cs.SE
Energy-Efficient Code Generation Using Large Language Models: A Systematic Literature Review
Algoma University(阿尔戈马大学);Brandon University(布兰登大学)
本文系统回顾了大语言模型生成代码的可持续性研究,分析了代码效率对环境影响,指出现有研究存在方法分散、缺乏统一评估框架的问题。
2026-09-22 cs.SE