- 博客(73)
- 收藏
- 关注
原创 大模型训练原理(23)|32 个脑袋,为什么不需要 32 份记忆?一口气看懂 MHA、MQA、GQA、MLA
本课从 KV Cache 出发,用第一性原理串起 MHA、GQA、MQA 与 MLA:前者逐步解决“历史要存几份”,MLA 则进一步解决“历史该以什么形式保存”,看懂现代大模型如何在长上下文下压缩记忆成本。
2026-09-10 11:55:21
350
原创 大模型训练原理(22)|上下文从 4K 拉到 1M,真正爆掉的可能不是你以为的显存
长上下文真正的难题,不是把 1M Token 塞进模型,而是随着历史变长,如何同时压住 Attention 的平方计算成本、KV Cache 的显存开销,以及 Prefill / Decode 的实际推理代价。
2026-09-08 10:18:14
377
原创 大模型训练原理(21)|MoE 有 64 个专家还不够:真正决定模型水平的,是“谁来分活”
MoE 真正的难点,从来不是专家够不够多,而是谁来决定每个 Token 该走哪条参数路径。本课从 Router、Top-K 与 Gating 讲到专家分工、负载均衡、专家坍缩、共享专家和专家并行,带你理解路由如何同时影响模型能力、训练信号、GPU 负载与跨卡通信。
2026-09-02 17:57:47
584
原创 大模型训练原理(20)|一个模型明明有 1T 参数,为什么每个 Token 只算几十 B?MoE 把这笔账重新改写了
本文从第一性原理拆解 MoE(Mixture of Experts,混合专家)为什么能做到“模型总参数巨大,但单个 Token 只计算一小部分参数”。通过 Dense Model 与 MoE 的对比,逐步讲清 Conditional Computation(条件计算)、Sparse Activation(稀疏激活)、Expert、Router、Top-K、Total Parameters 与 Activated Parameters 的核心关系,并进一步解释负载均衡、专家坍缩、通信成本和分布式系统复杂度。真
2026-09-02 15:07:25
509
原创 大模型训练原理(19)|GPU 多了 10 倍,模型就该做大 10 倍吗?真正烧钱之前,先算明白 Scaling 这笔账
注意这一刻发生了什么。我们已经不再讨论:“模型做多大?
2026-09-01 17:17:23
418
原创 大模型训练原理(18)|梯度只是指路:真正让几百亿参数开始“学习”的,是 AdamW
梯度只告诉模型“往哪改”,真正决定“怎么改”的,是优化器。本文从 SGD 出发,顺着 Mini-Batch 噪声、历史方向、梯度尺度和权重衰减的问题,一步步推导出 Momentum、Adam 与 AdamW,并讲清 Learning Rate、Warmup、Gradient Clipping 为什么必不可少。看懂这一课,你会发现大模型优化的核心其实只有一个:如何把一个 noisy 的局部 Gradient,安全、稳定地变成真正的 Parameter Update。
2026-09-01 12:01:37
590
原创 大模型训练原理(17)|模型只猜错一个 Token,为什么连 Q/K/V 都要被“追责”?
本课从一次“Token 猜错”出发,讲透大模型训练最核心的因果链:Cross Entropy 如何给错误定价,Gradient 如何通过反向传播沿计算图追到 Q/K/V、MLP、Embedding 等参数,最终解释清楚模型为什么能靠无数次微小更新逐渐学会语言、知识与能力。
2026-08-28 15:45:09
560
原创 大模型训练原理(16)|你输入“今天天气真”之后,GPU 到底经历了什么?一口气跑通 Decoder-only Transformer
这篇文章用“今天天气真 → 好”这条完整链路,把 Decoder-only Transformer 从 Tokenizer、Embedding、Attention、MLP、Residual 一路跑到 LM Head、Logits 与自回归生成,真正讲清楚大模型如何把离散文字变成连续表示,再从整个词表中选出下一个 Token。
2026-08-26 19:09:35
484
原创 大模型训练原理(15)|80 层 Transformer 为什么没有把自己“改坏”?Residual 和 RMSNorm 真正守住的是什么
从“深层 Transformer 为什么不会越改越乱”出发,拆解 Residual Connection、Residual Stream、LayerNorm、RMSNorm 与 Pre-Norm 的真正作用,理解大模型如何让信息与梯度穿过几十层,并把每一层从“完整重写”变成“增量更新”
2026-08-25 17:05:53
185
原创 大模型训练原理(14)|Attention 已经把信息找回来了,Transformer 为什么还要塞一个巨大的 MLP?
Attention 负责把上下文“找回来”,MLP 负责把信息“加工成新的表示”,而 SwiGLU 与 MoE 的演进,本质上都在解决一个核心矛盾:如何让模型拥有更强的特征计算能力,却不让每个 Token 都为全部参数买单。
2026-08-25 16:53:15
202
原创 大模型训练原理(13)|一个 Attention Head 明明能算,Transformer 为什么偏要把它拆成很多头?
本文从“一个 Attention Head 明明已经能看完整个上下文,为什么还要拆成多个 Head?”这个问题出发,逐步拆解 Multi-Head Attention(多头注意力)的真正意义。核心不在于“把 Attention 多算几遍”,而在于让不同 Head 拥有独立的 Q/K/V 投影空间与 Attention Routing(信息路由),避免不同关系挤在同一套 Softmax 权重里竞争。文章进一步讲清 head_dim、多头张量 Shape、Concatenation、输出投影 W_O、Causa
2026-08-25 12:46:53
541
原创 AI时代后端工程(五):当 Cursor 一次能改几十个文件,真正该 Review 的其实发生在写代码之前
AI 写代码越来越快,真正危险的却不是“不会写”,而是把错误决策高效扩散到几十个文件。本文从真实后端场景出发,讲透 Plan-First Development(先计划,再开发):为什么 Context 之后不能立刻 Coding,如何用 Plan Review 提前暴露工程决策、控制 Change Surface(变更面),并把错误消灭在代码出现之前。核心目标只有一个:不是让 AI 写得更多,而是让不该写的代码永远不要出现。
2026-08-25 11:22:24
252
原创 AI时代后端工程(四):我不再研究“神级 Prompt”之后,Cursor 反而开始真正懂项目了
这篇文章从 AI Coding 中最常见的误区切入:真正决定 Cursor、Codex 工程表现的,往往不是 Prompt 写得多漂亮,而是 AI 是否拿到了正确的项目 Context(上下文)。文章系统拆解 Task、Repository、Architecture、Business、Runtime、Verification 六层上下文,并进一步讨论 Invariant(不变量)、Guardrail(护栏)、Source of Truth(事实源)与 Minimum Sufficient Context(最
2026-08-25 10:19:26
469
1
原创 AI时代后端工程(三):AI 十分钟就把功能写完了,真正让我头疼的却是“它跑起来以后”
AI 最危险的能力,不是偶尔把代码写错,而是能把一个不完整的假设写得非常完整
2026-08-24 17:54:06
300
原创 大模型训练原理(12)|整句话一次塞进 GPU,LLM 为什么还能做到“绝不偷看答案”?
Transformer 训练时,明明整句话一次进入 GPU,为什么模型却不能“偷看未来”?核心答案就是 **Causal Mask(因果掩码)**:计算可以并行,但信息访问必须遵守因果顺序。本文从 Attention Matrix 出发,讲透下三角 Mask、Softmax 前加负无穷、Teacher Forcing 与信息泄漏之间的关系,真正理解 Decoder-only LLM 为什么既能高效训练,又能严格执行 Next Token Prediction。
2026-08-24 16:55:34
460
原创 大模型训练原理(11)|Attention 最难的不是公式:3 个 Token 手算一遍,你就知道 Q、K、V 为什么非这样不可
本文深入解析了Transformer中的注意力机制(Attention),通过一个简化的三Token示例逐步拆解其计算过程。作者首先解释了为何需要将输入向量X拆分为Q(查询)、K(键)、V(值)三个部分——分别承担信息需求、匹配特征和内容传递功能。通过矩阵运算演示了QKᵀ如何生成注意力分数矩阵,强调了除以√dk防止softmax梯度消失的关键作用,最终通过加权聚合V完成信息传递。文章特别指出Attention本质是"问-找-分-拿"的上下文信息路由过程,将Token表征从独立个体转化为包
2026-08-24 15:55:38
453
原创 AI时代后端工程(二):AI把代码写得越来越快,我却越来越不敢让它直接开工了
这篇文章探讨了在AI编程时代下,程序员的核心竞争力正在从代码实现能力转向更高维度的工程判断能力。文章指出,随着AI大幅降低代码实现成本,真正拉开工程师差距的能力体现在四个关键维度:1. 问题定义(Define)——将模糊需求转化为精确的工程问题;2. 业务建模(Model)——构建准确的系统模型和状态机;3. 技术决策(Decide)——在约束条件下做出合理架构选择;4. 验证能力(Verify)——建立可靠的验证机制。
2026-08-21 12:13:16
309
原创 大模型训练原理(10)|Transformer 真正开始“读懂上下文”的一刻:Attention 为什么非出现不可?
这篇文章深入浅出地讲解了Transformer中的Attention机制,将其核心思想概括为"上下文信息路由"(Contextual Information Routing)。作者通过生动的例子(如"他指代谁")阐明Attention要解决的关键问题:在丰富上下文信息中动态选择当前Token最需要的内容,而非简单依赖位置或语义相似度。 文章创造性地区分了Attention三大要素: Query(需求方):当前Token需要什么 Key(匹配方):其他Token的可匹配
2026-08-21 11:39:29
372
原创 大模型训练原理(09)|Transformer 凭什么知道“狗咬人”和“人咬狗”不一样?——从位置编码到 RoPE
本文深入探讨了Transformer模型中的位置编码问题。首先指出Token ID仅代表身份信息,而语言作为序列结构需要位置信息。通过"狗咬人"和"人咬狗"的对比,说明词序对语义的决定性作用。 文章系统梳理了三种位置编码方案:1)可学习的绝对位置嵌入,但存在长度限制;2)正弦位置编码,通过多频率组合解决周期性问题;3)旋转位置编码(RoPE)的核心创新——将绝对位置转化为旋转操作,使Token交互时自然体现相对位置关系。RoPE的数学本质是通过旋转矩阵的乘积性质,使两
2026-08-21 10:56:34
664
原创 AI时代后端工程(一):Cursor 一分钟写完接口后,我才真正理解:后端工程师最值钱的从来不是写代码
《AI时代后端工程师的核心价值:从代码实现到工程判断》 本文通过一个订单接口案例,深刻揭示了AI编程工具普及后后端工程师的角色转变。作者发现AI能快速生成语法正确、功能完整的代码,但真正的工程挑战在于处理现实世界的复杂性:重复请求、并发冲突、部分失败等情况下的系统行为。 文章指出,现代后端开发的核心已从"代码实现"转向"工程判断",工程师需要专注于: 定义业务规则和不变量(Invariant) 设计失败处理机制 确保系统在异常情况下的正确性 建立可靠的生产环境保障 作
2026-08-20 18:05:16
440
原创 大模型训练原理(七)|你以为大模型在“读文字”?其实它从头到尾只看见了一串编号——真正讲懂 Tokenizer
模型不会直接读文字。文字必须先经过 Tokenizer,变成 Token Sequence。Token 不等于 Word。它只是 Tokenizer 定义的基本离散单位。Character 和 Word 是两个自然但都有明显缺陷的极端。Character 太碎。Word 太粗。Subword 的核心不是“更会分词”,而是让表示粒度可以伸缩。常见内容可以大块表示。罕见内容可以继续拆开。BPE 最值得理解的是 Merge 思想。
2026-08-20 15:49:44
302
原创 大模型训练原理(六)|有了梯度,模型为什么还是不会训练?把 SGD、Momentum、AdamW 一次讲透
假设一个模型要训练:100 万个 Step。第 1 Step 和第 999999 Step,真的应该用完全一样的 Learning Rate 吗?通常没有必要。训练前期:参数可能离好的区域还很远。训练中期:需要快速吸收大量数据里的统计规律。训练后期:模型已经来到比较好的区域,更新最好变得更加谨慎。于是现代训练通常不是设置:一个永远不变的 Learning Rate。而是使用:Learning Rate Schedule,学习率调度。
2026-08-20 14:58:04
291
原创 大模型训练原理(五)|Loss 明明只是一个数字,凭什么能训练几十亿参数?真正看懂 Backpropagation
从一个 Loss 数字到几十亿参数各自收到修改方向,本课拆透 Backpropagation(反向传播):用 Chain Rule(链式法则)把误差转化为 Gradient(梯度),并理解大模型训练中最关键的一步——模型不仅要知道“错了多少”,更要知道“到底该改哪里”。
2026-08-20 14:11:24
365
原创 大模型训练原理(三)|大模型到底是怎么“说出”一个词的?把 Logits、Softmax 和 Sampling 真正拆开
如果以后你把这一课很多细节忘了,我希望至少还记得下面五件事。第一,模型不会直接输出概率。它首先输出的是:Logits。第二,Logit 最重要的是相对差,而不是某一个值本身。真正决定两个 Token 概率比例的,是它们之间的 Logit Difference。第三,Softmax 不是“选答案”。Softmax 只是把一整组 Logits 转成 Probability Distribution。第四,Probability Distribution 和最终 Token 是两个层次。
2026-08-20 12:18:34
412
原创 大模型训练原理(四):大模型不是因为“猜错”才挨罚:Cross Entropy 到底在惩罚什么?
如果你只想学会第四课,前面已经够了。但如果你准备一路学到 DPO、PPO、RLHF、Knowledge Distillation,这一层值得提前知道。现在假设模型算完以后:L=2.31问题是:2.31 只是一个数字。模型里却可能有:几十亿个参数。那么:第一个参数应该变大还是变小?Attention 里的一个权重应该怎么动?MLP 的参数怎么办?最前面的 Embedding 又怎么知道自己犯了什么错?我们真正需要的是:也就是:∇_θ L。
2026-08-19 10:28:22
331
原创 大模型训练原理(八)|为什么把一个 Token 变成几千个数字,它反而开始有“意义”了?——Embedding 真正讲透
本文深入解析了NLP模型中Token Embedding的核心机制与重要性。文章首先指出Token ID仅是离散编号而非语义表示,直接输入存在数值关系误导的问题。然后分析了one-hot编码的局限性:无法表达词间关系且维度爆炸。真正的解决方案是Embedding——将Token映射为连续高维向量,这些向量作为可训练参数在预测任务中自动学习语义关联。 关键点包括: Token ID是地址索引,Embedding Matrix存储可学习的向量表示 Embedding通过高维空间编码分布式语义,而非人工设计特征
2026-08-17 18:38:51
481
原创 模型训练原理(二)|大模型为什么只靠“预测下一个 Token”,就能学会语言、知识和代码?
这篇文章深入解析了大语言模型训练的核心机制,重点阐述了NextTokenPrediction如何解决无标注数据的训练问题。文章首先指出传统监督学习需要人工标注(x,y)对的局限性,进而揭示语言模型利用文本自身结构自动生成训练信号的原理:将前文作为输入,原文的下一个token作为标签目标。 作者详细阐释了自回归建模的本质,说明模型通过链式法则将整个序列的概率分解为连续的nexttoken预测任务。文章强调,虽然训练目标简单,但要在复杂文本数据上准确预测需要模型学习语法、语义、事实关系等深层次规律。
2026-08-17 17:44:40
343
原创 模型训练原理(一):别急着学 Transformer:所谓“训练大模型”,其实就是把一堆数字一点点改对
本文深入浅出地阐述了大模型训练的核心机制,指出初学者常因过早关注Transformer架构而忽略更基础的训练原理。文章通过单参数模型示例,揭示了机器学习本质是参数优化过程:模型通过计算预测结果与真实值的差异(Loss),利用梯度(Gradient)确定参数调整方向,配合学习率(Learning Rate)完成参数更新(Parameter Update)。这一过程在数十亿参数的大模型中同样适用,只是通过反向传播(Backpropagation)实现误差责任的分布式分配。
2026-08-14 16:02:08
440
原创 Agent 原理(十六):别再从目录树读 Agent 源码了!真正看懂 Hermes,只需要追一条 Request
这篇文章的核心观点是:理解AI Agent系统的关键在于掌握其底层的第一性原理,而非具体框架的实现细节。作者通过分析一个典型Agent请求的生命周期,揭示了大型Agent框架中各个模块存在的必要性——它们都是为了解决现实场景中的特定问题而自然演化出的解决方案。 文章提出了阅读Agent源码的方法论: 以完整请求为线索追踪控制流 关注模块存在的根本原因(解决什么问题) 区分智能判断与执行权限的边界 理解状态所有权和责任划分 最终检验标准是能否从任意Agent系统中识别出核心循环(Observe→Decide→
2026-08-14 10:05:09
583
原创 Agent原理(十五):Agent 最危险的时刻,不是它答错,而是它开始真的能做事了
文章摘要:本文聚焦智能体(Agent)从演示到生产环境的关键转折点——Runtime层的构建。当Agent具备真实行为能力后,核心挑战从"如何提升智能"转向"如何控制权限"。作者通过采购案例阐明,即使模型判断完全正确,仍需Runtime执行权限管控(如审批流程)、沙盒隔离、持久化状态、幂等性校验等机制。生产级Agent需区分意图生成(LLM负责)与后果控制(Runtime负责),通过权限分离、最小特权原则和审计追踪,确保智能体在明确边界内自主工作。这标志着Agent从
2026-08-14 10:04:23
520
原创 Agent 原理(十四):Agent 跑得越久,为什么反而越容易变笨?真正要解决的,是“怎么忘”
文章摘要:长期运行的AI Agent面临的核心挑战不是记忆容量,而是信息管理问题。传统做法将所有历史记录堆叠在Context中会导致信噪比下降,降低决策质量。解决方案是通过Context Compression构建动态工作视图:1)分离结构化状态与历史记录;2)建立分层信息体系(Goal/State/Evidence/Summary);3)实现状态快照(Checkpoint)而非完整历史;4)结合确定性存储与语义压缩。这使Agent能在保留核心决策要素的同时,丢弃低价值细节,形成类似人类工作记忆的"
2026-08-14 10:03:08
831
原创 Agent 原理(十三):真正的生产级门槛,不是“会不会做”,而是“谁有权决定”
本文探讨了AI Agent在生产环境中的治理边界问题,强调"能做"与"有权做"的本质区别。文章指出,成熟的生产级Agent需要建立三层控制机制:能力验证(Capability)、执行验证(Verification)和权限治理(Governance)。通过采购审批等案例说明,Agent即使判断完全正确,也不应自动获得决策权。关键是要将动作风险评估(影响范围×不可逆性×环境敏感性)与业务规则检查相结合,实现Planning→ProposedAction→PolicyChe
2026-08-14 10:02:06
386
原创 Agent 原理(十二)|Learning Loop:一个 Agent 真正开始“成长”的那一刻:不是记住经验,而是学会淘汰经验
如果现在再让你实现第十二课,最差的代码应该是什么?它很酷。也很危险。真正的 Learning Loop 至少应该逐渐走向:Experience→Evidence→Reflection→→↓→→Validation→Governance→Promotion↓→→你会发现:。文件只是最终载体。Agent 到底应该相信什么?应该相信到什么程度?适用于什么范围?什么时候允许改变未来行为?什么时候应该承认:“以前学到的东西已经不对了。
2026-08-13 12:02:26
244
原创 Agent 原理(十一):会解决问题还不够,Agent 怎么把一次经验真正变成 Skill?
这篇文章探讨了AI Agent中Skill(技能)的概念与重要性,强调Skill是将经验转化为可复用的程序性知识,而非临时推理。Skill与Memory(记忆)、Tool(工具)的区别在于:Memory记录事实,Tool提供能力,而Skill则指导如何组织这些能力解决问题。文章指出,Skill应具备持久化、可检索、可复用等特性,并能影响Agent的规划与验证。通过案例(如供应商报价分析)说明Skill如何避免重复错误,提升效率。同时,文章也讨论了Skill的设计挑战(如粒度、版本管理)和实现方法(如按需加载
2026-08-13 11:45:37
290
原创 Agent 原理(十):真正危险的不是 Agent 会犯错,而是它做错了还敢说“已完成”
《Agent开发的核心原理与实践路径》摘要:本文提出学习智能体开发的有效方法是"从零构建"而非直接使用框架。文章将Agent定义为"LLM决策器+环境交互循环系统",并分解为Model、Context、State等核心组件。通过16课渐进式实践路线图,指导开发者从基础Tool Calling逐步实现包含Memory、Planning等功能的完整Agent系统。重点强调Context Engineering的复杂性,区分Context、State等关键概念,并以Herm
2026-08-13 11:17:07
312
原创 Agent 原理(九):Agent 不是不会做事,它是不知道先做什么:彻底讲透 Planning
很多教程会直接告诉你:“Planning 就是让 LLM 先列一个 Todo List。这句话不算错,但太浅。因为关键问题不是“有没有一个列表”。这个列表在系统里承担什么作用。Plan 是 Agent 根据 Goal、当前 State 和现实约束,对“如何从当前位置抵达目标”形成的一份显式未来任务结构。这里面有三个关键输入。第一个是 Goal。不知道终点在哪里,就无从谈规划。第二个是 State。你必须知道自己现在在哪里。第三个是 Constraints。
2026-08-13 10:56:38
215
原创 Agent 原理(八):Agent 为什么总像“失忆”?因为你保存的是聊天记录,不是 Memory
如果只说:“Memory 就是过去的信息。还是太宽。Memory 是 Runtime 对跨任务仍有潜在价值的信息进行选择、持久化、检索、更新和再利用的一套机制。选择。不是全部保存。持久化。任务结束以后它还在。检索。未来能够找回来。更新。现实变化以后不会永远停留在旧版本。再利用。真正进入新的 Decision。Database 主要解决:“放在哪里。Memory System 解决的是:“什么值得放、什么时候拿、拿什么、怎么使用、什么时候改掉。现在。现实世界是什么。刚刚看到了什么。
2026-08-13 10:44:06
161
原创 Agent 原理(七):State——别再让 Agent 靠聊天记录猜“自己做到哪了”
如果现在再回头看整门课程最开始的公式:sₜ = 当前 StateRuntime 先根据 State 构造:模型根据 Context 做决定:Runtime 在 Environment 中执行:最后:然后继续:sₜ₊₁↓↓LLM↓Action↓↓sₜ₊₂如果前面直接看到这几个公式,可能很抽象。我现在在哪里 → 做一步 → 看发生了什么 → 更新“我现在在哪里”。这就是 Stateful Agent。我们回头看一下 Agent 是怎么一点点长出来的。最开始:Context。
2026-08-12 17:45:02
272
原创 Agent 原理(六):Tools & Environment——LLM 明明只会生成 Token,为什么 Agent 却能读文件、跑 Shell、上网甚至修改系统?
本文探讨了Agent系统中大语言模型(LLM)与外部环境的交互机制,指出LLM本身并不直接具备操作能力,而是通过Runtime提供的工具接口(Tool)间接与环境互动。文章从文件操作示例入手,剖析了Tool的执行流程:LLM提出行动建议→Runtime验证并执行→环境状态改变→结果反馈给LLM。关键点包括: 模型与环境的双向交互:Context决定模型"看到"什么,Tools决定模型"能做"什么 工具的两面性:面向模型的调用规范 vs Runtime的实际实现 权限控
2026-08-12 15:56:03
166
原创 Agent 原理(五):Context Engineering 到底在工程什么?很多 Agent 不是模型不够聪明,而是你让它看错了东西
第四课,我们终于让 Agent 有了 Loop。做一步↓看结果↓再决定↓继续执行每次“再决定”之前,模型到底看见什么?messages↓LLM↓ToolState↓↓Context↓Model↓Decision↓Runtime↓Tool↓↓↓↓↓...到了这里,会发现一个容易被忽略的事实:很多 Agent 做不好任务,并不是因为模型本身不够聪明。该看的东西没有进去。不该看的东西塞得太多。进去的是旧信息。
2026-08-12 14:17:51
312
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