2026 LLM工程实战项目全攻略

theahmadosman 发布于 2026-05-25 阅读 205

本文是一个项目驱动的LLM工程学习路线图(2026版),旨在帮助读者从理论走向实践。内容涵盖Tokenizer、嵌入、位置编码、注意力机制、Transformer块、训练目标、解码策略、KV缓存、长上下文、MoE、状态空间模型、数据管道、缩放定律、后训练(RLHF/DPO)、量化、服务系统、评估、RAG、工具使用、代理、多模态、可解释性和红队测试。每个项目遵循“构建-绘制-破坏-解释”循环,并建议发布代码、笔记本、图表、失败案例和总结。最终目标是构建完整的LLM系统。

Image

在某个时刻,仅靠阅读关于大语言模型(LLM)的文章已经不够了。你需要亲手搭建整个技术栈:先是 Tokenizer,然后是嵌入、位置、注意力、Transformer 块、目标函数、解码、缓存、长上下文、路由、数据、后训练、服务、评估、工具,以及对齐/安全。

一个以项目为驱动的路线图,帮你把 LLM 基础知识转化为可以构建、测量、破坏和解释的实用系统。

Image

Local AI 系列为你提供了硬件、运行时和模型机制的基础。本文就是在这个基础牢固之后的内容:一份按顺序构建的清单,让你通过复现关键组件、观察它们如何失败、并记录失败教会你的东西来学习这个领域。

Tokenization、注意力、KV cache、MoE、量化、服务、RAG、代理、评估和安全,并不是孤立的流行词。它们是一个系统的不同部分。从项目循环开始:实现基本组件,画出行为图,故意破坏它,然后解释发生了什么变化。当你亲手接触到底层模型、内存、数据、推理和评估规则之后,产品和框架才会变得更有意义。

目标是从“我理解概念”进阶到“我能构建它”。截至2026年5月,这意味着要同时学习模型架构、训练循环、推理路径、数据处理流水线、服务层和评估习惯。

重点

这是一份以项目为先的指南。它从基本原理开始:Tokenizer、嵌入、位置方法、注意力、多头注意力、Transformer 块、训练循环、目标函数、解码、推测解码、KV cache、MQA、GQA、MLA、长上下文、高效注意力以及硬件感知建模。

之后,它进入更广泛的系统和研究层面:混合专家模型、稀疏模型权衡、状态空间和线性注意力替代方案、扩散式语言模型、数据流水线、合成数据、缩放定律、后训练、RLHF、PPO、GRPO、RLVR、量化、服务栈、评估工具、RAG、工具、代理、多模态适配器、可解释性、红队测试套件,以及一个完整的顶点模型系统。

这个顺序很重要。你应该在训练模型之前理解为什么 Tokenization 会改变上下文长度。你应该在选择服务栈之前理解为什么注意力会变成内存瓶颈。你应该在信任一个空洞的产品演示之前理解为什么评估和失败案例收集很重要。

对于本路线图所依赖的基础知识,我有一套四部分的教程,教你自托管 LLM / 本地 AI:

前两篇解释了硬件容量和带宽的数学原理。第三篇解释了将硬件转化为可用推理的软件层。第四篇解释了模型侧机制:Token、Transformer、注意力、KV cache、解码、上下文、RAG、代理和本地部署机制。本文假设你已经掌握了这些基础,并将其转化为一系列你可以构建、测试和发布的项目。

原则:每个项目教会你一个来之不易的概念

对于下面的每个项目,遵循同样的循环:

构建它。 在使用库版本之前,自己实现核心想法。

绘制它。 制作损失曲线、延迟曲线、内存曲线、注意力热力图、路由直方图、熵图或失败案例图。

打破它。 消融你刚构建的东西。移除位置编码。禁用因果掩码。过度量化。饿死数据。让路由器崩溃。让 KV cache 过载。

解释它。 写一篇简短的技术笔记:你预期了什么,实际发生了什么,什么让你惊讶,你下一步会尝试什么。

发布成果。 一个仓库、笔记本、博客文章、小型演示、基准测试图表或可复现的实验,远胜于模糊的理论。

下面的技术栈从 Token 到系统,再从系统到研究。

