模型训练技术速查:预训练 / SFT / RLHF / 蒸馏 / DPO / RFT

一句话总览:大模型不是一锤子练出来的,而是经过预训练 → 后训练的流水线打磨。本文把这条流水线上的关键技术——SFT、RLHF、DPO、蒸馏、RFT、RLAIF——用小白能懂的比喻一次性讲清楚。


目录


0. 总览:训练大模型的”流水线”

0.1 一个直观的比喻

把大模型训练想象成培养一个员工

阶段类比技术名称
0. 上学读完小学到大学的所有教材,学会通用知识预训练 Pre-training
1. 入职培训教他公司流程、对话格式:“你应该这样回答客户”SFT 监督微调
2. 上岗实习主管挑选他的回答好坏:A 比 B 好 → 让他学着像 A 一样答RLHF / DPO
3. 自我精进自己做 100 道题,挑做对的反复练RFT
4. 老带新让一个老员工把经验传给新人蒸馏
5. AI 当主管让另一个 AI 来给员工打分(代替人类主管)RLAIF

0.2 为什么需要这么多步?

只做预训练——模型懂很多,但不会”听话”,让它写邮件它能给你写出小说。 只做 SFT——模型听话了,但容易胡说八道,没有”分寸感”。 加上 RLHF——模型有分寸了,但训练贵到飞起。 用 DPO 替换——便宜了,但效果略差。 蒸馏小模型——为了上线时省钱。

每一步都解决前一步的某个具体痛点。


1. 预训练(Pre-training)

一句话:把全互联网的文本喂给模型,让它学会”猜下一个字”。

1.1 怎么训

输入:海量文本(数万亿 token,相当于把整个互联网读 N 遍)
任务:给定前 N 个字,预测下一个字是什么
目标:让"预测准确率"持续提升

1.2 类比

像一个孩子从小到大读完了人类有史以来所有的书、网页、代码、对话。读得多了,他自然学会了语法、知识、逻辑、推理、常识——但他没人教过他怎么”和人对话”

1.3 特点

维度数值
数据量数万亿 token
训练成本数千万到数亿美元
训练时间几个月
输出基础模型 (Base Model),不会聊天,只会续写

1.4 真实例子

  • GPT-4 base 是预训练产物,OpenAI 没把它直接放给你用——你看到的 ChatGPT 是后训练之后的版本
  • Llama 3 base 是开源的,可以自己拿来后训练

2. SFT(监督微调)

一句话:用”问答对”教模型怎么”听话回答”。SFT = Supervised Fine-Tuning

2.1 怎么训

准备数据:成千上万条 (问题, 标准答案) 对
任务:让模型学会,遇到问题 → 给出和标准答案一样的回答

数据样例

{
  "question": "Python 怎么读取一个文件?",
  "answer": "可以用 open() 函数,with 语句更安全:\nwith open('file.txt') as f:\n    content = f.read()"
}

2.2 类比

新员工入职第一周,HR 给他看一本《标准应答手册》:

  • “客户问 X,你就答 Y”
  • “客户问 A,你就答 B”

他照着手册学几千遍,就学会了”该怎么回答”。

2.3 解决了什么问题

痛点SFT 后
基础模型只会续写学会 “问→答” 这种对话格式
不知道什么是”用户”学会区分用户消息 / 助手回答
输出风格随意学会公司想要的语气、长度、结构

2.4 特点

维度数值
数据量几千到几十万条高质量样本
成本比预训练便宜 100~1000 倍
时间几小时到几天

2.5 痛点

SFT 学到的是”标准答案”,不是”什么样的答案更好”。

举例:

  • 用户问”帮我写个简历”
  • 标准答案 A:详细但啰嗦
  • 标准答案 B:简洁有力
  • SFT 不知道哪个更好——它只是盲目模仿

要解决”哪个答案更好”,就需要 RLHF。


3. RLHF(人类反馈强化学习)

一句话:让人类标注员对比两个答案”哪个更好”,模型学着生成”被人偏爱”的那种。RLHF = Reinforcement Learning from Human Feedback

3.1 怎么训(三步走)

