← 返回深度解读总览

《GLM-130B: An Open Bilingual Pre-trained Model》深度解读报告

论文:Aohan Zeng, Xiao Liu, et al.(清华大学 & 智谱AI)· ICLR 2023 · arXiv:2210.02414

数据依据:00-源数据提取.md(全部数字与原文一致;「(推断)」处为分析者推理补充)

收录节点:E3 对齐与开源爆发 2022H2–2023 · 国内千亿开源启蒙之作

摘要

本文解读清华大学与智谱AI 于 2022 年 10 月发布、发表于 ICLR 2023 的《GLM-130B》。论文的核心论断是:在 GPT-3 等 100B 级模型"不可见、不可训练、不可复现"的封闭格局下,开源社区需要一个质量至少齐平 GPT-3 (davinci) 的千亿级双语预训练模型——而真正拦路的不在某一个技术点,而是预训练效率、数值稳定性与收敛性上的多重意外挑战。作者以自研的 GLM 双向空白填充架构为骨干,通过 DeepNorm-based Post-LN 解决深层网络的值尺度爆炸、通过 PB-Relax 缓解 FP16 注意力分数溢出、通过 Embedding Layer Gradient Shrink(EGS)压制 embedding 层的异常梯度尖峰,仅用 96 台 DGX-A100、60 天访问窗口完成 130B 参数、400B tokens 的训练。最终成绩单:LAMBADA zero-shot 以双向注意力刷新纪录达 80.2%(超过 GPT-3 与 PaLM 540B)、Pile 平均 BPB 0.634 优于 GPT-3 (0.742) 与 Jurassic-1 (0.650)、MMLU 5-shot 44.8 追平 GPT-3 (43.9)、中文 CLUE/FewCLUE 12 任务 zero-shot 全面超越 ERNIE Titan 3.0 (260B)。更具工程史意义的是其普惠推理路线:INT4 权重量化几乎无损(MMLU 44.75→44.80),推理显存压至约 70GB,使 4×RTX 3090 或 8×RTX 2080 Ti 即可部署千亿模型,解码较 Huggingface/BLOOM-176B 快 7–8.4×。(推断)它对国内大模型生态的意义近似"第一座灯塔":证明了中国团队不仅能追训千亿模型,还能在架构选择与落地路径上给出独立于硅谷主流叙事的答案。

一、问题定位:封闭的千亿俱乐部与三重工程深渊

1.1 论文要解决的问题

2022 年中,能力最强的语言模型全部锁死在闭源 API 之后:GPT-3 (175B) 不开放权重,PaLM (540B) 是 Google 私产,学界与企业既无法下载、无法微调、也无法审计。开源阵营的第一次反攻——OPT-175B(Meta)与 BLOOM-176B(BigScience)——虽然放出了权重,但二者在公开复盘中的共同遭遇揭示了更深的问题:千亿规模的预训练不是"堆卡就能跑",而是在效率、稳定性、收敛性三个方向上同时爆发的工程深渊。论文开篇即将自己的任务定义为:开源一个"质量至少齐平 GPT-3 (davinci)"的 100B 级双语模型,并且要把路上踩过的每一个坑都记录下来。

这个定位包含三个子问题的乘积:

1.2 在开源爆发谱系中的位置

维度OPT-175BBLOOM-176BGLM-130B
架构GPT 式 decoder-onlyGPT 式 decoder-onlyGLM 双向空白填充
语言英文为主多语(46 语种)中英双语平衡
规模175B176B130B(单 A100 节点 FP16 可容)
附加卖点—多语语料INT4 消费级推理 + 稳定性方法论

(推断)GLM-130B 是三者中唯一把"架构差异"作为核心变量的——当 OPT 与 BLOOM 都沿用 GPT 单向范式时,清华团队押注双向注意力,并把收益直接打在 LAMBADA 与 BIG-bench 的成绩单上。这使它不只是"又一个开源模型",而是一次对"GPT 范式是否唯一正解"的结构性质询。

一句话小结:论文是三重复合题——造得出(规模+稳定)、说双语(中英齐平)、用得起(INT4 消费级推理);答案是一套完整的架构+训练+量化+开源方法论。

二、概念内核:四个核心概念逐一定义

2.1 GLM 与 autoregressive blank infilling(自回归空白填充)

术语表定义:对序列 x=[x1..xn],采样文本片段替换为 mask token 形成 x_corrupt,模型自回归地恢复被遮蔽片段;片段间可见性由随机排列决定;上下文部分使用双向注意力(unmasked context),区别于 GPT 风格单向因果注意力。

拆解:这是一个统一三大范式的架构赌注,两种 mask 各司其职:[MASK] 为句中短空白,行为类似 BERT/T5 的 span corruption;[gMASK] 为句尾随机长度长空白带 prefix context,行为类似 PrefixLM。(推断)其哲学是把 BERT 的双向理解与 GPT 的单向生成分装进同一模型的两种模式。收益在证据链上兑现——LAMBADA 80.2% 被归因于双向注意力,且做了干净的反向验证:把注意力改为单向后,性能即回落到与 GPT-3 / OPT-175B 对齐的水平。这是全文归因链条中最干净的一环。