第一部分:文本变成张量

Image

1. 从零构建一个 Tokenizer

在训练模型之前,你需要决定世界如何变成符号。这个决定会影响压缩、多语言行为、罕见词、代码、数学、表情符号、延迟、上下文使用和模型质量。

从实现字节对编码开始。在一个小语料库上训练一个微小子词词汇表。然后与 unigram/SentencePiece 风格的 Tokenization 进行比较。BPE 之所以成为核心,是因为它通过组成子词单元来处理罕见词,而 SentencePiece 则直接从原始文本训练 Tokenization,无需预先假定以空白分隔的单词。

2. 独热向量、学习嵌入和语义几何

一个 Token ID 本身没有意义。当 ID 变成向量时,意义才开始。构建一个最简单的嵌入表,并在下一个 Token 预测目标上学习它。

第二部分:位置赋予 Token 顺序

Image

3. 实现正弦、学习、RoPE 和 ALiBi 位置方法

仅靠注意力本身是置换不变的。没有位置,“狗咬人”和“人咬狗”看起来太相似。原始的 Transformer 使用正弦位置编码;后来的系统常使用学习位置、旋转位置嵌入、ALiBi 或 RoPE-scaling 变体。RoPE 通过嵌入空间中的旋转编码相对位置,而 ALiBi 根据距离偏置注意力分数,旨在改善长度外推。

第三部分:注意力使上下文有用

Image

4. 为一个 Token 手工实现缩放点积注意力

在实现 Transformer 块之前,先为一个查询实现注意力。手动计算 Q、K、V。做点积。缩放。Softmax。用它形成值的加权和。

Transformer 用注意力取代了循环,使得在序列上并行训练成为可能,同时让每个 Token 能关注其他 Token。这个设计选择至今仍是大多数 LLM 的基础。

5. 将注意力扩展到多头注意力

多头注意力允许不同的子空间学习不同的关系模式。有些头可能专门处理局部语法、归纳式复制、分隔符跟踪或长程依赖。

第四部分:Transformer 块

Image

6. 构建单个 Transformer 解码器块

现在把这些组件堆起来:Token 嵌入、位置方法、掩码多头注意力、残差连接、归一化、前馈网络和输出投影。

现代的解码器块通常是预归一化,使用 RMSNorm 或 LayerNorm 变体,并且常使用门控 MLP,如 SwiGLU,而不是最古老的 ReLU 风格前馈块。RMSNorm 通过关注缩放来简化 LayerNorm,而 GLU/SwiGLU 风格的前馈层已在多个设置中被证明能改善 Transformer 性能。

7. 将块堆叠成“迷你 Transformer”

在一个玩具文本上训练一个极小的纯解码器模型。重点不是构建一个有用的聊天机器人,而是理解训练循环。

第五部分:目标函数定义模型学习什么

Image

8. 比较因果 LM、掩码 LM、前缀 LM 和去噪目标函数

不同的目标函数产生不同的能力。BERT 使用掩码语言建模来构建双向表示。GPT 风格的模型使用因果下一个 Token 预测。T5 将许多 NLP 任务框架化为带去噪目标的文本到文本生成。UL2 混合了多种去噪模式以覆盖因果、前缀和双向行为。

第六部分:解码将概率变成文本

Image

9. 构建一个采样仪表盘

模型输出 logits。产品输出文本。解码是桥梁。

10. 实现推测解码

自回归解码是顺序的:一个 Token 依赖于前一个 Token。推测解码通过使用较小的草案模型提议 Token,然后由较大的模型验证来加速生成,在正确实现时保持目标分布。

较新的变体减少或消除了对单独草案模型的需求。Medusa 添加额外的解码头来提议多个未来 Token,而 lookahead 解码在不使用辅助模型的情况下探索并行的候选 n-gram。

第七部分:KV 缓存和内存受限推理

Image

11. 构建 KV 缓存

在自回归推理期间,过去的键和值不需要每一步都重新计算。KV 缓存存储了它们。这是训练和推理之间最重要的实际区别之一。

12. 实现 MQA、GQA,并研究 MLA

