2025-2026 年大型語言模型研究中最令人興奮的前沿並不是讓模型變得更大。而是透過強化學習讓它們變得更聰明。DeepSeek-R1 證明了 RL 訓練——特別是 GRPO(群組相對策略最佳化)——可以顯著提升模型的推理能力,實現與更大模型相匹敵的鏈式思考推理、自我修正和結構化問題解決。字節跳動(ByteDance),全球最大的科技公司之一,TikTok 和抖音的創作者,一直在以大規模應用這些相同技術來訓練自己的模型。VeRL 就是這項努力背後的框架。
VeRL (Voltron Reinforcement Learning) 是字節跳動的開源強化學習框架,專門為 LLM 訓練設計。它實作了最先進的 RL 演算法,包括 PPO(近端策略最佳化)和 GRPO,與 vLLM 緊密整合以實現訓練期間的高效推論,並支援在數百個 GPU 上的分散式訓練。VeRL 是驅動字節跳動內部 LLM 開發(包括豆包 AI 助手)的生產框架。
VeRL 的重要性在於它專注於 LLM 的 RL 實際挑戰。使用 RL 訓練 LLM 比監督式微調複雜得多。它需要維護多個模型副本(行動者、參考、獎勵,以及可選的評論家),生成 rollout(要評估的回應),計算獎勵,更新策略權重,並在分散式硬體上編排這一切。VeRL 透過一種清晰分離關注點同時最大化 GPU 利用率的架構來處理這種複雜性。
核心架構
VeRL 的架構將 RL 訓練的三個關鍵階段——rollout 生成、獎勵計算和策略更新——分離為可獨立擴展的元件:
| 元件 | 功能 | 硬體 | 關鍵技術 |
|---|---|---|---|
| Rollout 引擎 | 為訓練提示生成模型回應 | 推理 GPU | vLLM 整合 |
| 獎勵模型 | 對生成的回應評分 | 獎勵 GPU | 任何獎勵模型 |
| 訓練引擎 | 使用 RL 演算法更新策略權重 | 訓練 GPU | PPO / GRPO |
| 排程器 | 編排分散式訓練 | CPU / 控制 | Ray 叢集 |
訓練管線
下圖說明了 VeRL 如何在分散式硬體上編排 RL 訓練循環:
flowchart TD
subgraph Data[資料管線]
Dataset[訓練提示]
Buffer[經驗緩衝區]
end
subgraph Inference[Rollout 生成]
vLLM[vLLM 推理引擎]
Actor[行動者模型<br>要最佳化的策略]
end
subgraph Reward[獎勵計算]
RM[獎勵模型]
PRM[過程獎勵模型<br>可選:逐步]
end
subgraph Training[訓練引擎]
GRPO[GRPO<br>群組相對策略最佳化]
PPO[PPO<br>近端策略最佳化]
Ref[參考模型<br>KL 散度錨點]
end
subgraph Storage[模型權重]
NewWeights[更新後的策略]
OldWeights[當前策略]
end
Dataset --> vLLM
vLLM --> Actor
Actor -->|生成的回應| Buffer
Buffer --> RM
Buffer --> PRM
RM -->|獎勵分數| GRPO
PRM -->|逐步獎勵| GRPO
GRPO --> NewWeights
NewWeights --> Actor
Ref -->|KL 懲罰| GRPO這三個階段——rollout 生成(左)、獎勵計算(中)和策略更新(右)——可以管線化,使得當一批提示正在被評估獎勵時,下一批已經在生成 rollout。這種重疊執行最大化 GPU 利用率並最小化每次訓練迭代的實際時間。
RL 演算法比較
VeRL 實作了多種 RL 演算法,每種適用於不同的訓練目標:
| 演算法 | 獎勵結構 | 需要評論家 | 記憶體 | 最適合 |
|---|---|---|---|---|
| PPO | 絕對獎勵值 | 是 | 較高 | 使用學習獎勵模型的 RLHF |
| GRPO | 群組內相對獎勵 | 否 | 較低 | 推理改進(如 R1) |
| REINFORCE | 直接獎勵訊號 | 否 | 最低 | 簡單偏好最佳化 |
| DPO | 成對偏好 | 否 | 最低 | 直接偏好學習 |
GRPO 在 2025-2026 年已成為突出的演算法,主要是因為它在訓練 DeepSeek-R1 和類似推理模型中的作用。透過對完成群組進行相對評分而非使用絕對標準,GRPO 簡化了訓練並消除了對單獨評論家模型的需求。
分散式訓練比較
VeRL 的分散式訓練能力與其他 RL 框架的比較:
| 功能 | VeRL | TRL | OpenRLHF | DeepSpeed RL |
|---|---|---|---|---|
| vLLM 整合 | 原生 | 無 | 部分 | 無 |
| 張量並行 | 是 | 否 | 是 | 是 |
| 管線並行 | 是 | 否 | 是 | 是 |
| ZeRO 最佳化 | 是 | 是 | 是 | 是 |
| GRPO 支援 | 原生 | 附加 | 附加 | 無 |
| 生產驗證 | 是(字節跳動) | 有限 | 是 | 是 |
開始使用
VeRL GitHub 儲存庫 提供安裝說明、配置指南和範例訓練腳本。該專案支援單節點開發(用於使用較小模型進行測試)和多節點生產部署:
# 安裝 VeRL
pip install verl
# 啟動訓練實驗
python examples/train_ppo.py --model Qwen2.5-7B --algorithm grpo
vLLM 推理引擎 也是 VeRL rollout 生成管線的關鍵依賴。
常見問題
什麼是 VeRL?
VeRL (Voltron Reinforcement Learning) 是字節跳動的開源框架,用於將強化學習應用於大型語言模型訓練。它支援 PPO、GRPO 及其他 RL 演算法,具備分散式訓練能力,並原生整合 vLLM 以實現訓練期間的高效推論。
什麼是 GRPO,為什麼它很重要?
GRPO(群組相對策略最佳化)是一種 RL 演算法,使用群組獎勵比較而非單獨的評論家模型來最佳化 LLM。它簡化了 RL 訓練管線,降低了記憶體需求,並已被證明能提升推理能力——它特別用於訓練 DeepSeek-R1。
VeRL 如何與 vLLM 整合?
VeRL 在 RL 訓練期間使用 vLLM 作為其推論引擎,為 rollout 階段實現高效的 token 生成。這種緊密的整合意味著行動者模型使用 vLLM 最佳化的批次處理和 KV-cache 管理來生成回應,然後 VeRL 計算獎勵並更新模型權重。
VeRL 支援哪些分散式訓練基礎設施?
VeRL 支援多節點訓練,具備張量並行、管線並行和資料並行能力。它與 Ray 整合以進行叢集編排,並支援 FSDP(完全分片資料並行)和 ZeRO-3 以在 GPU 間進行模型分片。
VeRL 在字節跳動的生產環境中使用嗎?
是的。VeRL 是驅動字節跳動內部 LLM 訓練管線的 RL 框架,包括開發豆包(Doubao),字節跳動的旗艦 AI 助手。開源版本反映了生產環境中大規模使用的相同程式碼和架構。
VeRL 可以用於 RLHF 嗎?
是的,VeRL 透過其 PPO 實作支援 RLHF(人類回饋強化學習),也透過 GRPO 支援 RLAIF(AI 回饋強化學習)。該框架設計為可與任何獎勵模型搭配使用,無論是從人類偏好訓練的還是 LLM 生成的回饋。
延伸閱讀
- VeRL GitHub 儲存庫 – 原始碼、文件和訓練範例
- DeepSeek-R1:強化學習用於推理 – 推廣 GRPO 用於 LLM 推理的論文
- vLLM:高通量 LLM 服務 – 與 VeRL 整合的推理引擎
- Ray 分散式運算 – VeRL 使用的叢集編排框架
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!