第 3 章 大语言模型基础(LLM Foundations)

核心问题:现代智能体是如何工作的?
核心答案:以 Transformer / Decoder-Only 架构为核心,通过大规模预训练 + 自回归生成 + 提示工程实现。


3.1 语言模型与 Transformer 架构

3.1.1 从 N-gram 到 RNN


一、语言模型(Language Model, LM)

定义
语言模型的目标是:

计算一个词序列出现的概率
[
P(w_1, w_2, \dots, w_m)
]

基于概率链式法则:
[
P(S)=\prod_{i=1}^{m}P(w_i|w_1,\dots,w_{i-1})
]


二、统计语言模型与 N-gram

1. 马尔可夫假设(Markov Assumption)

当前词只依赖前 n−1 个词

[
P(w_i|w_1,\dots,w_{i-1}) \approx P(w_i|w_{i-n+1},\dots,w_{i-1})
]

常见模型
  • Bigram (N=2):只看前 1 个词
  • Trigram (N=3):只看前 2 个词

2. 概率估计(MLE)

以 Bigram 为例:
[
P(w_i|w_{i-1})=\frac{Count(w_{i-1},w_i)}{Count(w_{i-1})}
]


3. 示例计算

语料库:

datawhale agent learns
datawhale agent works

计算:
[
P(\text{agent works})
= P(agent|datawhale)\cdot P(works|agent)
= 1 \cdot 0.5 = 0.5
]


4. N-gram 的根本局限
  • 数据稀疏性:未出现即概率为 0
  • 无语义泛化能力:agent ≠ robot
  • 上下文窗口固定
  • 词是离散符号

三、神经网络语言模型与词嵌入

1. 核心思想(Bengio, 2003)
  • 连续向量表示词(Word Embedding)
  • 相似词 → 向量距离近
  • 学习函数:
    [
    (w_{i-n+1},\dots,w_{i-1}) \rightarrow P(w_i)
    ]

2. 词嵌入的性质
  • 语义可计算(余弦相似度)
  • 支持语义类比:
King - Man + Woman ≈ Queen

3. 改进与局限

✅ 解决:

  • 泛化能力
  • OOV 问题缓解

❌ 仍然:

  • 上下文窗口固定

四、RNN 与 LSTM

1. RNN 核心机制
  • 引入 隐藏状态 h_t
  • 实现“序列记忆”

[
h_t = f(x_t, h_{t-1})
]


2. RNN 的问题
  • ❌ 梯度消失 / 爆炸
  • ❌ 长期依赖难以捕捉
  • ❌ 串行计算,难并行

3. LSTM 改进

通过 门控机制

  • 遗忘门
  • 输入门
  • 输出门
  • 独立 Cell State

✅ 更好建模长期依赖


3.1.2 Transformer 架构解析

核心思想:Attention is All You Need


一、Encoder–Decoder 总体结构

  • Encoder:理解输入 → 上下文表示
  • Decoder:条件生成输出

二、自注意力机制(Self-Attention)

1. Q / K / V 机制
  • Query:我想找什么
  • Key:我是什么
  • Value:我的信息

2. 计算公式

[
Attention(Q,K,V)
= softmax\left(\frac{QK^T}{\sqrt{d_k}}\right)V
]


3. 直观理解
  • 每个 token 可关注序列中所有 token
  • 权重反映相关性
  • 自动建模长距离依赖

三、多头注意力(Multi-Head Attention)

  • 拆分为 h 个子空间
  • 并行关注不同关系
  • 最后拼接 + 线性变换

✅ 捕捉:

  • 指代关系
  • 语法结构
  • 语义依赖

四、前馈网络(FFN)

逐 token 处理:
[
FFN(x)=\max(0,xW_1+b_1)W_2+b_2
]

特点:

  • 位置独立
  • 参数共享
  • 先扩展再压缩((d_{ff} \gg d_{model}))

五、残差连接 + LayerNorm

  • 残差连接:缓解梯度消失
  • LayerNorm:稳定分布,加速收敛

