跳到主要内容

后训练与采样:从补全机器到「会胡说」

这一章讲三件事: 一个只学过「接话」的模型是怎么被教成「会聊天、有分寸」的; 它每一次吐字背后的真实动作——不是挑最好的词,而是按一份概率清单抽签; 以及这份抽签怎么解释你天天撞见的两件事:同一句话两次回答不一样、它会一本正经地编造。 它在全书的位置:上一章讲模型是怎么炼成的(数据、架构、规模),这一章讲炼成之后的最后两道工序;下一章开始回答「造出来的东西,好不好怎么知道」。

1. 顶层全景:出厂之后还差两课

上一章结束时,我们手上有了一个预训练完毕的模型。但此刻拿它来聊天,你会失望——作者一针见血:它的说话方式更像网页,而非人类1

为什么?因为预训练教会它的唯一一件事就是「给定前文,猜下一个 token」。这本书把这个动作叫文本补全(接着前文把话续下去)。要变成你手机里那个助手,它还差两课,都归后训练(模型预训练完成后的进修,教它对话的方式和行为边界)管:

预训练产物 只会补全 ──┐
│ │ 第一课:监督微调(SFT)
│ │ 给它看大量「提问+标准回答」的示范,
▼ │ 让它模仿这个说话方式
只会礼貌地说话了 ←─────────────┘
│ │ 第二课:偏好微调(RLHF 等)
│ │ 拿人类对两个回答的比较评分,
▼ │ 教它在争议话题上把握分寸
会聊天也有分寸的模型 ←────────────┘

▼ 但请注意:教完这两课,它每次吐字依然是【抽签】
抽签的规则(温度、top-k、top-p)= 你能拧的旋钮
抽签的性质(概率性)= 不一致与幻觉的总根源

图说:本章前半讲两课怎么上,后半讲抽签怎么运作、以及它能闯的两种祸。

前两课解决「说话方式」,但它们改变不了模型的底层动作——那仍是给每个可能的下一个 token 打一个可能性分数。所以这一章的后半部分(采样)跟前半部分同样重要:你不理解抽签,就看不懂后面所有的旋钮、成本账和故障

2. 只会补全的机器:三种合法的接话

先看病有多重。你问预训练模型「How to make pizza」(如何制作比萨),本来等着它给你菜谱。但它不理解这是一次提问——它只是在续写文字,于是以下三个回答都是合法的补全2:

  • 补充更多上下文:「for a family of six?」(为六口之家制作?)

  • 追问回去:「需要哪些食材?需要多久?」

  • 直接给出制作步骤。

只有第三种是你要的答案。作者给出的处方朴素得惊人:既然模型擅长模仿训练数据,那就给它看点「恰当回答长什么样」的示例。这就要进入第一课。

顺便交代本书的一个用词习惯:上过课的模型仍然是逐 token 生成、仍然靠抽签——这一点永远不会变。变的只是抽签之前,它内部的「品味」被调整过了。

3. 监督微调:给它抄示范

第一课叫监督微调(SFT,supervised finetuning——用带人工答案的数据继续训练模型)。做法是把一批示范喂给模型:每份都以「提示词,响应」成对出现,由人工写出标准应答——书里管这批材料叫示范对。学界还给这门课起了个传神的别名,行为克隆:向模型示范应如何表现,模型便会克隆这种行为3

这课的质量完全取决于「老师」。跟传统标注(判断一张图里有没有猫,几秒钟就行)不同,写一个好的响应可能需要查资料、做判断,生成一个「提示词,响应」对最长可达 30 分钟。书里算了笔账4:

一名合格标注员 约 90% 至少有大学学历,超过三分之一是硕士
一个(提示词,响应)对:最长 30 分钟,成本约 10 美元
OpenAI 训 InstructGPT 用了:13,000 对
─────────────────────────────────────
光示范数据的账单:13 万美元 —— 这还不含数据设计、招聘、质控

