利用双向翻译评估大型语言模型的潜在自动化程序修复能力
《ACM Transactions on Software Engineering and Methodology》:Assessing the Latent Automated Program Repair Capabilities of Large Language Models using Round-Trip Translation
【字体:
大
中
小
】
时间:2025年11月08日
来源:ACM Transactions on Software Engineering and Methodology
编辑推荐:
自动程序修复(APR)中应用代码英译日译(RTT)技术,通过大语言模型(LLMs)修复漏洞。研究发现RTT能修复100/164个漏洞(GPT-4在HumanEval-Java上),其中97个手动验证正确,并发现46个LLMs未修复的案例。虽然RTT作为辅助工具有效,但存在修复率低于SOTA和代码风格稀释的问题。
摘要
研究表明,通过使用语言模型将文本翻译成另一种语言再翻译回来,可以纠正自然语言中的错误。我们探讨了这种潜在的纠错能力在自动程序修复(APR)中的适用程度,具体方法是研究往返翻译(RTT):利用大型语言模型(LLMs)将代码从一种编程语言翻译成另一种编程语言或自然语言,然后再翻译回来。我们假设RTT通过“回归均值”的机制恢复了LLM训练语料库中最常见的代码模式,用更常见、更“自然”的无错误代码替换那些罕见的错误。为了验证这一假设,我们使用了九种LLMs和四个常见的Java APR基准测试,并对RTT生成的补丁进行了详细的定量和定性分析。在HumanEval-Java基准测试中,GPT-4通过RTT为164个错误中的100个生成了合理的补丁,经我们手动评估后,其中97个补丁是正确的。此外,RTT还为46个被专门为APR微调的LLMs遗漏的错误生成了合理的补丁。虽然这证明了RTT在APR中的可行性,但我们也观察到了一些局限性,比如整体的错误修复率低于现有技术水平,以及补丁可能会稀释原始的编码风格。我们分析了这些局限性的影响,并讨论了将RTT作为APR框架中补充组件的潜力。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号