跳到主要内容

大语言模型工作原理

深入理解大语言模型的核心技术架构、训练过程和推理机制

姊妹篇与对照阅读

目录

🎯 学习目标

通过本章学习,你将能够:

  • 理解大语言模型的基本工作原理和技术架构
  • 掌握Transformer架构的核心组件和机制
  • 了解预训练、微调和推理的完整流程
  • 理解大模型的能力来源和局限性
  • 为实际应用大模型打下理论基础

🧠 大语言模型概述

什么是大语言模型

大语言模型(Large Language Model,LLM)是基于深度学习技术,通过在大规模文本数据上进行预训练而获得强大语言理解和生成能力的神经网络模型。

特征维度传统语言模型大语言模型关键差异
模型规模百万级参数千亿级参数参数量增长1000倍以上
训练数据特定领域数据互联网规模文本数据规模和多样性大幅提升
能力范围单一任务多任务通用能力从专用到通用
学习方式监督学习自监督预训练+微调学习范式的根本变化
涌现能力推理、规划、创作等规模带来的质变
应用方式任务特定模型通用基础模型应用模式的转变

大模型的核心能力

能力类型具体表现技术基础应用场景能力边界
语言理解文本分类、情感分析、信息抽取深层语义表示学习内容审核、智能客服需要大量上下文的复杂理解
语言生成文章写作、对话回复、代码生成自回归生成机制内容创作、编程辅助事实准确性、逻辑一致性
知识问答百科问答、专业咨询、常识推理参数化知识存储智能助手、教育辅导知识更新、专业深度
逻辑推理数学计算、逻辑推导、因果分析思维链学习决策支持、问题解决复杂推理、符号操作
创意生成故事创作、诗歌写作、创意设计模式组合和变换文艺创作、营销策划原创性、文化敏感性
多语言处理翻译、跨语言理解多语言联合训练国际化应用、语言学习低资源语言、文化差异

与机制对应的能力边界(理解、推理、生成)

上表从应用体验角度描述能力。若从机制上收束,可避免把模型当成“有意识的逻辑机”或“可证明正确的推理器”。

日常说法在机制上更稳的表述工程含义
理解上下文自注意力在整段子词序列上做可学习加权,FFN/深层堆叠形成利于下一步预测的表示;受 Context Window 与输入顺序(含位置信息)约束多轮对话与长文档要管 截断、摘要、RAG喂什么偏什么
逻辑推理多为训练分布中的模式续写 + 多步自回归;链式思考(CoT)常提高外显与稳定性,不保证与符号/证明系统等价关键结论、数值与权限要 工具、代码、数据校验
生成自回归:反复预测下一子词、拼回序列,直到 EOS 或长度上限;温度/Top-p 调节 采样随机性流式即逐步解码;需 可中止、计费、max_tokens服务端对中断的处理(避免白烧 Token)

以上与姊妹篇 LLM 原理:Transformer 与工作机制 的表述一致,便于你在「全栈 AI 文档」与「应用层速通」间切换时概念对齐。

🏗️ Transformer架构详解

架构总览

Transformer是大语言模型的核心架构,它革命性地引入了自注意力机制,实现了并行化训练和长距离依赖建模。

组件功能创新点计算复杂度关键参数
输入嵌入将词汇转换为向量表示学习语义相似性O(V×d)词汇表大小V,嵌入维度d
位置编码为序列提供位置信息绝对/相对位置编码O(L×d)序列长度L
多头注意力并行处理不同类型关系多头并行计算O(L²×d)头数h,注意力维度d_k
前馈网络非线性变换和特征提取两层全连接网络O(L×d×d_ff)前馈维度d_ff
层归一化稳定训练过程层级归一化O(L×d)归一化参数
残差连接缓解梯度消失跳跃连接O(1)无额外参数

自注意力机制深度解析

自注意力机制是Transformer的核心创新,它允许模型在处理序列时关注到序列中的任意位置。

