Happy-LLM — 本课题摘录
读了哪一章: 第四章(大语言模型)。 读的是我们自己的中文拆解,不是原文。全书九章,其余本轮没读。
为什么现在才补这一篇:和上一篇同样的原因——账本第一轮把它判成「留给需要讲『模型是什么』时」。而「一个只会续写的东西凭什么能听懂我的话、凭什么能决定用哪个工具」,答案全在这一章。
它对本课题回答了什么
最关键的一条:agent 依赖的是「指令遵循」这一条能力
指令遵循:用自然语言描述的多任务数据去 微调之后,模型在没见过的指令上也能照办。
「没见过的」这三个字是关键——不是「你教它写周报它就会写周报」,而是教过它几十种任务之后,它对第几百种任务也能上手。
书里的原话:今天的智能体,乃至未来可能出现的全能助理,本质上依赖的都是指令遵循能力。 (依据:书 · Happy-LLM(从零开始的大语言模型原理与实践教程) §第四章 —— 指令遵循是「用自然语言描述的多任务数据微调后,模型在没见过的指令上也能照办」;书明确写道今天的智能体乃至未来的全能助理,本质上依赖的都是指令遵循能力)
这一句把本课题最底下的因果补上了: 模型能当 agent 的大脑,不是因为它「聪明」,是因为它被专门训练成「你说什么它照办」。
推论一:我们写在系统提示里的那些规矩之所以有用,靠的就是这条能力。 推论二:这条能力有强弱之分,所以同一套循环换个模型可能就跑不动了—— 这正好解释了为什么有实现要「按模型伪装成它熟悉的外壳」(依据:本库摘录 · open-interpreter)、 为什么有实现专门给弱模型准备了文本降级路径(依据:本库摘录 · crewai)。
第二条:上下文学习 —— 为什么「把工具清单写进提示」这件事能成立
上下文学习:模型只要拿到自然语言写的指令或者几个例子,就能理解上下文并给出对应输出,不需要任何额外训练,也不改动任何参数。
对照着看最清楚:
| 老办法(预训练 + 微调) | 上下文学习 | |
|---|---|---|
| 做一个新任务要什么 | 标注一千到几万条数据 + 微调一次 | 写一段话 |
| 算力 | 五亿参数的小模型微调也要 10GB 以上显存 | 零 |
| 模型参数 | 被改动 | 一个不改 |
(依据:书 · Happy-LLM(从零开始的大语言模型原理与实践教程) §第四章 —— 上下文学习由 GPT-3 首次引入——模型拿到自然语言写的指令或几个例子就能给出对应输出,不需要额外训练也不改动任何参数;而老范式做一个新任务要标注一千到几万条数据并微调一次)
本课题第一个决定(「一轮的输入怎么拼」)的合法性就建立在这一条上: 我们能靠「往那段话里塞东西」改变它的行为,而不用碰模型本身。
工具清单、系统提示、示例、历史——全都是在用这条能力。 也正因为如此,「摆在哪一格」才会有那么大影响(依据:本库摘录 · onyx)。
书还指出这直接催生了一个新活儿,中文叫提示工程——意思就是:调整你给模型的那段话,把它的能力激发出来。
它顺 便把「提示」这个词定死了:你交给模型的那一整段输入文字,包括你的问题、你给的例子、你提的要求。
第三条:思维链 —— 为什么循环里要有「想」这一步
问题很实在:传统模型一步就要给出答案,而多步计算需要中间过程。
做法:在提示里放进带中间推理步骤的示例,让模型也照着一步步写,最后才给答案。
效果:同一道题,把「一步算完」换成「很多步各走一小步」,每一步都是一眼能看出的,正确率大幅上升。 (依据:书 · Happy-LLM(从零开始的大语言模型原理与实践教程) §第四章 —— 思维链是在提示里放进包含中间推理步骤的示例让模型照着一步步写、最后才给答案;书对其来源给了一个明确标注为推测的说法——据推测这种能力可能是通过对代码的训练获得的)
这解释了 ReAct 那套「思考 / 行动 / 观察」里,「思考」那一行为什么不是装饰。 中间步骤写在输出里,等于给了模型一张草稿纸。
而且它跟本课题轴 1 咬合:草稿纸是要占地方的—— 有实现专门把「思考」内容做成对用户可见、对模型不可见(依据:本库摘录 · goose), 就是在管这张草稿纸的成本。
书对思维链的来源给了一个明确标注为推测的说 法:据推测这种能力可能是通过对代码的训练获得的。 拆解文档提醒:这是全书少见的、作者主动标注了不确定性的地方,值得记住它的措辞。
第四条:三段训练 —— 「它为什么会听话」不是天生的
① 预训练 海量无标注文本上做接龙 → 拿到知识和语感
② 有监督微调 成对的「指令 → 回复」数据 → 学会听懂人话、按指令答
③ 人类反馈 人给回复排序,训一个打分模型 → 学会答得让人满意
书里的比喻值得原样带走:预训练 = 把所有基础知识教给这个学生;有监督微调 = 教他怎么读题、怎么解题;人类反馈强化学习 = 让他真的做练习,老师批改,反思错的、强化对的。 (依据:书 · Happy-LLM(从零开始的大语言模型原理与实践教程) §第四章 —— 完整训练是三段——预训练( 海量无标注文本做接龙,拿到知识和语感)、有监督微调(成对的指令与回复数据,学会按指令答)、人类反馈强化学习(人给回复排序训出打分模型再去调);三步各管「懂多少 / 听不听得懂指令 / 答得合不合人意」,缺哪一步就缺哪一样)
这张表对讲义极有用:它把「续写机器」和「能对话的助手」之间那一步显式化了。 第 ① 段结束时它只会接话;第 ② 段之后它才开始「照办」;第 ③ 段之后它才「答得让人舒服」。
本课题所有对模型的指望,吃的都是第 ② 段的饭。
一条必须带上限定的:涌现
书里把涌现当既定事实用:同样的架构和练习题下,某些能力在小模型上不明显、在大模型上特别突出;书打的比方是水到 100 度突然变成气体。
但拆解文档补了一句书里没有的:这个说法有正式的反对意见。 (依据:书 · Happy-LLM(从零开始的大语言模型原理与实践教程) §第四章 —— 书把涌现能力当既定事实并用相变作比;拆解文档补充指出该说法有 2022 年的正式出处、也有 2023 年的反驳论文——反驳认为那种突变可能只是评测指标造成的错觉,换成会给部分分的指标后曲线是平滑的)
拆解文档给的务实读法我们照搬: 「规模变大能力变强」可以采信;「存在无法预测的能力跃迁」要打问号。
它给的解释很好懂:一道多步计算题只有全对才给分,模型从「 错三步」进步到「错一步」时得分仍是 0, 等它一步不错,得分突然从 0 跳到 1——能力是平滑长上去的,分数是跳的。
讲义讲到这里必须原样保留这个限定。
它没回答什么
- 循环怎么写——这一章讲的是模型本身,不讲外面那圈。
- 工具调用的具体机制——不在这一章。
- 其余八章——本轮没读。
坑与代价
- 它是一本讲怎么造模型的书,不是讲怎么用模型的书。 对本课题它只提供地基,不提供做法。
- 「涌现」这个词在书里被当地基用,而它本身有争议。引用时必须带上反对意见,否则就是把推测讲成了定论。
- 书里的门槛与参数量都是写作当时的口径(狭义「数百亿以上」、公认起点 1750 亿参数)。
判断(无锚): 讲义引这类数字时要连年份一起写,否则半年后就成了错的。 如果错,会错在: 如果我们讲的是「量级关系」而不是「具体数」(比如「参数从十几亿涨到上千亿之后这个能力才出现」),那这个量级关系比具体数稳得多,不必逐个标年份。