← 最新论文
💻 computer science

ExecVerify: White-Box RL with Verifiable Stepwise Rewards for Code Execution Reasoning

本文提出了 ExecVerify 框架,通过构建多难度合成数据集并利用可验证的执行轨迹(如语句预测和变量状态)作为白盒奖励进行强化学习,显著提升了小模型(如 7B)的代码执行推理与生成能力,使其性能媲美更大的模型。

原作者: Lingxiao Tang, He Ye, Zhaoyang Chu, Muyang Ye, Zhongxin Liu, Xiaoxue Ren, Lingfeng Bao

发布于 2026-03-13
📖 1 分钟阅读☕ 轻松阅读

原作者: Lingxiao Tang, He Ye, Zhaoyang Chu, Muyang Ye, Zhongxin Liu, Xiaoxue Ren, Lingfeng Bao

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

这篇论文介绍了一个名为 ExecVerify 的新方法,旨在教人工智能(AI)如何更聪明地“思考”代码,而不仅仅是死记硬背代码的样子。

为了让你更容易理解,我们可以把写代码和运行代码想象成**“做一道复杂的数学题”或者“指挥一个机器人跳舞”**。

1. 现在的 AI 遇到了什么麻烦?(旧方法:SFT)

以前的训练方法(叫 SFT,监督微调)有点像**“死记硬背标准答案”**。

  • 场景:老师(人类专家)给 AI 看一道题,然后直接告诉它:“第一步这样做,第二步那样做,最后答案是 42。”
  • 问题:AI 为了拿高分,它学会了模仿老师的语言。它可能会背下“第一步把苹果切开”这句话,但它其实并不理解为什么切开后苹果会变成两半,也不关心切的时候手会不会滑。
  • 后果:一旦题目稍微变一下(比如把苹果换成梨,或者切法稍微变一点),AI 就会因为“没真正理解过程”而胡编乱造(产生幻觉),因为它只是在背课文,没懂逻辑。

2. ExecVerify 是怎么做的?(新方法:白盒强化学习)

作者给 AI 换了一种训练方式,叫 ExecVerify。我们可以把它想象成**“带监控的实战演练”**。

核心概念一:白盒(White-Box)

以前的训练是“黑盒”:只看输入(题目)和输出(答案),中间过程是看不见的。
ExecVerify 是“白盒”:它给 AI 戴上了**“透视眼镜”**。在 AI 思考代码的过程中,它能看到每一步发生了什么:

  • 变量 result 现在是多少?
  • 下一个执行的代码行是哪一行?
  • 循环有没有转错圈?

核心概念二:步步为营的奖励(Stepwise Rewards)

以前的训练是“只看结果”:最后答案对了才给糖吃。
ExecVerify 是“步步为营”

  • 如果 AI 能准确说出“第 3 行代码执行后,变量 x 变成了 5",立刻给奖励
  • 如果它猜错了中间步骤,立刻扣分
  • 这就像教小孩学骑车:以前是等骑到终点才给奖励;现在是每蹬对一圈踏板、每保持住一次平衡,教练就立刻鼓掌。这样 AI 就学会了真正的控制感,而不是只盯着终点。

核心概念三:难度分级(Constraint-Based Synthesis)

作者发现以前的训练数据太乱了,有的太简单(像 1+1=2),有的太难(像让 AI 造火箭)。
他们像**“游戏设计师”一样,专门设计了一套“闯关地图”**:

  • 先让 AI 练简单的(只用一个函数)。
  • 再练中等难度的(嵌套循环)。
  • 最后练高难度的(多层嵌套)。
  • 并且,他们自动生成了大量这种题目,确保每一题都是**“有挑战但能解出来”**的,既不会让 AI 觉得无聊,也不会让它直接放弃。

3. 训练流程:两步走(Two-Stage)

这个方法分两个阶段,就像**“先练内功,再练招式”**:

  • 第一阶段(练内功 - 代码推理)
    让 AI 在“透视眼镜”下,专门练习**“模拟代码运行”**。它不需要写新代码,而是回答:“如果运行到这行,变量是多少?”、“下一步会跳到哪?”

    • 比喻:就像让一个演员在没上台前,先在脑海里把整场戏的每一个动作、每一句台词的走位都精准地排练一遍,确保逻辑通顺。
  • 第二阶段(练招式 - 代码生成)
    当 AI 已经能精准模拟代码运行后,再让它去写代码

    • 比喻:这时候它去写代码,就像是一个**“懂行情的导演”**。因为它脑子里已经模拟过无数遍代码是怎么跑的,所以它写出来的代码逻辑严密,不容易出错。

4. 效果怎么样?

实验结果非常惊人:

  • 以小博大:一个只有 70 亿参数(相当于中等身材)的 AI,用了这个方法后,在“代码推理”测试中,表现竟然能媲美 320 亿参数(相当于大胖子)的顶级 AI。
  • 举一反三:它不仅推理变强了,写代码的能力也提升了(通过率提高了近 6%)。
  • 跨语言:虽然主要用 Python 训练,但它学会的“逻辑推理能力”还能迁移到 Java、C++ 等其他语言上。

总结

简单来说,ExecVerify 就是不再让 AI 当**“背书机器”,而是把它培养成“代码侦探”**。

通过给它戴上“透视眼镜”(白盒),让它对每一步操作都进行“实时验尸”(验证中间状态),并设计一套“循序渐进的闯关游戏”(约束合成数据),AI 终于学会了真正理解代码是如何运行的。这就解释了为什么它现在能写出逻辑更严密、更不容易出错的代码。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →