从 Attention 到 LLM:GPT、BERT、Claude 如何用注意力机制改变 AI

从 Attention 到 LLM:GPT、BERT、Claude 如何用注意力机制改变 AI

前两篇我们拆解了注意力机制和 Transformer 架构。今天我们要看一个更宏大的图景:Transformer 如何演化成今天的 GPT、BERT、LLaMA、Claude 等大语言模型?

一、Transformer 之后的三条路线

2017 年 Transformer 诞生后,AI 社区分成了三个方向:

                    Transformer (2017)
                         │
         ┌───────────────┼───────────────┐
         ▼               ▼               ▼
    Encoder-only    Decoder-only    Encoder-Decoder
         │               │               │
         ▼               ▼               ▼
       BERT            GPT              T5
   (2018)          (2018)           (2019)
         │               │               │
         ▼               ▼               ▼
  理解型任务       生成型任务        序列到序列
  ·文本分类       ·文本生成         ·翻译
  ·问答           ·对话             ·摘要
  ·信息抽取       ·代码生成         ·问答

二、BERT:让 AI 像完形填空一样学习

2018 年,Google 发布了 BERT(Bidirectional Encoder Representations from Transformer)。

BERT 的核心思想是:像做完形填空一样学习语言。

训练时,随机遮住句子中 15% 的 词,让模型根据上下文预测被遮住的词:

原始句子:我 喜欢 吃 苹果
                  ↓ 随机遮住
训练输入:我 喜欢 [MASK] 苹果
                  ↓ 模型预测
预测结果:吃

这种训练方式叫做 Masked Language Model(MLM)。此外,BERT 还使用了 Next Sentence Prediction(NSP) 任务——判断两个句子是否是相邻的——来帮助模型理解句子间的关系。

BERT 的双向注意力

与 GPT 只能看到左边不同,BERT 的 Encoder 使用双向注意力——每个词可以同时看到左右两边的上下文:

GPT(单向):"我" → "喜欢" → "吃" → 预测下一个词
BERT(双向):"我" ↔ "喜欢" ↔ "吃" ↔ "苹果" → 预测被遮住的词

这种双向感知让 BERT 在理解任务上非常强,但在生成任务上无能为力(因为它没有被训练成生成模型)。打个比方:BERT 像一个阅读理解高手,能精准提炼文章要点,但要让他写一篇原创文章就力不从心了。

BERT 的影响与实际应用

BERT 发布后,在 11 项 NLP 任务上刷新了纪录。它证明了:预训练 + 微调的模式可以大幅提升 NLP 效果。

BERT 的实际应用范围极广,包括:

  • 搜索引擎:Google 在 2019 年把 BERT 用于搜索排序,显著提升了长尾查询的准确率
  • 情感分析:判断评论是正面还是负面
  • 命名实体识别:从文本中提取人名、地名、机构名
  • 问答系统:根据上下文回答问题(如 SQuAD 基准测试)
  • 垃圾邮件检测:自动过滤有害邮件

BERT Large 版本(3.4 亿参数)使用了 BooksCorpus(800 万词)和英文维基百科(25 亿词)进行训练,这在当时是史无前例的规模。

三、GPT:让 AI 像人类一样写作

2018 年,OpenAI 发布了 GPT(Generative Pre-trained Transformer)。

GPT 的核心思想是:像人类写字一样,从左到右逐词生成。

GPT 只使用了 Transformer 的 Decoder 部分,训练任务是下一个词预测

训练数据:我 喜欢 吃 苹果
训练过程:
  输入 "我" → 预测 "喜欢"
  输入 "我 喜欢" → 预测 "吃"
  输入 "我 喜欢 吃" → 预测 "苹果"

这种训练方式叫做 Causal Language Model(CLM),也叫自回归生成。

GPT 的进化之路

