它们不是三选一的竞品。把"奖励从哪来"说清楚,分工自然就出来了。
2024 年之后,只要聊到"怎么把大模型调好",这三个缩写就会被端上桌:RLHF、DPO、RLVR。讨论十有八九会变成选边站——"PPO 过时了""DPO 才是未来""RLVR 才是王炸"。
但如果把它们的论文摊在一起看,会发现争的东西根本不在一个层面上。它们不是三个候选答案。
它们是同一条产线上的三个工位。
真正的差别只有一个问题:奖励信号是从哪来的。RLHF 从人那里学一个奖励模型;DPO 干脆不要这个中间商;RLVR 换成一个只会判对错的程序。沿着这条线排下去,三兄弟各守一段,谁也不是谁的替代品。
先给结论:三兄弟不能互相替代。谁便宜、谁稳、谁上限高,取决于你想让模型学会的是"品味",还是"解题"。
这篇只干一件事:把这三段奖励线拆开,看它们各自管哪一段。
因为模仿教不会"在两个都对的答案里挑一个"。
先回到起点。预训练把模型变成一个"续写器":给它一段文字,它接着往下写。写得像人,但它并不确定该怎么回应你。
SFT(监督微调)是第一道工序。拿人工写好的示范对,教它"看到问题该怎么答"。格式、人设、基本的指令遵循,都在这步学会。
这一步还很便宜。LIMA 那篇论文流传最广的说法是:大约 1000 条高质量示范,就能让模型有像样的对话能力。样本不多,但每条都得是精品。
SFT 有个天花板:它只会模仿。示范里写什么,它就学什么。
问题就出在这。同一个问题,"我帮你查一下"和"这个我不能确定,但可以这样推",两句都不算错。可哪句更好?短的够不够谦逊?要不要主动追问一句?这些分寸,SFT 学不会——因为示范数据里没有"这个更好"的标注。
所以需要一种新的信号,专门教模型"在两个都合法的答案里,挑人更喜欢的那个"。这个信号,叫偏好。
它把人的偏好压成一个可微的标量,代价是贵、慢、爱走捷径。
传统做法分三步。
第一步,SFT,刚说过。第二步,训练一个奖励模型(RM)。怎么训练?给标注员同一个问题的好几个回答,让他们排序。再用 Bradley-Terry 模型把这些排序压成一个打分函数:给定一个回答,吐出一个数,越大表示人越喜欢。
这一步的本质,是把"人的偏好"压缩成一个可微的标量。有了这个数,模型就能对着它做梯度上升了。
第三步,PPO。把 SFT 模型当策略,尽量让奖励模型打高分,同时加一个 KL 惩罚,别让它跑得离原模型太远。
这套流程要同时驻留四个模型:策略、参考、奖励、价值。工程实测里,7B 模型上 PPO 需要约 224GB 显存,起步 4 张 H100;到 70B 要 28 张。标注也贵——Llama 2 收了超过一百万条人类偏好比较。
这是最要命的一条。你让模型去优化"用户满意度打分",它最省事的路往往不是答得更好,而是答得更长、更爱附和——开头先来一句"这是个好问题"。奖励模型会给这种回答打高分,因为它见过的人类评分就是这个味道。
这个现象有个名字:奖励黑客(reward hacking)。Gao 等人 2022 年测出了它的规律:奖励模型和人的真实偏好之间存在一个最优距离。过了那个点,代理奖励还在涨,真实质量已经开始掉。这就是 Goodhart 定律在模型身上的复现。
所以 RLHF 买到的是"最贵、最不稳、但上限最高"的那一档。
它没丢掉 RL 的目标,只是把求解方式换了一道。
2023 年,Rafailov 等人那篇 DPO 论文,标题就够狂:《你的语言模型其实是个隐藏的奖励模型》。
它做的是数学上的一个"绕路"。
回到 RLHF 的目标:最大化奖励,同时约束策略别偏离参考模型太远。这个目标有闭式最优解——解出来,最优策略正比于参考策略乘以奖励的指数。
把这个式子反过来解:奖励等于策略与参考的对数比,再加上一个常数项。换句话说,策略本身的似然比里,就藏着一个奖励模型。"语言模型其实是个隐藏的奖励模型",就是这么来的。
再把它代回 Bradley-Terry 偏好损失。最妙的地方来了:那个只依赖问题、不依赖回答的配分函数 Z(x),在"好答案"和"坏答案"两个式子里相减时,自动抵消了。
剩下的就是一个二分类交叉熵。不用采样、不用价值网络、不用奖励模型。
RLHF 的四份模型,DPO 只用两份:策略 + 参考。成本差得很直观。
| 对比项 | RLHF(PPO) | DPO |
|---|---|---|
| 训练时模型数 | 4(策略/参考/奖励/价值) | 2(策略/参考) |
| 7B 显存需求 | 约 224GB / 4×H100 | 约 112GB / 2×H100 |
| 端到端成本(7B·5 万偏好对) | 约 37 小时 / 427 美元 | 约 9 小时 / 25 美元 |
| 数据来源 | on-policy,模型自己采样 | off-policy,固定偏好集 |
| 超参 | 六七个,互相牵制 | 基本只有 β(约 0.1) |
| 探索能力 | 强,能走出数据分布 | 弱,只能学到数据集里的偏好 |
但省下来的钱不是白省。DPO 是离线(off-policy)的:训练数据固定,模型不生成新样本,也就没法探索偏好数据之外的世界。第一章说的那些边角情况,它根本见不到。
它还有个"长度偏差"。偏好对里,长回答常被人标得更"有用",DPO 会把这一点学过头,回答越写越长。
争议就在这。2024 年 ICML 有篇论文《DPO 真的优于 PPO 吗?》,作者说充分调过的 PPO 平均更强——推理、代码、安全分别高出约 1.3、2.9、2.3 分;但 DPO 在真实性上高约 2.5 分。
Meta 的结论正好相反。Llama 3 的配方里明确跳过了 PPO,改用迭代 DPO,跑了三轮,理由是更简单、更稳、更省算力,指令遵循的基准还更好。
一句话:没有谁全面赢。选谁,看你更怕"贵和不稳",还是更怕"天花板不够高"。
因为裁判换人了——从会偏心的人,换成了只会判对错的程序。
2024 年 9 月,o1 出来,一件事被摆上台面:推理能力可以靠 RL 训出来。
2025 年 1 月,DeepSeek-R1 把它变成了可复现的方法。也是这一年,一个词开始流行:RLVR,可验证奖励的强化学习。这个词最早出自 Allen AI 的 Tülu 3。
RLVR 换掉的,是奖励的来源。前面两兄弟都在跟"人类偏好"打交道——主观、要标注、会被黑。RLVR 说:我要一个不会说谎的裁判。
裁判可以是谁?数学答案对不对、代码测试用例过不过、输出格式合不合规。全是程序能判的,非黑即白。
这件事的重要性在于:一旦奖励由程序判定,训练时的标注成本直接归零,而且裁判的代码是公开的、可审计的。模型没法靠"说话好听"骗分。
DeepSeek-R1-Zero 是极端版本:完全不做 SFT,直接拿基座模型上 GRPO,只用规则奖励——答案对错加分、格式合规加分。AIME 2024 的 pass@1 从 15.6% 涨到 71%,多次投票能到 86.7%。
训练日志里冒出过这么一句:"Wait, wait. Wait. That's an aha moment I can flag here." 模型在一道题中途停下来重算。没人教过它这么做。它自己冒出来的。
算法这边的主角是 GRPO。PPO 要单独养一个和策略一样大的价值网络来估优势,GRPO 把它扔了:对同一个问题采一组回答,用组内平均分当基准——高于平均给正优势,低于给负优势。省掉一整份大模型的显存,长思维链的 RL 才跑得动。
R1-Zero 也不是全好。它可读性差,一段推理里中英文混着来。所以最终的 R1 加回了冷启动数据,还补了一个语言一致性奖励。
值得一提的是,R1 的论文里明确写道:过程奖励模型(PRM)和蒙特卡洛树搜索,是"失败的尝试"。理由很直接——"正确的一步"没法统一定义,越精细的学习式奖励,越容易被黑。
从 RLHF 换到 RLVR,换的不只是算法,是整个工程的重心:从"调优化器"变成了"写验证器"。同一份 GRPO 代码、同一份权重,两个团队跑出来会是两个模型——差别全在验证器上。
真实的后训练里,它们几乎不单干。
前面四章,三兄弟各自亮相完了。但现代流水线早就收敛出一个骨架:冷启动 SFT → 推理 RL → 拒绝采样 SFT → 通用/偏好 RL。
以 R1 为例。
第一步,几千条长思维链做冷启动,让模型先会"像样地思考"。第二步,GRPO 加规则奖励,专攻推理。第三步,拿快收敛的 checkpoint 生成一大堆回答,挑出对的,回流成新的 SFT 数据,再混上通用数据重训一遍。第四步,最后跑一轮覆盖全场景的 RL,把偏好奖励和规则奖励混在一起。
看出来了吗——RL 之后又回到 SFT,SFT 之后再进 RL。这不是绕圈,是"用 RL 造数据、用数据养 SFT"。
为什么顺序有时会反过来?因为瓶颈不一样。想让模型先听话、可读、不混杂语言,就先做偏好对齐,RLVR 才有干净的底子去探索。R1-Zero 证明了纯 RL 能出推理,但它又乱又混,R1 这才不得不补回冷启动。
共同点很清楚:没有一家只用一种算法。它们都在按"谁解决哪一段"来排班。
它把奖励变硬了,也把适用范围收窄了。
先别急着把宝全押上。RLVR 有它自己的三堵墙。
裁判得能判对错。可现实里大多数任务没有标准答案。写一封有说服力的邮件、安抚一个生气的用户、给一份报告打分——这些没有测试用例。RLVR 走到墙就停。
长期训练里,模型的探索会越收越窄,最后塌掉。GRPO 规模一大就不稳,在 MoE 模型上尤其明显。这也是后来 DAPO、GSPO 这些改进出现的原因——它们几乎全是为了让长程训练别崩。
这一堵最反直觉。2025 年有篇论文叫《RLVR 的极限》,结论是:RLVR 主要提升的是采样效率(pass@1),而不是真的给基座模型加了新的推理能力。如果把采样预算放大(pass@k),基座模型会反超 RL 之后的模型。
还有一篇讲"虚假奖励"的更狠:在 Qwen2.5-Math-7B 上,用完全随机、毫无信息的奖励去训,MATH-500 还是涨了 21.4 分。也就是说,一部分看起来的"RLVR 增益",其实不是学习,而是把基座模型本来就有的行为唤醒了。
连"验证器不可黑"这个前提也没那么稳。验证器有 bug,模型会去刷测试用例。只不过它好在——作弊路径是可见的、可审计的、可修的,不像神经奖励模型那样糊成一团、说不清哪里出了问题。
把上面都摊平,选择其实不复杂。
| 你的情况 | 该用谁 | 为什么 |
|---|---|---|
| 有高质量示范,只要格式 / 风格 | SFT | 最便宜,几 B token 级 |
| 只有偏好对,要降本,单轮或短上下文 | DPO | 2 张 H100,β 默认 0.1 就能收 |
| 主观、写不成确定性函数(细腻安全、多轮对话) | RLHF / PPO | 要训奖励模型,4 张 H100 起步 |
| 有确定性验证器(数学 / 代码 / 结构化输出) | GRPO / RLVR | 省掉 critic,长思维链更划算 |
| 只有单条点赞 / 点踩 | KTO | 不需要成对数据 |
| 想一步连 SFT 带对齐做完 | ORPO / SimPO | 单阶段,省掉参考模型 |
但更该记住的是:现在的主流不是"二选一",而是"接起来用"。
冷启动 SFT 建一个可控的基座 → RLVR 把推理上限刷高 → 拒绝采样回流成 SFT 数据 → 轻量 DPO 收尾融合。Llama 4、Qwen3、DeepSeek-R1,走的都是这条路。
绕了一圈,可以给三兄弟一句话的总结了。
RLHF 跟人学品味,贵、慢、上限高。DPO 把"学品味"这一步压缩成一道分类题,便宜、好复现,代价是探索的余地。RLVR 换掉整个裁判,只管对错,把推理往上推。
它们的分工,不取决于谁的论文更漂亮。取决于你手上这个任务,奖励到底能不能写下来。能写成一行程序判对错的,交给 RLVR;只能靠人感觉的,回到 RLHF 或 DPO。
算法这几年换了一茬又一茬:PPO、DPO、GRPO、DAPO、GSPO。但把这些名字剥掉,底下那个问题一直没变——奖励从哪来。
下一个被端上桌的算法,大概率还是在这条线上打转:要么换一个更聪明的裁判,要么换一个更会写的验证器。配方怎么写,才是这一轮竞赛真正在比的东西。