标准的多头注意力为每个查询头提供自己的键和值头。多查询注意力在查询头之间共享键和值,以减少内存带宽。分组查询注意力是一个折中方案,保留几个 KV 头而不是一个,通常能在保持更多质量的同时提高推理效率。

到2026年,KV 缓存减少已成为主要的架构设计轴线。DeepSeek-V2 引入了多头潜在注意力(MLA),一种低秩 KV 压缩方法,而 DeepSeek-V3 继续将 MLA 与稀疏 MoE 扩展相结合。

第八部分:长上下文是一个系统问题

Image

13. 构建滑动窗口注意力和注意力汇点实验

长上下文不是通过在配置文件中增加一个数字就能解决的。模型可能会丢失信息、过度关注无关 Token、在长序列上崩溃,或者变得过于昂贵而无法服务。

Mistral 7B 在一个开放模型中推广了滑动窗口注意力和分组查询注意力的实际组合。StreamingLLM 表明,保留早期的“注意力汇点” Token 可以在极长的 Token 流上稳定流式生成。

14. 通过 RoPE 缩放、YaRN 风格插值和内存机制扩展上下文

上下文扩展通常结合位置插值、微调、高效注意力和评估。YaRN 表明,基于 RoPE 的上下文扩展可以比某些先前方法在数据和计算效率上高得多。Infini-attention 引入了一种压缩记忆机制,旨在将 Transformer 风格模型扩展到无界输入长度,同时具有有界的内存和计算。

第九部分:高效注意力和硬件感知建模

Image

15. 比较朴素注意力、PyTorch SDPA 和 FlashAttention

同样的数学运算,根据内存访问模式的不同,运行时可能截然不同。FlashAttention 通过减少高带宽内存的读写使注意力更快。FlashAttention-3 使用硬件感知调度、异步操作和 FP8 支持,进一步优化了 NVIDIA Hopper GPU 上的注意力。

16. 学习硬件预算:FLOPs、带宽、内存和精度

到2026年,LLM 工程深受硬件限制。NVIDIA Blackwell 系统强调 FP4/FP8 推理和大 NVLink 域;DGX B200 类系统提供巨大的 HBM 容量和带宽。Google 的 Ironwood TPU 代次主要用于推理。AMD 的 MI300X 每个加速器配备 192GB HBM3 以应对内存密集型工作负载。

第十部分:混合专家模型

Image

17. 构建一个双专家路由器

稀疏混合专家模型增加了参数数量,但不会为每个 Token 激活所有参数。Switch Transformer 表明,稀疏专家路由可以高效地扩展模型容量。Mixtral 展示了一种实用的开放稀疏 MoE 设计,其中每个 Token 路由到一个专家子集,而 DeepSeek 的 MoE 工作探索了更细粒度的专家和共享专家。

18. 复现现代稀疏模型权衡

最近的前沿和开放权重系统大量使用稀疏激活。DeepSeek-V3 报告总参数 671B,每个 Token 激活 37B,使用 MLA、DeepSeekMoE、无辅助损失的负载均衡和多 Token 预测。Llama 4 引入了 Meta 的第一个开放权重原生多模态 MoE 模型系列。Qwen3 开放了两个 MoE 模型权重:Qwen3-235B-A22B 和 Qwen3-30B-A3B,以及六个密集模型。

Moonshot 的 Kimi K2 系列延续了大型稀疏模型的趋势。Kimi K2.6 模型卡描述了一个原生多模态代理 MoE 模型,总参数 1T,激活参数 32B,上下文窗口 256K,并配备 MoonViT 视觉编码器。

第十一部分:超越传统 Transformer

Image

19. 实现一个玩具状态空间或线性注意力模型

Transformer 占主导地位,但它们并非唯一严肃的序列架构。Mamba 引入了选择性状态空间模型,具有线性时间序列缩放和强大的吞吐量声明。Mamba-2 通过状态空间对偶性更直接地将状态空间模型与注意力联系起来。RetNet 提出了保留机制,可以并行训练同时支持递归式推理。

20. 构建一个扩散式语言模型玩具