版本 年份 参数量 关键突破
GPT-1 2018 1.17亿 证明预训练+微调有效
GPT-2 2019 15亿 展示大规模模型的生成能力
GPT-3 2020 1750亿 涌现 In-context Learning,无需微调
ChatGPT 2022 基于 GPT-3.5 RLHF 对齐,对话式 AI 爆发
GPT-4 2023 未公开 多模态、更强的推理能力
GPT-4o 2024 未公开 原生多模态、实时对话
GPT-4 Turbo 2024 未公开 更低价格、更长上下文(128K)

GPT-3 是一个分水岭。研究发现,当模型大到一定程度后,它会**涌现(emerge)**出训练时没有明确教授的能力:

  • In-context Learning:给几个例子就能学会新任务
  • Chain-of-Thought:通过「逐步推理」解决复杂问题
  • 代码生成:能写功能正确的程序

RLHF:让模型学会「好坏」

ChatGPT 成功的关键不是模型本身更大,而是 RLHF(Reinforcement Learning from Human Feedback)——用人类反馈做强化学习:

第一步:监督微调(SFT)
   → 在人工标注的对话数据上微调 GPT-3
   
第二步:训练奖励模型(Reward Model)
   → 人类对多个模型输出排序(好→坏)
   → 训练一个模型来模拟这个排序偏好
   
第三步:强化学习优化(PPO)
   → 用奖励模型的评分作为奖励信号
   → 用 PPO 算法优化语言模型的策略

RLHF 的核心意义在于:它让模型不再是「概率上最可能的输出」,而是「人类认为最好的输出」。这是从「能说」到「说得好」的关键一步。

Scaling Law:OpenAI 的另一个发现

OpenAI 在训练 GPT 系列时发现了 Scaling Law(缩放定律):模型参数量、数据量、计算量三者按固定比例增加时,模型的 Loss 会可预测地降低。这意味着 只要投入更多资源,模型就会变强——这直接驱动了后来「万卡集群」的军备竞赛。

四、LLaMA:让大模型跑在个人电脑上

2023 年,Meta 发布了 LLaMA(Large Language Model Meta AI)。

LLaMA 的核心贡献不是架构创新,而是训练效率

用更多数据训练更小的模型,效果可以媲美用更少数据训练更大的模型。

模型 参数量 训练数据
GPT-3 1750亿 3000亿 tokens
LLaMA-7B 70亿 1.4万亿 tokens
LLaMA-65B 650亿 1.4万亿 tokens

LLaMA-65B 的效果接近 GPT-3,但参数量只有 GPT-3 的 1/27,训练成本大幅降低。

LLaMA 的技术亮点

  1. 仅因果解码:和 GPT 一样,只用 Decoder
  2. RMSNorm:比 LayerNorm 更简单的归一化,去掉均值中心化,只保留均方根缩放,训练更稳定
  3. RoPE 位置编码:旋转位置编码,通过旋转矩阵编码相对位置信息,更好地处理长序列
  4. SwiGLU 激活函数:门控线性单元的变体,比 ReLU 更平滑,减少「死神经元」问题
  5. Grouped Query Attention:减少 KV Cache 的内存占用,推理时显存需求仅为标准 MHA 的 1/8

开源生态与推理优化

LLaMA 的开源发布引发了一场革命:Llama 2、Llama 3、Alpaca、Vicuna 等开源模型如雨后春笋般涌现。开源社区在此基础上发展出了许多关键技术:

  • LoRA 微调:只训练低秩适配器(adapter),7B 模型在消费级显卡(如 RTX 3090)上就能完成微调,微调参数量不到全量微调的 1%
  • GGUF 量化:把模型权重从 FP16 压缩到 4-bit 甚至 2-bit,一张 8GB 显存的手机就能运行 7B 模型,普通笔记本电脑也能跑 13B 模型
  • llama.cpp 推理引擎:纯 C++ 实现的推理框架,无需 GPU 即可运行,让大模型能在树莓派、MacBook 等消费级设备上高效运行
  • DPO 对齐:Direct Preference Optimization,绕过奖励模型直接用偏好数据优化策略,比 RLHF 流程更简单、训练更稳定