计算步骤数学表示物理意义计算示例
查询、键、值计算Q=XW_Q, K=XW_K, V=XW_V将输入映射到不同的表示空间输入"我爱北京"→Q,K,V矩阵
注意力分数计算Attention(Q,K,V) = softmax(QK^T/√d_k)V计算词与词之间的相关性"我"对"北京"的注意力权重
多头并行计算MultiHead = Concat(head_1,...,head_h)W_O并行捕获不同类型的关系语法关系头+语义关系头
输出投影Output = MultiHead × W_O整合多头信息融合所有关系信息

位置编码机制

由于自注意力机制本身不包含位置信息,Transformer需要额外的位置编码来处理序列的顺序关系。

编码类型计算方式优势劣势适用场景
绝对位置编码PE(pos,2i) = sin(pos/10000^(2i/d))简单直观,计算高效长序列泛化能力有限固定长度序列
相对位置编码基于相对距离计算注意力更好的长序列泛化计算复杂度较高变长序列处理
可学习位置编码通过训练学习位置表示适应性强需要更多训练数据特定领域应用
旋转位置编码(RoPE)通过旋转矩阵编码位置理论基础扎实,性能优秀实现相对复杂现代大模型

分词、Token 与工程计费

Token 是模型在词表上离散化的最小处理单位,也是绝大多数公有云 API 的计费与上下文长度的计量单位。前文「自回归、下一词预测」在工程里更精确地说是 「下一子词/子字片段」 预测。

子词、BPE 与词表

  • 子词分词(BPE、SentencePiece、WordPiece 等)把未登录词拆成更小的子单元,在「词表规模」和「未登录词问题」之间折中。
  • 词表(vocabulary)是模型训练时与 Tokenizer 绑定的;不同模型/不同代际 的 Token 化结果不可混用对账。
  • 中文往往 1 个汉字不是 1 个 Token;英文常见词常为 1 Token,长词会拆成多 Token。

API 用量、计费与“字符粗估”

  • 以提供商返回的 usageprompt_tokens / completion_tokens)为对账与结算准绳;自写「按字数 × 系数」的公式仅用于预算与告警,不替代正式账单。
  • 产品侧要区分:输入(系统提示+历史+检索+用户问)与 输出 的加总;max_output_tokens 只约束生成侧。
  • 更偏产品落地的 Token 与上下文策略见 LLM 基础(前端+AI)

🔄 训练流程详解

预训练阶段

预训练是大语言模型获得基础能力的关键阶段,通过在大规模无标注文本上进行自监督学习。

训练阶段目标数据来源学习任务能力获得
预训练学习语言的统计规律和知识互联网文本、书籍、论文等下一个词预测(Next Token Prediction)语言理解、知识记忆、基础推理
监督微调(SFT)学习遵循指令和对话格式人工标注的指令-回答对指令跟随任务指令理解、任务执行
强化学习(RLHF)对齐人类价值观和偏好人类反馈数据基于人类反馈的强化学习有用性、无害性、诚实性

训练数据处理流程

处理步骤目的具体操作技术要点质量影响
数据收集获取大规模文本数据网页爬取、书籍数字化、论文收集数据源多样性、版权处理决定模型知识广度
数据清洗提高数据质量去重、过滤低质量内容、格式标准化启发式规则、机器学习过滤影响模型输出质量
数据预处理转换为模型输入格式分词、编码、序列切分词汇表构建、特殊标记处理影响模型理解能力
数据混合平衡不同类型数据按比例混合不同来源数据采样策略、权重分配影响模型能力分布

模型训练优化

优化技术目的实现方法效果适用规模
梯度累积模拟大批次训练累积多个小批次的梯度稳定训练,节省显存中小规模模型
混合精度训练加速训练,节省显存FP16/BF16 + FP32混合使用训练速度提升2倍所有规模
梯度检查点节省显存重计算中间激活值显存节省50%,时间增加20%大规模模型
模型并行突破单卡限制将模型分布到多个GPU支持超大模型训练超大规模模型
数据并行加速训练多GPU同时处理不同数据训练速度线性提升所有规模
ZeRO优化优化显存使用分布式存储优化器状态显存效率大幅提升大规模模型

