跳到正文
Prime Intellect Blog·· 23 小时前精选AI 评分68

Prime Intellect 发布 prime-rl 0.10.0 与 verifiers 0.4.0

prime-rl 0.10.0: faster training, our new RL loss IPO, and one unified eval stack

AI 导读

Prime Intellect 发布 prime-rl 0.10.0 和 verifiers 0.4.0,新增面向异步 RL 稳定性的默认损失函数 IPO,并带来训练吞吐提升和新模型支持。

推荐理由

原文给出训练吞吐对比、新 RL 损失 IPO 的动机与消融结果,可据此判断异步 RL 稳定性方案的选择。

正文 · AI 翻译

prime-rl 0.10.0:更快的训练、我们的新 RL 损失 IPO,以及统一评测栈

今天我们发布 prime-rl v0.10.0 和 verifiers v0.4.0。我们将新的 RL 算法 IPO 设为默认,专为异步 RL 稳定性而设计,同时带来了性能改进和新模型支持。


训练吞吐

训练器的默认配置偏向节省内存,因此大模型可以放在少量 GPU 上。本次发布也记录了另一端:一个 最大吞吐配方,它把所有内容都保留在 GPU 上,并用 fullgraph 编译。

Qwen3-235B-A22B SFT 对比 torchtitan。两次运行背靠背使用相同节点:4 × 8 B300、16k 序列长度、FSDP + EP 8、完整激活检查点、fp32 AdamW、均衡路由。

运行s/steptokens/s/GPUMFU峰值内存
torchtitan5.04325340.7%144 GiB
prime-rl4.39373246.6%141 GiB

在相同设置下快了 1.15 倍。用 uv run sft @ examples/advanced/qwen3-235b-a22b/sft-max-perf.toml 复现。

大部分收益来自 MoE 工作:

  • 一个 MoE 运行时和检查点布局现在服务于所有模型。
  • Gate/up 和 QKV 投影在运行时融合。
  • MoE 块用 fullgraph 编译。
  • torchtitan 风格的分块损失。
  • SonicMoE BF16 后端,以及按层选择 MoE 计算。

GLM-5.3。稀疏注意力现在前向传播使用 FlashMLA(在 H200 上比 TileLang 快 1.9–3.6 倍),反向传播使用 cuDNN(快 3–4.7 倍)。结合 12 节点、16k 配方(无上下文并行或卸载),完整 GLM-5.3 SFT(78 层、H200、假数据)改进如下:

设置节点tokens/s/GPUMFU
之前:CP 2 + 卸载,TileLang846522.3%
12 节点配方,TileLang1270133.6%
12 节点配方,cuDNN + FlashMLA1283540.1%

在真实权重和数据上,一步从 31.2 秒降至 24.2 秒。在 RL 中,8 层代理每步从约 16 秒降至约 12.5 秒。

DeepSeek V4 Flash 获得这些自定义内核:

  • 一个 flash 风格稀疏注意力内核:在真实数据上 MFU 从 46.7% → 53.6%。
  • Lightning Indexer 用融合 FP8 内核评分,CP gather 与计算重叠:MFU 从 40.2% → 47.8%。
  • 一个融合 mHC 链。
  • 一个融合 RoPE 内核,与 vLLM 逐位匹配,并在 B300 上使 SFT 步骤快 13–14%。

IPO:INTELLECT Policy Optimization

在异步 RL 中,训练器和推理引擎对 token 概率永远无法完全一致。自 rollout 采样以来策略已经变化,且内核不同。通常的修复 IcePop 会在比率 πtrain/πinfer 离开固定区间时屏蔽 token。IPO 则是在概率本身变化过大时屏蔽 token:

∣πtrain(yt)−πinfer(yt)∣>ϵ

比率会误判分布的两端。一个稀有 token 从 0.01 变为 0.06 是 6 倍比率并被屏蔽,尽管几乎没变。一个高概率 token 从 0.90 降至 0.20 是 0.22 倍比率并被保留,尽管策略变化很大。IPO 掩码是双侧的,忽略优势的符号,且只有一个旋钮。概率差准则来自 DPPO (Qi et al., 2026),它将其用于策略更新之间的 PPO 信任域。IPO 将其应用于训练器–推理不匹配,且与 DPPO 不同,其掩码不依赖于优势的符号。IPO 取代了我们之前基于 DPPO 的默认损失,该损失在此版本中移除。

