跳转至

第一章 LLM 基础原理

本章概览

本章建立对大语言模型 (Large Language Model, LLM) 的基础认知: 它是什么、如何工作、能做什么、做不了什么。从发展脉络到 Transformer 架构, 从预训练范式到主流模型谱系, 最后落到能力边界与提示工程, 为后续 Agent 章节奠定理论地基。

小节目录


1.1 LLM 概览

定义

大语言模型 (Large Language Model, LLM) 是基于深度学习、参数规模通常达数十亿到万亿、在海量文本上自监督预训练的统计语言模型。它通过预测下一个 token 生成文本, 将语言理解与生成统一到同一个概率框架下。"大"既指参数规模, 也指训练数据量与算力投入, 三者共同构成现代 LLM 的基本形态。

原理

LLM 的发展可粗略划分为四个阶段。第一阶段是统计语言模型, 以 n-gram 为代表, 用词频统计估计下一词概率, 受限于稀疏性与上下文窗口。第二阶段是神经网络语言模型 (NNLM/RNN/LSTM), 引入分布式词向量与循环结构, 缓解维度灾难并捕捉长程依赖, 但训练受限于序列串行。第三阶段是预训练时代 (Pre-training Era), ELMo/GPT/BERT 引入自监督预训练加下游微调范式, 将 NLP 推进到统一架构阶段。第四阶段是 LLM 时代, GPT-3 起 scaling law 带来涌现能力 (emergent ability), 单一模型在零样本下完成多任务, Claude/Gemini 等进一步扩展能力边界。

关键点

理解 LLM 需把握四个核心维度。参数规模决定模型容量, 从早期的亿级到当前的万亿级; 训练数据量决定知识广度, 通常以 token 计数, 现代模型达到万亿级; 上下文窗口决定单次推理可处理的信息量, 从早期 2K 扩展到当前的 1M 以上; 涌现能力指模型在某个规模阈值后突然出现的复杂能力, 如少样本学习、链式推理, 是 scaling 带来的非平凡现象。

应用·对比

传统 NLP 流水线由分词、词性标注、句法分析、命名实体识别等多个专用模型串联组成, 每个任务需独立标注数据与训练模型。LLM 用单一预训练模型加提示即可完成多任务, 显著降低开发成本, 但在可解释性与确定性上弱于传统流水线。

维度 传统 NLP LLM
开发方式 多任务专用模型串联 单一模型 + 提示
泛化能力 弱, 依赖标注数据 强, 零/少样本迁移
可解释性 强, 中间步骤可追溯 弱, 黑箱生成
部署成本 模型小, 多模型 单模型大, 算力高

1.2 Transformer 架构

定义

Transformer 是 2017 年 Google 在《Attention is All You Need》中提出的基于自注意力 (Self-Attention) 的序列建模架构, 摒弃了 RNN 的循环结构, 实现完全并行的序列处理。它是所有现代 LLM 的基础架构, GPT/Claude/Gemini/Llama/Qwen 等均在其上演化。

原理

Transformer 有三种主要变体。Encoder-Decoder (编码器-解码器) 是原始结构, 编码器负责理解输入序列, 解码器负责生成输出, 代表为 T5/BART, 适合翻译等序列到序列任务。Decoder-only (仅解码器) 只保留解码器堆栈, 以因果自注意力建模, 代表为 GPT 系/Llama/Qwen, 是当前 LLM 主流。Encoder-only (仅编码器) 只保留编码器, 以双向注意力建模, 代表为 BERT, 适合分类与抽取等理解任务。架构层面, 位置编码 (Positional Encoding) 注入序列顺序信息, 分为绝对位置编码与旋转位置编码 (RoPE, Rotary Position Embedding), 后者通过旋转矩阵实现相对位置建模且利于外推。残差连接 (Residual Connection) 缓解深层网络梯度消失, LayerNorm (层归一化) 稳定训练, 分为 Pre-Norm (归一化在残差前, 训练更稳定, LLM 主流) 与 Post-Norm (归一化在残差后, 原始 Transformer, 训练需 warmup)。

关键点

Transformer 用自注意力替代循环结构, 实现序列级并行计算, 大幅提升训练效率, 是其能扩展到千亿参数的工程前提。位置编码弥补了自注意力本身无序的缺陷, RoPE 因良好的外推性成为现代 LLM 主流选择。残差连接让深层网络可训, LayerNorm 让训练稳定, 二者共同支撑百层以上堆叠。