⚡ 推理机制解析

文本生成过程

大语言模型的文本生成是一个自回归的过程,每次生成一个词汇(token),并将其作为下次生成的输入。

生成步骤计算过程技术细节性能考虑
输入编码将文本转换为token序列使用训练时的分词器词汇表外词汇处理
前向传播计算下一个token的概率分布通过所有Transformer层计算复杂度O(L²×d)
采样策略从概率分布中选择下一个token贪心、随机、核采样等平衡质量和多样性
序列更新将新token添加到序列中更新输入序列序列长度限制
终止判断判断是否结束生成遇到结束符或达到长度限制生成长度控制

采样策略对比

采样方法原理优势劣势适用场景
贪心采样总是选择概率最高的token确定性输出,质量稳定缺乏多样性,容易重复事实性问答、翻译
随机采样按概率分布随机选择输出多样性高质量不稳定,可能偏离主题创意写作、头脑风暴
Top-k采样从概率最高的k个token中采样平衡质量和多样性k值需要调优通用文本生成
Top-p采样从累积概率达到p的token中采样自适应候选集大小p值需要调优对话系统、内容创作
温度采样调整概率分布的尖锐程度灵活控制随机性温度参数敏感需要精细控制的场景

推理优化技术

优化技术原理效果实现复杂度适用场景
KV缓存缓存键值对,避免重复计算推理速度提升5-10倍所有自回归生成
批处理推理同时处理多个请求吞吐量提升3-5倍服务端部署
模型量化降低模型精度以减少计算速度提升2-4倍,显存减少50%资源受限环境
模型剪枝移除不重要的参数模型大小减少30-50%边缘设备部署
知识蒸馏用小模型学习大模型知识保持90%性能,大小减少10倍移动端应用
投机解码用小模型预测,大模型验证推理速度提升2-3倍高质量要求场景

图示与伪代码:前向一步与自回归解码(替代长 demo)

以往常见的「几百行可运行 JavaScript 教学版 Transformer」容易占满篇幅,且与工程里实际使用的 PyTorch / 推理引擎 / 托管 API 脱节。这里用图示 + 极短核心式建立直觉。若要动手跑完整训练或推理,推荐直接使用 Hugging Face TransformersnanoGPT;云上调用与鉴权、限流、错误处理见 AI API 集成与调用技巧

数据流总览(Mermaid)

一次前向的目标:在已给出的整段子词(含系统提示、历史、用户输入)上,为「下一个子词」在词表上给出一个概率分布。Decoder-only 对话模型在实现上,是对可见前缀反复做这类计算;采样的随机性由 temperature / top_p 等控制。

自回归循环(伪代码)

自回归解码=把上一步新生成的子词拼回输入,再算下一步的分布。流式输出(SSE)本质上是下面循环在「每多出一个子词」时往客户端推一段文本。

序列 = 分词(系统+用户+已生成, ...);
for step in 1..max_out_tokens:
分布 = Softmax( LM(序列) 在待预测位置上的 logits );
下一词 = Sample(分布; temperature, top_p, ...);
若 下一词==EOS: 结束;
序列 = 序列 + [下一词];

自注意力与一层的核心式

自注意力把同一序列中每个子词都投影为 Q(查什么)、K(可匹配的标签)、V(要混合进输出的内容)注意力权重由 Q 与 K 的相似度经 softmax 得到,再去加权 V。缩放点积的「一句话公式」是(与 Transformer 架构深度解析 的数学部分一致,此处不展开求导与多头拆分):

Attention(Q, K, V) = softmax(QK^T / sqrt(d_k)) @ V(在 PyTorch 中即对最后一维做 softmax,再与 V 相乘。)

一个 Encoder/Decoder 子层在残差 + 层归一化下可记为:先对 LayerNorm(x) 做自注意力,再加回 x;再对 LayerNorm(·) 做前馈 FFN,再加回。Decoder 侧在「生成」时还会加 因果掩码,保证当前子词不能看见尚未生成的右端子词。这里不再粘贴整类 class MultiHeadAttention

