04 深入理解大语言模型

04 深入理解大语言模型

知识图解

先观察各环节之间的关系,再阅读下面的详细解释。

LLM 的核心任务

大语言模型最基础的训练任务,是根据前文预测下一个 Token。规模扩大后,模型从海量例子中学到语言、知识关联、代码模式和一定的推理能力。
#mermaid-svg-40QQDX7IBMfrD9pe{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-40QQDX7IBMfrD9pe .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-40QQDX7IBMfrD9pe .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-40QQDX7IBMfrD9pe .error-icon{fill:#552222;}#mermaid-svg-40QQDX7IBMfrD9pe .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-40QQDX7IBMfrD9pe .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-40QQDX7IBMfrD9pe .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-40QQDX7IBMfrD9pe .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-40QQDX7IBMfrD9pe .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-40QQDX7IBMfrD9pe .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-40QQDX7IBMfrD9pe .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-40QQDX7IBMfrD9pe .marker{fill:#333333;stroke:#333333;}#mermaid-svg-40QQDX7IBMfrD9pe .marker.cross{stroke:#333333;}#mermaid-svg-40QQDX7IBMfrD9pe svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-40QQDX7IBMfrD9pe p{margin:0;}#mermaid-svg-40QQDX7IBMfrD9pe .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-40QQDX7IBMfrD9pe .cluster-label text{fill:#333;}#mermaid-svg-40QQDX7IBMfrD9pe .cluster-label span{color:#333;}#mermaid-svg-40QQDX7IBMfrD9pe .cluster-label span p{background-color:transparent;}#mermaid-svg-40QQDX7IBMfrD9pe .label text,#mermaid-svg-40QQDX7IBMfrD9pe span{fill:#333;color:#333;}#mermaid-svg-40QQDX7IBMfrD9pe .node rect,#mermaid-svg-40QQDX7IBMfrD9pe .node circle,#mermaid-svg-40QQDX7IBMfrD9pe .node ellipse,#mermaid-svg-40QQDX7IBMfrD9pe .node polygon,#mermaid-svg-40QQDX7IBMfrD9pe .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-40QQDX7IBMfrD9pe .rough-node .label text,#mermaid-svg-40QQDX7IBMfrD9pe .node .label text,#mermaid-svg-40QQDX7IBMfrD9pe .image-shape .label,#mermaid-svg-40QQDX7IBMfrD9pe .icon-shape .label{text-anchor:middle;}#mermaid-svg-40QQDX7IBMfrD9pe .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-40QQDX7IBMfrD9pe .rough-node .label,#mermaid-svg-40QQDX7IBMfrD9pe .node .label,#mermaid-svg-40QQDX7IBMfrD9pe .image-shape .label,#mermaid-svg-40QQDX7IBMfrD9pe .icon-shape .label{text-align:center;}#mermaid-svg-40QQDX7IBMfrD9pe .node.clickable{cursor:pointer;}#mermaid-svg-40QQDX7IBMfrD9pe .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-40QQDX7IBMfrD9pe .arrowheadPath{fill:#333333;}#mermaid-svg-40QQDX7IBMfrD9pe .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-40QQDX7IBMfrD9pe .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-40QQDX7IBMfrD9pe .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-40QQDX7IBMfrD9pe .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-40QQDX7IBMfrD9pe .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-40QQDX7IBMfrD9pe .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-40QQDX7IBMfrD9pe .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-40QQDX7IBMfrD9pe .cluster text{fill:#333;}#mermaid-svg-40QQDX7IBMfrD9pe .cluster span{color:#333;}#mermaid-svg-40QQDX7IBMfrD9pe div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-40QQDX7IBMfrD9pe .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-40QQDX7IBMfrD9pe rect.text{fill:none;stroke-width:0;}#mermaid-svg-40QQDX7IBMfrD9pe .icon-shape,#mermaid-svg-40QQDX7IBMfrD9pe .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-40QQDX7IBMfrD9pe .icon-shape p,#mermaid-svg-40QQDX7IBMfrD9pe .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-40QQDX7IBMfrD9pe .icon-shape .label rect,#mermaid-svg-40QQDX7IBMfrD9pe .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-40QQDX7IBMfrD9pe .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-40QQDX7IBMfrD9pe .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-40QQDX7IBMfrD9pe :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 文本
Tokenizer

