参考:《图解大模型》第1章
核心问题:LLM 从哪里来?它的本质是什么?有哪几种形态?


一、从"翻译问题"到大模型

把"I love llamas"翻译成荷兰语"Ik hou van lama’s"——这个具体问题,逼出了过去十年语言AI的所有核心突破。

RNN:把句子压缩成一个向量(2014年前后)

I → love → llamas
               ↓
         [一个向量]   ← 整个句子的摘要
               ↓
Ik → hou → van → lama's

问题:句子越长,信息丢失越多——用一张纸条摘要一本书,再从纸条复原书,必然失真。

RNN + 注意力:解码时动态"回头看"(2014年)

与其压缩成一个向量,不如让解码器生成每个词时,动态决定关注输入的哪些部分

第一步:编码器保留每步隐藏状态
  I → h₁    I love → h₂    I love llamas → h₃
  hᵢ = f(当前词向量, hᵢ₋₁)   ← 信息滚雪球式累积

第二步:解码器状态 s 对每个 hᵢ 计算相似度,softmax 归一化后加权求和
  [s·h₁, s·h₂, s·h₃] = [0.2, 0.4, 2.1] → [0.05, 0.10, 0.85]
  c = 0.05×h₁ + 0.10×h₂ + 0.85×h₃   ← 主要关注 llamas → 生成 lama's ✓

但 RNN 的根本缺陷仍在:序列必须串行处理,无法并行训练。

Transformer:把 RNN 完全扔掉(2017年)

Google 论文 “Attention Is All You Need” 核心思路:只用注意力,不用 RNN

两大收益:① 并行化 — 所有词同时处理,训练速度质变 ② 全局视野 — 每个词直接关注序列中任意位置

这一改变,开启了大模型时代。


二、三种架构:同样是 Transformer,用法各不同

Transformer 论文提出的是编码器-解码器架构,但研究者发现只用一半往往更好

仅编码器(BERT 类) 仅解码器(GPT 类) 编解码器(T5 类)
注意力方向 双向,看全句 单向,只看左边 编码双向,解码单向
擅长 理解、分类、语义搜索 生成、对话、代码 翻译、摘要、改写
代表模型 BERT, RoBERTa GPT, LLaMA, Qwen T5, BART
当前地位 特定任务 主流(★★★★★) 特定任务

为什么各用一半? 任务决定结构:

  • 做分类/语义理解 → 只需"读懂全句",解码器多余;去掉它,编码器专心学双向语义
  • 做文本生成 → 只需"预测下一个词",编码器多余;去掉它,解码器专心学自回归生成
  • 做翻译/摘要 → 输入输出是两条独立序列,才真正需要两套层

GPT 为什么不需要编码器?
翻译是两条序列(英 → 荷),必须分两套层。
续写是同一条序列(“The cat sat on the” → “mat”),解码器一套层同时完成理解和生成。

训练方式(以 GPT 为例):给模型大量文本,让它一直预测下一个词:

输入: "The cat sat on the"
目标: "cat sat on the mat"   ← 给定前N个词,预测第N+1个词

任务看似简单,但为了"预测得准",模型必须学会语法、语义、事实、推理——语言背后的一切规律。


三、训练范式:从"读书"到"能干活"

预训练                    SFT                      对齐(RLHF/DPO)
海量文本,预测下一词  →   指令+答案对,有监督   →   偏好数据,符合价值观
学会语言规律               学会"听指令"               学会"什么该说什么不该说"
→ Base Model               → Instruct Model            → ChatGPT

三步缺一不可:Base Model 知识渊博但不会做事,SFT 让它能干活,对齐让它适合面向公众。


四、嵌入:文本进入模型的第一步

LLM 只处理数字,嵌入把文本变成向量:

"Hello" → [0.23, -0.15, 0.88, ...]   (768维)
"Hi"    → [0.21, -0.13, 0.85, ...]   ← 向量很接近(同义词)
"Dog"   → [-0.8,  0.44, -0.12, ...]  ← 向量很远(无关词)

不只是词,句子、文档、图片都可以嵌入——这是语义搜索、RAG、多模态的共同底层。


五、思考题

  1. BERT 为什么不能做文本生成? 提示:双向注意力和自回归生成有什么矛盾?
  2. 为什么预训练用"预测下一个词",而不是其他任务? 提示:数据从哪来?需要标注吗?
  3. GPT-3 没做 SFT,能用"写一首诗"的提示词让它写诗吗? 提示:它的训练目标是"续写"。
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