03 七个核心概念:一次摊开整张地图 📅 2026/8/20 10:02:21 七个核心概念一次摊开整张地图学一个复杂系统最容易犯的错是一头扎进某个细节——先看懂了注意力机制却不知道它在整个生命周期的哪一格或者背熟了 RLHF 的四个模型却说不清它和推理速度有没有关系。这一篇反过来做先把全部零件铺在桌面上摆到一眼可见的深度再进任何一个盒子。七个核心概念、五个关键角色、一张全生命周期图外加一个贯穿后面十篇的运行示例。读完这篇你不会懂任何一个细节但你会拥有一张不会迷路的地图——之后每一篇深潜都是在往地图的某一格里填内容。缩写对照表缩写英文全称中文LLMLarge Language Model大语言模型SFTSupervised Fine-Tuning监督微调RLHFReinforcement Learning from Human Feedback基于人类反馈的强化学习DPODirect Preference Optimization直接偏好优化KV CacheKey-Value Cache键值缓存APIApplication Programming Interface应用程序接口OOMOut of Memory显存/内存溢出FP1616-bit Floating Point16 位浮点数一、七个核心概念按依赖顺序从现实世界的问题到系统里的抽象每个概念都是被某个具体困难逼出来的#现实问题系统概念为什么必须是这个抽象1文本要变成可计算的单位Token词元比字符高效、比单词灵活的计量单位2学到的知识要存在某处参数 / 权重Parameters / Weights几十亿浮点数矩阵知识的有损压缩介质3要从免费文本中学习预训练Pretraining以预测下一个 token为目标扫过万亿级语料4会续写 ≠ 会帮忙后训练 / 对齐Post-training用少量高质量数据把续写器整形成助手5存进去的能力要取出来用推理Inference权重只读prefill decode 逐 token 生成6投入多少资源换多强能力Scaling Law规模定律参数 × 数据 × 算力与损失之间的幂律关系7结果以什么形式给到用户权重发布模式同一份权重公开下载或藏在 API 后这七个不是并列关系而是一条有向的链Token计量单位 ↓ 决定了训练数据和上下文如何被切分 参数存储介质 ↓ 预训练往里写知识后训练调整取用方式 预训练 → 后训练写入 ↓ 交付一个静态权重文件 推理读取 ↓ Scaling Law 解释了要多大的参数才够 Scaling Law投入产出公式 ↓ 最后一个决策这份权重公开吗 发布模式交付形态下面逐个说到够用就好的深度。1. Token一切成本的计价单位模型不认识文字只认识数字。Token 是文本被切分后的最小单位——大约是一个英文单词、半个到一个汉字、或者一个代码符号。Tokenizer分词器负责文本 ↔ token ID的双向翻译。为什么它排在第一位因为几乎所有你关心的量都以 token 计价上下文窗口的长度是 token 数、API 账单按 token 收费、生成速度是 token/s、KV Cache 的显存占用是每 token 多少 KB。搞不清 token后面所有的数字都读不懂。一个立刻有用的直觉同一段中文在不同模型的 tokenizer 下 token 数可能相差 40% 以上——同样的问题问不同模型成本天然不同。详见 05 · Tokenizer。2. 参数模型本体就是这堆数参数也叫权重就是模型里那些可训练的浮点数。“8B” 80 亿个这样的数。模型文件的全部内容就是这堆数——没有代码逻辑、没有知识库、没有规则表只有矩阵。训练是调这些数推理是读这些数。你对模型能力的一切感受最终都归结为这几十亿个浮点数取了什么值。它们排列成 Transformer 架构详见 04 · Transformer 内部构造而这个数字的大小直接决定三件事装多少知识、要多少显存、每 token 花多少钱。3. 预训练99% 的算力花在这里给定前文预测下一个 token与真实答案算交叉熵损失反向传播更新权重——没有人工标签下一个词就写在原文里。万亿级 token 语料、数万张 GPU、数月时间。产出叫基座模型base model一个极强的续写器。它知道很多但不会以助手的方式回答你。4. 后训练从会续写到会帮忙基座模型问它法国的首都是哪“可能续写这是小学地理试卷的第 3 题”——因为语料里这句话后面更常跟着这种文本。知识已经在里面了但取不出来。后训练用 SFT监督微调教会它看到问题就回答问题的行为格式再用 RLHF / DPO 这类偏好优化让它回答得好。数据量只有预训练的万分之一对可用性的影响却是决定性的。四代工具的细拆见 07 · 后训练细拆。5. 推理prefill 吃算力decode 吃带宽一次生成分两段**Prefill预填充**并行吃下全部输入 token**Decode解码**逐个吐出输出 token。中间靠 **KV Cache键值缓存**避免重复计算。关键认知这两段的瓶颈完全不同。Prefill 是算力受限决定首字延迟Decode 是内存带宽受限决定逐字速度——因为每生成一个 token 都要把全部权重从显存搬一遍。这个不对称解释了 API 定价为什么输入输出不同价、长对话为什么越聊越慢。详见 08 · 推理引擎。6. Scaling Law为什么行业敢砸千亿模型损失随参数量、数据量、算力按幂律平滑下降跨越多个数量级都成立。这把更大是否更好从玄学变成了可预测的工程学——投入 10 倍算力能提前算出效果落在哪。它同时也是为什么 8B 和前沿模型有肉眼可见的差距的定量答案以及为什么今天的 8B 远强于三年前的 8B的解释。见 09 · 参数规模与 Scaling Law。7. 发布模式技术栈相同合约不同训练管线产出权重文件后只剩一个决策这个文件公开吗公开 → 开源生态下载、自部署、微调不公开 → 闭源生态API 出租、按 token 计费。分叉之后两边跑的推理原理一模一样。差别不在技术在交付合约、成本模型、隐私边界和定制权。见 12 · 开源 vs 闭源。二、五个关键角色谁负责什么谁刻意不做什么概念是名词角色是承担职责的组件。理解一个系统的捷径是搞清每个角色唯一负责什么和刻意不做什么——后者往往比前者信息量更大。角色Owns唯一职责Knows持有什么Does NOT do刻意不做Tokenizer文本 ↔ token ID 的双向翻译词表几万~几十万条目不理解语义训练前冻结此后永不改变Transformer 权重栈存储全部语言能力与知识几十亿~万亿个参数不存对话状态推理时只读不学习训练管线把数据变成权重写入语料、训练目标、GPU 集群不参与线上服务训完即退场推理引擎用权重生成回答读取KV Cache、批调度、采样参数不修改权重不判断内容真假发布与部署形态决定权重如何到达使用者许可证、API 合约、定价不改变模型能力本身三条最容易被忽略、但解释了大量现象的刻意不做Tokenizer 训练前冻结→ 这就是为什么模型的分词缺陷数不清字母、中文效率低无法靠后续训练修复它是被焊死的权重推理时只读→ 这就是为什么对话不会让模型学到东西为什么所有AI 记忆都是上下文工程推理引擎不判断真假→ 这就是为什么幻觉不会在这一层被拦截。引擎忠实地从概率分布里采样它没有这句话是不是真的这个概念。三、全生命周期一张图看完所有角色的接力推理侧持续 · 毫秒级 · 面向所有用户交付形态一个决策训练侧一次性 · 数月 · 数万 GPU万亿级 token 语料预训练next-token prediction基座权重只会续写后训练SFT RLHF/DPO最终权重文件safetensors开源权重公开下载Llama · Qwen · DeepSeek闭源权重藏在 API 后GPT · Claude · Gemini你自己的推理引擎vLLM / ollama厂商的推理集群prefill decode逐 token 生成用户 prompt回答这张图的核心信息只有一句训练是写入、推理是读取中间隔着一个静态的权重文件开源和闭源的分叉点就在这个文件是否公开——分叉之后两边的物理原理完全一致。图上还有两个不在正常流程里、但你一定会遇到的分支幻觉权重是有损压缩读取失真时模型流畅地编造 → 11 · 幻觉的机制显存溢出OOM权重体积 KV Cache 超过显存直接跑不起来 → 09 · 参数规模 与 10 · 上下文窗口。四、贯穿全系列的运行示例从这里开始本系列所有文章共享同一个场景。每篇结尾的⚓ 回到示例都会把当篇的深度接回它最后一篇带着全部深度重演一遍。场景你在笔记本上用ollama跑着开源的Llama-3-8B-Instruct同时开着闭源的Claude API。同一个问题发给两边“写一个 Python 函数判断质数并解释为什么只需要检查到平方根。”两边都给出了正确代码。但 Claude 的解释明显更严谨——它完整论证了平方根的数学原因还自发处理了 0、1、负数这些边界情况。为什么这个问题的完整答案需要动用地图上的每一个概念。浅层追踪每一步谁在场上第 0 步 · 能力从哪来早已发生两个模型的能力都来自各自的训练管线。数月前万亿级 token 语料被预训练压缩进参数再经后训练变成听话的助手产出一份静态权重文件。你提问时训练早已结束退场。第 1 步 · 两条路同一份原理本地这路开源Llama-3-8B 的权重文件FP16 约 16 GB躺在你硬盘上ollama 把它加载进统一内存云端这路闭源Claude 的权重你永远看不到请求进入厂商的推理集群——那边的原理与你本地一模一样只是规模大得多。第 2 步 · Tokenizer 上场两边各自的Tokenizer把你的问题切成 token ID 序列。各家词表不同切法不同token 数也不同。第 3 步 · 推理引擎读权重Prefill并行吃下全部输入 token 并写出 KV CacheDecode开始逐 token 生成——每个 token 都要把全部权重读一遍。8B 在笔记本上约十几 token/sClaude 那边模型更大靠数据中心 GPU 和批处理照样流畅。第 4 步 · 参数规模显形代码两边都对——质数判断在语料里出现过成千上万次8B 的容量足够。但解释质量分出了高下更大的参数规模意味着更强的推理链条Scaling Law 在起作用前沿模型的后训练投入也远更充分。第 5 步 · 回答返回两张不同的收据本地这轮对话从未离开你的电脑开源部署的隐私属性API 那路按输入/输出 token 计费账单和数据治理条款是闭源交付形态的一部分。这个示例触到了地图上的一切概念 / 角色在示例中的落点哪一篇展开Token / Tokenizer第 2 步两家词表切分同一问题05参数 / 权重栈16 GB 的 Llama 文件 vs 看不见的 Claude 权重04 · 09预训练第 0 步两边代码都写对的原因06后训练第 0 步解释质量差距的一半原因07推理引擎第 1、3 步ollama 与厂商集群跑同一套 prefilldecode08Scaling Law / 参数规模第 4 步能力差与 16 GB 这个数字本身09上下文窗口第 2~3 步30 个输入 token 占了窗口的多少10幻觉示例里没有发生——但换个冷门问题就会11开源 vs 闭源第 1、5 步下载权重 vs 调 API12一句话总结七个概念串成一条链Token 是计量单位 → 参数是存储介质 → 预训练/后训练是写入 → 推理是读取 → Scaling Law 是投入产出公式 → 发布模式是交付形态。五个角色各司其职其中三条刻意不做词表冻结、权重只读、引擎不判真假解释了 LLM 大部分让人意外的行为。你现在应该能在白板上画出数据 → 预训练 → 后训练 → 权重 → 开源下载 / 闭源 API→ 推理 → 回答这条链并为每个环节说出一句它为什么必须存在。但你还不知道任何一个盒子里面长什么样——从下一篇开始逐个打开。下一篇04 · Transformer 内部构造那几十亿个参数到底排成什么样 —— 打开最大的那个盒子。系列目录index.md