结构:

x → Sublayer → Add → Norm

六、位置编码(Positional Encoding)

问题

Self-Attention 无顺序感知能力

解决方案

正弦 / 余弦位置编码:
[
PE(pos,2i)=\sin\left(\frac{pos}{10000^{2i/d}}\right)
]

特点:

  • 不引入新参数
  • 支持任意长度
  • 编码相对位置信息

3.1.3 Decoder-Only 架构(GPT)


一、核心思想

语言建模 = 预测下一个词


二、自回归生成(Autoregressive)

输入 → 预测 token → 拼接 → 再预测

三、Masked Self-Attention

  • 禁止看到未来 token
  • 通过 attention mask 实现
  • 保证因果性

四、为什么主流 LLM 都用 Decoder-Only?

✅ 优点:

  • 训练目标统一
  • 结构简单,易扩展
  • 天然适合生成任务
  • 支持超大规模训练

3.2 与大语言模型交互


3.2.1 提示工程(Prompt Engineering)


一、采样参数

1. Temperature
  • 控制随机性
  • T↓ → 确定性高
  • T↑ → 多样性高

2. Top-k / Top-p
  • Top-k:保留前 k 个 token
  • Top-p:累积概率 ≥ p 的最小集合
  • 实践中:Top-p 更常用

二、提示范式

  • Zero-shot
  • One-shot
  • Few-shot

三、指令调优(Instruction Tuning)

  • 从“文本补全” → “指令执行”
  • ChatGPT / Qwen / Claude 均经过此阶段

四、思维链(Chain-of-Thought)

  • 显式引导推理步骤
  • 显著提升数学 / 逻辑任务准确率

3.2.2 文本分词(Tokenization)


一、为什么不能直接用字符 / 单词?

单位 问题
字符 无语义,序列过长
单词 词表爆炸,OOV

二、子词分词(Subword)

核心思想:

  • 高频词保留
  • 低频词拆分

三、BPE(Byte Pair Encoding)

算法流程
  1. 初始化字符
  2. 统计最高频相邻对
  3. 合并
  4. 重复直到词表大小达标

解决问题
  • 控制词表规模
  • 解决 OOV
  • 提高泛化能力

四、分词器对开发者的意义

  • Token ≠ 字符数

  • 影响:

    • 上下文窗口
    • API 成本
    • 模型稳定性

3.2.3 本地部署开源模型


示例流程(Qwen)

  1. 安装依赖
  2. 加载 tokenizer + model
  3. 构造对话模板
  4. generate()
  5. decode()

3.2.4 模型选择


一、选型维度

  • 性能
  • 成本
  • 延迟
  • 上下文长度
  • 部署方式
  • 生态
  • 可微调性
  • 安全性

二、闭源模型

  • GPT-4 / GPT-5
  • Gemini 2.5
  • Claude 4
  • 文心 / 通义 / 混元

三、开源模型

  • Llama 4(MoE)
  • Mistral
  • Qwen
  • ChatGLM

3.3 缩放法则与局限性


3.3.1 Scaling Laws

[
Loss \propto N^{-\alpha}
]

  • 参数 ↑
  • 数据 ↑
  • 计算 ↑

Chinchilla 定律

算力固定下:模型不宜过大,应多数据


能力涌现(Emergence)
  • CoT
  • 指令理解
  • 代码生成
  • 多步推理

3.3.2 模型幻觉(Hallucination)


类型
  • 事实性幻觉
  • 忠实性幻觉
  • 内在幻觉

缓解方法
  • RAG
  • 外部工具
  • 多步验证
  • RLHF
  • 自一致性检查

3.4 本章总结


核心脉络

N-gram
 → 神经语言模型
 → RNN / LSTM
 → Transformer
 → Decoder-Only
 → LLM + Agent

对智能体设计的启示

  • Prompt = 控制器
  • Token = 成本单位
  • RAG = 可靠性保障
  • Model Selection = 系统工程问题

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