零失配,简单的异步强化学习:REINFORCE Zero、DeepSeek-V4.1 和 Kimi K3.1

基于内核对齐的异步强化学习

异步强化学习 (RL) 通过允许采样 (rollout) 和学习 (learner) 进程并发运行,提供了显著的速度优势,但传统上会受到权重滞后 (weight lag) 和内核失配 (kernel mismatch) 的困扰。vLLM 团队与 NVIDIA Research 和 Inferact 合作,推出了 REINFORCE Zero,这是一种通过消除内核失配来稳定异步强化学习的方法。通过确保采样和训练过程对相同的权重和 token 计算出完全一致的对数概率 (logprobs),剩余的权重滞后可以使用简单的、无截断的重要性采样 (IS) 进行修正,而无需复杂的拒绝门或截断机制。

对数概率差距的两个来源

采样和学习过程之间的对数概率差距由两个不同的部分组成:

  1. 权重滞后 (Weight Lag): 这是因为学习器在旧模型版本生成的样本上进行更新。这种差距随时间平滑变化,可以通过重要性采样有效管理。
  2. 内核失配 (Kernel Mismatch): 当采样和训练由于批次组成或执行方式的差异而对相同权重计算出不同的数值结果时,就会产生这种失配。与权重滞后不同,这种失配波动剧烈且在 IS 存在的情况下依然持续,导致训练不稳定。

通过对齐内核,内核失配项被降为零。这使得无截断的 IS 即使在高策略滞后(例如滞后 64,即样本可能由比学习器当前状态旧 64 个版本的权重生成)下也能保持训练稳定。

REINFORCE Zero 方法论

REINFORCE Zero 将强化学习训练循环简化为三个核心步骤:

  • 内核对齐 (Kernel Alignment): 确保采样引擎和学习器对相同的输入产生逐位 (bit-for-bit) 一致的对数概率。
  • 无截断 Token 级 IS: 直接使用学习器概率与采样概率的比率作为权重,无需截断或过滤。
  • 纯 REINFORCE 优化: 基于一组样本的平均奖励计算优势,并对响应中的 token 进行平均,无需额外的价值模型或拒绝门。

该方法在 20,000 次更新中表现出稳定性,并实现了同步训练(带对齐内核)2.40 倍的训练步吞吐量。

对旗舰模型的支持

零失配强化学习已扩展至支持各大旗舰模型,确保了采样和训练之间的逐位一致性:

  • DeepSeek-V4.1-Flash: 在发布精度下实现了零失配,包括对 FP8、MXFP4 和滑动窗口注意力的支持。采样步骤保持在快速基准的 10% 以内。
  • Kimi K3.1: 在首日实现了零失配,包括对 KDA 线性注意力和 LoRA 适配器的支持。

跨平台实现:AMD MI355X

零失配与架构无关。在 AMD MI355X 硬件上,团队通过解决 hipBLASLt 等库中的批次不变性问题并优化专家并行操作,实现了逐位一致性。对于 DeepSeek-V4-Flash,这些优化显著降低了服务吞吐量损失;对于 Kimi K3.1,它们实现了在多个节点上使用 LoRA 适配器进行高效的强化学习训练。

所有配方、修复和实现细节均可在 Inferact/zero-mismatch-rl 仓库中找到,REINFORCE Zero 的论文和代码托管在 hijkzzz/REINFORCE-Zero。

Sources