第 36 课 · 真实世界 AI 拆解
DeepSeek 案例:挑选专家,算清效率与成本
每次只用一部分专家,为什么不能直接说模型只占一部分内存、全部成本也按比例下降?
学完这一课,你能做到什么
- 能按给定分数选择专家、归一化权重并手算一个混合结果,区分总参数与一次激活参数。
- 能把 MoE、MLA、低精度与训练调度放到不同的开销位置,保留简化实验的条件。
- 能区分 V3 与 R1 的公开研究范围,给成本数字补齐版本、范围、条件和未计入项。
网站对应:DeepSeek 拆解:用几分之一的钱训出顶尖模型。按网站显示顺序编为第 36 课。
先预测 · 操作材料 · 改变条件
四个专家与一张费用台账
本地真实排序、加权与费用计算。E1—E4 的固定输出为 10、20、30、40,输入的是人为给定的路由分数;没有运行神经网络、没有生成 DeepSeek 回答。费用使用虚构单位。
原创玩具计算;不是 DeepSeek 的真实路由、耗时或成本测量
- 先手算默认选中的两个专家和权重,再运行。
- 只改变选用专家数,比较总参数、激活参数和混合输出。
- 费用台账的探索成本始终未知;不要把已知小计写成全部研发成本。
先记录你的预测,再点击运行。每次结果都由本课程序根据当前输入生成。
本次过程与结果
对照上一次运行结果
留下自己的解释
文字只保留在当前页面,离开前可导出;工作纸还有本课的具体记录题。
教师可以怎样一步步讲
完整教师讲稿
第 36 课教师讲稿|DeepSeek 案例:挑选专家,算清效率与成本
本课 60 分钟。学生已经学过模型参数、注意力、训练与推理,今天把这些知识用于读懂一项公开研究。核心问题只有一个:每次只用一部分专家,为什么不能直接说内存、速度和全部费用都按同一比例减少?
学完,学生应能手算一轮简化的专家选择,画出“全部保存、部分使用”的区别;指出 MoE、MLA、低精度各处理哪一项开销;写出带版本、范围和未知项的成本说明。我们不要求学生复现 DeepSeek 的训练,也不需要下载权重、开通 API 或购买服务。
课前准备:把材料放在学生能自己找到的位置
打开本课的“四个专家与一张费用台账”。教师先自行试一次默认输入,再复位。按钮统一叫“计算并查看过程”。投影暂时只显示输入区,参考答案留到 48 分钟之后。学生打开工作纸,在预测旁留一格“观察后修订”,不能运行后擦掉原先判断。
准备四张纸卡 E1、E2、E3、E4。它们各有 100 个参数单位,固定演示输出分别是 10、20、30、40;另有 100 个每次都使用的共享及其他参数单位。单位是为算术设定的数目,不是实际模型规格。四个路由分数依次为 4、3、2、1,默认每次挑分数最高的两个;同分时编号小的优先。选中的分数除以它们的总和,得到混合权重,再对固定输出求加权平均。
这个程序只演示选择与混合。真实专家是训练出的网络,不是四个人在开会,也不是固定的“数学老师、英语老师”。真实路由由模型计算,课堂输入由人给定;真实模型还包含注意力、残差等计算,这里的一个数字不能当完整前向结果。共享参数记进台账,但页面没有模拟共享网络的输出。教师应先把这三处省略写在板边,之后每次解释数值都能回到这个范围。
费用材料另放一张卡:4 块 GPU,每块运行 12 小时,每 GPU 小时按虚构价格 3 单位计算,已知其他费用 35 单位;探索试验费用没有数据。费用卡与专家卡没有自动换算关系。选用专家数改变后,页面仍使用你填入的工作小时;只有实际测得小时变化,才有依据改费用输入。
0—6 分钟|先拆开一句听起来很有吸引力的话
教师可以说:“假如你看到一句介绍:一个模型每次只用一部分参数,所以普通电脑只要准备这一部分内存。你会相信吗?先不要投票给某个品牌,写清楚这句话从哪个数字跳到了哪个结论。”让学生在 Q1 圈出“每次用”和“需要保存”。请一位学生把四张专家卡全部放在桌面,只将两张转向自己。追问:“另外两张这一刻没参与,它们是不是已经从整个模型里消失了?”
若学生说可以临时从硬盘读取,认可这是另一种部署设计,再追问谁负责搬运、会不会增加等待。不要把讨论引向一个绝对的“所有权重必须始终在同一张 GPU 上”。本课要建立的是全体权重仍要有存储与可访问安排;是否分布到多设备、是否卸载,需要另外说明。收集的证据是一句有条件的修订,不能只写“不对”。
6—12 分钟|手动完成一轮路由
把 E1—E4 的分数写在卡上,请学生不碰按钮先排序。说:“路由在这里就是决定当前输入送去哪几个专家。先挑两张,再谈它们各占多少。分数 4 与 3 的和是 7,不是四张分数总和 10;因为我们这个玩具只对入选者重新归一化。”在黑板写 E1 的权重 4/7,再请学生补 E2。
遇到学生直接用 0.4 和 0.3,就让他把两个权重相加,检查是否已经把未选中的份额处理完。强调课堂规则是我们明确规定的一种简化,不代表所有 MoE 都使用这套归一化。学生在 Q2 保留选择、分母、权重三个中间结果。此时才点击按钮,查看表格中未选专家贡献为 0,但固定输出仍列在材料中;列出来是方便核验,并不意味着本轮调用了它。
12—18 分钟|把混合结果和参数账分开算
教师说:“E1 给 10,E2 给 20。当前混合数是 10×4/7 加 20×3/7,约 14.2857。它只是数字练习,没有回答一道现实题,所以不能说分数大就更聪明。”请学生指着表格两项贡献复算,不要只抄最后一行。若算成 30,追问是否遗漏权重;若算成 17,追问分母为什么选 10。
接着在桌面上数全部卡:4×100+100=500;本轮使用两张专家卡和始终使用部分,所以 2×100+100=300。学生将两个算式写在不同列。问:“为什么这里不是简单的 2/4?”让学生在共享卡上做标记,再得出 300/500=60%。这个比例只描述我们给定口径的参数参与数,没有测运算种类、通信、带宽、排队和缓存。页面不给一个虚构的速度倍数,教师也不能替页面补出来。
18—24 分钟|只改一个旋钮,观察哪些项不跟着动
请学生先预测把“每次选用几个专家”从 2 改为 1 后,三个量怎样变:总参数、激活参数、混合输出。运行后比较旧结果,重点指向总参数仍为 500,激活变为 200,混合输出变为 10。要求学生在 Q3 写出一个变了的量和一个没变的量,并解释各自原因。
再把专家数恢复 2,仅将分数改成 1、2、5、2。让学生先找出同分的 E2 与 E4,按题面规定选择较小编号,而不是自己挑更喜欢的输出。程序应显示 E3、E2。请学生观察:参与数没变,输出却变了。由此补一句:“相同激活量不意味着同一结果,也不能单凭激活参数给两种服务排质量名次。”若学生追问真实专家怎样学会分工,可回连第 2、4、6 课:训练目标影响参数与路由,专长不能只由专家编号猜出。
24—30 分钟|用三张开销卡解释三个名词
此时再给名词,不从缩写开始。板书三张卡:“本次参与的专家计算”“历史注意力状态”“数字如何存储和计算”。将 MoE 放第一张,MLA 放第二张,低精度放第三张。教师说:“它们可以共同出现在一个系统里,但不是把一个节省比例贴到三个地方。”
讲 MLA 时只画“较大的历史键值状态 → 压缩后的表示 → 注意力计算需要的量”。说明这是 DeepSeek 公开路线的概念图,实际还有位置等处理,我们没有在浏览器实现。讲低精度时用同一数轴上更少刻度的比喻:记录数字的位数减少可改变存储和计算条件,但舍入误差与硬件支持要配套考虑,不等于所有步骤都随意改成少位数。训练调度则在旁边画两段时间条:一段等数据,一段计算;工程优化会试图减少等待与搬运。让学生把“少算哪些”“少存什么”“少等什么”各连一次线。只要求位置正确,不要求背算法细节。
30—36 分钟|把公开版本和成本口径放回数字旁
教师打开参考文献中的 V3 报告,定位摘要里的总参数与激活参数。说明这份版本化报告记载的是 DeepSeek-V3:671B 总参数、每 Token 37B 激活参数。这两个数不能替换我们桌面的 500 与 300,也不能从它们推导当前网页版正在运行哪一个型号。再打开 R1 的版本化论文,让学生只找标题、日期和训练路线关键词,不要求读完整论文。R1-Zero 与 R1 的训练安排并不完全相同;本课引用它来区分推理能力的后训练研究与 V3 的架构、系统研究。V3 技术报告;R1 论文 v1。
转到费用卡。请学生计算 4×12=48 GPU 小时,再乘 3 得到该次 GPU 费用 144,加已知其他费用 35 得到 179。问:“未知的探索费用放在哪里?”学生若填 0,就把“没有账单”与“账单明确为零”并列,请他说明自己究竟拿到了哪一种证据。正式训练的已知消耗、整个研发投入、对外调用价格是三种口径。即使报告给出了某一项准确数字,也不能擅自扩展成公司所有投入,更不能当今天产品的报价。
36—42 分钟|独立练习:换一套数,不靠记住答案
发 Q4:四个专家,每个 120 参数单位,始终使用部分 60,选 3 个,分数全为 1,固定输出仍为 10、20、30、40。费用改为 2 块 GPU,各 5 小时,每 GPU 小时 4 单位,已知其他费用 7,失败试验成本未知。学生先在纸上写选择、混合输出、总参数、激活参数、比例和费用小计,再把新输入填进页面核对。
这一段不要在投影上运行新数字,不说任何结果。教师巡查时只问:“你把始终使用部分放在哪两列?”“同分规则写在哪里?”“你用了哪条记录说明未知费用?”学生遇到比例小数可保留分数或用计算器;数学小数精度不是本课难点。保留未经提示的第一版,然后另列程序观察。完成快的同学检查自己有没有把页面输出写成真实 DeepSeek 运行日志。
42—48 分钟|独立读解:把宣传句改成可核查说明
Q5 给三条待审句:“激活约占四成,所以只要四成显存”“某次正式训练 GPU 费用较低,所以全部研发费用也较低”“网页回答很快,所以已验证 MLA 是唯一原因”。学生逐条指出缺少哪种证据,并写一个可以继续调查的问题。教师不要只要求加上“可能”两字;例如第二句真正缺的是研发成本范围,而不是语气不够谨慎。
有网络的学生可在已打开的论文中找一条支持自己说明的段落,只记录版本、节名与简短自己的概括。没有网络的同学使用本课来源范围卡,同样写明“依据教师提供的来源说明,未亲自打开全文”。不强制让学生在服务里问“你有多少参数”:聊天回答的自我描述不能替代实际服务型号的配置证据。这个后备保持的是证据读解目标,不把离线阅读包装成在线实测。
48—54 分钟|后置讲评:从算错位置定位误解
现在才展示 Q4 参考。同分按编号,选 E1、E2、E3,权重各 1/3,混合输出 20。总参数 4×120+60=540,激活 3×120+60=420,比例约 77.7778%。GPU 小时为 10,已知费用 10×4+7=47;未知成本仍未知。若有人算 75%,请他圈出未计入的 60。若有人选 E2、E3、E4,先核对题面规则,不把这当成模型随机性。
讲评 Q5 时允许不同措辞,但每句都要有原来的跳跃和所缺证据。显存问题需全体权重安排与运行开销;研发问题需费用范围;响应快慢需同任务、型号、输入输出长度、硬件或服务条件下的测量,无法从一个现象认定内部唯一原因。把“还缺证据”写具体,比背诵谨慎结论更有用。
54—60 分钟|用一张产品研究卡收尾
Q6 要求四栏:公开版本与来源、能从来源确认的机制、课堂真正复算的内容、仍未验证的问题。请学生各写一句能独立理解的话,不允许只写 MoE、MLA、R1 三个词。教师邀请两位学生互换研究卡,检查对方有没有混用真实报告数和玩具数,或把费用未知写成零。
最后说:“你今天不是只认识一个品牌,而是学会把一个效率故事拆成可检查的对象。下一次听到又快又省,先问省的是哪一段,在什么条件下,质量怎么检查。能够把这些问题问准确,才有办法决定一个工具是否适合你的任务。”离堂交 Q6,同时保留 Q2 与 Q4 的中间算式和运行记录。
板书、补救与课后加深
- 给定路由分数 → 选专家 → 对选中者归一化 → 混合固定输出。
- 总参数 = 全部专家 + 始终使用部分;激活参数 = 入选专家 + 始终使用部分。
- 参数比例、显存、时间、费用分别记录;未知不填零。
- V3 架构与系统报告、R1 后训练研究、课堂算例分开署名。
断网不会影响本地实验;页面失效时用四张卡、计算器和费用表执行同一算法,记录为纸面复算。学生对分数困难时先把 4、3 改成 1、1 手算,再回到默认分数;不要直接给最后小数替代过程。课后可研究多 Token 同时路由时某个专家过忙的问题:手工给三个输入列三行分数,统计每个专家被选几次,提出需要观察的负载指标。此扩展只帮助理解为何需要调度,不模拟真实分布式训练,也不占本课独立练习的时间。
本课来源用于核对概念范围,主要课堂材料为原创。本地程序检查的是已列出的算术与输入条件;没有进行 DeepSeek 模型训练、外部推理对比或真人试教。
60 分钟安排
每行给出具体讲解、学生动作和可检查的结果。根据学生反应调整,尚未真人计时试教。
| 时间 | 教师讲解与操作 | 学生动作 | 检查依据 |
|---|---|---|---|
| 00:00— 01:00 | 展示每次只用部分参数所以只需保存部分权重的待审句,暂不宣布判断。 | 在 Q1 写首答,圈出使用与保存两个词。 | 保留未运行前的判断。 |
| 01:00— 02:00 | 将 E1—E4 四张卡都放在桌面,说明都属于这个玩具模型。 | 在工作纸画四张卡,并写参数单位。 | 全体四卡有记录。 |
| 02:00— 03:00 | 仅翻转两张卡,问未翻的卡是否从模型消失。 | 区分没有参与本轮与仍属于模型。 | Q1 出现两个不同范围。 |
| 03:00— 04:00 | 对按需从硬盘读取的建议追问搬运与等待条件。 | 写一项部署仍须检查的条件。 | 没有把激活量直接换成显存保证。 |
| 04:00— 05:00 | 指出共享及其他参数卡每次都使用,不能漏计。 | 给共享 100 单位卡做标记。 | 模型图有共享项。 |
| 05:00— 06:00 | 收集一条带条件的 Q1 修订,不要求统一措辞。 | 保留首答并另写修订理由。 | 修订能说明范围差别。 |
| 06:00— 07:00 | 读出默认路由分数 4、3、2、1,要求先手动排序。 | 为 E1—E4 排序,不运行按钮。 | Q2 排序栏完成。 |
| 07:00— 08:00 | 说明默认只选两个,同分按编号小的优先。 | 在排序中圈出入选者。 | 圈选有题面规则依据。 |
| 08:00— 09:00 | 让学生只把入选分数相加,辨别分母 7 与 10。 | 写入选分数和,并检查是否混入未选者。 | Q2 分母有算式。 |
| 09:00— 10:00 | 示范第一个权重 4/7,请学生补第二个并求和。 | 写第二权重,验证两权重和为 1。 | 权重过程可复算。 |
| 10:00— 11:00 | 强调这是人为规定的简化路由,不是实际网络推理记录。 | 给材料标注人工给定分数与固定输出。 | 实验类别标注准确。 |
| 11:00— 12:00 | 点击计算并查看过程,指向入选与未选行。 | 核对选择表,把差异写入修订栏。 | 首答与程序观察分开。 |
| 12:00— 13:00 | 写 10×4/7,让学生补 E2 的加权贡献。 | 分别求两项贡献,不只抄总数。 | Q2 有两项中间量。 |
| 13:00— 14:00 | 把贡献相加,说明数字结果没有现实质量评分含义。 | 核对混合输出并写明它不是文本回答。 | 没有将数值大小当能力高低。 |
| 14:00— 15:00 | 数全体四个专家和共享项,建立总参数算式。 | 写 4×100+100 并圈共享项。 | 总参数账包含全部卡。 |
| 15:00— 16:00 | 只数本轮两位入选者与共享项,建立激活算式。 | 写 2×100+100,与总数分列。 | 两个范围没有混列。 |
| 16:00— 17:00 | 追问直接用 2/4 是否忽略共享部分。 | 用两列结果计算激活比例。 | 比例分子分母可回查。 |
| 17:00— 18:00 | 要求列出本次没有测的显存、通信与耗时。 | 在比例旁注明不能推出的指标。 | 参数比例未扩展为速度倍数。 |
| 18:00— 19:00 | 布置 Q3 把专家数改为 1,先预测三个量。 | 写总参数、激活参数、混合输出预测。 | 三项预测早于运行。 |
| 19:00— 20:00 | 运行选 1 个的条件,与旧结果并排比较。 | 记录变化项与不变项。 | 观察有明确旧新输入。 |
| 20:00— 21:00 | 追问总参数不变的原因,并检查费用输入是否改动。 | 用固定四卡解释总数,指出费用仍使用旧小时。 | 参数与费用没有自动比例联动。 |
| 21:00— 22:00 | 恢复选 2,只将分数改为 1、2、5、2。 | 先按同分规则圈选候选者。 | 仅分数改变的预测保留。 |
| 22:00— 23:00 | 运行新分数,指出选择表与混合表的对应。 | 核对 E2 与 E4 同分时的处理。 | 同分选择有规则解释。 |
| 23:00— 24:00 | 问参与数不变能否保证输出不变。 | 用本轮与默认两次记录回答。 | Q3 结论引用两次观察。 |
| 24:00— 25:00 | 摆出专家计算、历史状态、数字精度三张开销卡。 | 在 Q3 画三个位置。 | 开销对象被分开。 |
| 25:00— 26:00 | 将 MoE 接到按输入选择专家的步骤。 | 用自己的话解释少参与的是哪些计算。 | MoE 解释不把专家拟人化为固定学科。 |
| 26:00— 27:00 | 画历史键值状态的压缩概念图,标 MLA。 | 标这是概念图,未在网页执行。 | MLA 与路由实验分开。 |
| 27:00— 28:00 | 用较少刻度的数轴说明低精度与误差条件。 | 写出位数、误差和硬件支持三个词的关系。 | 没有把低精度解释成无代价压缩。 |
| 28:00— 29:00 | 画等待与计算两段时间条,介绍调度处理的位置。 | 将减少等待与搬运放在系统侧。 | 调度未混成减少模型参数。 |
| 29:00— 30:00 | 让学生把少算、少存、少等各连到一项机制。 | 完成三项连线并口述理由。 | Q3 开销对应表完成。 |
| 30:00— 31:00 | 打开 V3 版本化报告,指出版本、总参与与激活指标。 | 记录标题及版本,区分报告数字与四卡数字。 | 公开规格和玩具材料不混用。 |
| 31:00— 32:00 | 打开 R1 v1 标题与路线说明,区分 R1-Zero 和 R1。 | 写 V3 架构系统与 R1 后训练的范围。 | 没有将所有型号视为同一训练安排。 |
| 32:00— 33:00 | 读默认费用卡,先算设备数量乘工作小时。 | 计算并写 GPU 小时的单位。 | 48 的对象不是日历小时。 |
| 33:00— 34:00 | 加入虚构单价与已知其他费用,运行费用台账。 | 分别记录该次 GPU 费用与已知小计。 | 144 和 179 对应不同范围。 |
| 34:00— 35:00 | 对探索成本填 0 的情况追问是否有零账单。 | 把没有数据标未知并说明未计入。 | 未知与明确零有区别。 |
| 35:00— 36:00 | 发 Q4 新专家与费用材料,停止演示结果。 | 读取四专家 120、共享 60、选 3 的新条件。 | 新题输入先核对。 |
| 36:00— 37:00 | 只提醒 Q4 同分规则的位置,不宣布入选者。 | 独立写选择与权重。 | 未提示的选择首答。 |
| 37:00— 38:00 | 巡查是否把共享项放进两种参数账,不报数。 | 独立计算混合、总参数、激活与比例。 | Q4 四项算式保留。 |
| 38:00— 39:00 | 追问费用单位和未知项的来源,不替学生计算。 | 用新费用卡求 GPU 小时和已知小计。 | 新费用首答带单位。 |
| 39:00— 40:00 | 确认首答完成后,允许学生输入 Q4 条件运行。 | 逐项填写新输入并点击计算。 | 本轮输入与工作纸一致。 |
| 40:00— 41:00 | 要求差异写修订栏,不能抹去原算式。 | 对照实际结果定位差异所在步骤。 | 首答、观察、原因三列可见。 |
| 41:00— 42:00 | 提醒本轮是玩具算术,不是 DeepSeek 实测记录。 | 标记实际完成电脑计算或纸面复算。 | 完成方式如实记录。 |
| 42:00— 43:00 | 展示 Q5 三条待审句,只要求定位跨越的对象。 | 独立填写激活与显存、训练与研发的跳跃。 | Q5 前两行首答。 |
| 43:00— 44:00 | 对网页快的句子追问观察与归因是否一样。 | 写第三句缺的对照条件。 | 速度现象没有直接变成唯一原因。 |
| 44:00— 45:00 | 提供已打开论文或离线来源范围卡两种阅读路径。 | 选实际可用路径并标记来源类型。 | 在线与离线阅读没有混称。 |
| 45:00— 46:00 | 要求来源记录包括版本与节名,概括一条支持内容。 | 记录实际找到的位置或范围卡说明。 | 概括能回查到具体来源。 |
| 46:00— 47:00 | 禁止用聊天模型自述代替后台型号配置,解释证据差别。 | 为一项未知写可继续核查的问题。 | 下一问有明确证据对象。 |
| 47:00— 48:00 | 收齐 Q4、Q5 首答后再进入讲评。 | 锁定首答并准备另一颜色修订。 | 独立练习与答案展示分界清楚。 |
| 48:00— 49:00 | 讲评 Q4 同分选 E1、E2、E3 与各 1/3 的权重。 | 核对选择及混合输出 20 的依据。 | 选择错误能回到同分规则。 |
| 49:00— 50:00 | 讲评总 540、激活 420 和约 77.7778%,指出共享 60。 | 修订遗漏共享项的算式。 | 比例修订说明遗漏位置。 |
| 50:00— 51:00 | 讲评 10 GPU 小时、已知 47 与未知失败试验成本。 | 核对费用范围和未知格。 | 没有将 47 写成总研发。 |
| 51:00— 52:00 | 讲评 Q5 显存与研发两句分别缺哪些数据。 | 补写具体缺项,不只加可能二字。 | 两种证据缺口分别明确。 |
| 52:00— 53:00 | 讲评响应快的归因要有型号、长度与对照条件。 | 修订第三句并写可执行下一问。 | 区分测量现象和机制因果。 |
| 53:00— 54:00 | 发 Q6 四栏研究卡,示范栏名但不代写内容。 | 准备版本、机制、复算、未验证四栏。 | 研究卡结构齐全。 |
| 54:00— 55:00 | 要求公开研究一栏明确来源版本。 | 写自己实际阅读范围的一句话。 | 不虚构已亲自查阅全文。 |
| 55:00— 56:00 | 要求机制一栏指出优化对象而非只列缩写。 | 选一个机制解释对应开销。 | 术语和对象连接。 |
| 56:00— 57:00 | 要求复算栏列出今天真正执行的材料与步骤。 | 写四卡排序、混合和费用台账的实际方式。 | 本地与外部运行范围准确。 |
| 57:00— 58:00 | 组织两人互换,找真实规格与玩具数是否混用。 | 给同伴指出一项可改进的范围说明。 | 互审意见具体到句子。 |
| 58:00— 59:00 | 请学生写听到更便宜后会先问的两个条件。 | 补任务质量与费用范围等可核查问题。 | 离堂问题有对象和条件。 |
| 59:00— 60:00 | 收 Q1—Q6 和运行或纸面记录,强调比例不能替代测量。 | 提交工作纸与研究卡。 | 完整交付包含过程与边界。 |
来源与使用范围
保持 AIPath 第 36 显示课的主题;版本化参考 DeepSeek-V3 技术报告 v2 与 DeepSeek-R1 论文 v1。参数、路由分数、专家输出和费用均为原创课堂构造,不代表实际产品内部轨迹或报价。
- DeepSeek-V3 Technical Report v2:核对 MoE、MLA、FP8、训练系统优化和所报告成本的适用范围。
- DeepSeek-R1 论文 v1:核对 R1-Zero 与 R1 的后训练路线区别,避免把 V3 成本套到 R1 全部研发。