跳到主要内容

资源地图 — 开源阵营的模型、数据与工具箱

这一章讲三件事: 怎么读原书的模型检查点(训练到某个阶段存下来的模型文件, 拿来就能直接用或接着训)表——它不是流水账,是一场比赛的记分板; LLaMA 变体的真正分野(不在结构,在指令数据来源); 预训练与后训练两类数据各自的地图和清洗代价。 主走查: 假装我们要训一个 7B 中文对话模型,拿这张地图从头到尾选一遍型。

1. 模型检查点:表 3.1 里藏着一场比赛

原书第三章开列了截至 2024 年 1 月的主要开源模型1。单看模型名是流水账, 但表 3.1 的三列放在一起读,就变成一场比赛:参数量、显卡数、数据量。 挑几行对齐看:

模型参数算力投入喂的数据
BLOOM176B384 张 A100、105 天2341B token
LLaMA65B2048 张 A100、21 天31.4T token
Falcon180B4096 张 A1003.5T token

BLOOM 和 Falcon 参数差不多(176B vs 180B),Falcon 的数据是它的十倍; LLaMA 参数只有 BLOOM 的三分之一强,数据反而是它的四倍,显卡却用得更多—— 时间更短(21 天 vs 105 天)。每一代新模型的主要进步,就是同样的算力喂进更多的数据 ——这正是第 02 章 Chinchilla 结论(数据要配平)在产业界的落地现场。

这张表里还有两个值得记住的「非主流」:

  • Mixtral 8×7B:总参数 46.7B,但每个 token 只激活其中 12.9B, 推理速度是同水平 LLaMA-2 70B 的约 6 倍4——这是混合专家(MoE,第 05 章细讲) 「参数多、算得少」的路线;
  • DeepSeek-V3:671B 总参数、每 token 只激活 37B5;它的后继 R1(2025-01) 被原书标注(原书在文中点名)为「慢思考」模型的代表6——第 14 章会回来接这条线。

2. LLaMA 族谱:变体差的是数据,不是结构

LLaMA 本族三代都该认识:一代(2023-02,7/13/33/65B 四档)7、 二代(2023-07,上下文扩到 4096,加入了 RLHF 对话版)8、 三代(2024-04,词表(模型认识的全部 token 的名册)扩到 128K、预训练数据拉到 15T token)9

真正有意思的是变体:LLaMA 权重一开源,社区在它身上嫁接出了整片森林, 原书按目的分了四类10。表里有个词先说掉:语料,即当训练材料用的文本集合。

变体代表改的是什么
指令化Alpaca(Self-Instruct 合成 52K 条指令)、Vicuna(ShareGPT 真人对话)只换后训练数据,结构原封不动
中文化Chinese-LLaMA 等扩中文词表+中文语料(当训练材料用的文本集合)再预训练
领域化BenTsao(医学)、LAWGPT(法律)、TaoLi(教育)领域数据微调(在预训练好的模型上小补一刀)
多模态LLaVA、MiniGPT-4(底座都是 Vicuna)加视觉编码器(把图像压成数字向量的部件)

读法:变体≠换皮。 LLaVA 和 Vicuna 底子相同,能力南辕北辙, 差别全在喂了什么后训练数据——医学生 BenTsao 和通用助手 Alpaca 之间隔着的不是架构, 是一批医学语料。这条「数据决定分工」的判断,第 07 章会用本书作者自己的实验再证一遍。

3. 预训练数据:九成九要扔的原始网页

预训练数据的地图按来源分五类,每类记一个代表和一个数字:

代表资源记住的数
网页Common Crawl(2008 年起持续抓取,PB 级)11;C4、RefinedWeb、WanJuan-CC清洗存留率 1.38%
BookCorpus(1.1 万本小说)、Gutenberg(7 万本公版书)12份额小,但管长程连贯
学术arXiv(170 万篇)、S2ORC(1.36 亿篇)13公式与符号要专门处理
维基300+ 语言版本专业、多语、更新勤
代码The Stack(6TB、358 种语言)14提升结构化推理(01 章的 Codex 换挡就是它)
混合The Pile(825GB、22 个子集)15、ROOTS、Dolma按质量加权混料