图说:「教模型好好说话」不是免费的。这是第二课之前的一笔固定投资。

三点附带说明

一、覆盖面要够宽——问答、摘要、翻译各来一些。OpenAI 为 InstructGPT 整理示范材料时,甚至专门统计了各任务类型的占比。

二、「谁来当老师」本身会带来偏差。书里举的反例出自一个由志愿者自发攒起来的数据集——人人皆可取用、也可贡献的做法行话叫开源。它的 13,500 名志愿标注员中约九成为男性,他们的偏好就这样写进了数据。作者没有展开后果,但她把它当作偏差实例记录了下来5

三、只靠行为克隆够不够?不够——这就轮到第二课。

顺手把下文反复要用的一块垫脚石立在这里,算法:步骤写得足够死、照着执行就必然得出结果的计算流程;后文出现的每个训练方法都是它的一个实例。

4. 偏好微调:学会分寸

示范材料能教会模型「怎么对话」,却没教「什么该说、什么不该说」。堕胎、枪支这类话题怎么回应才得体?光靠抄示范解决不了,因为拿捏的是程度而不是句式。

解决这件事的第二课叫偏好微调:继续微调模型,使它的输出往人类偏好的方向靠拢。

这一课动用的训练思路有个总名,叫强化学习(RL,reinforcement learning):不提供标准答案,只提供「好/坏」信号,靠反复试错逐步纠偏。

它最出名的实现叫 RLHF(reinforcement learning from human feedback,基于人类反馈的强化学习)6

RLHF 分两步。第一步,先造一个「考官」——训一个奖励模型:给它一对「提示词,响应」,它输出一个分数,表示该响应的好坏7。第二步,再让基础模型朝着「考官打高分」的方向去优化。

妙处在第一步的数据来源。让人直接给每个响应打分,会发现打分极不稳定:同一个样本,10 分制下一个人给 5 分、另一个给 7 分,同一个人隔天打分也会变。这种各自独立打分的方式叫单点评估,离散度大到没法用。于是改用比较:每次只展示两个响应,让人回答哪个更好——比较容易做得一致,产生的数据格式是「提示词,胜出响应,落败响应」8

比较还便宜得多:

写出一个合格响应(Llama 2 团队的报价): 每次 25 美元
比较两个响应谁更好: 每次 3.50 美元
(LMSYS 测得人工做完一次比较平均还需 3 到 5 分钟,
因为要对每个响应做事实核查)

图说:同样的钱,「评卷」比「作答」便宜 7 倍。
这个不对称后面还会回来——它是第 05 章 AI 当裁判的理论支点。

还有一组数据放大器藏在里面:如果标注员排出 A>B>C 一个序,系统可以拆出三对比较(A vs B、A vs C、B vs C)。排序一次,赚三次9

至于第二步「朝高分优化」具体怎么驱动,主流方法是 OpenAI 2017 年提出的 PPO(proximal policy optimization,近端策略优化):负责把模型朝着考官打高分的方向推动的那种强化学习算法。这些方法都在用,但「究竟为什么有效」,作者的处置很克制——她如实记录了业内的争论,不下断言10

Llama 3 后来换了个更省事的替代:DPO(direct preference optimization,直接偏好优化)——不再单独训考官,直接拿比较数据调整模型。

她还记下了一个实用主义者的旁门:有的公司干脆跳过强化学习那一半,只用奖励模型给多个候选响应打分、选分最高的那个返回——这其实就是本章第 7 节要讲的「推理时计算」的一个用法11

判断(我们的,不是书里的): SFT 教「像不像好答案」,偏好微调教「哪个更好」——这两个问题永远不会被同一种数据解决。所以「重训一次就能顺带修好态度类投诉」的想法多半落空:态度类的修复要用比较数据另开一轮。 如果错,会错在: 如果新一代模型在示范对里内嵌了足够的分寸范例(好与坏同时给出),SFT 单独就能承载大部分偏好信息,两课可以并成一课。