2.2 DeepNorm-based Post-LN

定义:DeepNorm(x) = LayerNorm(α·x + Network(x)),α=(2N)1/2;对 ffn、v_proj、out_proj 采用 (2N)-1/2 Xavier normal 初始化,bias 全零。

拆解:稳定性工程第一支柱。作者实测发现 Pre-LN / Post-LN / Sandwich-LN 三种主流方案均无法稳定支撑 100B 级训练(图3a,30+ 次失败试验)。深层 Pre-LN 的病理是主体支路 value scale 随深度极大化。DeepNorm 通过放大残差主干 + 缩小分支初始化,使梯度范数小且早期不尖峰(图3b)。(推断)这宣告了小模型时代"Pre-LN 免调参即稳"的经验在百亿到千亿的相变点上完全失效——稳定性知识不可外推,必须重新实测。

2.3 Multi-task Instruction Pre-training(MIP,多任务指令预训练)

定义:在预训练阶段混入 5% tokens 的多任务提示数据,共 74 个 prompt 数据集(选自 Sanh et al. 2022 / Wang et al. 2022a),覆盖理解、生成、信息抽取;其余 95% 为自监督 blank infilling。

拆解:关键决策不在"混了多少",而在混在哪一阶段——置于预训练期而非微调期。若放微调阶段,指令格式会污染模型的通用能力(如无条件自由生成);仅占 5% 且前置,指令能力成为底色而不侵蚀主干。(推断)这是 2022 年对"instruction tuning 应该前置到何时"的早期系统性回答。副作用是作者据此划定了 zero/few-shot 评测收录标准——既是严谨也是局限(见第五章)。

2.4 Embedding Layer Gradient Shrink(EGS,嵌入层梯度收缩)

定义:word_embedding = word_embedding*α + word_embedding.detach()*(1-α),α=0.1;embedding 参数接收的梯度被缩至十分之一。

拆解:最"土"但最有效的一招。embedding 层梯度范数常比其他层大数个量级、早期剧烈波动(时间线记录曾达 170+)。EGS 几乎清除了整个预训练期的损失尖峰,延迟开销可忽略。(推断)它与 DeepNorm、PB-Relax 构成一份"千亿训练稳定性处方":每一味药对应一种已被实证的失效模式,"从故障倒推设计"的工程风格贯穿全文。

一句话小结:GLM 双向填充回答"用什么架构",DeepNorm/PB-Relax/EGS 回答"怎么活下来",MIP 回答"怎么让能力各就各位";架构创新与稳定性工程互为表里。

三、方法拆解:架构—数据—并行—稳定性的四层技术体系

3.1 架构配置:为"单节点可容"定制的 130B

3.2 数据与预训练目标配比

(推断)30/70 配比透露倾向性:生成型任务(gMASK 续写)占大头,因下游评测与应用以生成和零样本理解为主;[MASK] 保留三成以维持填空式判别能力。

3.3 平台感知的三维并行

(推断)"platform-aware" 值得强调:并行配置是针对 DGX-A100 40G 拓扑与带宽实测选出的。MFU 32.5% 且含重计算的账本式披露,在 2022 年的开源模型里属于罕见的高透明度。

3.4 稳定性工程:三个规模化病灶与三味药

#病灶解法
①Pre-LN 深层主体支路 value scale 极大DeepNorm-based Post-LN 使 value scale 有界
②注意力分数超出 FP16 表示范围CogView 的 PB-Relax(BLOOM 选 BF16 等路线各有代价)
③embedding 层梯度范数异常(大数个量级、剧烈波动)EGS(α=0.1)几乎清除全部预训练期尖峰

时间线的曲折:最初尝试注意力 softmax 用 FP32 计算即成功,随后 PB-Relax 变得多余——(推断)"哪个修复真正必要"只有在全量训练中才能甄别,离线小实验会保留多个冗余保险。最终战果:全程仅 3 次后期 loss divergence,靠缩小 shrink 因子至 0.1、降 LR、跳过噪声 batch 等人工介入恢复。图21 时间线完整记录了 checkpoint 恢复失败(分布式 dataloader 种子问题)、batch 过大伤收敛(≤12000 反而差)、Linux TCP 参数调优突破 6000 节点等真实事故,堪称第一份中文团队的千亿训练"黑匣子记录"。

3.5 普惠推理:FasterTransformer + INT4 量化

(推断)这条普惠路线的战略含义远超工程技巧:当对手把"更大"作为护城河时,GLM-130B 把"更可用"作为护城河——千亿模型第一次跑进消费级机房乃至个人工作站,开源的"开放"二字由此才落到实处。

一句话小结:四层栈——架构层(GLM+DeepNorm+RoPE+GLU)、数据层(2.2T 中英语料+95/5 配比)、系统层(4TP×8PP+43.3% HFU)、稳定层(三病灶三味药),末端接 INT4 普惠出口;每层都有明确取舍理由与实测依据。