我们在 GLM-4.5-Air 上对 agentic SWE RL 做了消融实验,未使用 router replay,且最多 64 步 off-policy。这是一个刻意设置的极端场景:在大多数运行中 IcePop 是稳定的。但在这里,IcePop 在约 1.2k 步时崩溃,当时 trainer–inference KL 暴涨了 20 倍以上。在 eps 为 0.2 和 0.3 时,IPO 一路训练到底。在 eps = 0.3 时,IPO 仅屏蔽约 0.25% 的 token,而旧的 0.1 设置下约为 2%。

IPO vs IcePop on GLM-4.5-Air SWE RL
GLM-4.5-Air SWE RL 上的 IPO 与 IcePop 对比

使用 eps = 0.3 且不含 KL 项的 IPO 现已成为默认配置。IcePop、PPO 和 CISPO 仍作为可选损失提供。GRPO 也新增了两个选项:长度加权基线,以及精确的 prompt 均值损失聚合,后者可避免长轨迹的 prompt 主导梯度。完整设置和复现配置见 docs/ipo.md。

本次发布中的其他 RL 变更:

  • Top-p 和 top-k 采样现在会在 trainer 中精确重放,使用从 vLLM 捕获的采样掩码。
  • trainer 的 batch 保持恒定大小:orchestrator 会回填被过滤掉的样本。
  • RL 默认冻结 MoE router,从而避免 trainer 的专家选择偏离推理时采样的专家选择。

新模型

prime-rl 中的每个架构现在都运行在我们自己的优化实现上。本次发布新增:

  • DeepSeek V4 Flash,包含上述内核以及 ring context parallelism。
  • Qwen3.8 Flash Next, with:
    • 按词表行跨数据并行 rank 分片的 n-gram(engram)嵌入
    • indexed sparse attention
    • Gated DeltaNet
    • hyper-connection residuals
    • sigmoid-gated MoE
  • Nemotron-H(Nano 和 Super),在打包文档边界处重置 Mamba-2 状态,并支持 Ulysses context parallelism。
  • 来自内联 rollout 的多模态 RL。 图像在 rollout、打包和传输过程中保持内联,而不是以像素张量形式传输。vLLM 返回扩展后的 prompt ID 和图像占位符范围,因此每个图像 token 在训练中都能精确对齐。支持 Qwen-VL 和 Kimi K2.5。

统一 eval 栈

eval CLI 已从 verifiers 迁移到 prime-rl。uv run eval 可在任意环境上评估任意模型,既可独立运行,也可作为训练运行的在线 eval:

  • 它通过 verifiers env servers 运行,并具有自适应并发。
  • 它会显示在本地 dashboard 中。
  • 它接受多个 [[source]] 块。
  • --resume 会从其 trace stream 继续中断的运行,并且只重新运行缺失的 rollout。

每个 train 和 eval 源都有一个 select 块(include/exclude、shuffle、skip、limit)。它由 verifiers 的共享任务选择支持,因此 prime-rl 和 vf-eval 会为相同配置选择相同的任务。超时的 rollout 现在有独立的结果:在 eval 中计分,并被排除在训练 batch 之外。

uv run eval gsm8k
uv run eval @ sources.toml --env.retries.max-retries 3

verifiers 0.4.0

prime-rl 0.10.0 随附 verifiers 0.4.0,完成了向 v1 的迁移:旧版 v0 栈已移除,CLI 现在为 vf-*。详情见 verifiers 发布说明。


致谢

感谢所有为这些发布做出贡献的人,并欢迎新的 prime-rl 贡献者:@parkerpettit、@yafshar、@kcoopermiller、@biswapanda、@Alex-Shan、@cabrinha、@nxphi47、@akirillo、@Apocrathia、@artzhuravel 和 @skpulipaka26。

立即试用:prime-rl 0.10.0 和 verifiers 0.4.0。

来源:Prime Intellect Blog · primeintellect.ai