1.38% 是这一节的题眼。 WanJuan-CC 从约 1300 亿份原始网页文档出发, 经过语言识别、质量过滤、敏感与去重四道工序,最终只保留 1.38%(约 400GB)16—— 原始网页九成九要被扔。 网页虽然是预训练语料的绝对大头, 但它是「矿石」不是「燃料」,第 04 章整章都在讲这道提纯工艺。

判断(我们的,不是书里的): 把这张表和第 02 章的「数据/参数比上修」连起来看, 会出现一个张力:法则说要喂更多数据,而最大的数据源 98.6% 是要扔的废料。 这解释了为什么数据工程(第 04 章)从脏活变成了核心竞争力—— 高质量数据的稀缺,是缩放法则道路上最先撞上的墙。 如果错,会错在: 如果合成数据(用模型生成训练数据)被证明可以无限替代自然文本, 这堵墙就不成立——原书在 2.2.3 提到过这条路(重复与合成),但当时还没有定论。

4. 后训练数据:三路来源,各有各的病

后训练(指令微调+对齐)的数据是另一张地图。原书分三路,外加一类对齐专用数据:

代表怎么来的
NLP 任务改写P3(270+ 数据集)、FLAN v2(≈2000 万条)17把传统 NLP 数据集套上任务描述任务面窄,缺「聊天感」
真人对话ShareGPT(用户与 ChatGPT 的真实对话)、OpenAssistant(9 万+ 人工问答、35 语言)、Dolly(1.5 万条员工标注(人一条一条亲手写/改))18真实或半真实ShareGPT 的答案其实是 ChatGPT 写的;质量参差
合成Self-Instruct(175 个人工种子任务滚出 52K)、Evol-Instruct(把简单题演化成难题)19让 LLM 生成并过滤多样性受种子与教师模型限制

第四类是对齐数据:不止「该怎么答」,还有「哪个答案更好」的成对偏好—— HH-RLHF(16.9 万对)、SHP(38.5 万条,取 Reddit 高赞评论)、PKU-SafeRLHF(33 万条安全标注)20。 它们是第 08 章 RLHF 的燃料:奖励模型就是靠「成对比较」训出来的, 所以这一类数据的格式天然是「一问两答+人选优」。

三路的病没有谁能免疫,实践里的主流做法是:FLAN v2 自己内部就给每个任务设了上限防独大, 下游训练时再按用途调配比(第 07 章讲怎么配)。

5. 库生态:一张选型表

工具箱按「干什么用」分三层21:

  • 载模型:Transformers(统一 API,一个模型三件套:模型+配置+分词(把文本切成 token)器)、 Datasets(数据加载)、Accelerate(把分布式代码简化);

  • 训大模型:DeepSpeed(微软,ZeRO 显存(显卡上的内存,训练时参数都得住这儿)优化——第 06 章的主角)、 Megatron-LM(英伟达,3D 并行+FlashAttention);

  • 作者的自家货:LLMSurvey(本书的英文综述原型)、YuLan-Chat-3(作者团队的 12B 对话模型, 后面几章的实验用例)、LLMBox(训练+评测一体的库,附带 GPU(显卡,训练与跑模型的主力硬件) 显存计算器,第 06 章算账时我们会用到它的思路)22

选型口诀:改模型找 Transformers,训大模型看 DeepSpeed/Megatron,跑评测用 LLMBox。

6. 主走查:用这张地图训一个 7B 中文对话模型

输入一个具体任务:我们想得到一个能中文对话的 7B 模型,预算只有几台 8 卡服务器。 拿本章地图从头走一遍:

第 ① 步 选底座(§1):不从头预训练(百卡·数月,第 01 章的账),
选 LLaMA-2 7B 当底座——表 3.1 里最省检查点之一。
中文不行?这正是下一步要补的。

第 ② 步 补中文(§2/§3):学 Chinese-LLaMA——扩中文词表,
拿中文语料再预训练一段。语料从 §3 选:网页(WanJuan-CC 清洗版,
记住它只有原始的 1.38%)+维基+少量书;照 LLaMA 的配比思路
网页占八成,但把中文份量调上去。