这些技术让「每个开发者、每个小型团队都能用上高性能大模型」变成了现实,极大降低了 AI 应用的门槛。今天开源 LLM 社区의 Hugging Face 平台已托管超过 50 万个模型。

五、Claude:宪法 AI 与 AI 对齐

2023 年,Anthropic 发布了 Claude。Claude 在架构上和 GPT 类似(Decoder-only),但在训练方法上有重要创新。

宪法 AI(Constitutional AI)

Claude 使用了一种叫做 Constitutional AI(CAI) 的训练方法:

传统 RLHF:
  人类标注员 → 标注偏好 → 训练奖励模型 → 强化学习

宪法 AI:
  一组「宪法原则」→ AI 自我批评 → 自我改进 → 更安全、更有用

宪法 AI 的核心思想是:让 AI 根据一组明确的原则来自我改进,而不是完全依赖人类的主观判断。

宪法 AI vs RLHF:为什么 Constitutional AI 更安全?

RLHF 的一个隐含假设是:人类的偏好判断总是正确的。但现实中,人类标注员可能给出不一致、甚至有害的偏好。宪法 AI 的优势在于:

  1. 原则透明:宪法原则是公开可审计的,所有人都能看到模型被哪些原则约束
  2. 一致性:同一原则对所有请求一视同仁,不受标注员心情影响
  3. 自我修正:AI 在训练时会主动发现并纠正自己违背原则的倾向

例如,当用户提问有害内容时,传统 RLHF 训练的模型可能因为「标注员认为拒绝有害请求是好的」而拒绝。而宪法 AI 训练的模型则会根据「不应该帮助人类伤害他人」这一明确原则来推理拒绝,即使面对边缘情况也能做出一致的判断。

Claude 的特点

  • 长上下文:支持 200K tokens 的上下文窗口(约 15 万字中文),相当于一整本小说。这得益于 ALiBi 位置编码和分层注意力机制,让模型能有效提取长文档中的关键信息
  • 代码能力:在编程任务上表现出色,Claude 3.5 Sonnet 在 HumanEval 基准上得分超过 92%,能理解复杂的代码库并进行重构
  • 安全性:通过宪法 AI 训练,拒绝有害请求的能力更强,同时在有益任务和无害性之间取得更好的平衡(减少「过度拒绝」问题)
  • 工具使用:能调用代码解释器、搜索引擎等外部工具,形成「思考→工具调用→分析结果→输出」的 Agent 工作流(Artifacts 功能)

六、现代 LLM 的共同架构

今天的 LLM(GPT-4、Claude、LLaMA-3、Gemini)虽然细节不同,但共享以下核心架构:

┌─────────────────────────────────────────┐
│           现代 LLM 架构                  │
├─────────────────────────────────────────┤
│  输入                                   │
│    ↓                                    │
│  Tokenizer(分词器)                     │
│    ↓                                    │
│  Embedding(词嵌入)                     │
│    ↓                                    │
│  Transformer Blocks × N                 │
│    ├── Multi-Head Attention             │
│    ├── Feed-Forward Network             │
│    ├── RMSNorm / LayerNorm             │
│    └── RoPE 位置编码                    │
│    ↓                                    │
│  Output Head(线性层 + Softmax)         │
│    ↓                                    │
│  输出(下一个词的概率分布)               │
└─────────────────────────────────────────┘

七、注意力机制的演进

从 2017 年到今天,注意力机制本身也在不断进化。每一次演进都是在解决一个核心矛盾:注意力的计算复杂度和内存占用随序列长度呈二次方增长

训练侧的优化

演进 说明
Multi-Head Attention 原始 Transformer,多个头并行学习不同特征
Flash Attention 优化 GPU 内存访问模式(Tiling),减少 HBM 读写,训练速度提升 2-4 倍
Sparse Attention 只计算部分注意力(如 Longformer 的全局+局部),降低长序列计算量

推理侧的优化:KV Cache