自回归生成并非唯一可能的解码范式。LLaDA 从零训练了一个扩散式语言模型,使用掩码和去噪,挑战了高质量语言建模必须是自回归的假设。Dream 探索了具有并行去噪的开放扩散语言建模。Inception 的 Mercury 模型以极高的生成速度推销扩散 LLM。

第十二部分:数据是真正的预训练基础

Image

21. 构建一个预训练数据流水线

数据质量是技术栈中影响最大的部分之一。FineWeb 发布了一个包含 15 万亿 Token 的数据集,基于 Common Crawl 快照构建,并采用了旨在实现强大开放预训练的过滤和去重选择。Dolma 提供了 OLMo 背后的开放语料库。DataComp-LM 展示了标准化的数据整理实验如何在固定计算量下显著提升模型质量。

22. 合成数据:生成、过滤并证明其有效性

当合成数据具有针对性、经过过滤并诚实地评估时,它可能有所帮助。phi-1 的工作表明,在高质量的“教科书式”和合成代码数据上训练的小模型,在编程基准测试上表现惊人。但合成数据如果随意使用,也可能放大错误、破坏多样性或污染评估。

第十三部分:缩放定律和容量

Image

23. 训练极小、小和中型模型,并拟合缩放曲线

缩放定律量化了损失如何随模型大小、数据大小和计算量变化。Kaplan 风格的缩放定律显示了在几个数量级上的平滑幂律关系。Chinchilla 后来论证了许多大型模型训练不足,并且计算最优训练应更仔细地同时缩放参数和 Token。

第十四部分:后训练将基础模型变为助手

Image

24. 微调、指令微调和偏好微调

基础模型预测文本。助手遵循指令。InstructGPT 表明,人类反馈微调可以使模型比单纯扩展预训练模型更符合用户意图。直接偏好优化(DPO)后来简化了偏好训练,在许多设置中无需显式的奖励模型和 RL 循环。

25. 构建一个玩具 RLHF、PPO、GRPO 和 RLVR 实验室

强化学习对推理模型尤为重要。OpenAI 的 o1 系统卡强调,性能随着更多强化学习和更多推理时思考而提高。DeepSeek-R1 普及了对推理导向 RL 的公开讨论,包括纯 RL 的 R1-Zero 阶段和最终模型的多阶段流水线。DeepSeekMath 引入了组相对策略优化(GRPO)作为 PPO 风格的替代方案,通过避免独立的评论家模型来减少内存开销。

第十五部分:量化和压缩

Image

26. 量化模型并测量损害

量化不仅仅是“让它变小”。它会改变数值行为、延迟、内存带宽,有时还会改变模型质量。

GPTQ 展示了针对超大型语言模型的一次性后训练量化。AWQ 表明,保护一小部分显著权重可以改善低比特量化。GGUF 成为 llama.cpp 生态系统中用于本地推理的广泛使用的文件格式。

第十六部分:服务系统

Image

27. 通过多个推理栈服务同一个模型

LLM 服务本身就是一门学科。vLLM 引入了 PagedAttention 以减少 KV 缓存内存浪费并支持高效服务。TensorRT-LLM 包括飞行中批处理、分页注意力、量化和多 GPU 执行等功能。SGLang 强调快速结构化生成,具有 RadixAttention、前缀缓存、调度、推测解码和分离式服务等功能。

第十七部分:评估停止猜测

Image

28. 构建一个评估工具

如果你不能衡量模型,就无法改进它。HELM 主张在准确性、校准、鲁棒性、公平性、偏见、毒性和效率方面进行广泛评估。MMLU 成为跨多个学科的广泛知识和推理的标准基准。EleutherAI 的语言模型评估工具成为标准化评估的常用开放工具。

第十八部分:检索、工具和代理作为顶点项目

Image

29. 从头构建检索增强生成

RAG 将模型中的参数化记忆与外部语料库中的非参数化记忆相结合。最初的 RAG 工作表明,检索可以改善知识密集型任务,并使输出更易于更新或扎根。

30. 只有在你理解整个技术栈之后,再构建工具使用和代理循环

代理并非虚假,但若被视为魔法则很脆弱。ReAct 表明,将推理轨迹与行动交错可以提高任务解决能力和可解释性。Toolformer 表明,模型可以从自监督信号中学习使用外部 API。DSPy 将 LM 流水线重新定义为提示和权重可优化的程序。