5. 采样:它每一步都在抽签

两课上完,回到那个不变的事实:模型输出的每一步,都是先给词表里所有 token 各打一个可能性,得到一份概率分布(每个可能结果各配上一个 0 到 100% 的份额,全部加起来等于 100%),然后从中抽一个出来12。这个「抽」的过程叫采样,而且是整本书最重要的旋钮聚集地。

5.1 贪心采样为什么不行

最直觉的抽法是不抽——永远选概率最高的那个,行话叫贪心采样。分类任务(垃圾邮件判定)就该这么干。但对语言模型,书里的判语是:贪心采样往往会产生枯燥的输出——想象无论你问什么,它总是用最常见的词回答,像个照本宣科的孩子13

要让输出有血肉,就得真的按概率抽签。这要先弄清概率从哪来。

5.2 主走查:从原始得分到概率清单

模型内部算出的分数不叫概率,叫 logit(每个可能的 token 对应一个原始得分。它可以是负数,全体加起来也不等于 100%,所以不能直接当概率用)14。把 logit 变成概率的那台翻译机,叫 softmax(一层固定的数学变换:把任意一组数压成分割完整的概率分布,分高的压出来的概率也高)15

在两者之间,坐着你最有用的一个旋钮:温度(temperature——softmax 前给每个 logit 除以的一个常数,用来重新分配概率的松紧)。

这是本章的主走查。书里的例子的确够简单:假设模型只有 A、B 两个候选,最后一层算出的 logit 是 [1, 2]16:

输入: logit = [1, 2] (B 的原始分高)

T=1 不加干预:
softmax → [0.27, 0.73]
B 有 73% 的概率被抽中
T=0.5 更冷(把 logit 除以 0.5 再 softmax):
softmax → [0.12, 0.88]
B 的胜率升到 88%
T→0 极冷:
B 几乎必中 —— 数学上不能真除以 0,
实践里温度设为 0 时引擎直接取 logit 最高的 token(即 argmax)
T 调高 2.0 以内(提供商一般限制在 0 和 2 之间):
分布越来越平,A 反超的机会越来越大

图说:温度低 → 高频词垄断 → 输出一致但乏味;
温度高 → 冷门词上位 → 有创意但也可能散架。
书里对偏创意的应用建议 0.7,但强调你应该自己做实验定。

记住这幅图:talking 少年感的「答非所问」和无趣的模板腔,往往是同一根旋钮的两端。

5.3 给候选名单限流:两把剪刀

抽签还有一个环节可以卡:限定谁能进候选名单。两把剪子:

  • top-k:不管上下文,永远只取得分排名前 k 名的候选,其余一律不参与抽签。k 通常设在 50 到 500 之间17。它最初是为省钱发明的——softmax 要对所有可能值进行两次遍历,十万级的词表一遍遍算太贵;

  • top-p:按概率从高到低累加,凑到 90%(或 95%)为止,只有这一个集合里的候选才能被抽18。它与 top-k 的区别在「活」:回答是非题时,候选名单自然只剩两三个人;被问到「生命的意义是什么」时,名单自动放宽到几十个。

小众一点的第三把剪子是 min-p:给每个候选设一条最低概率门槛,达不到的直接出局19

实际产品里这几样经常叠加使用。配上一份开源工具的默认值心里更有数:k 取几十、p 取 0.9 左右、温度随场景在 0 和 1 之间调。

6. 什么时候闭嘴:停止条件

抽签还有一个终点问题:模型生成多少个 token 后停?

生硬的办法是固定长度——生成够一定个数就停,后果可能是话说到一半被掐断。优雅一点的办法是用停止 token 或停止词:遇到句子结束符就收工。停止条件设计不好除了难看还会出事故——比如让模型输出 JSON(一种用花括号和双引号组织的、程序可直接读取的文本格式)时,提前停止会让括号缺一只脚;这类格式故障在第 14 章的输出防护里还会回来20

