第 08 · 对齐 · 9 min
从原始模型到助手
微调、RLHF、宪法AI。如何使大语言模型变得有用且无害。
预训练完成的模型,还不是助手
预训练结束时,模型只掌握了一件事:合理地续写文本。这已经很神奇了,但它还不是一个助手。
问一个原始模型"怎么做饼干?",它大概率会这样续写:
"怎么做饼干?怎么做蛋糕?怎么做点心?饼干食谱是一种需要用到面粉、黄油……"
这不是因为它愚蠢。而是因为它在语料库里见过太多"问题后面跟着更多问题"的模式。它在做它分内的事:预测统计上最可能接续的文字,而不是有用的回答。
要从"文本续写器"变成"助手",我们需要对齐(Alignment)。
三个相同的 prompt,两个模型:左侧是原始模型,右侧是经过监督微调与 RLHF 的同一个模型。原始模型在续写文本;对齐后的模型在回答——并会拒绝有问题的请求。
三个叠加的阶段
现代对齐在预训练之上,分多个阶段完成。
1. 指令微调(SFT)
我们用一批指令 → 理想回复的配对数据对模型进行监督微调,这些配对由人类撰写。几万条配对就已足够。这一步教会模型:
- 遵从指令,而非续写指令
- 遵守要求的格式(列表、段落、代码……)
- 输出完整的回答,而非漫无目的地闲扯
正是这一步,把 gpt-3 变成了 gpt-3.5-instruct。变化是翻天覆地的——模型终于开始回答问题了。
2. RLHF(基于人类反馈的强化学习)
指令微调还不够。它教会了模型一种回答风格,但无法精确区分"还行的回答"和"出色的回答"。
于是有了 RLHF,分三个子步骤:
a) 模型对同一个提示词生成多个候选回答。
b) 人类对它们进行排序(A > B > C)。
c) 训练一个奖励模型来模拟人类偏好,再用强化学习优化语言模型,使其最大化这个奖励。
结果:一个不只是"回答",而是"按人类偏好的方式回答"的模型——更礼貌、更有条理、更少傲慢、更实用。
2bis. DPO:更简单版本的 PPO
我们刚才描述的 RLHF 依赖于一个 RL 算法(PPO),它训练起来很重:要单独训练一个奖励模型,数值上不稳定,算力开销巨大。
2023 年,斯坦福的一个团队提出了 DPO(Direct Preference Optimization,直接偏好优化)。核心思路:绕开奖励模型和强化学习这一步。从数学上可以推导出一个简单的监督学习损失函数,直接优化语言模型,让它在每一对比较中都倾向于选"赢"的回答而不是"输"的回答。
具体来说,从经典 RLHF 用过的同样的 (提示词, 回答A优于回答B) 配对出发,DPO 用一次前向后向就能训练模型——和普通的监督式微调一样。没有独立的奖励模型,没有 PPO,也没有那些不稳定性。
在基准测试上,结果几乎和 PPO-RLHF 没有区别,但成本只是后者的一小部分。从 2024 年起,DPO 及其变体(IPO、KTO、ORPO)已经在 Llama、Mistral 以及大多数开源实验室那里大量取代了经典的 PPO。Anthropic 和 OpenAI 仍然使用更复杂的流水线,但差距正在缩小。
3. RLAIF 与宪法 AI
一个变体:不使用人类提供反馈,而是让另一个模型(通常是同一个模型)根据一部书面宪法来评判——一套原则集合("不提供违法指引"、"不捏造参考文献"、"必要时解释推理过程"……)。这就是宪法 AI。
优势在于:可扩展(人类的时间和精力是昂贵的)、可重现(宪法是显式的)、可调整(修改原则,无需重新标注全部数据)。这是 Anthropic 用于训练 Claude 的方法,也是许多其他实验室后来采用的方案。
对齐不能做什么
几个常见的误解值得澄清。
对齐不改变模型的知识储备。 如果原始模型不知道拿破仑死于圣赫勒拿岛,RLHF 也不会教会它这一点。RLHF 改变的是模型如何表达它所知道的,而不是它知道什么。
对齐不是简单的内容过滤。 拒绝提供炸弹制作方法,不是靠屏蔽关键词实现的——那是一种习得的策略,能泛化到各种迂回表达,并能解释为何拒绝。
对齐并不完美。 越狱(绕过 RLHF 的提示词)依然存在。语料库中的偏见部分得以延续。幻觉仍会发生,因为模型有时能从"表现得很自信"这件事上获得比"承认自己不知道"更高的奖励。
对齐有代价。 在某些技术任务上,对齐后的模型比基础模型更弱:它不敢冒险,添加大量免责声明,变得过度谨慎。这被称为对齐税。
为什么 LLM 会产生幻觉
这大概是人们对 LLM 最常见的批评:它们会一本正经地编造事实。一条根本不存在的参考文献,一句从未被说过的引言,一个被扭曲的事件。为什么会这样?
三种机制叠加在一起。
1. cross-entropy 不奖励"不确定"。 在预训练阶段(第 06 章),模型学习的是最小化正确 token 的对数概率。它从来没有学过说"我不知道"——目标始终是预测出某个东西。如果正确答案不在它的参数里,它就会凭感觉生成最听起来像样的字符串。
2. RLHF 奖励自信,胜过奖励诚实。 当人类标注偏好时,他们平均而言更喜欢一个自信、措辞得体的回答,而不是一句"我不确定,我不知道"。奖励模型把这种偏差学了过来,于是 LLM 学会了显得很笃定,哪怕它其实并不笃定。
3. 没有内部的验证回路。 一个正在编造的人会停下来、怀疑、再三确认。一个一个 token 地生成的 LLM 没有这种原生机制——它只会一直往前走,没有外部的检查。
这就是为什么幻觉不会随着对齐做得更彻底而消失。它们是结构性的。有效的对策是系统性的:
- 把模型连接到工具(第 11 章)——能算的就别估,能查库的就别背。
- RAG(第 10 章)——提供可靠的来源,而不是依赖参数里的记忆。
- 扩展推理(第 17 章)——一个愿意花时间思考的模型,幻觉更少。
- 显式地在"不确定"上做微调——教模型在自己的内部概率较低时说"我不知道"(这是当前活跃的研究方向)。
幻觉不是模型的 bug。它是一个被训练成永远生成合理文本的系统,碰上一个答案不在它权重里的问题时,会发生的事。
未竟的问题
对齐解决了一个眼前的问题:让大语言模型变得有用且基本合理。但它没有回答一个更深层的问题——有时被称为大写字母的对齐问题:
如何保证一个远比人类更强大的系统,真正按照人类的利益行事?
今天,我们通过人类反馈来对齐,因为人类仍然是最好的评判者。当模型在我们希望评判的任务上超越人类时,这个手段将不再足够。这是一个悬而未决的开放性问题,也是整个研究领域的核心课题。
第二部分的终点
你刚刚走完了一个现代 LLM 的完整内部流水线,从原始的文本字节,一直到对齐之后的行为:
- 01 — 一次又一次地预测下一个词。
- 02 — 把文本切成 token。
- 03 — 把每个 token 嵌入到一个语义空间中。
- 04 — 让 token 通过注意力彼此相望。
- 05 — 堆叠 Transformer 块。
- 06 — 用梯度下降进行训练。
- 07 — 采样下一个词。
- 08 — 在人类偏好上对齐。
这些机制单独拿出来,没有一个是神秘的。但它们之中的任何一个,单独都不足以解释当一个 LLM 总结一篇科学论文或写一首十四行诗时你所看到的东西:智能涌现自它们在大规模上的组合。
奇迹不在任何一个零件里。它在整条链条之中,被几十亿参数相乘,在数万亿 token 上训练而成。
接下来呢?
模型已经就位。它能预测、能推理、能跟随指令。但在它和你使用 ChatGPT 或 Claude 时所感受到的体验之间,还隔着一整套基础设施:定义它能记住什么的上下文窗口,让它能访问你的文档的 RAG,把它连接到工具的智能体。
这就是第三部分 — 生产中的模型的主题。
再往后,第四部分 — 深入探索则进入当前的研究议题:微调、多模态、扩展推理、扩展律、可解释性、扩散。
流水线已经搭好。剩下的,就是我们在它之上构建的一切。
更新于