文本生成时,模型每生成一个新词都要用到之前所有词的 Key 和 Value。为了避免重复计算,推理引擎会缓存这些 KV 向量——这就是 KV Cache

生成第 N 个词时:
  不用重新算:K₁, K₂, ..., Kₙ₋₁(已有缓存)
  只需计算:Kₙ(新词的 K)

KV Cache 的内存占用是 2 × num_heads × head_dim × seq_len × num_layers,对于 70B 模型,生成长文本时 KV Cache 可能占满整张 GPU 显存。

KV Cache 优化技术 思路 代表模型
Multi-Query Attention(MQA) 所有查询头共享同一个 KV GPT-3 PaLM
Grouped Query Attention(GQA) K/V 头分组共享 LLaMA-2, LLaMA-3
PagedAttention / vLLM 像操作系统分页一样动态管理 KV Cache 显存 vLLM 框架
Sliding Window Attention 只关注最近 N 个 token,丢弃远距离上下文 Mistral

其中 vLLM 的 PagedAttention 被认为是推理领域近年最重要的工程突破之一——它把 KV Cache 分成固定大小的「页」,按需分配、动态回收,让 GPU 显存利用率接近 100%,2-4 倍提升推理吞吐量。

八、从 Attention 到 LLM 的演进时间线

timeline
    title 从 Attention 到 LLM 的演进
    2014 : Bahdanau Attention<br/>首次将注意力引入 Seq2Seq
    2017 : Transformer<br/>Attention Is All You Need
    2018 : BERT<br/>双向 Encoder 预训练
    2018 : GPT-1<br/>自回归 Decoder 生成
    2019 : GPT-2<br/>大规模生成模型,15 亿参数
    2020 : GPT-3<br/>1750亿参数,涌现能力
    2022 : ChatGPT<br/>RLHF 对齐,对话式 AI 爆发
    2023 : LLaMA<br/>开源大模型浪潮
    2023 : GPT-4<br/>多模态,更强推理,混合专家
    2024 : Claude 3<br/>长上下文,工具使用,Agent
    2025 : DeepSeek-V3<br/>MoE 架构,高效推理
    2025 : LLaMA 4<br/>大规模 MoE + 长上下文 MoE

未来趋势:MoE 与多模态

从时间线可以看出两个明显趋势:

  1. MoE(Mixture of Experts)成为主流:DeepSeek-V3 和 LLaMA 4 采用「稀疏激活」架构——模型有数千亿参数,但每个请求只激活其中的几百亿,推理成本大幅降低。这使得「高能力、高速度、低成本」三者不再是矛盾。

  2. 从语言模型到多模态模型:GPT-4V、GPT-4o、Gemini Pro 等已经能同时理解文本、图像、音频甚至视频。注意力机制不再只关注文本 token,还 cross-attend 视觉和听觉信号,向「通用人工智能」更进一步。

写给开发者:如何入门这段技术栈

如果你想像今天的 AI 工程师一样理解和使用这些模型,建议的学习路线:

  1. 先搞懂 Self-Attention:这篇系列的上一篇和这一篇就是起点
  2. 动手跑一个开源模型:下载 Llama-3-8B,用 llama.cpp 在你的电脑上跑推理
  3. 了解 Prompt Engineering:学会怎么和模型有效沟通(System Prompt、Few-shot、CoT)
  4. 尝试 RAG 和 Agent 开发:用 LangChain 或 Dify 框架搭建检索增强生成或工具调用应用

九、一句话总结

BERT 用 Transformer 的 Encoder 做理解,GPT 用 Decoder 做生成,LLaMA 证明小模型+大数据可以媲美大模型,Claude 用宪法 AI 让模型更安全。它们都是 Transformer 这棵大树上的不同分支。


系列回顾

  • 第一篇:注意力机制入门——Self-Attention 的数学直觉
  • 第二篇:Transformer 架构详解——Encoder-Decoder 全拆解
  • 第三篇:从 Attention 到 LLM——GPT、BERT、Claude 的演进路线

本文是「从 Attention to LLM」系列的第三篇。