在这里先把要点钉住:停止条件和温度一样,是你 API 调用时亲手指定的参数之一。

7. 推理时计算:多答几遍挑最好的

抽签带来的另一个机会:既然每次答案带随机性,那就干脆多抽几份、择优采用。这一招统称推理时计算(test-time compute——不加重训,而是在回答的那一刻投入更多计算去换取更好的输出)21

最朴素的版本叫 best of N:同一个提示词独立生成 N 个响应,再从中挑一个返回。书里介绍了三种挑法22:

挑法怎么做适用
人选把 N 个答案摆给人挑数量少、质量要求极高
自带分数让接口顺带返回每份答案的整体把握度,选最有把握的(OpenAI 的 best_of 参数照此排序)无额外工具时的自动化兜底
奖励模型/验证器让第 4 节造好的「考官」逐一打分,选最高分有验证器的团队,效果最好

第三种威力最大。OpenAI 在数学题上专门训练过验证器(用于给候选解答打分的辅助模型),他们发现:一个 1 亿参数的小模型配上验证器,表现能追上一个 30 亿参数但不配验证器的模型——相当于参数量白扩大了 30 倍23

但这条路也有物理定律。书里记录了两份互相打架的证据24:OpenAI 自己的实验发现,采样数一路提到 400 个之后,成绩反而下滑——因为抽太多,总会混进来能骗过验证器的侥幸答卷;斯坦福的另一项实验却看到,样本数从 1 加到 10,000,解题总数仍在持续上涨,只是涨幅越来越小。作者的裁决务实得很:生产环境没人付得起每个请求抽 400 份的钱。

这条思路还有一个更精巧、也有正式名字的变形,叫自洽(self-consistency):同一道题独立解多遍,取出现次数最多的那个答案——十次里有八次答案是 42,就返回 42。谷歌官方评测 Gemini 时用的正是这一招(解 32 遍投票);「拿最好的那次成绩去报分」引发的可比性问题,第 05、06 两章讨论基准与榜单时会正面处理25

8. 让回答能被程序接住:四种办法

很多下游场景不在乎回答多有文采,在乎的是能不能被程序接住:要么把人话翻译成一种数据库真正听得懂的提问指令——这个格式的学名叫 SQL(structured query language)26;要么让它按约定格式吐文本。四种办法,按侵入性排:

① 提示 在提示词里指明格式,请求模型配合 成本最低,成功率不稳
② 后处理 解析失败就用脚本修补常见错误 简单得出奇地有效
③ 约束采样 在抽签源头过滤非法 token 最硬,但每种格式要单独建规则
④ 微调 拿格式正确的数据专门训模型 最彻底,留到第 10 章

②的好成绩超出直觉。LinkedIn 发现模型生成的配置文件错法高度重复——比如老忘了闭合某个符号——于是干脆写了个防御性的修补脚本替它擦屁股,把正确率从 90% 提到了 99.99%27。选数据格式时他们还有个小聪明:同等内容,YAML(靠缩进表达层级的文本格式,和上一段说的 JSON 是同门)比 JSON 更省 token,直接降低了成本28

③最硬核:约束采样(constrained sampling)——把不符合规则的 token 直接从本轮抽签名单里剔除。实现原理正落在我们的主走查上:抽签本来就有「先列候选」这一步,约束采样就是在列名单时多做一道过滤,让非法 token 根本没资格出场29

它的代价也要看清:换一种目标格式(JSON、YAML 或逗号分隔的表格文件),就得重配一套语法:一张写明「什么字符可以跟在什么字符后面」的规矩表。这张表每种格式各不相同,通用性差,还可能拖慢速度;业内的反对声则主张:与其修水管,不如把模型指令遵循能力训到位30

9. 概率性的两个代价:答案会漂,还会编