应用·对比

变体 代表模型 任务适配 训练效率 主流采用
Encoder-Decoder T5/BART 序列到序列 (翻译/摘要) 早期主流
Decoder-only GPT/Llama/Qwen 生成/对话/通用 当前主流
Encoder-only BERT/RoBERTa 理解 (分类/抽取) 领域专用

Decoder-only 之所以成为 LLM 主流, 一是其统一性, 预训练目标单一, 易扩展; 二是生成任务对推理能力要求更高, 而现代 Agent 与对话场景几乎都是生成任务; 三是工程上更易 scale。

1.3 注意力机制

定义

注意力 (Attention) 是让模型在处理当前 token 时, 动态地关注序列中其他相关 token 的机制, 权重由相似度计算得出。自注意力 (Self-Attention) 指 Query/Key/Value 三个投影矩阵来自同一输入序列, 让序列内部任意两个 token 都能直接交互, 突破 RNN 的距离衰减。

原理

注意力的核心是 Q/K/V 计算。给定输入 X, 通过三个权重矩阵投影得到 Query (Q)、Key (K)、Value (V); 注意力输出为 softmax(Q·K^T / √d_k)·V, 即用 Q 与 K 的点积衡量相关性, softmax 归一化为权重, 再加权 V 得到输出。Multi-Head Attention (MHA, 多头注意力) 将 Q/K/V 投影到多个子空间并行计算, 每个头学习不同的关注模式, 再拼接投影回原维度, 显著提升表达能力。Grouped-Query Attention (GQA, 分组查询注意力) 将多个 Query 头共享一组 K/V, 在显存与质量之间取折中。Multi-Query Attention (MQA, 多查询注意力) 更极端, 所有 Query 头共享同一组 K/V, 显存最低但质量略降。推理时, KV cache 缓存历史 token 的 K/V, 避免每生成一个 token 都重新计算前缀, 是自回归推理加速的基石。

关键点

自注意力的计算复杂度为 O(n²), 序列长度翻倍则计算量四倍, 是长上下文的核心瓶颈。MHA/GQA/MQA 三者在显存/质量/速度上权衡, GQA 已成为 Llama 3/Qwen 等主流 LLM 的折中选择。KV cache 是推理加速的命脉, 但显存占用随序列线性增长, 是长上下文部署的关键约束。

应用·对比

变体 Query 头数 K/V 头数 显存占用 输出质量 代表模型
MHA h h 最高 GPT-2/BERT
GQA h h/g (g 组) 较高 Llama 3/Qwen 2
MQA h 1 略低 PaLM/Gemma

Llama 3/Qwen 2 等采用 GQA 的原因: KV cache 显存占用是长上下文部署的主要瓶颈, MHA 在 100K+ 上下文下显存难承受; MQA 质量损失过大; GQA 在显存节省与质量保持间取得最优折中, 是当前工业实践的事实标准。

1.4 预训练范式

定义

预训练 (Pre-training) 是在海量无标注文本上, 以自监督学习方式让模型习得语言规律与世界知识的过程。自监督指不依赖人工标注, 而是利用数据自身结构生成训练信号, 让海量互联网文本成为可用的训练资源。预训练是 LLM 能力的源头, 后续 SFT 与对齐都建立在其之上。

原理

自监督学习无需人工标注, 从数据自身构造监督信号。两种主要预训练目标: CLM (Causal Language Modeling, 因果语言建模) 预测下一个 token, 仅用左侧上下文, 是 GPT 系与当前生成式 LLM 的标准目标; MLM (Masked Language Modeling, 掩码语言建模) 随机遮盖部分 token 让模型还原, 可用双向上下文, 是 BERT 的目标。Scaling Law (Kaplan et al. 2020) 描述了模型 loss 与参数量、数据量、算力的幂律关系, 在对数坐标下近似线性, 为规模预测提供了量化工具。Chinchilla 定律 (DeepMind 2022) 修正了 Kaplan 的结论, 指出在算力最优分配下, 数据量与参数量应等比例增长, 即每参数约 20 个 token, 之前许多模型实际训练数据严重不足。

关键点