第 ③ 步 教对话(§4):后训练数据按用途混——
真人对话(ShareGPT 中文部分)给「聊天感」,
NLP 任务改写(FLAN 系)保住知识题的正确率,
不够就 Self-Instruct 合成一批补多样性。

第 ④ 步 选工具(§5):Transformers 载模型,DeepSpeed ZeRO 省显存
(具体省多少,第 06 章算),LLMBox 跑评测对照。

产出:一条「底座→中文化→对话化」的流水线,每一站的数据来源都指得到本章的表。

这条流水线就是原书第 3~8 章的行进路线的资源版:底座怎么训出来的(第 06 章)、 数据怎么洗的(第 04 章)、对话怎么教的(第 07、08 章)——后面每章都在把其中一站讲透。 (对照:复旦版教材的资源介绍分散在流水线各章;本书专设一章集中列资源, 是综述的「地图」写法——查得到、可对比,但不展开机制。机制全在后面各章。)

7. 作者的判断与证据

  • 表格的时效: 所有资源快照截至 2024 年 1 月(表 3.1 标题写明)1; 原书成书于 2025 年 1 月,其后发布的新模型(如 LLaMA-3.x、Qwen3)不在这张地图上。
  • 作者的立场: 原书明确说开源检查点「对推进 LLM 技术至关重要」1—— 这是综述作者的社区立场,和工业界闭源玩家的叙事不同,读资源章时值得带着这个滤镜。
  • 数据规模都是自报口径: 各数据集的 token 数(3.5T、15T、2000 万条)来自各自论文, 统计口径(去重前后、清洗前后)并不统一,横向比大小要小心。

8. 边界与局限

  • 资源章是快照不是机制:本章只回答「有什么、多大、从哪来」, 「怎么洗、怎么配、怎么用」分别在第 04、07 章。
  • 表 3.1 的「性能」列只给了模型自报的基准分,原书没有做独立复测; 独立评测的问题在第 15 章展开。
  • 部分资源有许可限制(LLaMA 系权重早期仅限研究使用),原书基本不讨论许可证—— 动手前要自己查。

9. 可带走的

  1. 表 3.1 的读法:参数、显卡、数据三列对着看,每代比的是同算力喂多少数据;
  2. LLaMA 变体的分野在后训练数据来源,不在模型结构;
  3. 原始网页的清洗存留率约 1.38%——网页是矿石不是燃料;
  4. 后训练数据三路:NLP 改写(知识)、真人对话(聊天感)、合成(多样性),各有各的病,实践靠混;
  5. 对齐数据的格式是「一问两答+偏好」——它是第 08 章奖励模型的燃料;
  6. 选型口诀:改模型找 Transformers,训大模型看 DeepSpeed/Megatron,跑评测用 LLMBox;
  7. MoE 路线(Mixtral/DeepSeek-V3):参数多、每 token 激活得少,是「算得快」的一种解法;
  8. 资源快照截至 2024-01,数字是各家自报口径。

10. 原文地图