走查到这里,已经能看清这门技术的底色:每一次抽签都有随机性。你在别处看到的两种顽疾,根源都在这里——正因为答案是从概率分布里抽的,网络流行语才说,概率虽低,但绝不会是零31

第一个代价是不一致性:同一个问题问两遍,答案不一样;或者输入稍有改动,输出面目全非。缓解手段治标不治本32:

  • 把高频问题的答案先做缓存:原样存一份,下次同样的问题直接照抄;

  • 把这次调用可以拧的所有数值全部钉死(这些随调随拧的配置项统称变量):温度也好 top-p 也好,一个都不许漂;

  • 固定随机种子(seed)——把它理解为掷骰子时换个可复现的骰盅,让「运气」每次走同一条轨迹。

第二个代价严重得多:幻觉(hallucination——模型给出的响应缺乏事实依据)。为什么抄答案抄得好好的模型会凭空编造?书里给了两个都只能缓解、无法根除的解释33

假说一:自我欺骗。 DeepMind 的研究者提出,模型区分不了「用户给的资料」和「自己刚生成的字」。书里的例子值得完整走一遍:你问「奇普·萱是谁?」,模型第一步续写出「奇普·萱是一名建筑师。」——从这一刻起,这句假话就和你的提问一起,成了它继续往下写的「事实依据」。第一个小谎会被滚雪球式地合理化下去34

假说二:学了个坏榜样。 OpenAI 研究员的诊断更诛心:行为克隆教模型模仿标注员写答案,可标注员答题时会用上自己脑中的知识——模型并没有那块知识,却被要求照着产出形似有据的回答。作者的原话很直白:我们实际上是在教模型产生幻觉35

后训练能不能反过来治病?一位 OpenAI 联合创始人认为可以,开的药方有两味:强制模型给出处;设计更严厉惩罚虚构行为的奖励函数。但书里紧接着贴出一组尴尬的数据:InstructGPT 论文自己的表格显示,经过 RLHF 的模型幻觉反而更多——尽管人类评分者更喜欢它。分寸感和诚实,在这代技术上还没买到同一个篮子里36

10. 作者的判断与证据

  • 后训练是小钱办大事:InstructGPT 论文的估算——98% 的算力花在预训练,后训练只占 2%,却完成了从「网页腔」到「助手」的关键一跃。这一步的杠杆率极高37
  • 作者留给行业的问题:RLHF 为什么有效,理论解释至今没有共识。她如实呈现争议,不下断言。
  • 幻觉的两个假说都指向同一个绝望的方向:无论哪种成因,目前都只能缓解。她给读者的防御性技巧非常朴素——提示词里写明「不确定就说不知道」,让模型用更少的 token 回答(编造的机会也随之减少)38

判断(我们的,不是书里的): 「幻觉是 bug,等下一版修好」是个危险的期待。只要生成动作还是抽签、假说二的训练范式还在沿用,幻觉就是架构的内建属性。应用层真正该做的不是等待,而是用检索(第 08 章)把「事实依据」外部化。 如果错,会错在: 若某一版基座模型(指拿来做后续加工起点的那一版现成模型)把「知道多少说多少」内化为后训练目标并验证成功(假说二路线),幻觉可能确实降为可管理的缺陷级问题——届时本书这套「必须防」的口径就该降档。

11. 边界与局限

  • 本章覆盖的是 2024 年前后成书时间点的主流做法。推理时计算领域在 2025 年之后出现了新的专攻方向(如延长思考链的推理模型),本书未涉及——阅读时请把它当作「当时的主流框架」,而不是终局图景。
  • 采样数值都是示意:温度曲线上 [0.27, 0.73]、[0.12, 0.88] 是双候选 toy 例子的真实书内数据,但真实模型是几万维分布,单点数值不能直接移植。
  • 作者明确交代 RLHF 的理论基础仍有争议,DPO、RLAIF 等后续变体的边界在书中着墨很少。