数据质量优先于数据量, 高质量过滤数据胜过海量低质数据, 是 Chinchilla 之后业界共识。Chinchilla 最优比例约 20 token/参数, 偏离此比例会导致算力浪费或数据饥饿。涌现能力 (emergent ability) 在某个规模阈值后出现, 小模型不具备, 这意味着无法用小模型实验完全预测大模型行为。

应用·对比

维度 CLM MLM
任务适配 生成任务 理解任务
上下文方向 单向 (左到右) 双向
生成能力
代表模型 GPT 系/Llama BERT/RoBERTa

生成式 LLM 普遍采用 CLM 的原因: 一是 CLM 与推理时自回归生成天然一致, 训练目标即使用目标; 二是 CLM 在 scaling 后展现出 zero-shot/few-shot 通用能力, 而 MLM 需要任务特定微调; 三是 CLM 统一了理解与生成, 而 MLM 难以生成。

1.5 Tokenizer 与分词

定义

Tokenizer (分词器) 将原始文本切分为模型可处理的 token 序列, 是文本与模型之间的接口层。它决定了模型如何"看见"文本, 直接影响序列长度、词表大小与多语言覆盖。同一个模型对同一段文本, 不同 tokenizer 切出的 token 数可能差数倍。

原理

主流分词算法有四种。BPE (Byte Pair Encoding, 字节对编码) 从字符级开始, 迭代合并最高频的相邻对, 直至达到目标词表大小, 是 GPT 系/tiktoken/Llama 的选择。WordPiece 与 BPE 类似, 但合并依据是似然提升而非频率, 是 BERT 的算法。SentencePiece 直接处理原始字节流, 不依赖预分词, 对多语言友好, 是 Llama/Qwen/T5 的选择。tiktoken 是 OpenAI 开源的高效 BPE 实现, 用于 GPT-3.5/4。词表大小 (vocab size) 是关键超参, 大词表序列短但嵌入层参数多, 小词表序列长但嵌入层参数少, 需权衡。

关键点

中文 token 效率是中文场景的关键问题, 一个汉字常对应 1-3 个 token, 导致中文场景 token 成本显著高于英文。词表大小需权衡序列长度与嵌入参数, 现代 LLM 多在 30K-200K 区间。BPE 因实现简单、效果稳定, 是当前 LLM 主流选择, GPT/Llama/Qwen 均采用其变体。

应用·对比

算法 合并依据 处理单元 代表模型 适用场景
BPE 频率 字符/字节 GPT/Llama 通用, 生成式 LLM
WordPiece 似然提升 字符 BERT 理解任务
SentencePiece 频率/似然 原始字节 Llama/Qwen/T5 多语言
tiktoken 频率 (BPE) 字节 GPT-3.5/4 高效推理

1.6 主流 LLM 谱系

定义

截至 2025-2026, 主流 LLM 分为闭源与开源两大阵营。闭源以 GPT (OpenAI)、Claude (Anthropic)、Gemini (Google) 为代表, 能力领先但通过 API 调用; 开源以 Llama (Meta)、Qwen (阿里)、DeepSeek (深度求索)、Mistral (欧洲) 为代表, 可私有部署与微调。两者能力差距在持续缩小。

原理

GPT 是 OpenAI 的闭源标杆, GPT-3 起开启 LLM 时代, GPT-4 引入多模态, GPT-4o/o1 推动统一多模态与推理模型。Claude 是 Anthropic 的旗舰, 强调宪法 AI (Constitutional AI) 与长上下文 (200K+), 在写作与代码任务上口碑突出。Gemini 是 Google 的原生多模态模型, 从头训练支持图文音视频统一输入输出。Llama 是 Meta 开源生态的基石, Llama 2/3 推动开源浪潮, 是众多衍生模型的基础。Qwen 是阿里通义千问系列, 中文表现突出, 提供多尺寸覆盖端到云。DeepSeek 是深度求索的代表作, 以 MoE 架构与推理模型 (DeepSeek-R1) 著称, 开源且性价比高。Mistral 是欧洲代表, Mixtral 8x7B 是开源 MoE 标杆。

关键点

开源与闭源的能力差距在快速缩小, DeepSeek-R1/Llama 3/Qwen 2.5 等开源模型在多数基准上已逼近 GPT-4 级别。开源优势在可私有部署、可微调、成本低, 适合对数据隐私与定制化有要求的场景。中文场景下 Qwen 与 DeepSeek 表现突出, 是国内应用的首选。