切成 Token
Embedding

变成向量
Transformer

计算上下文关系
预测下一个 Token 的概率
选择一个 Token

五个必须理解的概念

  1. Token:模型处理文本的基本单位,不完全等于汉字或单词。
  2. 上下文窗口:一次请求中模型能看到的 Token 总量。
  3. Attention:让模型判断当前内容应该关注上下文中的哪些部分。
  4. 参数:训练形成的内部数值,保存模型学到的模式。
  5. 推理:模型根据当前输入逐 Token 生成结果的过程。

详见 \[Token 与上下文窗口] 与 \[LLM 工作原理]。

为什么会产生幻觉

模型的直接目标是生成符合上下文的内容,而不是自动访问真实世界验证事实。当信息不足、问题包含错误前提或训练数据缺失时,模型仍可能生成流畅答案。

降低幻觉的方法:

  • 给出可靠上下文并要求依据材料回答;
  • 使用 RAG、搜索或业务 API 获取事实;
  • 要求给出证据并由程序验证;
  • 信息不足时允许模型明确说不知道;
  • 高风险结果必须人工复核。

上下文工程

模型本身不等于应用。真正影响应用效果的是它在当前请求中看到了什么:

text 复制代码
系统指令 + 用户任务 + 对话历史 + 检索资料 + 工具说明 + 工具结果

上下文并非越长越好。应保留与当前决策相关的信息,删除重复、过期和相互冲突的内容。

推理模型与普通生成模型

  • 简单改写、提取和分类优先选择快速低成本模型;
  • 多约束规划、复杂代码和数学问题可选择更强推理模型;
  • 模型越大不代表每个任务的投入产出比越高;
  • 应使用真实任务集比较正确率、延迟和成本。

继续学习:\[模型选型指南]、\[示例 - 推理模型 vs GPT 模型]。


本章深入:LLM 从训练到回答的完整过程

1. Tokenizer:模型看到的不是文字

模型先通过 Tokenizer 把文本切成 Token,再将 Token 转成整数 ID。中文字符、英文单词、标点和代码片段的切分方式可能不同。

text 复制代码
"人工智能很好用"
→ [人工] [智能] [很] [好用]       (仅作示意)
→ [10231, 8842, 317, 9901]

Token 数量直接影响:

  • 上下文能放多少内容;
  • 请求成本;
  • 生成速度;
  • 长文档切分策略;
  • 历史对话保留范围。

不要用字符数简单估算 Token。不同模型的 Tokenizer 可能不同,生产系统应使用对应模型的计数工具。

2. Embedding:把离散符号放进语义空间

Token ID 本身没有"意义"。Embedding 层把每个 Token 映射为一个高维向量。训练过程中,语义和使用方式相近的内容会形成可利用的向量关系。

Embedding 还可以单独用于:

  • 语义搜索;
  • 文档相似度;
  • 聚类;
  • 推荐;
  • RAG 检索。

生成模型使用的内部表示与对外提供的 Embedding API 不必完全相同,但思想相通:把内容转换为可计算的向量。

3. Transformer 内部发生了什么

一个 Transformer Block 通常包含:

  1. Self-Attention:不同 Token 交换信息;
  2. 前馈网络:对每个位置的表示进一步变换;
  3. 残差连接:保留原始信息并帮助深层训练;
  4. 归一化:稳定数值和训练过程。

多个 Block 堆叠后,表示从局部文字逐步融合为更复杂的上下文关系。

Q、K、V 的直觉

  • Query:当前位置想找什么;
  • Key:每个位置可以被怎样匹配;
  • Value:匹配后真正取回的信息。

Attention 权重由 Query 和 Key 的匹配程度决定,再对 Value 做加权汇总。

Attention 权重并不自动等于"模型解释"。它只是内部计算的一部分,不能简单当作可靠因果依据。

4. 位置和顺序