与 API 对接时只需盯住的字段

你关心的通常在哪里
花多少钱 / 用多长上下文响应体里的 usageprompt_tokenscompletion_tokens 等),以服务商返回为准
生成长度请求里 max_tokens / 厂商等价字段;注意与 Context Window 的关系
稳 vs 活temperaturetop_p、有的模型还有 seed

最小调用骨架(不是可运行全要素示例;缺 URL、key、错误处理,仅保留结构以对照文档):

// 发 JSON、读回文本与 usage —— 与「原理」一节的自回归、计费对齐即可
const res = await fetch(apiUrl, {
method: "POST",
headers: { Authorization: `Bearer ${apiKey}`, "Content-Type": "application/json" },
body: JSON.stringify({
model,
messages: [{ role: "user", content: prompt }],
max_tokens: 200,
temperature: 0.4,
}),
});
const j = await res.json();
const reply = j.choices?.[0]?.message?.content;
const { prompt_tokens, completion_tokens } = j.usage;

与姊妹篇的图示表述对齐:LLM 原理:Transformer 与工作机制(Decoder 堆叠、子词、能力边界一句话版)。

🎯 学习检验

原理理解检验

  1. 架构理解:能否解释Transformer架构的核心组件和作用?
  2. 注意力机制:能否描述自注意力机制的计算过程?
  3. 训练流程:能否说明预训练、微调、RLHF的目的和方法?
  4. 生成机制:能否解释自回归生成的工作原理?

实践能力检验

  1. API使用:能否熟练调用大模型API并分析响应?
  2. 参数调优:能否根据需求调整采样参数?
  3. 性能分析:能否评估模型的性能和效率?
  4. 问题诊断:能否识别和解决常见的使用问题?

🚀 实践项目建议

原理验证项目

  1. 画清数据流:对着本文 Mermaid,能手绘「嵌入 → 多层块 → 词表」与自回归外圈循环。
  2. 注意力小实验:在 Transformers 或课程 notebook 里跑 一两层 小模型,只观察注意力矩阵长什么样(不必手写 200 行矩阵乘)。
  3. 采样 A/B:同一 prompt 只改 temperature / top_p,各生成 3 次,把差异记成可复述的结论。
  4. 用量对账:用任意官方 SDK 或 curl 打一次流式与非流式,核对 usage 与账单字段。

应用开发项目

  1. 智能对话系统:已接入大模型 + 会处理中断与 usage 的 Web 或 CLI 即可算过关。
  2. 文本生成工具:有「短/中/长」或「更稳/更活」的显式产品开关,并映射到 API 参数。
  3. 统一 API 适配层:对两家厂商的 messages / max_tokens / 错误体做归一,而不是复制粘贴示例代码。
  4. Token 与成本看板:按日/按模型聚合计费字段,和粗估作对比,形成「预警阈值」。

📚 延伸阅读

核心论文

  1. "Attention Is All You Need" - Transformer原始论文
  2. "Language Models are Few-Shot Learners" - GPT-3论文
  3. "Training language models to follow instructions" - InstructGPT论文
  4. "Constitutional AI: Harmlessness from AI Feedback" - Constitutional AI论文

技术博客

  1. The Illustrated Transformer - 图解Transformer架构
  2. OpenAI Blog - 大模型技术发展动态
  3. Anthropic Research - AI安全和对齐研究
  4. Hugging Face Blog - 开源大模型技术分享

开源资源

  1. Transformers库 - Hugging Face的模型库
  2. nanoGPT - 简化版GPT实现
  3. LLaMA - Meta开源大模型
  4. ChatGLM - 清华开源对话模型

学习提示:先读通本文表格 + Mermaid + 伪代码,再选 Transformers / 云 API 其一做小实验(看 usage、改 temperature),避免在文档里追求「手抄几百行教学版 Transformer」;工程深读以 大模型技术 与开发实战篇为准。