应用·对比

模型 开闭源 参数规模 上下文长度 特色能力 适用场景
GPT-4o 闭源 未公开 128K 原生多模态 通用, 商用
Claude 3.5 闭源 未公开 200K 长上下文, 写作 长文档, 代码
Gemini 1.5 闭源 未公开 2M 超长上下文, 多模态 视频, 长文档
Llama 3 开源 8B/70B/405B 128K 通用基座 微调, 私有部署
Qwen 2.5 开源 0.5B-72B 128K 中文, 多尺寸 中文场景, 端到云
DeepSeek-V3/R1 开源 236B MoE 128K MoE + 推理 推理任务, 高性价比
Mistral/Mixtral 开源 8x7B/8x22B MoE 128K MoE 欧洲, 多语言

1.7 LLM 能力与局限

定义

LLM 展现出强大的语言理解、生成、推理能力, 在翻译、摘要、代码、问答等任务上接近甚至超越人类平均水平。但它也存在结构性局限, 理解这些局限是合理使用 LLM 的前提, 也是 Agent 工程化要解决的问题。

原理

涌现能力 (emergent ability) 指模型在某个规模阈值后突然出现的能力, 如少样本学习、链式推理、指令遵循, 小模型不具备, 难以从小模型外推。幻觉 (hallucination) 指模型生成看似合理但事实错误的内容, 根因是 LLM 本质是统计拟合而非事实检索, 训练数据中的偏见与噪声会被放大。上下文窗口限制指模型单次推理可处理的信息量有上限, 超出则需外部机制 (如 RAG/记忆)。知识截止 (training cutoff) 指模型知识停留在预训练数据时间点, 无法获知最新事件。推理能力边界指复杂多步推理仍不稳定, 即使是推理模型在数学与逻辑上仍会出错。

关键点

幻觉无法根除只能缓解, 主要手段包括 RAG (检索事实约束)、事实约束提示、自我验证 (self-check); 实际工程需假设 LLM 会出错并设计兜底。长上下文不等于长理解, "lost in the middle" 现象表明模型对上下文中段信息利用率低, 长上下文仍需配合精炼与重排。推理能力可通过 CoT 与推理模型显著提升, 但简单任务上 overthinking 反而降低效率。

应用·对比

能力 对应局限 缓解手段
流畅生成 幻觉 RAG, 事实约束
知识广度 知识截止 检索增强, 时效数据
上下文窗口 中间遗忘 (lost in middle) 重排, 摘要
推理能力 复杂多步不稳定 CoT, 推理模型
多语言 低资源语言差 针对性微调

1.8 提示工程基础

定义

提示工程 (Prompt Engineering) 是通过设计输入提示 (prompt) 来引导 LLM 输出期望结果的技术, 是使用 LLM 的核心技能。它在不修改模型参数的前提下, 通过改变输入文本结构来影响输出, 是低成本调优的第一手段。

原理

Zero-shot 直接给出指令让模型回答, 不提供示例, 依赖模型预训练能力。Few-shot 在提示中提供少量示例 (通常 3-5 个), 让模型从示例中学习输出模式, 适用于格式约束或任务特定场景。Chain-of-Thought (CoT, 链式思考) 让模型展示推理步骤而非直接给答案, 显著提升数学与逻辑任务表现, "Let's think step by step" 即经典 CoT 提示。Role Prompting 赋予模型角色 (如"你是一位资深 Python 工程师"), 引导其以特定视角与风格输出。结构化输出通过要求 JSON/Markdown 等格式约束输出, 便于下游解析, 但需配合指令微调 (instruction tuning) 才稳定。In-Context Learning (上下文学习) 是 LLM 从提示中示例学习的能力, 是 Few-shot 与 CoT 的理论基础。

关键点

CoT 对推理任务提升显著, 简单任务收益有限甚至有害。Few-shot 示例的多样性比数量更重要, 3 个差异化示例常优于 10 个相似示例。结构化输出需配合模型训练, 未微调模型在复杂结构输出上仍不稳定, 需用约束解码或重试机制兜底。

应用·对比

方式 适用任务 token 成本 效果稳定性 实现难度
Zero-shot 简单分类/问答 极低
Few-shot 格式约束/模式学习 较高
CoT 推理/多步任务 高 (输出长)

延伸阅读