论文阅读-自动程序修复-Automated Repair of Programs from Large Language Models

一 文章主旨:

研究了Codex自动生成的程序中的错误,并探讨了现有的程序修复(APR)工具以及新发布的Codex-e是否能够修复由大型语言模型生成的有缺陷的程序(Codex-e作为APR工具的潜力)。

现在基于大语言模型,输入自然语言,生成代码的应用非常普遍。但是生成的代码正确率很低,因为这些模型缺乏对任务描述和程序语义的深入理解。文章以GPT-3模型的后代-Codex模型,为例,试图利用自动化程序修复(APR)技术来修复Codex产生的代码错误。

自动化修复技术接受一个有缺陷的程序和一个正确性规范,通过稍稍修改程序使其满足给定的规范来生成一个固定的程序。典型的修复工具通过推理程序语义与给定的规范来生成补丁。例如,基于语义的修复工具(如SemFix、Angelix)通过使用符号执行和基于搜索的修复工具(如Gen-Prog、TBar)在预定义的补丁中搜索正确的补丁。

二 本文贡献:

(1)自动生成的代码与人工编写的解决方案存在相同的编程错误,表明自动化程序修复技术有潜力修复自动生成的代码。

(2)发现新发布的Codex编辑模式在修复错误解决方案方面与现有的Java修复工具TBar和Recoder相似或更好。

(3)作者提出了几点建议:包括增强自动化程序修复工具的修补空间、将重点从添加更多修复模式转向综合/语义为基础的方法,研究将语言模型与自动化程序修复相结合的可能性。

本文实验方向:

作者使用公共测试用例来指导修复,并使用私有测试用例来验证修复结果。

本文探讨了两个方向来修复语言模型生成的代码的错误

1.现有的APR技术(TBar和Recoder)

2.研究探讨了使用Codex-e作为自动化程序修复工具的可能性。

「利用OpenAI最近发布的Codex编辑模式(这个新功能可以使现有的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值