12. 可带走的

  1. 预训练出的是一台补全机;对话能力来自 SFT 的示范,分寸感来自 RLHF 的人类比较;

  2. 比较比打分稳,也比写作便宜:一次比较 3.50 美元,写一个合格响应 25 美元;

  3. 每一步生成都是抽签——logit 是原始得分,softmax 负责变成概率,中间插着一个温度旋钮;

  4. 温度低的模型无聊但稳定,温度高的模型出彩但不靠谱;top-p 决定谁能上候选名单;

  5. 想要更好答案,可以多抽几次再挑——一个 1 亿参数的小模型配上验证器,顶得上 30 亿参数裸奔;

  6. 同一道题解多遍取众数(即自洽),是评测里最常用的「白嫖」技巧;

  7. 让模型吐机器可直接读取的格式有四招:提示、后处理、约束采样、微调——难度递增,可靠度也递增;

  8. 不一致可以靠缓存、锁温度、固定种子缓解;幻觉则需接受其作为架构属性,用检索等手段围着它建防线。

13. 原文地图

主题原书章原文位置
后训练的由来与两问题第2章text/09-ch02.txt:785(搜「优化的是文本补全」)
pizza 三种合法补全第2章text/09-ch02.txt:863(搜「How to make pizza」)
行为克隆与示范数据第2章text/09-ch02.txt:878(搜「行为克隆」)
标注员成本、13 万美元第2章text/09-ch02.txt:909(搜「13万美元」)
LAION 志愿者偏差第2章text/09-ch02.txt:912(搜「13,500名志愿者」)
RLHF、奖励模型第2章text/09-ch02.txt:977(搜「RLHF依赖奖励模型」)
单点评估不稳、改用比较第2章text/09-ch02.txt:977(搜「单点评估」)
比较 3–5 分钟、3.5 美元与 25 美元第2章text/09-ch02.txt:989(搜「3.50美元」)
跳过 RL、直接用奖励模型挑答案第2章text/09-ch02.txt:1058(搜「Stitch Fix」)
概率分布与贪心采样第2章text/09-ch02.txt:1086(搜「概率分布」) · text/09-ch02.txt:1095(搜「枯燥的输出」)
logit 与 softmax第2章text/09-ch02.txt:1101(搜「logit」) · text/09-ch02.txt:1111(搜「softmax层」)
温度主走查([1,2])第2章text/09-ch02.txt:1141(搜「[1,2]」) · text/09-ch02.txt:1144(搜「0.12,0.88」)
温度 0 = argmax、0–2 范围第2章text/09-ch02.txt:1169(搜「温度设为0」) · text/09-ch02.txt:1155(搜「0和2之间」)
top-k第2章text/09-ch02.txt:1208(搜「两次遍历」)
top-p(核采样)第2章text/09-ch02.txt:1220(搜「核采样」)
min-p第2章text/09-ch02.txt:1235(搜「min-p」)
停止 token 与截断第2章text/09-ch02.txt:1250(搜「停止token或停止词」)
推理时计算与集束搜索第2章text/09-ch02.txt:1273(搜「集束搜索」)
验证器 30 倍效应第2章text/09-ch02.txt:1317(搜「30倍」)
采样上限 400 与对抗样本第2章text/09-ch02.txt:1323(搜「上限是400个输出」)
斯坦福对数增长实验第2章text/09-ch02.txt:1323(搜「对数增长」)
自洽性第2章text/09-ch02.txt:1338(搜「自洽性」)
结构化输出四法总览第2章text/09-ch02.txt:1436(搜「约束采样」)
LinkedIn YAML 90%→99.99%第2章text/09-ch02.txt:1460(搜「99.99%」)
YAML 比 JSON 省 token第2章text/09-ch02.txt:1463(搜「更少的输出token」)
约束采样的机制与代价第2章text/09-ch02.txt:1475(搜「仅保留满足约束条件的token」) · text/09-ch02.txt:1487(搜「语法规则」)
缓解不一致:缓存与种子第2章text/09-ch02.txt:1577(搜「缓存答案」)
幻觉的定义第2章text/09-ch02.txt:1537(搜「缺乏事实依据」)
自我欺骗假说(Ortega)第2章text/09-ch02.txt:1613(搜「自我欺骗」)
知识错配假说(Gao)第2章text/09-ch02.txt:1637(搜「内部知识与标注员的知识不匹配」)
Schulman 的验证方案第2章text/09-ch02.txt:1640(搜「严厉地惩罚」)
RLHF 加剧幻觉(InstructGPT)第2章text/09-ch02.txt:1643(搜「加剧了幻觉」)