主题原书章原文位置
表 3.1 与开源检查点总览3.1.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:7(搜「Basic statistical information」)
BLOOM 384 卡/105 天3.1.1 表 3.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:119(搜「384」)
LLaMA 2048 卡/21 天3.1.1 表 3.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:151(搜「2048 A100」)
LLaMA-2 发布与对齐3.1.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:657(搜「In July 2023」)
LLaMA-3 与 15T token3.1.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:659(搜「15T tokens」)
Mixtral MoE 46.7B/12.9B3.1.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:699(搜「46.7B」)
DeepSeek-V3 671B/37B3.1.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:705(搜「671B」)
R1 慢思考3.1.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:707(搜「slow-thinking」)
Qwen2.5 全系 18T3.1.1text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:693(搜「18T tokens」)
LLaMA 变体四类3.1.2text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:723(搜「Self-Instruct」) · 同文件 text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:727(搜「BenTsao」) · text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:729(搜「LLaVA」)
网页数据 Common Crawl/C4/RefinedWeb3.2.1text/11-ch03-02-3-2-pre-training-data-resources.txt:263(搜「Common Crawl」) · text/11-ch03-02-3-2-pre-training-data-resources.txt:25(搜「C4」) · text/11-ch03-02-3-2-pre-training-data-resources.txt:75(搜「RefinedWeb」)
WanJuan-CC 存留 1.38%3.2.1text/11-ch03-02-3-2-pre-training-data-resources.txt:277(搜「1.38%」)
书与学术数据3.2.2-3.2.3text/11-ch03-02-3-2-pre-training-data-resources.txt:145(搜「BookCorpus」) · text/11-ch03-02-3-2-pre-training-data-resources.txt:155(搜「Gutenberg」) · text/11-ch03-02-3-2-pre-training-data-resources.txt:165(搜「arXiv」)
代码数据 The Stack3.2.4text/11-ch03-02-3-2-pre-training-data-resources.txt:205(搜「The Stack」)
混合数据 The Pile/ROOTS/Dolma3.2.5text/11-ch03-02-3-2-pre-training-data-resources.txt:327(搜「825 GB」) · text/11-ch03-02-3-2-pre-training-data-resources.txt:235(搜「ROOTS」) · text/11-ch03-02-3-2-pre-training-data-resources.txt:245(搜「Dolma」)
NLP 任务改写 P3/FLAN3.3.1text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:37(搜「P3」) · text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:215(搜「Muffin」)
真人对话 ShareGPT/OpenAssistant/Dolly3.3.2text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:103(搜「ShareGPT」) · text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:223(搜「OpenAssistant」) · text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:111(搜「Dolly」)
合成 Self-Instruct/Evol-Instruct3.3.3text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:145(搜「Self-Instruct」) · text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:193(搜「Evol」)
对齐数据 HH-RLHF/SHP/PKU-SafeRLHF3.3.4text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:87(搜「HH-RLHF」) · text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:237(搜「SHP」)
库生态与作者自家工具3.4text/13-ch03-04-3-4-library-resources.txt:7(搜「Transformers」) · text/13-ch03-04-3-4-library-resources.txt:15(搜「DeepSpeed」) · text/13-ch03-04-3-4-library-resources.txt:23(搜「Megatron」) · text/13-ch03-04-3-4-library-resources.txt:35(搜「LLMBox」) · text/13-ch03-04-3-4-library-resources.txt:39(搜「YuLan-Chat-3」)