Attention 本身同时看一组 Token,因此模型还需要位置信息来区分:

text 复制代码
狗咬人
人咬狗

词相同,顺序不同,含义完全不同。现代模型可能采用旋转位置编码等方法表达相对位置,并扩展长上下文能力。

5. 预训练、指令训练和对齐

预训练

在海量数据上学习预测 Token,获得通用语言和知识能力。

指令训练

使用"指令---回答"样本,让模型学会遵循任务要求,而不是只续写文本。

偏好优化与安全对齐

根据人类或规则反馈,让模型更倾向于有帮助、可靠并符合安全边界的回答。

text 复制代码
预训练:学会语言和知识模式
指令训练:学会完成任务
偏好/安全训练:学会怎样更合适地回答

6. 推理阶段怎样生成

模型每轮输出所有候选 Token 的概率分布,再通过解码策略选择一个 Token,追加到上下文后继续计算。

常见控制:

  • Temperature:调整概率分布的平滑程度;
  • Top-p:只在累计概率达到阈值的候选中选择;
  • 最大输出 Token:限制生成长度;
  • Stop:遇到指定序列停止;
  • Seed:某些接口用于提高复现性,但不保证所有环境完全确定。

事实问答和结构化输出通常需要较稳定的采样;创意写作可以保留更多多样性。

7. KV Cache 为什么重要

逐 Token 生成时,前文不会变化。KV Cache 保存之前 Token 的 Key/Value,避免每次从头重复计算。它提高速度,但会随着上下文变长占用更多显存。

这解释了为什么:

  • 超长上下文成本和内存压力更高;
  • 多用户并发需要管理缓存;
  • 上下文长度会影响首字延迟和生成速度。

8. 上下文窗口不是长期记忆

上下文窗口只是当前请求中可见的信息。对话结束或历史被截断后,模型不一定还记得。

长期记忆通常由应用实现:

text 复制代码
对话/事件 → 提取值得保存的信息 → 数据库存储
新会话 → 按用户和任务检索 → 注入当前上下文

记忆必须处理真实性、过期、权限、更正和删除请求,不能把所有对话永久保存后全部塞回模型。

9. 幻觉的类型

类型 表现 主要改进方式
知识幻觉 编造事实、日期和来源 搜索/RAG、引用校验
上下文幻觉 与提供材料不一致 限定依据、忠实度评估
工具幻觉 编造工具或参数 Schema、白名单、程序校验
推理错误 中间逻辑或计算错误 工具计算、测试、结果验证
引用幻觉 来源存在但不支持结论 逐条引用对齐检查

10. 模型能力与应用能力

模型很强,不代表应用自然可靠。应用还要补足:

  • 正确上下文;
  • 实时数据;
  • 工具权限;
  • 结构化输入输出;
  • 事实与业务规则校验;
  • 日志、评估和人工复核。
相关推荐
小小帅呀1 小时前
学习VLA第3天:训练一个最简单的神经网络
人工智能·神经网络·学习
数字护盾(和中)1 小时前
和中科技剖析 EDR 绕过全链路,AMSI、ETW 规避技术与防御对策
运维·网络·人工智能·科技·安全·web安全
土星云SaturnCloud1 小时前
高速服务区AI视觉全场景方案:安全管控+运营提效+服务升级,土星云边缘算力赋能智慧交通
服务器·人工智能·ai·边缘计算
开源量化GO1 小时前
最新AI辅助量化表达:先理清规则,再按需求选工具
人工智能·python
天天代码码天天1 小时前
不用 ONNX Runtime,也不用 OpenCV:我用纯 C 做了一个 PP-OCR 专用推理 Runtime
人工智能
u1301301 小时前
AI 日报(2026年08月25日)
人工智能
2601_957879331 小时前
Seedance排队太久怎么办?2026免排队AI视频工具与替代方案怎么选
大数据·人工智能·深度学习
IvanCodes1 小时前
RAG 实战教程(四):GraphRAG 查询实战,本地检索、全局检索与 DRIFT Search
人工智能·agent
能源革命1 小时前
AI+能源前沿20260825
人工智能·能源