Footnotes

  1. 出处:「第2章」第 780 段(text/09-ch02.txt:780,搜「更像网页」)。这是作者朋友对预训练模型的比方。

  2. 出处:「第2章」第 863 段(text/09-ch02.txt:863,搜「How to make pizza」)。三个选项都是原文列举的合法补全。

  3. 出处:「第2章」第 878 段(text/09-ch02.txt:878,搜「行为克隆」)。「示范数据」的定义也在同一段。

  4. 出处:「第2章」第 909 段(text/09-ch02.txt:909,搜「大约90%至少拥有大学学历」)与第 909 段(text/09-ch02.txt:909,搜「13万美元」)。书里明说这还不含数据设计、招聘与质控成本。

  5. 出处:「第2章」第 912 段(text/09-ch02.txt:912,搜「13,500名志愿者」)。LAION 数据集:13,500 名志愿者产出 16 万余条消息、46 万条质量评分。

  6. 出处:「第2章」第 800 段(text/09-ch02.txt:800,搜「preferencefinetuning」)。偏好微调通常用强化学习(RL,reinforcement learning——通过试错和反馈逐步改进策略的训练方式)完成;GPT-3.5/Llama 2 用 RLHF,Llama 3 用 DPO,Claude 可能用了 RLAIF(用 AI 反馈代替人)。

  7. 出处:「第2章」第 977 段(text/09-ch02.txt:977,搜「RLHF依赖奖励模型」)。

  8. 出处:「第2章」第 977 段(text/09-ch02.txt:977,搜「单点评估」)。比较数据格式即(提示词,胜出响应,落败响应)。

  9. 出处:「第2章」第 992 段(text/09-ch02.txt:992,搜「A>B>C」)。InstructGPT 的标注界面同时显示 1–7 分与排序,实际只采用了排序。

  10. 出处:「第2章」第 452 段(text/09-ch02.txt:452,搜「PPO」)。DPO 出自 Rafailov 等 2023。

  11. 出处:「第2章」第 1058 段(text/09-ch02.txt:1058,搜「Stitch Fix」)。Stitch Fix 与 Grab 都选择了「奖励模型挑选多个输出」而不跑完整强化学习循环。

  12. 出处:「第2章」第 1086 段(text/09-ch02.txt:1086,搜「概率分布」)。

  13. 出处:「第2章」第 1095 段(text/09-ch02.txt:1095,搜「枯燥的输出」)。

  14. 出处:「第2章」第 1101 段(text/09-ch02.txt:1101,搜「logit」)。原文明说 logit 总和不为一、可为负。

  15. 出处:「第2章」第 1111 段(text/09-ch02.txt:1111,搜「softmax层」)。

  16. 出处:「第2章」第 1141 段(text/09-ch02.txt:1141,搜「[1,2]」)与第 1144 段(text/09-ch02.txt:1144,搜「0.12,0.88」)。

  17. 出处:「第2章」第 1208 段(text/09-ch02.txt:1208,搜「两次遍历」)与第 1211 段(text/09-ch02.txt:1211,搜「50和500之间」)。

  18. 出处:「第2章」第 1217 段(text/09-ch02.txt:1217,搜「Answerwithonlyyesorno」)与第 1220 段(text/09-ch02.txt:1220,搜「核采样」)。

  19. 出处:「第2章」第 1235 段(text/09-ch02.txt:1235,搜「min-p」)。

  20. 出处:「第2章」第 1250 段(text/09-ch02.txt:1250,搜「停止token或停止词」)。

  21. 出处:「第2章」第 1320 段(text/09-ch02.txt:1320,搜「test-timecompute」)。同段亦提及集束搜索(beam search):每步保留若干最优候选的系统性多路生成。

  22. 出处:「第2章」第 1306 段(text/09-ch02.txt:1306,搜「平均对数概率」)。对数路径举例见第 1301 段附近(概率连乘改对数相加)。

  23. 出处:「第2章」第 1317 段(text/09-ch02.txt:1317,搜「30倍」)。Cobbe 等,“Training Verifiers to Solve Math Word Problems”,2021。

  24. 出处:「第2章」第 1323 段(text/09-ch02.txt:1323,搜「上限是400个输出」)与第 1323 段(text/09-ch02.txt:1323,搜「对数增长」)。斯坦福实验出自 Brown 等 2024。

  25. 出处:「第2章」第 1338 段(text/09-ch02.txt:1338,搜「自洽性」)。Wang 等 2023 提出;谷歌评测 Gemini MMLU 时采样 32 个输出投票,见第 1344 段。

  26. 出处:「第2章」第 1367 段(text/09-ch02.txt:1367,搜「文本转SQL」)。语义解析即把自然语言翻成形式语言的解析任务。

  27. 出处:「第2章」第 1460 段(text/09-ch02.txt:1460,搜「99.99%」)。Bottaro 与 Ramgopal,LinkedIn 工程博客,2024。

  28. 出处:「第2章」第 1463 段(text/09-ch02.txt:1463,搜「更少的输出token」)。

  29. 出处:「第2章」第 1475 段(text/09-ch02.txt:1475,搜「仅保留满足约束条件的token」)。

  30. 出处:「第2章」第 1487 段(text/09-ch02.txt:1487,搜「语法规则」)与第 1490 段(text/09-ch02.txt:1490,搜「更好地遵循指令上」)。

  31. 出处:「第2章」第 1540 段(text/09-ch02.txt:1540,搜「绝不会是零」)。

  32. 出处:「第2章」第 1577 段(text/09-ch02.txt:1577,搜「缓存答案」)。随机种子的说明在同一段。

  33. 出处:「第2章」第 1537 段(text/09-ch02.txt:1537,搜「缺乏事实依据」)。幻觉概念在 NLG 领域 2016 年已有研究;律师提交虚假判例被罚案例见第 1601 段。

  34. 出处:「第2章」第 1613 段(text/09-ch02.txt:1613,搜「自我欺骗」)。DeepMind Ortega 等 2021 提出;“Chip Huyen is an architect” 续写例子在第 1613 段。

  35. 出处:「第2章」第 1637 段(text/09-ch02.txt:1637,搜「内部知识与标注员的知识不匹配」)。Leo Gao,“Behavior Cloning is Miscalibrated”,2021。

  36. 出处:「第2章」第 1640 段(text/09-ch02.txt:1640,搜「严厉地惩罚」)与第 1643 段(text/09-ch02.txt:1643,搜「加剧了幻觉」)。Schulman 演讲提出验证与更好的奖励函数两条路;InstructGPT 图 2-26 显示 RLHF 版本幻觉更多但整体更受人类青睐。

  37. 出处:「第2章」第 811 段(text/09-ch02.txt:811,搜「98%」)。InstructGPT 论文按资源占比推算。

  38. 出处:「第2章」第 1652 段(text/09-ch02.txt:1652,搜「不知道」)。作者建议的两条提示词缓解术:允许承认无知、压缩回答长度。