第1章 DeepSeek概述
1.1 DeepSeek简介 2
1.1.1 DeepSeek介绍 2
1.1.2 DeepSeek的背景与目标 2
1.1.3 DeepSeek的产品 3
1.1.4 DeepSeek的应用场景 5
1.1.5 DeepSeek的核心功能 6
1.2 DeepSeek的架构概览 7
1.2.1 DeepSeek的整体架构设计 8
1.2.2 DeepSeek的模块划分 8
1.2.3 DeepSeek与其他模型的技术对比 9
第2章 环境搭建、代码获取与模型部署接入
2.1 环境准备 14
2.1.1 硬件环境要求 14
2.1.2 软件环境配置 15
2.2 源码获取与管理 16
2.2.1 开源项目简介 16
2.2.2 获取源码 18
2.2.3 代码分支管理 19
2.2.4 代码更新与同步 20
2.3 DeepSeek模型的本地部署与接入 21
2.3.1 安装Ollama 21
2.3.2 部署DeepSeek模型 22
2.3.3 Chatbox部署可视化 23
2.3.4 DeepSeek接入整合 25
第3章 混合专家模型(MoE)初探
3.1 项目介绍 28
3.1.1 基本特点 28
3.1.2 开源内容 29
3.2 功能模块 30
3.3 ZeRO配置 30
3.3.1 ZeRO优化器介绍 30
3.3.2 第2阶段优化配置 31
3.3.3 第3阶段优化配置 32
3.3.4 优化总结 34
3.4 模型微调 34
3.4.1 微调原理 34
3.4.2 生成提示文本 35
3.4.3 配置模型微调参数 36
3.4.4 设置训练数据 37
3.4.5 配置超参数 37
3.4.6 保存模型 38
3.4.7 获取最新检查点 39
3.4.8 安全保存模型 39
3.4.9 分词处理 40
3.4.10 文本预处理 40
3.4.11 数据收集器 41
3.4.12 训练数据的分词和预处理 42
3.4.13 构建和配置模型 42
3.4.14 训练模型 44
3.4.15 微调模型 47
3.5 调用模型 48
3.5.1 下载模型 48
3.5.2 调用模型 50
第4章 基于DeepSeekMoE架构的DeepSeek-V3
4.1 项目介绍 54
4.1.1 核心特点 54
4.1.2 训练流程 54
4.1.3 与DeepSeekMoE项目的区别 56
4.2 开源信息介绍 57
4.3 模型权重 58
4.3.1 权重结构 58
4.3.2 加载规则 59
4.3.3 FP8权重 60
4.4 超参数配置 61
4.4.1 小规模版本(16B)的配置 61
4.4.2 中规模版本(236B)的配置 63
4.4.3 大规模版本(671B)的配置 64
4.5 模型架构 64
4.5.1 DeepSeek-V3模型架构介绍 65
4.5.2 配置信息 66
4.5.3 并行嵌入 68
4.5.4 线性变换 69
4.5.5 线性层 70
4.5.6 RMSNorm(均方根层归一化) 73
4.5.7 RoPE计算 74
4.5.8 多头注意力层 77
4.5.9 多层感知器 80
4.5.10 DeepSeek-V3中的MoE架构实现 81
4.5.11 Transformer模型 86
4.5.12 验证和测试 88
4.6 量化计算 88
4.6.1 输入张量进行量化处理 89
4.6.2 块级量化处理 89
4.6.3 权重矩阵的反量化 90
4.6.4 对激活值和权重的量化与反量化 91
4.6.5 调优参数 92
4.6.6 FP8矩阵乘法内核 92
4.6.7 FP8矩阵乘法实现 94
4.7 权重转换 95
4.7.1 权重格式转换 95
4.7.2 权重精度转换 98
4.7.3 不同硬件平台的转换 101
4.8 测试模型 102
4.8.1 模型加载与文本生成 102
4.8.2 测试功能 106
4.9 DeepSeek-V3模型总结 108
第5章 统一多模态大模型
5.1 项目介绍 112
5.2 架构原理与核心技术 112
5.2.1 Janus架构 113
5.2.2 Janus-Pro架构 114
5.2.3 JanusFlow架构 116
5.2.4 核心技术对比 117
5.3 开源信息介绍 118
5.4 工具模块 119
5.4.1 对话管理 120
5.4.2 数据加载 129
5.5 构建多模态模型 131
5.5.1 向量量化模型 131
5.5.2 CLIP视觉编码器 146
5.5.3 投影器 148
5.5.4 Vision Transformer视觉模型 150
5.5.5 图像处理器 167
5.5.6 多模态因果语言模型 171
5.5.7 多模态处理器 177
5.6 JanusFlow模型架构 185
5.6.1 多模态模型 185
5.6.2 数据预处理 189
5.6.3 U-ViT模型 190
5.7 模型推理 212
5.7.1 多模态推理测试 212
5.7.2 文生图推理 213
5.7.3 交互式文生图推理 216
5.8 Web交互测试 219
5.8.1 FastAPI测试 219
5.8.2 Gradio交互 222
第6章 适用于高分辨率图像的多模态模型
6.1 项目介绍 228
6.1.1 模型架构 228
6.1.2 技术创新与亮点 230
6.1.3 模型训练 231
6.1.4 对比Janus项目 232
6.2 开源模型 233
6.3 开源信息介绍 234
6.4 配置文件 235
6.5 模型架构 237
6.5.1 模型配置 237
6.5.2 多模态模型架构 242
6.5.3 数据处理 259
6.5.4 DeepSeek模型架构 276
6.5.5 Vision Transformer(ViT)的视觉模型 328
6.5.6 对话模板和历史记录管理 349
6.5.7 DeepSeek-VL2模型总结 356
6.6 模型部署和在线服务 359
6.6.1 设置部署参数 359
6.6.2 工具函数 362
6.6.3 Gradio工具 373
6.6.4 模板覆盖与扩展 376
6.6.5 Web前端 378
6.6.6 模型推理 380
6.7 图文对话推理 384
6.8 Web测试 387
6.8.1 Web前端实现 387
6.8.2 启动Web测试 402
第7章 DeepSeek-R1推理大模型
7.1 背景介绍 406
7.2 项目介绍 406
7.2.1 模型演进 406
7.2.2 训练方案 407
7.2.3 蒸馏小型模型 408
7.2.4 开源信息介绍 409
7.2.5 结论 410
7.3 DeepSeek-R1-Zero训练方案 411
7.3.1 强化学习算法 411
7.3.2 奖励建模 412
7.3.3 训练模板 412
7.3.4 DeepSeek-R1-Zero的性能 413
7.3.5 DeepSeek-R1-Zero的自我进化过程 413
7.3.6 在DeepSeek-R1-Zero的“顿悟时刻” 415
7.4 DeepSeek-R1训练方案 416
7.4.1 冷启动 416
7.4.2 推理导向的强化学习 417
7.4.3 拒绝采样和监督微调 417
7.4.4 全场景强化学习 418
7.5 蒸馏处理 419
7.5.1 基础模型的选择与蒸馏过程 419
7.5.2 模型蒸馏的技术原理 420