Oossa

研究发现,大语言模型代码验证仍有明显漏洞

一篇 arXiv 论文将验证器是否接受代码、证明是否绑定规范,以及代码在实际测试中是否正确分开考察,发现三个代码基准上的结果差距显著。

简讯作者: Oossa 发布日期: 1 分钟阅读

11月5日发布在 arXiv 上的一篇论文,探讨了大语言模型生成的代码究竟在何种意义上算是“经过验证”。论文将检查分为三个方面:验证器是否接受代码、证明是否与规范绑定,以及该规范是否反映了原始需求。

作者报告称,在一项测试中,HumanEval 上有 99.1% 的代码通过验证器检查,但只有 1.9% 的样本带有与规范所定义谓词或函数绑定的证书。在另一套旨在确保这种绑定关系的 Rust 流程中,经过结构验证的 MBPP-Rust 样本仍有 11.48% 未通过隐藏测试;VeriContest 子集上的这一比例为 14.82%。

为什么重要

对于使用证明检查来评估生成代码的团队而言,这些结果表明,仅凭验证器接受代码,未必能证明代码与需求存在有意义的联系,也无法保证其能通过隐藏测试。

这篇文章有帮助吗?
分享

继续阅读

Oossa · 新闻简报

一周 AI,讲明白

每周一,用通俗的语言讲清值得知道的新闻。免费,无垃圾邮件。