Footnotes

  1. 出处:「3.1.1 Publicly Available General LLM Checkpoints」第 7 段(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:7,搜「Basic statistical information」)。表 3.1 快照截至 2024 年 1 月;「对推进 LLM 技术至关重要」出自本节首段。 2 3

  2. 出处:表 3.1 BLOOM 行(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:119,搜「384」)。BLOOM:176B 参数、384 张 A100、训练 105 天。

  3. 出处:表 3.1 LLaMA 行(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:151,搜「2048 A100」)。LLaMA 65B:2048 张 A100、21 天、1.4T token。

  4. 出处:「3.1.1 Publicly Available General LLM Checkpoints」(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:699,搜「46.7B」)。Mixtral 8×7B 总参 46.7B、每 token 激活 12.9B,推理速度约为 LLaMA-2 70B 的 6 倍。

  5. 出处:「3.1.1 Publicly Available General LLM Checkpoints」(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:705,搜「671B」)。DeepSeek-V3:671B 总参数,每 token 激活 37B。

  6. 出处:「3.1.1 Publicly Available General LLM Checkpoints」(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:707,搜「slow-thinking」)。DeepSeek-R1(2025-01)基于 V3 放大强化学习,原书以「slow-thinking」概括其特征。

  7. 出处:「3.1.1 Publicly Available General LLM Checkpoints」(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:655,搜「first-generation」)。LLaMA 一代 2023 年 2 月发布,7/13/33/65B 四档。

  8. 出处:「3.1.1 Publicly Available General LLM Checkpoints」(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:657,搜「In July 2023」)。LLaMA-2:上下文 4096,引入 GQA 与 RLHF 训练的对话版。

  9. 出处:「3.1.1 Publicly Available General LLM Checkpoints」(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:659,搜「15T tokens」)。LLaMA-3:8B/70B 两档,词表扩至 128K,预训练数据 15T token。

  10. 出处:「3.1.2 Publicly Available Derivative LLM Checkpoints」(text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:723,搜「Self-Instruct」;同文件 text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:727,搜「BenTsao」;text/10-ch03-01-3-1-publicly-available-model-checkpoints.txt:729,搜「LLaVA」)。四类划分(指令化/中文化/领域化/多模态)是我们对原书所列变体的归纳。

  11. 出处:「3.2.1 Pre-training Data Resources: Web Pages」(text/11-ch03-02-3-2-pre-training-data-resources.txt:263,搜「Common Crawl」)。Common Crawl 2008 年起抓取,PB 级原始数据;CCNet 是 Meta 的清洗流水线。

  12. 出处:「3.2.2 Books」(text/11-ch03-02-3-2-pre-training-data-resources.txt:145,搜「BookCorpus」;text/11-ch03-02-3-2-pre-training-data-resources.txt:155,搜「Gutenberg」)。BookCorpus 约 1.1 万本未出版小说;Gutenberg 约 7 万本公版书。

  13. 出处:「3.2.3 Academic Materials」(text/11-ch03-02-3-2-pre-training-data-resources.txt:165,搜「arXiv」)。arXiv 约 170 万篇;S2ORC 约 1.36 亿篇。

  14. 出处:「3.2.4 Code」(text/11-ch03-02-3-2-pre-training-data-resources.txt:205,搜「The Stack」)。The Stack 6TB、358 种编程语言。

  15. 出处:「3.2.5 Aggregated Datasets」(text/11-ch03-02-3-2-pre-training-data-resources.txt:327,搜「825 GB」)。The Pile 825GB、22 个子集按质量加权。

  16. 出处:「3.2.1 Pre-training Data Resources: Web Pages」(text/11-ch03-02-3-2-pre-training-data-resources.txt:277,搜「1.38%」)。WanJuan-CC 从约 1300 亿份文档清洗后保留 1.38%(约 400GB)。

  17. 出处:「3.3.1 Instruction Datasets from NLP Task Collections」(text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:37,搜「P3」;text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:215,搜「Muffin」)。P3 聚合 270+ 数据集;FLAN v2 含 Muffin/T0-SF/CoT/NIV2 四子集,每个任务设样本上限。

  18. 出处:「3.3.2 Instruction Datasets from Daily Human-Chat Interactions」(text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:103,搜「ShareGPT」;text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:223,搜「OpenAssistant」;text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:111,搜「Dolly」)。OpenAssistant 约 9.2 万问题、6.9 万人工回答、35 种语言;Dolly 约 1.5 万条员工标注。

  19. 出处:「3.3.3 Synthetic Instruction Datasets」(text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:145,搜「Self-Instruct」;text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:193,搜「Evol」)。Self-Instruct:175 个人工种子任务迭代生成;Evol-Instruct:深度/广度两条演化轴。

  20. 出处:「3.3.4 Human Preference Datasets」(text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:87,搜「HH-RLHF」;text/12-ch03-03-3-3-commonly-used-post-training-datasets.txt:237,搜「SHP」)。HH-RLHF 约 16.9 万;SHP 约 38.5 万(Reddit 高赞);PKU-SafeRLHF 约 33 万专家标注。

  21. 出处:「3.4 Library Resources」(text/13-ch03-04-3-4-library-resources.txt:7,搜「Transformers」;text/13-ch03-04-3-4-library-resources.txt:15,搜「DeepSpeed」;text/13-ch03-04-3-4-library-resources.txt:23,搜「Megatron」)。三层划分是我们按用途归纳的。

  22. 出处:「3.4 Library Resources」(text/13-ch03-04-3-4-library-resources.txt:35,搜「LLMBox」;text/13-ch03-04-3-4-library-resources.txt:39,搜「YuLan-Chat-3」)。LLMBox 含训练与评测两部分;YuLan-Chat-3 是作者团队 12B 模型(1.68T token 预训练)。