Prime Intellect 釋出 prime-rl 0.6.0,用於訓練萬億引數 MoE 模型的智慧體強化學習任務
Prime Intellect 釋出了 prime-rl 0.6.0,這是一個用於萬億引數混合專家(MoE)模型非同步強化學習的開源框架。該框架在 SWE 任務上訓練了 GLM-5,序列長度高達 131k,步時低於 5 分鐘,使用 256 次 rollout 和 28 個 H200 節點。本文詳細介紹了其推理和訓練最佳化,包括 FP8 推理、寬專家並行、預填充/解碼分離、路由器重放以及 3D 並行(FSDP、EP、CP)。
Prime Intellect 釋出了 prime-rl 版本 0.6.0,這是一個用於萬億引數混合專家(MoE)模型強化學習的開源框架。該框架專注於處理重智慧體工作負載,例如長週期軟體工程任務。研究團隊在 SWE 任務上訓練了 GLM-5 模型,序列長度高達 131k,步時保持在 5 分鐘以內,批次大小為 256 次 rollout,僅使用了 28 個 H200 節點。
關鍵特性 prime-rl 0.6.0 的核心能力在於非同步強化學習,它將訓練器和推理系統分離,使兩者可以獨立執行和擴充套件。在智慧體任務中,某些編碼 rollout 可能持續數小時,非同步 RL 避免了在每次策略更新前等待所有 rollout 完成,從而避免 GPU 空閒。唯一的同步點是策略更新:一旦最佳化器步驟完成,prime-rl 立即推送新權重。已分派的 rollout 保留其活動字首快取,因此單個 rollout 可能混合來自多個策略版本的令牌。
推理最佳化 推理通常是 RL 系統的吞吐瓶頸。prime-rl 透過多種最佳化提升吞吐量,同時保持延遲可控。
- FP8 推理:使用 DeepEP 和 DeepGEMM 核心降低預填充和解碼的計算精度。
- 寬專家並行(Wide EP):將專家分佈在 32 個或更多 GPU 上,每個 GPU 持有獨立的專家並作為端點,透過排程和組合操作進行同步。
- 預填充/解碼分離(P/D 分離):當預填充與解碼令牌比例達到 4:1 時,分離工作負載避免端到端延遲膨脹。
- KV 快取管理:支援分層的 CPU 和磁碟解除安裝,使用 vLLM 原生解除安裝或 Mooncake Store 集中池化。
- 請求路由:預設使用 vllm-router 分支,也可插入 NVIDIA Dynamo 路由器,根據 KV 快取重用率、佇列深度和即時負載評分。
- 路由器重放(R3):捕捉推理路由決策並直接重放於訓練器,將 KL 偏差降低約一個數量級。
訓練最佳化 訓練器基於 torchtitan,採用 3D 並行:FSDP、上下文並行(CP)和專家並行(EP)。對於 GLM-5 案例,所有三種策略均被使用。
- FSDP2:按層按需收集權重,分攤記憶體。
- 專家並行:透過 all2all 排程和組合(torch-native 或 DeepEP)縮小活動層記憶體。
- 上下文並行:處理長上下文啟用記憶體,預設使用 Ulysses 或 Ring Attention。對於 GLM-5 使用的 DSA,prime-rl 提供了自定義上下文並行實現。
- FP8 訓練:使用 DeepGEMM 塊縮放 FP8,匹配訓練器和推理精度,減少 KL 不匹配並穩定訓練。
應用場景
- 長週期 SWE 智慧體:訓練模型處理真實倉庫問題,rollout 可包含數百輪和工具呼叫。P/D 分離保持解碼延遲可預測。
- 在更少節點上進行萬億引數級後訓練:GLM-5 僅用 28 個 H200 節點執行,寬 EP 和 KV 解除安裝提高了併發和吞吐。
- 大規模穩定智慧體 RL:路由器重放和 FP8 訓練共同降低訓練器-推理器的 KL 不匹配,實現更穩定的訓練。
更多技術細節請查閱原文。