四、证据链:五大基准战场逐一核验

4.1 语言建模:双向注意力的主场

4.2 MMLU(57 任务,5-shot):欠训练曲线上的追平

约 300B tokens 时逼近 GPT-3 (43.9),400B tokens 结束时达 44.8(图6)。作者特意用相同 prompt 复测 BLOOM-176B 保证可比性。结论呼应 Hoffmann 等(Chinchula 之前的欠训练判断):多数 LLM 仍处于欠训练状态——44.8 不是能力上限而是 token 预算下的截断值。(推断)这解释了 GLM-130B 能以更少参数追平 GPT-3:后者 300B tokens 的预算在今天看明显不足。

4.3 BIG-bench-lite(24 任务):zero-shot 断层与 few-shot 乏力并存

4.4 中文 CLUE/FewCLUE:跨语种降维打击

12 个中文任务 zero-shot 全面优于 ERNIE Titan 3.0 (260B)——当时最大中文单语模型(图8)。最亮眼的是 DRCD 与 CMRC2018 两个抽象式阅读理解:提升至少 260%。归因于预训练目标与 abstractive MRC 形式天然契合(blank infilling 本质就是"读上文、生成答案")。值得注意的是:中文任务并未纳入 MIP,这些成绩全部是跨语种 zero-shot 迁移的结果。

4.5 INT4 无损性与总体战绩

4.6 证据链的整体形态

证据呈现"三强一弱一独有"结构:强项在依赖上下文理解的任务(LAMBADA / BIG-bench zero-shot / 中文 MRC),且均有机制级归因(注意力反转实验 / MIP 分析 / 目标形式契合论证);弱项在 few-shot in-context 学习(增长乏力,如实报告);独有的是 INT4 无损与消费级可部署性——对手未设防的第二战场。评测协议上,作者因 MIP 自设收录标准并做污染过滤(LAMBADA/CLUE 做 13-gram 最小重叠检查;Pile/MMLU/BIG-bench 使用 held-out 或晚于语料抓取的数据集),透明度高但也意味着部分基准未被全量收录。

一句话小结:核心逻辑是"每个强项都配了一个消融或机制解释";few-shot 弱点如实披露并给三点推测;INT4 无损性则开辟了第二战场。

五、批判性分析:八条局限的分层审视

5.1 作者自述局限的深层含义

5.2 独立观察到的三个疑点

疑点一:「刷新纪录」的基准口径问题——LAMBADA 80.2% 建立在 zero-shot 设定的对比上,而双向注意力天然契合 LAMBADA"读全文猜末词"的形式。(推断)这更像一次"任务-架构亲和性"展示而非通用智力超越;作者用注意力反转实验堵住了归因漏洞值得肯定,但传播中往往丢掉这个限定。

疑点二:中英「平衡」背后的不对称证据——中文侧对比对象 ERNIE Titan 3.0 为闭源模型,zero-shot 协议是否完全对齐难以独立核验;英文侧 GPT-3 数字亦有转引成分。(推断)双语"齐平 davinci"方向可信(多数任务占优),但精确到小数点的跨模型比较应保留不确定性余量。

疑点三:70 层的「9×8−2」与架构搜索缺失互为因果——为 pipeline 均衡砍掉 2 层是合理系统决策,但意味着最终架构并非纯容量最优配置,而是系统约束下的妥协产物。结合局限⑦,GLM-130B 的配方(RoPE/GLU/DeepNorm 组合)应视为"一套可行解"而非"最优解"。

一句话小结:批判性弱点大多不是"做错了",而是"来不及做"——算力约束下无法消融、访问窗口内无法复跑、生态位上缺乏对等对照;诚实披露让缺口成为可继承的研究议程。

六、启示与影响:从启蒙之作看开源大模型的路径依赖

6.1 五条可迁移的启示

6.2 历史坐标与后续走向

总结

《GLM-130B》是一次在多重约束(60 天算力窗口、40G 显存上限、双语使命、消费级部署愿景)下完成的系统工程杰作:以 GLM 双向空白填充架构挑战 GPT 单向正统,以 DeepNorm+PB-Relax+EGS 三味药方穿越千亿训练的稳定性深渊,以 43.3% HFU 的并行效率在 96 台 A100 上 60 天完成 400B tokens 训练,最终交出 LAMBADA 80.2%(破纪录)、Pile BPB 0.634(最优)、MMLU 44.8(追平 GPT-3)、中文 CLUE 全面超越 ERNIE 260B 的成绩单,并用 INT4 量化把千亿模型送进 8×RTX 2080 Ti 的消费级机箱。它最持久的遗产不在某个具体数字,而在两件事:一是证明了架构路线的多样可能性与"部署反推训练"的设计哲学;二是树立了"把事故时间线当论文附录发表"的工程坦率文化。作为国内千亿开源的启蒙之作,它既是技术的,也是叙事的——此后中国开源大模型的每一次出发,都站在它标注过的坐标系上。