第十九部分:多模态 LLM

Image

31. 构建一个极小的视觉语言适配器

现代 LLM 越来越多地消费文本、图像、音频、视频和结构化工具输出。CLIP 展示了对比图像-文本预训练的力量。Flamingo 连接了冻结的视觉和语言模型,用于少样本多模态学习。LLaVA 通过将视觉编码器连接到 LLM 演示了视觉指令微调。到2026年,像 Llama 4 和 Kimi K2.6 这样的系统强调原生多模态,而不是将视觉视为次要特性。

第二十部分:可解释性和失败模式

Image

32. 研究电路、探针和稀疏自编码器

机制可解释性试图理解模型内部计算了什么。Transformer 电路工作将注意力和 MLP 行为分解为更可解释的组件。Anthropic 的稀疏自编码器工作表明,学习到的特征可能比单个神经元更可解释,并且有时可以跨大型模型隔离概念。

33. 构建红队和安全评估套件

随着模型能力增强,安全评估成为工程的一部分。宪法 AI 探索使用一套书面的原则加上 AI 反馈来减少对直接人类标签的依赖。红队测试研究展示了手动和自动对抗性攻击如何揭示有害行为。更广泛的 AI 安全报告综合了滥用、故障、系统性影响和失控等风险。

第二十一部分:最终顶点项目构建一个完整的微型 LLM 系统

Image

34. 训练、调优、量化、服务、评估和记录一个模型

你最终的项目应该连接整个技术栈。

一个现实的投入计划

几周足以改变你的直觉。几个月足以建立坚实的基础。

第1-2周:表征和注意力

构建 Tokenizer、嵌入、位置编码、注意力、掩码、多头注意力和一个单块 Transformer。

第3-4周:训练和目标函数

训练一个迷你 Transformer,比较目标函数,构建采样工具,研究归一化和激活函数,进行你的第一次消融实验。

第5-6周:推理系统

实现 KV 缓存、MQA/GQA、推测解码、量化和服务基准测试。

第7-8周:长上下文、MoE 和数据

构建滑动窗口注意力、上下文扩展测试、一个玩具 MoE 和一个真实数据流水线。

第9-10周:后训练和评估

运行 SFT、LoRA/QLoRA、DPO、玩具 RL、基准测试工具和安全评估。

第11-12周:顶点项目

训练或微调一个小模型,量化它,服务它,添加 RAG/工具,评估它,对它进行红队测试,并发布完整的总结报告。

确切的日程安排不如循环重要:构建、绘制、打破、解释。

每个项目之后发布什么

对于每个项目,产出五件作品:

  1. 实现:带有测试的干净代码。

  2. 笔记本:一个可复现的实验。

  3. 图表:至少三张展示行为的图表。

  4. 失败案例集:系统崩溃的例子。

  5. 简短总结:你学到了什么,以及什么改变了你的想法。

不要只发“我实现了注意力”。发注意力热力图。发掩码 bug。发熵曲线。发延迟图。发奇怪的重复循环。发专家路由崩溃。发量化回归。发出乎意料的安全失败。

这就是基础知识如何复利增长。

心态

不要永远困在理论里。但也不要将演示误认为是理解。

一个代理框架可能隐藏了模型。一个服务框架可能隐藏了缓存。一个基准测试可能隐藏了泄露。一个产品可能隐藏了失败模式。一个包装器可能隐藏了模型正在完成所有工作的事实。

基础知识消除了隐藏之处。

学习 Tokenization。学习嵌入。学习位置。学习注意力。学习残差流。学习归一化。学习目标函数。学习采样。学习 KV 缓存。学习长上下文。学习 MoE。学习量化。学习数据。学习缩放。学习后训练。学习服务。学习评估。学习安全。学习失败模式。

然后构建代理。构建产品。构建公司。构建实验室。

但要建立在基岩之上。

你未来的自己会感谢你。

下次见。

  • Ahmad
  • 原文链接: x.com/TheAhmadOsman/stat...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~

相关文章

0 条评论