Step 1:让模型生成 N 个不同回答
  问题:"如何减肥?"
  回答 A:"多运动少吃。"
  回答 B:"建议每天 30 分钟有氧 + 控制碳水……(详细 200 字)"

Step 2:人类标注员选 → "B 比 A 好"

Step 3:训练一个 Reward Model(奖励模型)学习人类偏好
  → 然后用这个 Reward Model 当"裁判",反复让模型生成、打分、调整

3.2 类比

主管不教你怎么写报告(那是 SFT 干的事),而是看你写完后说:

  • “这版比上版好”
  • “这版太啰嗦”
  • “这版风格我喜欢”

你被表扬几百次后,自然学会”老板喜欢什么样的报告”。

3.3 解决了什么

维度SFTRLHF
学的是标准答案人类偏好
风格死板灵活、贴近真实喜好
安全性不可控可拒答有害问题
个性千篇一律可调(友善 / 专业 / 幽默)

3.4 特点

维度数值
数据几万到几十万条偏好对
成本标注偏好数据贵到飞起(人工)
复杂度高,要训 reward model + PPO

3.5 真实例子

  • ChatGPT 之所以爆红,关键就是 OpenAI 用 RLHF 把 GPT-3.5 调成了”会聊天的 ChatGPT”
  • Claude 用 RLHF 配合 Anthropic 自创的 Constitutional AI(严格说 Constitutional AI 属于 RLAIF 流派,详见 § 7.4
  • Llama 3 Instruct 也是 RLHF 训出来的

3.6 痛点

RLHF 又贵又难训——PPO 算法不稳定、reward model 容易被”黑”(模型学会骗 reward model)。


4. DPO(直接偏好优化)

一句话:跳过 reward model,直接用偏好数据训。DPO = Direct Preference Optimization(2023 年斯坦福提出)

4.1 RLHF 和 DPO 的区别

RLHF(旧):
  偏好数据 → 训 Reward Model → 用 RL(PPO)训主模型
                  ↑                  ↑
              一道工序            一道工序

DPO(新):
  偏好数据 ─────────────────→ 直接训主模型
              (一步到位的数学公式搞定)

4.2 类比

  • RLHF = 先培训一个”主管”打分,再让主管去训员工
  • DPO = 跳过主管,直接拿着偏好数据告诉员工”这个比那个好”

4.3 优势

维度RLHFDPO
复杂度
训练稳定性差(PPO 难调)
显存需求
效果略胜接近,部分场景反而更好

4.4 真实例子

  • Llama 3 的 Instruct 版本同时用了 SFT + DPO
  • 大量开源微调项目都换成了 DPO(因为便宜)
  • 但 OpenAI / Anthropic 这种大厂还是更倾向 RLHF(更精细)

5. 蒸馏(Distillation)

一句话:让一个大模型当老师,把它的能力压缩进一个小模型

5.1 名字的由来

化学里的”蒸馏”——把酒里的水分蒸发掉,留下高度浓缩的酒精。

AI 里的蒸馏——把大模型里”水分多的部分蒸发掉”,让小模型继承精华。

5.2 怎么训

          ┌──────────────────────┐
          │  Teacher Model(大)  │
          │  GPT-4 / Opus        │  ← 慢、贵、聪明
          └─────────┬────────────┘
                    │
           回答 1 万道题(带"思考过程")
                    │
                    ↓
          ┌──────────────────────┐
          │  Student Model(小)  │
          │  GPT-4o-mini / Haiku │  ← 快、便宜、变聪明
          └──────────────────────┘

5.3 类比

老师傅带徒弟:

  • 老师傅做菜不仅给”成品”,还给”刀工怎么练”、“火候怎么看”、“调料怎么放”
  • 徒弟学了几个月,能做出 80% 的味道,但做菜速度快 10 倍、人工成本低 20 倍

5.4 几种蒸馏类型

类型做法类比
硬标签蒸馏老师只给最终答案抄作业,只抄结果
软标签蒸馏老师给每个选项的概率抄作业,连”为啥这么选”都抄
链式蒸馏(CoT)老师给完整推理过程学霸不仅给答案,还给解题步骤

5.5 经济效益

模型成本 / 1M tokens速度
Claude Opus(老师)$15-75
Claude Haiku(学生)$0.25-1.25快 10 倍

蒸馏后:用 Haiku 处理 80% 的简单任务,只在难问题上 fallback 到 Opus → 整体成本降低 90%+

5.6 真实例子

  • GPT-4o-mini 据 OpenAI 说部分能力来自 GPT-4 蒸馏
  • Claude Haiku 类似套路,从 Opus 蒸馏
  • DeepSeek 的”灰色蒸馏”争议:业界怀疑用了 GPT-4 / Claude 的输出做训练数据(违反 OpenAI 服务条款)

6. RFT(拒绝采样微调)

一句话:让模型自己做 100 题 → 挑做对的拿来再练RFT = Rejection Fine-Tuning

6.1 怎么训

Step 1:让模型对一道题生成 N=10 个答案
Step 2:用某种方式判断哪些是对的(人工 / 测试用例 / 大模型当裁判)
Step 3:保留对的,丢掉错的
Step 4:用"对的答案"做 SFT 微调
Step 5:模型变强 → 回到 Step 1

6.2 类比

差生学习法:

  • 自己刷 10 套数学题
  • 老师批改:留对的,丢错的
  • 拿对的题反复研究,下次刷题对的更多

每一轮迭代,模型自己产出训练数据,自己教会自己

6.3 适用场景

  • 能自动验证对错的任务:数学(结果可校验)、代码(跑测试用例)、形式逻辑
  • 不适合主观任务(写作、对话——没有”对错”)

6.4 真实例子

  • DeepSeek-Math / DeepSeek-Coder 大量用 RFT
  • OpenAI o1 / o3 推理模型的训练核心思想之一
  • Self-Rewarding Language Models(Meta 论文)让模型自己当裁判 + RFT

7. RLAIF(AI 反馈强化学习)

一句话:把 RLHF 里的”人类标注员”换成”AI 标注员”。RLAIF = RL from AI Feedback

7.1 怎么训

RLHF:
  问题 → 模型生成 A、B → 人类选哪个好 → 训练

RLAIF:
  问题 → 模型生成 A、B → 大模型(如 GPT-4)选哪个好 → 训练
                          ↑
                      用 AI 替代人类标注员

7.2 类比

  • RLHF:每个员工的报告都要老板亲自看(贵、慢)
  • RLAIF:训练一个”虚拟老板”(用大模型扮演),让它代替人去打分

7.3 优势 / 风险

✅ 优势⚠️ 风险
标注成本降低 100 倍”AI 偏见”会被放大
可以 7×24 标注可能学到 AI 的怪癖而不是真实偏好
一致性高失去人类直觉(如审美、伦理边界)

7.4 真实例子

  • Anthropic Constitutional AI:先列出”宪法原则”(如”不要有害”),用大模型按宪法给答案打分 → 训主模型
  • Claude 的训练大量用 RLAIF + Constitutional AI

8. 速查对比表

技术全称数据形式主要解决成本复杂度
预训练Pre-training海量文本让模型有基础能力💰💰💰💰💰极高
SFTSupervised Fine-Tuning(问题, 答案) 对学会对话格式💰
RLHFRL from Human Feedback偏好对 + 人类标注对齐人类偏好💰💰💰💰
DPODirect Preference Optimization偏好对(同 RLHF)RLHF 的简化版💰💰
蒸馏Distillation老师模型生成的数据把大模型压成小模型💰💰
RFTRejection Fine-Tuning自生成 + 自筛选数据自我精进💰
RLAIFRL from AI FeedbackAI 标注的偏好对替代人工标注💰💰

9. 训练流水线全景图

一个现代大模型的完整训练流程(以 Llama 3 / Claude 为例):

┌──────────────────────────────────────────────────────┐
│  Stage 0: 预训练 Pre-training                          │
│  数万亿 token + 几个月 + 几亿美元                        │
│  产出:Base Model(不会聊天)                           │
└────────────────────┬─────────────────────────────────┘
                     ↓
┌──────────────────────────────────────────────────────┐
│  Stage 1: SFT 监督微调                                 │
│  几十万条精选 (问题, 答案) 对                            │
│  产出:Instruct Model(会基本对话)                      │
└────────────────────┬─────────────────────────────────┘
                     ↓
┌──────────────────────────────────────────────────────┐
│  Stage 2: 偏好对齐(任选其一或组合)                       │
│   ├─ RLHF:贵但精细                                    │
│   ├─ DPO:便宜接近 RLHF                                │
│   └─ RLAIF:用 AI 标注 + Constitutional AI            │
│  产出:Aligned Model(懂人类偏好、不胡说)                 │
└────────────────────┬─────────────────────────────────┘
                     ↓
┌──────────────────────────────────────────────────────┐
│  Stage 3: 推理增强(可选)                                │
│   └─ RFT:自生成 + 自筛选 → 反复迭代                      │
│  产出:Reasoning Model(如 o1、DeepSeek-R1)             │
└────────────────────┬─────────────────────────────────┘
                     ↓
┌──────────────────────────────────────────────────────┐
│  Stage 4: 模型小型化(部署用)                            │
│   └─ 蒸馏:从大模型蒸到小模型                              │
│  产出:Small Model(如 Haiku、GPT-4o-mini)             │
└──────────────────────────────────────────────────────┘

10. 与数据飞轮的关系

回到这篇文档的起点——这些训练技术怎么塞进 Agent 的数据飞轮

        Agent 数据飞轮(外圈)
   ┌───────────────────────────────────────┐
   │                                       │
   │  ① 用户使用 Agent                       │
   │       ↓                                │
   │  ② 收集真实使用数据                     │
   │       ↓                                │
   │  ③ 数据加工 / 标注                      │
   │     ├─ 用大模型当老师 → 蒸馏材料          │
   │     ├─ 用 AI 标注偏好 → RLAIF 材料       │
   │     └─ 用测试用例筛选 → RFT 材料         │
   │       ↓                                │
   │  ④ 选择训练技术回灌到模型                  │
   │     ├─ 改 system prompt(最快、最便宜)   │
   │     ├─ SFT(修复格式问题)                │
   │     ├─ DPO(修复偏好问题)                │
   │     ├─ 蒸馏(降本)                      │
   │     └─ RFT(提升推理能力)                │
   │       ↓                                │
   │  ⑤ 上线新版本 → 飞轮加速                  │
   │                                       │
   └───────────────────────────────────────┘

判断框架:飞轮里该用哪种技术?

痛点该用什么
输出格式总错SFT
用户老反馈”啰嗦 / 冷冰冰”DPO 或 RLHF
大模型太贵蒸馏
数学 / 代码任务出错率高RFT
标注成本顶不住RLAIF
只是 prompt 没写好别动模型,改 prompt 就行

💡 黄金原则:能改 prompt 解决的,绝不动模型;能 SFT 解决的,绝不上 RLHF。先改最便宜的那一层


11. 与本知识库其他章节的关联

关联点文档关系
数据飞轮总览Agent发展轨迹四阶段 § 10.7.2飞轮是这些训练技术的”应用场景”
Transformer 基础Transformer训练对象——所有这些技术都在调 Transformer
上下文窗口 / Token 经济上下文窗口与Token计费蒸馏的经济动机就在这里
Harness 工程Harness工程与Agent解剖推理时的工程外壳,与训练时技术互补
DeepSeek 的架构与训练创新DeepSeekGRPO 算法 / R1 多阶段训练 / R1-Distill 家族——本文术语在 DeepSeek 上的实战案例
预训练为什么让模型”会归纳主题”大模型如何理解文本把预训练阶段见过的”长内容 + 短总结”映射,串到任务能力视角

附:术语缩写速记表

缩写全称中文
SFTSupervised Fine-Tuning监督微调
RLHFReinforcement Learning from Human Feedback人类反馈强化学习
DPODirect Preference Optimization直接偏好优化
RFTRejection Fine-Tuning拒绝采样微调
RLAIFReinforcement Learning from AI FeedbackAI 反馈强化学习
PPOProximal Policy Optimization近端策略优化(RLHF 用的算法)
CoTChain-of-Thought思维链
LoRALow-Rank Adaptation低秩适配(一种省显存的微调方式)