從環境到非同步 RL 的後訓練工具鏈
Modern Post-Training: A Deep Dive — Will Brown, Prime Intellect

Prime Intellect 的 Will Brown 拆解後訓練的完整流程:環境怎麼寫、harness 怎麼接、非同步 RL 怎麼跑到 GLM-5 的規模,以及演算法如何抽成可替換的零件。
這場講了什麼
- evals 是後訓練的入口:Will Brown 認為環境是一種描述「想要模型做什麼」的語言,環境與 evals 本質上是同一件事。先把 evals 做起來,就能判斷哪裡該用 API 模型、哪裡值得自己訓練,而且那套邏輯直接就是後訓練要用的。
- 環境拆成 task set、harness、runtime:verifiers 的 v1 重寫把原本綁在環境裡的迴圈拆開。task set 與 harness 各自獨立,Codex、Claude Code 這類現成的 CLI agent 也能直接當 harness 用。
- 讓 harness 不知道自己在做 RL:interception server 給每次 rollout 一個假的 base URL,攔下請求、確保拿得到 log probs、temperature 設對,再轉給推論伺服器。同一份 harness 程式碼可以在 RL 與實際部署之間來回切換。
- PrimeRL 從一開始就是非同步:推論與訓練是各自獨立的程序,由 orchestrator 管整個 run。Will Brown 說他們在 GLM-5 上用 28 個節點跑一步不到五分鐘,一千步三天跑完,照租用價格約 50K。
- 演算法拆成 loss 與 algorithm:on-policy distillation、self-distillation、Echo 等做法,都能用同一套基礎設施換零件組出來,不必每次都在程式深處多加一個判斷式。
- 託管訓練用 multi-tenant LoRA 起步:多人共用同一份基礎模型權重、各自掛 LoRA,所以能用 token 計價;full fine-tuning 要整張 GPU,幾週內推出。
影片從哪一段開始看18 段
- 00:12自我介紹與主題Will Brown 帶領 Prime Intellect 的 applied research,這場要談後訓練,以及他們完全開源的 verifiers 與 PrimeRL 兩個函式庫。
- 01:47open superintelligence stack從全球資料中心的算力市場,到訓練框架、environments hub、Lab 平台與自家 Intellect 模型系列,都屬於這一套。
- 05:42環境與 evals環境描述資料、情境、互動方式與評分標準,第一個用途就是 evals;Will Brown 說 evals 是通往後訓練的那扇門。
- 07:32後訓練流程與飛輪從 SFT 加 RL 談到 on-policy distillation;要一個模型同時擅長多個領域時,常見做法是先各自訓練 RL 專家,再蒸餾回同一個模型。重點是持續迭代的飛輪。
- 09:37環境拆成 task 與 harness舊的 multi-turn 與 tool 環境把迴圈綁在環境裡,他們一再重複替 CLI agent、MCP 補做法,所以退一步重新設計。
- 12:48verifiers v1 的組成task set、harness、runtime 可以任意組合;task set 與 harness 互不相依,舊做法變成預設 harness。
- 16:13task 的寫法與 reward 函式task 就是資料集的一列,用 decorator、Pydantic 與 toml 設定,rubric 已經拿掉;reward 與 metric 都是吃 rollout 紀錄、回傳數字的函式。
- 18:39群組 reward 與長度壓力開源模型的思考鏈常常長到失控,最佳長度又無法事先知道,所以在同一組樣本裡獎勵最簡潔的正確答案。
- 20:11工具與使用者模擬器工具與使用者模擬器都用 MCP 做後端;模型看到的是使用者而不是工具,背後是一個帶 LLM 的伺服器。
- 21:46interception server 與熱切換給 harness 一個假的 base URL 攔截請求,harness 不必改成 RL 專用;新的 eval CLI 可以自由換 harness 與執行環境。
- 24:08trace graph 與 Rendererstrace 要同時保有訊息層與 token 層,避開重新 tokenize 與 chat template 造成的數值問題;Renderers 是獨立的函式庫。
- 29:20PrimeRL 與 orchestrator推論與訓練是分開的程序、不共用 GPU,orchestrator 負責跑 rollout、打包成 batch 再交給 trainer。
- 31:43GLM-5 的規模與成本28 個節點跑一步不到五分鐘,一千步三天、租用價格約 50K;Will Brown 認為這讓更多企業划得來。
- 33:24為什麼堅持非同步coding agent 的 rollout 長短差很多,非同步讓進度不被最慢的那條拖住,環境與評分的等待也不浪費 GPU。
- 35:02系統優化與 TorchTitan穩定跑到數千步,正往一萬步推;把 FP8、wide expert parallel 等推論手法搬進 RL,router replay 的儲存是難題,底層選好改的 TorchTitan 而不是 Megatron。
- 38:01演算法拆成 loss 與 algorithmrollout 來源、advantage 與 loss 分開,OPD、self-distillation、Echo、GRPO 都能在同一套裡設定,甚至依環境各自指定。
- 42:26託管訓練平台託管版的 PrimeRL,不用管 GPU;環境在 CPU 上開發、推上平台,要改的若只是 reward 就留在環境層,要動演算法再往 trainer 深處走。
- 44:02multi-tenant LoRA 與全參數多人共用一份基礎模型、各自熱切換 LoRA,才能用 token 計價;full fine-tuning 得照 GPU 算,適合大規模 SFT 或 mid-training,幾週內推出。
值得記的話5 句
Environments are a language for specifying what you want your model to do.
環境是一種語言,用來指定你想要模型做什麼05:42evals are the thing that opens the door to post-training.
evals 是打開後訓練那扇門的東西07:01the harness doesn't know that it's doing RL.
harness 不知道自己正在做 RL22:35Jinja is awful. It's very, very painful
Jinja 很糟,非常痛苦。講的是 chat template25:48I think you kind of want to bite the bullet of the off-policy-ness anyways
我認為你終究得硬著頭皮接受 off-policy29:53
名詞與人物11 個
- Prime Intellect
- Will Brown 任職的公司,提供開源的後訓練工具與訓練平台,也自己訓練 Intellect 模型系列
- verifiers
- Prime Intellect 開源的環境函式庫,v1 版把環境拆成 task set、harness、runtime
- PrimeRL
- Prime Intellect 開源的完整訓練框架,從頭就是非同步 RL
- Lab
- Prime Intellect 的研究流程平台,包含 environments hub、託管訓練、評估、推論與 sandboxes
- task set
- 與 agent 無關的資料與規則,Harbor、NemoGym、OpenEnv 這類既有環境都歸在這一類
- harness
- 模型實際運作的外殼,預設是 system prompt 加工具的迴圈,也可以是 Codex、Claude Code 等 CLI agent
- interception server
- 給 harness 一個假 base URL 並攔截請求,讓 harness 不必為 RL 改寫
- Renderers
- Prime Intellect 釋出的獨立函式庫,重新處理 tokenizer 與 chat template;Will Brown 說這種抽象是 OpenAI 隨 gpt-oss 推出的 Harmony 開的頭
- on-policy distillation
- 照 RL 的方式做 rollout,但分數來自老師模型的 log probs 而不是 reward
- router replay
- 大型 MoE 訓練要記錄每層的路由資訊,儲存量是 token 與 log probs 的好幾倍
- multi-tenant LoRA
- 多位使用者共用同一份基礎模型權重、各自掛自己的 LoRA 做訓練與推論
提到但沒有展開
- Echo 的做法:對環境 token 用 cross entropy、對 action token 用 RL 目標,兩個演算法零件在同一次訓練裡混搭。
- 選 TorchTitan 時 Will Brown 強調框架要好改、模組化,同一段也提到維護 PrimeRL 的研究團隊不到 10 人、全公司不到 40 人。
- 談 trace 時 Will Brown 提到,agent 本身會變成有狀態的 API,做完這些才明白 OpenAI 的 Responses 為什麼選擇有狀態。
同一站:路線圖外:做模型28 場
- 從環境到非同步 RL 的後訓練工具鏈你在這裡
- Cursor 怎麼訓練自己的模型017 · Lee Robinson(Cursor, SpaceXAI) · 21 分
- 自動研究 agent 打進競賽排行榜018 · Zhengyao Jiang(Weco) · 16 分
- 基準、kernel 與獎勵作弊022 · Daniel Han(Unsloth) · 140 分
- 資料市場的內幕與下一步044 · Sean Cai(Independent / State of Data) · 18 分
- 放大預訓練時的合成資料與踩雷045 · Marah Abdin & Robert McHardy(poolside) · 18 分
- AlphaLab:把環境當成真正的資產056 · Brendan Rappazzo · 20 分
- 現成 LLM 為何不懂錢062 · Udi Menkes(Intuit) · 20 分
- 讓 AI 自己做 AI 研究的第一步065 · Richard Socher(CEO Recursive AI) · 20 分
- MiniMax M3 開源與推論實戰068 · Dan Fu and Olive Song · 20 分
- 算力吃緊時,先把資料變好070 · Ari Morcos(DatologyAI) · 19 分
- 後訓練的資料與環境整理方法071 · Mahesh Sathiamoorthy(Bespoke Labs) · 19 分
- 把整間軟體公司放進沙盒訓練 agent072 · Joseph Wang · 17 分
- 把主觀領域拆成模型學得會的題目073 · Thais Castello Branco(Taste Labs) · 16 分
- 讓 agent 在現場邊做邊學的後訓練074 · Raymond Feng(Applied Compute) · 18 分
- 沒有標準答案時怎麼做 RL075 · Will Brown(Prime Intellect) · 19 分
- 從 Galactica 走向長視野強化學習076 · Ross Taylor & Chengxi Taylor(General Reasoning) · 18 分
- Base model 不再只是網路知識庫077 · Varun Singh(Arcee AI) · 18 分
- RLHF 之後:從助理走向自動化079 · Diogo Almeida(TypeSafe AI) · 18 分
- 長時程任務的環境與 judge 設計080 · Rayan Garg(Theta Software) · 21 分
- 教模型找出真正的漏洞081 · Prof. David Brumley(Bugcrowd) · 27 分
- 誰有資格站上 AI 前沿100 · Sara Hooker(Adaption) · 21 分
- 用蒸餾把持續學習帶進企業102 · Samuel Denton(Applied Compute) · 19 分
- 智慧不等於專長,持續學習才是橋105 · Yu Su(NeoCognition) · 20 分
- 在自己的資料上加算力109 · Jack Morris(Engram) · 20 分
- 用自我蒸餾把持續學習做大110 · Ronak Malde(Trajectory) · 23 分
- Krea 2 的訓練與推論基礎設施114 · Gabriel Jorge Menezes(Krea.ai) · 17 分
- Krea 2 訓練心得:資料決定一切117 · Sangwu Lee(Krea.ai) · 22 分