
DeepSeek-V3 核心架构源码讲解
最后呢,会给大家一个小福利,课程视频中的所有素材,有搭建AI开发环境资料包,还有学习计划表,几十上百G素材、电子书和课件等等,只要你能想到的素材,我这里几乎都有。MLA 的 forward 流程整体比较复杂,核心原理在前面章节有说明,为了防止陷入细节,我们只需要知道先执行 MLA 的前向传播,然后在执行 ffn。在做这套教程之前呢,我就曾放空大脑,以一个大模型小白的角度去重新解析它,采用基础知识和
1、 引言
DeepSeek-V3 由杭州深度求索人工智能基础技术研究有限公司发布的 LLM 模型,于2024年12月26日发布。DeepSeek-V3 为自研 MoE 模型,671B 参数,激活 37B,在 14.8T token 上进行了预训练。DeepSeek-V3 在推理速度上相较历史模型有了大幅提升。在目前大模型主流榜单中,DeepSeek-V3 在开源模型中位列榜首,与世界上最先进的闭源模型不分伯仲。
本文主要带领大家结合 DeepSeek-V3 技术报告一同查阅 DeepSeek-V3 核心架构的源码。建议事先下载好源码一同来学习学习,如果没有时间细看可以先收藏后查阅。
github:https://github.com/deepseek-ai/DeepSeek-V3
模型架构代码所在:inference/model.py
我们主要关注 model.py 文件中的代码即可。
2、模型架构
我们先看一下官方展示的 DeepSeek-V3 模型架构图:
从上面这张图中,官方主要详细展示有两块内容,一是 MLA,二是 MOE,这些也是本文的主要内容所在。
对应来看下 model.py 定义的 class 有这些:
我们根据 model.py 定义的class 引用关系,可以绘制得出以下的关系:
3、 代码流程
3.1 初始化
Transformer 入口初始化:
3.1.1 Transformer类
这里核心的初始化是模型层的初始化,每一层添加 Block 层:
ps:代码中的 ParallelEmbedding、ColumnParallelLinear 主要用于分布式计算的,我们可以简化为 Embedding、Linear,即向量化、线性变换。
3.1.2 Block类
Block 层初始化主要关注 attn 和 ffn 层。
其中:
- attn 是 MLA(Multi-Head Latent Attention)替换了 Transformer 的 Multi-Head Attention
- ffn 也不完全是原始 Transformer 的 ffn,而是前几层是 MLP(多层感知机)、后面都是 MOE
Block 的多层叠加类似下图这样,前几层是 MLA + MLP,后面就是 MLA + MOE 了:
MLP(多层感知机)就不解释细节了,就是:线性变换 + 激活 的组合。
3.1.3 MLA类
MLA 是提出的新改进的注意力机制,旨在显著减少推理时的 KV 缓存(Key-Value Cache)占用,同时保持甚至超越传统多头注意力(MHA)的性能。
MLA 的架构:
3.1.4 MoE类
MoE 类主要关注点如下:
对应架构图中的右上部分:
3.1.4 Gate类
值得提一下的是,DeepSeek-V3 报告中的 “Auxiliary-Loss-Free Load Balancing” 的实现就跟这里 Gate 类定义的 self.bias 有关,在分数权重的后面加上了一个偏置 self.bias,通过这种方式来实现 “Auxiliary-Loss-Free Load Balancing” 。
3.2 forward 前向传播
在初始化代码之后,我们主要关注模型的前向传播。当代码将执行到下图时:
就是走到 Transformer 类的 forward 方法里,如下图:
其中主要需要关注 self.layers 的前向传播,layer 实际上就是代码的 Block 类,它的 forward 方法如下图:
MLA 的 forward 流程整体比较复杂,核心原理在前面章节有说明,为了防止陷入细节,我们只需要知道先执行 MLA 的前向传播,然后在执行 ffn。这里的 ffn,我们关注 MoE 的传播。
MoE 的 forward 方法如下图:
将代码对比一下这个架构图就更清晰了:
到这里大致的代码流程就差不多了,至于细节之处可以再通过 debug 代码的方法详细查看里面的变量以及更多细节。
我的DeepSeek部署资料已打包好(自取↓)
https://pan.quark.cn/s/7e0fa45596e4
但如果你想知道这个工具为什么能“听懂人话”、写出代码 甚至预测市场趋势——答案就藏在大模型技术里!
❗️为什么你必须了解大模型?
1️⃣ 薪资爆炸:应届大模型工程师年薪40万起步,懂“Prompt调教”的带货主播收入翻3倍
2️⃣ 行业重构:金融、医疗、教育正在被AI重塑,不用大模型的公司3年内必淘汰
3️⃣ 零门槛上车:90%的进阶技巧不需写代码!会说话就能指挥AI
(附深度求索BOSS招聘信息)
⚠️警惕:当同事用DeepSeek 3小时干完你3天的工作时,淘汰倒计时就开始了。
那么,如何系统的去学习大模型LLM?
作为一名从业五年的资深大模型算法工程师,我经常会收到一些评论和私信,我是小白,学习大模型该从哪里入手呢?老师啊,我自学没有方向怎么办?老师,这个地方我不会啊。如果你也有类似的经历,一定要继续看下去!当然这些问题啊,也不是三言两语啊就能讲明白的。
所以我综合了大模型的所有知识点,给大家带来一套全网最全最细的大模型零基础教程。在做这套教程之前呢,我就曾放空大脑,以一个大模型小白的角度去重新解析它,采用基础知识和实战项目相结合的教学方式,历时3个月,终于完成了这样的课程,让你真正体会到什么是每一秒都在疯狂输出知识点。
篇幅有限,⚡️ 朋友们如果有需要全套 《2025全新制作的大模型全套资料》,扫码获取~
👉大模型学习指南+路线汇总👈
我们这套资料呢,会从基础篇、进阶篇和项目实战篇等三大方面来讲解。
👉①.基础篇👈
基础篇里面包括了Python快速入门、AI开发环境搭建及提示词工程,带你学习大模型核心原理、prompt使用技巧、Transformer架构和预训练、SFT、RLHF等一些基础概念,用最易懂的方式带你入门大模型。
👉②.进阶篇👈
接下来是进阶篇,你将掌握RAG、Agent、Langchain、大模型微调和私有化部署,学习如何构建外挂知识库并和自己的企业相结合,学习如何使用langchain框架提高开发效率和代码质量、学习如何选择合适的基座模型并进行数据集的收集预处理以及具体的模型微调等等。
👉③.实战篇👈
实战篇会手把手带着大家练习企业级的落地项目(已脱敏),比如RAG医疗问答系统、Agent智能电商客服系统、数字人项目实战、教育行业智能助教等等,从而帮助大家更好的应对大模型时代的挑战。
👉④.福利篇👈
最后呢,会给大家一个小福利,课程视频中的所有素材,有搭建AI开发环境资料包,还有学习计划表,几十上百G素材、电子书和课件等等,只要你能想到的素材,我这里几乎都有。我已经全部上传到CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】相信我,这套大模型系统教程将会是全网最齐全 最易懂的小白专用课!!
更多推荐
所有评论(0)