深圳企业网站开发费用/网店推广运营

深圳企业网站开发费用,网店推广运营,广告公司网站模板,wordpress导航怎么改注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 DeepSeek大模型技术系列一DeepSeek核心算法解析:如何…

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】

文章目录

  • DeepSeek大模型技术系列一
    • DeepSeek核心算法解析:如何打造比肩ChatGPT的国产大模型
      • 更多技术内容
  • 总结

DeepSeek大模型技术系列一

DeepSeek核心算法解析:如何打造比肩ChatGPT的国产大模型

DeepSeek核心算法解析:如何打造比肩ChatGPT的国产大模型DeepSeek-AI
摘要
我们推出 DeepSeek-V3,这是一款强大的混合专家(MoE)语言模型,总参数达 6710 亿,每个 token 激活 370 亿参数。为实现高效推理和经济高效的训练,DeepSeek-V3 采用多头潜在注意力(MLA)和 DeepSeekMoE 架构,这些架构在 DeepSeek-V2 中已得到充分验证。此外,DeepSeek-V3 首创了无辅助损失的负载均衡策略,并设置了多 token 预测训练目标,以提升性能。我们在 14.8 万亿多样且高质量的 token 上对 DeepSeek-V3 进行预训练,随后通过监督微调(Supervised Fine-Tuning)和强化学习(Reinforcement Learning)阶段充分发挥其能力。综合评估显示,DeepSeek-V3 性能优于其他开源模型,与领先的闭源模型相当。尽管性能卓越,但 DeepSeek-V3 的完整训练仅需 278.8 万个 H800 GPU 小时,训练过程也非常稳定,在整个训练过程中未出现任何不可恢复的损失峰值,也无需进行回滚操作。模型检查点可在https://github.com/deepseek-ai/DeepSeek-V3获取。
目录
1.引言 - 4
2.架构 - 6
2.1 基本架构 - 6
2.1.1 多头潜在注意力 - 7
2.1.2 采用无辅助损失负载均衡的 DeepSeekMoE - 8
2.2 多 token 预测 - 10
1.基础设施 - 11
3.1 计算集群 - 11
3.2 训练框架 - 12
3.2.1 DualPipe 与计算通信重叠 - 12
3.2.2 跨节点全对全通信的高效实现 - 13
3.2.3 极低的内存占用与最小开销 - 14
3.3 FP8 训练 - 14
3.3.1 混合精度框架 - 15
3.3.2 量化与乘法的精度提升 - 16
3.3.3 低精度存储与通信 - 18
3.4 推理与部署 - 18
3.4.1 预填充 - 19
3.4.2 解码 - 19
3.5 硬件设计建议 - 20
3.5.1 通信硬件 - 20
3.5.2 计算硬件 - 20
2.预训练 - 22
4.1 数据构建 - 22
4.2 超参数 - 22
4.3 长上下文扩展 - 23
4.4 评估 - 24
4.4.1 评估基准 - 24
4.4.2 评估结果 - 25
4.5 讨论 - 26
4.5.1 多 token 预测的消融研究 - 26
4.5.2 无辅助损失平衡策略的消融研究 - 27
4.5.3 批量负载平衡与序列负载平衡 - 27
3.后训练 - 28
5.1 监督微调 - 28
5.2 强化学习 - 28
5.2.1 奖励模型 - 29
5.2.2 组相对策略优化 - 30
5.3 评估 - 30
5.3.1 评估设置 - 30
5.3.2 标准评估 - 32
5.3.3 开放评估 - 33
5.3.4 DeepSeek-V3 作为生成式奖励模型 - 33
5.4 讨论 - 34
5.4.1 从 DeepSeek-R1 蒸馏知识 - 34
5.4.2 自奖励 - 34
5.4.3 多 token 预测评估 - 35
4.结论、局限性与未来方向 - 35
A. 贡献与致谢 - 45
B. 低精度训练的消融研究 - 47
B.1 FP8 与 BF16 训练对比 - 47
B.2 关于块量化的讨论 - 47
C. 基于 160 亿参数有辅助损失和无辅助损失模型的专家专业化模式 - 48

  1. 引言
    近年来,大语言模型(LLMs)迅速迭代发展(Anthropic, 2024; Google, 2024; OpenAI, 2024a),与通用人工智能(AGI)的差距逐渐缩小。除了闭源模型,包括 DeepSeek 系列(DeepSeek-AI, 2024a,b,c; Guo 等人,2024)、LLaMA 系列(AI@Meta, 2024a,b; Touvron 等人,2023a,b)、Qwen 系列(Qwen, 2023, 2024a,b)和 Mistral 系列(Jiang 等人,2023; Mistral, 2024)在内的开源模型也在不断进步,努力缩小与闭源模型的差距。为进一步拓展开源模型的能力边界,我们扩大模型规模,推出了具有 6710 亿参数的大型混合专家(MoE)模型 DeepSeek-V3,每个 token 激活 370 亿参数。

我们以前瞻性的视角,始终追求强大的模型性能和经济的成本。因此,在架构方面,DeepSeek-V3 仍采用多头潜在注意力(MLA)(DeepSeek-AI, 2024c)实现高效推理,采用 DeepSeekMoE(Dai 等人,2024)进行经济高效的训练。这两种架构在 DeepSeek-V2 中已得到验证,证明它们能够在实现高效训练和推理的同时,保持强大的模型性能。除了基本架构,我们还实施了两种额外策略来进一步提升模型能力。首先,DeepSeek-V3 首创了无辅助损失的负载均衡策略(Wang 等人,2024a),旨在最小化因鼓励负载均衡而对模型性能产生的不利影响。其次,DeepSeek-V3 采用多 token 预测训练目标,我们发现这可以提高模型在评估基准上的整体性能。
为实现高效训练,我们支持 FP8 混合精度训练,并对训练框架进行全面优化。低精度训练已成为高效训练的一种有前景的解决方案(Dettmers 等人,2022; Kalamkar 等人,2019; Narang 等人,2017; Peng 等人,2023b),其发展与硬件能力的提升密切相关(Luo 等人,2024; Micikevicius 等人,2022; Rouhani 等人,2023a)。在本研究中,我们引入了 FP8 混合精度训练框架,并首次在超大规模模型上验证了其有效性。通过支持 FP8 计算和存储,我们实现了训练加速和 GPU 内存占用的减少。在训练框架方面,我们设计了 DualPipe 算法实现高效的流水线并行,该算法减少了流水线气泡,并通过计算 - 通信重叠在训练过程中隐藏了大部分通信开销。这种重叠确保了随着模型规模的进一步扩大,只要我们保持恒定的计算与通信比率,就可以在跨节点使用细粒度专家的同时,实现近乎为零的全对全通信开销。此外,我们还开发了高效的跨节点全对全通信内核,以充分利用 InfiniBand(IB)和 NVLink 带宽。我们还精心优化了内存占用,使得在不使用昂贵的张量并行的情况下也能训练 DeepSeek-V3。综合这些努力,我们实现了高训练效率。
在预训练阶段,我们使用 14.8 万亿高质量且多样的 token 对 DeepSeek-V3 进行训练。预训练过程非常稳定,在整个训练过程中,我们没有遇到任何不可恢复的损失峰值,也无需回滚。接下来,我们对 DeepSeek-V3 进行了两个阶段的上下文长度扩展。在第一阶段,最大上下文长度扩展到 32K,在第二阶段,进一步扩展到 128K。之后,我们对 DeepSeek-V3 的基础模型进行后训练,包括监督微调(SFT)和强化学习(RL),使其符合人类偏好并进一步释放其潜力。在后训练阶段,我们从 DeepSeekR1 系列模型中提取推理能力,同时仔细平衡模型准确性和生成长度。

训练成本 预训练 上下文扩展 后训练 总计
H800 GPU 小时数 266.4 万 11.9 万 0.5 万 278.8 万
美元成本 532.8 万美元 23.8 万美元 1 万美元 557.6 万美元

表 1 DeepSeek-V3 的训练成本(假设 H800 的租用价格为每 GPU 小时 2 美元)
我们在一系列综合基准上对 DeepSeek-V3 进行评估。尽管训练成本经济,但综合评估显示,DeepSeek-V3 基础模型已成为目前最强的开源基础模型,特别是在代码和数学领域。其聊天版本在一系列标准和开放基准上也优于其他开源模型,性能与领先的闭源模型(如 GPT-4o 和 Claude-3.5-Sonnet)相当。

最后,我们再次强调 DeepSeek-V3 经济的训练成本,总结在表 1 中,这是通过我们对算法、框架和硬件的优化协同设计实现的。在预训练阶段,训练 DeepSeek-V3 每万亿 token 仅需 18 万 H800 GPU 小时,即在拥有 2048 个 H800 GPU 的集群上训练 3.7 天。因此,我们的预训练阶段在不到两个月的时间内完成,耗费 266.4 万 GPU 小时。结合上下文长度扩展的 11.9 万 GPU 小时和后训练的 0.5 万 GPU 小时,DeepSeek-V3 的完整训练仅需 278.8 万 GPU 小时。假设 H800 GPU 的租用价格为每 GPU 小时 2 美元,我们的总训练成本仅为 557.6 万美元。需要注意的是,上述成本仅包括 DeepSeek-V3 的官方训练成本,不包括与架构、算法或数据的前期研究和消融实验相关的成本。
我们的主要贡献包括:
架构:创新的负载均衡策略和训练目标
在 DeepSeek-V2 高效架构的基础上,我们首创了无辅助损失的负载均衡策略,最小化了因鼓励负载均衡而导致的性能下降。
我们研究了多 token 预测(MTP)目标,并证明其对模型性能有益。它还可用于推测解码以加速推理。
预训练:追求极致训练效率
我们设计了 FP8 混合精度训练框架,并首次在超大规模模型上验证了 FP8 训练的可行性和有效性。
通过算法、框架和硬件的协同设计,我们克服了跨节点 MoE 训练中的通信瓶颈,实现了近乎完全的计算 - 通信重叠。这显著提高了我们的训练效率,降低了训练成本,使我们能够在不增加额外开销的情况下进一步扩大模型规模。以仅 266.4 万 H800 GPU 小时的经济成本,我们完成了在 14.8 万亿 token 上对 DeepSeek-V3 的预训练,生成了目前最强的开源基础模型。预训练后的后续训练阶段仅需 10 万 GPU 小时。
后训练:从 DeepSeek-R1 进行知识蒸馏
我们引入了一种创新方法,将长思维链(CoT)模型(具体为 DeepSeek R1 系列模型之一)的推理能力蒸馏到标准大语言模型中,特别是 DeepSeek-V3。我们的流程巧妙地将 R1 的验证和反思模式融入 DeepSeek-V3,显著提高了其推理性能。同时,我们还控制了 DeepSeek-V3 的输出风格和长度。
核心评估结果总结
知识:(1)在 MMLU、MMLU-Pro 和 GPQA 等教育基准上,DeepSeek-V3 优于所有其他开源模型,在 MMLU 上得分为 88.5,在 MMLU-Pro 上得分为 75.9,在 GPQA 上得分为 59.1。其性能与 GPT-4o 和 Claude-Sonnet-3.5 等领先的闭源模型相当,缩小了开源和闭源模型在该领域的差距。(2)在事实性基准上,DeepSeek-V3 在 SimpleQA 和 Chinese SimpleQA 上均展示了开源模型中的卓越性能。虽然在英语事实知识(SimpleQA)方面落后于 GPT-4o 和 Claude-Sonnet-3.5,但在中文事实知识(Chinese SimpleQA)方面超过了这些模型,凸显了其在中文事实知识方面的优势。
代码、数学和推理:(1)DeepSeek-V3 在所有非长 CoT 的开源和闭源模型中,在数学相关基准上取得了最先进的性能。值得注意的是,它在特定基准(如 MATH-500)上甚至超过了 o1-preview,展示了其强大的数学推理能力。(2)在编码相关任务中,DeepSeek-V3 在编码竞赛基准(如 LiveCodeBench)中表现最佳,巩固了其在该领域的领先地位。在工程相关任务中,虽然 DeepSeek-V3 的表现略低于 Claude-Sonnet-3.5,但仍大幅领先其他模型,展示了其在各种技术基准上的竞争力。
在本文的其余部分,我们首先详细介绍 DeepSeek-V3 模型架构(第 2 节)。随后,我们介绍基础设施,包括计算集群、训练框架、FP8 训练支持、推理部署策略以及对未来硬件设计的建议。接下来,我们描述预训练过程,包括训练数据的构建、超参数设置、长上下文扩展技术、相关评估以及一些讨论(第 4 节)。之后,我们讨论后训练工作,包括监督微调(SFT)、强化学习(RL)、相应的评估和讨论(第 5 节)。最后,我们总结这项工作,讨论 DeepSeek-V3 的现有局限性,并提出未来研究的潜在方向(第 6 节)。
2. 架构
我们首先介绍 DeepSeek-V3 的基本架构,其特点是采用多头潜在注意力(MLA)(DeepSeek-AI, 2024c)实现高效推理,采用 DeepSeekMoE(Dai 等人,2024)进行经济高效的训练。然后,我们提出多 token 预测(MTP)训练目标,我们发现这可以提高模型在评估基准上的整体性能。对于未明确提及的其他细节,DeepSeek-V3 遵循 DeepSeek-V2(DeepSeek-AI, 2024c)的设置。
2.1 基本架构
DeepSeek-V3 的基本架构仍基于 Transformer(Vaswani 等人,2017)框架。为实现高效推理和经济高效的训练,DeepSeek-V3 还采用了经 DeepSeek-V2 充分验证的 MLA 和 DeepSeekMoE。与 DeepSeek-V2 不同的是,我们为 DeepSeekMoE 引入了无辅助损失的负载均衡策略(Wang 等人,2024a),以减轻为确保负载均衡而对模型性能造成的影响。图 2 展示了 DeepSeek-V3 的基本架构,我们将在本节简要回顾 MLA 和 DeepSeekMoE 的细节。
在这里插入图片描述

图 2 DeepSeek-V3 基本架构示意图。遵循 DeepSeek-V2,我们采用 MLA 和 DeepSeekMoE 实现高效推理和经济高效的训练
2.1.1 多头潜在注意力
对于注意力机制,DeepSeek-V3 采用 MLA 架构。设表示嵌入维度,表示注意力头数,表示每个头的维度,表示给定注意力层中第个 token 的注意力输入。MLA 的核心是对注意力键值进行低秩联合压缩,以减少推理时的键值(KV)缓存:

其中是键值的压缩潜在向量;表示 KV 压缩维度;表示下投影矩阵;、分别是键值的上投影矩阵;是用于生成携带旋转位置嵌入(RoPE)(Su 等人,2024)的解耦键的矩阵;RoPE 表示应用 RoPE 矩阵的操作;表示拼接。需要注意的是,对于 MLA,在生成过程中仅需缓存蓝色框中的向量(即和),这显著减少了 KV 缓存,同时保持与标准多头注意力(MHA)(Vaswani 等人,2017)相当的性能。
对于注意力查询,我们也进行低秩压缩,这可以减少训练期间的激活内存:
其中是查询的压缩潜在向量;表示查询压缩维度;、$W^{U Q
、分别是查询的下投影和上投影矩阵;是用于生成携带 RoPE 的解耦查询的矩阵。
最终,注意力查询()、键()和值()相结合,产生最终的注意力输出:
其中表示输出投影矩阵。
2.1.2 采用无辅助损失负载均衡的 DeepSeekMoE

DeepSeekMoE 基本架构:对于前馈网络(FFNs),DeepSeek-V3 采用 DeepSeekMoE 架构(Dai 等人,2024)。与传统的 MoE 架构(如 GShard(Lepikhin 等人,2021))相比,DeepSeekMoE 使用更细粒度的专家,并将部分专家设置为共享专家。设表示第个 token 的 FFN 输入,我们按如下方式计算 FFN 输出:
否则
其中和分别表示共享专家和路由专家的数量;和分别表示第个共享专家和第个路由专家;表示激活的路由专家数量;是第个专家的门控值;是 token 与专家的亲和度;是第个路由专家的质心向量;表示在为第个 token 和所有路由专家计算的亲和度分数中,包含个最高分数的集合。与 DeepSeek-V2 略有不同,DeepSeek-V3 使用 sigmoid 函数计算亲和度分数,并对所有选定的亲和度分数进行归一化以生成门控值。
无辅助损失负载均衡:对于 MoE 模型,专家负载不均衡会导致路由崩溃(Shazeer 等人,2017),并在专家并行的场景中降低计算效率。传统解决方案通常依赖辅助损失(Fedus 等人,2021;Lepikhin 等人,2021)来避免负载不均衡。然而,过大的辅助损失会损害模型性能(Wang 等人,2024a)。为了在负载均衡和模型性能之间实现更好的平衡,我们首创了无辅助损失的负载均衡策略(Wang 等人,2024a)来确保负载均衡。具体来说,我们为每个专家引入一个偏差项,并将其添加到相应的亲和度分数中,以确定前路由:
否则
注意,偏差项仅用于路由。与 FFN 输出相乘的门控值仍由原始亲和度分数导出。在训练过程中,我们持续监控每个训练步骤中整个批次的专家负载。在每个步骤结束时,如果相应专家负载过高,我们将偏差项减小;如果负载过低,则将其增大,其中是一个称为偏差更新速度的超参数。通过动态调整,DeepSeek-V3 在训练过程中保持专家负载平衡,并且比仅通过辅助损失鼓励负载均衡的模型表现更好。
互补的序列级辅助损失:虽然 DeepSeek-V3 主要依靠无辅助损失策略来实现负载平衡,但为了防止单个序列内出现极端不平衡,我们还采用了互补的序列级平衡损失:

𝟙

其中平衡因子是一个超参数,对于 DeepSeek-V3,其取值极小;𝟙表示指示函数;表示序列中的 token 数量。序列级平衡损失鼓励每个序列上的专家负载保持平衡。
在这里插入图片描述

图 3 多 token 预测(MTP)实现示意图。我们在每个深度保持每个 token 预测的完整因果链
节点限制路由:与 DeepSeek-V2 使用的设备限制路由类似,DeepSeek-V3 也采用受限路由机制来限制训练期间的通信成本。简而言之,我们确保每个 token 最多被发送到个节点,这些节点根据分布在每个节点上的专家的最高个亲和度分数之和来选择。在这种约束下,我们的 MoE 训练框架几乎可以实现完全的计算 - 通信重叠。
无 token 丢弃:由于有效的负载均衡策略,DeepSeek-V3 在整个训练过程中保持良好的负载平衡。因此,DeepSeek-V3 在训练过程中不会丢弃任何 token。此外,我们还实施了特定的部署策略来确保推理负载平衡,所以 DeepSeek-V3 在推理过程中也不会丢弃 token。
2.2 多 token 预测
受 Gloeckle 等人(2024)的启发,我们为 DeepSeek-V3 研究并设置了多 token 预测(MTP)目标,将预测范围扩展到每个位置的多个未来 token。一方面,MTP 目标使训练信号更密集,可能提高数据效率。另一方面,MTP 可能使模型能够预先规划其表示,以便更好地预测未来 token。图 3 展示了我们的 MTP 实现。与 Gloeckle 等人(2024)使用独立输出头并行预测个额外 token 不同,我们顺序预测额外 token,并在每个预测深度保持完整的因果链。我们在本节介绍 MTP 实现的详细信息。

MTP 模块:具体来说,我们的 MTP 实现使用个顺序模块来预测个额外 token。第个 MTP 模块由一个共享嵌入层、一个共享输出头、一个 Transformer 块和一个投影矩阵组成。对于第个输入 token ,在第个预测深度,我们首先将第深度的第个 token 的表示与第个 token 的嵌入通过线性投影组合:

其中表示拼接。特别地,当时,指的是主模型给出的表示。需要注意的是,每个 MTP 模块的嵌入层与主模型共享。组合后的作为第深度的 Transformer 块的输入,以产生当前深度的输出表示:

其中表示输入序列长度,表示切片操作(包括左右边界)。最后,以为输入,共享输出头将计算第个额外预测 token 的概率分布,其中是词汇表大小:

输出头将表示线性映射到 logits,然后应用 Softmax 函数计算第个额外 token 的预测概率。此外,每个 MTP 模块的输出头也与主模型共享。我们保持预测因果链的原则与 EAGLE(Li 等人,2024b)类似,但 EAGLE 的主要目标是推测解码(Leviathan 等人,2023;Xia 等人,2023),而我们利用 MTP 来改进训练。
MTP 训练目标:对于每个预测深度,我们计算交叉熵损失:

其中表示输入序列长度,表示第个位置的真实 token,表示由第个 MTP 模块给出的的相应预测概率。最后,我们计算所有深度的 MTP 损失的平均值,并乘以加权因子,得到整体的 MTP 损失,作为 DeepSeek-V3 的额外训练目标:
MTP 在推理中的应用:我们的 MTP 策略主要旨在提高主模型的性能,因此在推理时,我们可以直接丢弃 MTP 模块,主模型可以独立正常运行。此外,我们还可以将这些 MTP 模块用于推测解码,以进一步提高生成速度。
3. 基础设施
3.1 计算集群
DeepSeek-V3 在一个配备 2048 个 NVIDIA H800 GPU 的集群上进行训练。H800 集群中的每个节点包含 8 个通过 NVLink 和 NVSwitch 在节点内部连接的 GPU。在不同节点之间,使用 InfiniBand(IB)互连来促进通信。
在这里插入图片描述

图 4 单个前向和后向块对的重叠策略(Transformer 块的边界未对齐)。橙色表示前向,绿色表示 “输入的反向”,蓝色表示 “权重的反向”,紫色表示 PP 通信,红色表示屏障。全对全通信和 PP 通信都可以完全隐藏
3.2 训练框架
DeepSeek-V3 的训练由 HAI-LLM 框架支持,这是一个由我们的工程师全新开发的高效轻量级训练框架。总体而言,DeepSeek-V3 应用 16 路流水线并行(PP)(Qi 等人,2023a)、跨 8 个节点的 64 路专家并行(EP)(Lepikhin 等人,2021)和 ZeRO-1 数据并行(DP)(Rajbhandari 等人,2020)。
为便于 DeepSeek-V3 的高效训练,我们进行了细致的工程优化。首先,我们设计了 DualPipe 算法实现高效的流水线并行。与现有 PP 方法相比,DualPipe 的流水线气泡更少。更重要的是,它在正向和反向过程中重叠了计算和通信阶段,从而解决了跨节点专家并行带来的高通信开销问题。其次,我们开发了高效的跨节点全对全通信内核,以充分利用 IB 和 NVLink 带宽,并节省用于通信的流式多处理器(SM)。最后,我们精心优化了训练期间的内存占用,从而使我们能够在不使用昂贵的张量并行(TP)的情况下训练 DeepSeek-V3。
3.2.1 DualPipe 与计算通信重叠
对于 DeepSeek-V3,跨节点专家并行带来的通信开销导致计算与通信比率约为 1:1,效率较低。为应对这一挑战,我们设计了一种创新的流水线并行算法 DualPipe,它不仅通过有效重叠正向和反向计算 - 通信阶段加速模型训练,还减少了流水线气泡。
DualPipe 的关键思想是在单个前向和后向块对中重叠计算和通信。具体来说,我们将每个块分为四个部分:注意力、全对全分发、MLP 和全对全合并。特别地,对于后向块,注意力和 MLP 都进一步分为两个部分:输入的反向和权重的反向,类似于 ZeroBubble(Qi 等人,2023b)。此外,我们还有一个 PP 通信部分。如图 4 所示,对于一对前向和后向块,我们重新排列这些部分,并手动调整用于通信和计算的 GPU SM 比率。在这种重叠策略中,我们可以确保在执行过程中全对全通信和 PP 通信都能完全隐藏。鉴于这种高效的重叠策略,完整的 DualPipe 调度如图 5 所示。它采用双向流水线调度,从流水线的两端同时输入微批次,并且大部分通信可以完全重叠。这种重叠还确保了随着模型进一步扩展,只要我们保持恒定的计算与通信比率,就可以在跨节点使用细粒度专家的同时,实现近乎为零的全对全通信开销。
在这里插入图片描述

表 2 不同流水线并行方法的流水线气泡和内存使用情况比较。表示前向块的执行时间,表示完整后向块的执行时间,表示 “权重的反向” 块的执行时间,表示两个相互重叠的前向和后向块的执行时间

此外,即使在通信负担不重的更一般场景中,DualPipe 仍然具有效率优势。在表 2 中,我们总结了不同 PP 方法的流水线气泡和内存使用情况。如表所示,与 ZB1P(Qi 等人,2023b)和 1F1B(Harlap 等人,2018)相比,DualPipe 显著减少了流水线气泡,同时仅将峰值
激活内存增加了倍。虽然 DualPipe 需要保留两份模型参数,但由于我们在训练期间使用了较大的 EP 规模,这并不会显著增加内存消耗。与 Chimera(Li 和 Hoefler,2021)相比,DualPipe 只要求流水线阶段数和微批次数量能被 2 整除,而不要求微批次数量能被流水线阶段数整除。此外,对于 DualPipe,随着微批次数量的增加,气泡和激活内存都不会增加。
3.2.2 跨节点全对全通信的高效实现
为确保 DualPipe 有足够的计算性能,我们定制了高效的跨节点全对全通信内核(包括分发和合并),以节省用于通信的 SM 数量。这些内核的实现是与 MoE 门控算法以及我们集群的网络拓扑共同设计的。具体而言,在我们的集群中,跨节点的 GPU 通过 IB 完全互连,而节点内的通信则通过 NVLink 处理。NVLink 提供的带宽为 160GB/s,大约是 IB(50GB/s)的 3.2 倍。为有效利用 IB 和 NVLink 的不同带宽,我们将每个 token 最多分配到 4 个节点,从而减少 IB 流量。对于每个 token,在做出路由决策后,它将首先通过 IB 传输到目标节点上具有相同节点内索引的 GPU。一旦到达目标节点,我们会确保它能立即通过 NVLink 转发到承载目标专家的特定 GPU,而不会被后续到达的 token 阻塞。通过这种方式,IB 和 NVLink 的通信得以完全重叠,并且每个 token 在每个节点上平均可以高效地选择 3.2 个专家,而不会产生 NVLink 的额外开销。这意味着,尽管 DeepSeek-V3 在实际中只选择 8 个路由专家,但在保持相同通信成本的情况下,它最多可以将这个数量扩展到 13 个专家(4 个节点 ×3.2 个专家 / 节点 )。总体而言,在这样的通信策略下,仅需 20 个 SM 就足以充分利用 IB 和 NVLink 的带宽。
详细来说,我们采用了 warp specialization 技术(Bauer 等人,2014),并将 20 个 SM 划分为 10 个通信通道。在分发过程中,(1)IB 发送、(2)IB 到 NVLink 的转发以及(3)NVLink 接收分别由各自的 warp 处理。分配给每个通信任务的 warp 数量会根据所有 SM 上的实际工作量动态调整。类似地,在合并过程中,(1)NVLink 发送、(2)NVLink 到 IB 的转发和累加以及(3)IB 接收和累加也由动态调整的 warp 处理。此外,分发和合并内核都与计算流重叠,因此我们也考虑了它们对其他 SM 计算内核的影响。具体来说,我们采用了定制的 PTX(并行线程执行)指令,并自动调整通信块大小,这显著减少了 L2 缓存的使用以及对其他 SM 的干扰。
3.2.3 极低的内存占用与最小开销
为减少训练期间的内存占用,我们采用了以下技术:
RMSNorm 和 MLA 上投影的重计算:在反向传播过程中,我们对所有 RMSNorm 操作和 MLA 上投影进行重计算,从而无需持久存储它们的输出激活。通过极小的开销,该策略显著减少了存储激活所需的内存。
CPU 中的指数移动平均:在训练过程中,我们保存模型参数的指数移动平均(EMA),以便在学习率衰减后对模型性能进行早期估计。EMA 参数存储在 CPU 内存中,并在每个训练步骤后异步更新。这种方法使我们能够在不产生额外内存或时间开销的情况下维护 EMA 参数。
多 token 预测的共享嵌入和输出头:通过 DualPipe 策略,我们将模型的浅层(包括嵌入层)和深层(包括输出头)部署在相同的 PP 等级上。这种安排使得 MTP 模块和主模型之间能够在物理上共享嵌入和输出头的参数和梯度。这种物理共享机制进一步提高了我们的内存效率。
3.3 FP8 训练
受近期低精度训练进展(Dettmers 等人,2022;Noune 等人,2022;Peng 等人,2023b)的启发,我们提出了一种使用 FP8 数据格式训练 DeepSeek-V3 的细粒度混合精度框架。虽然低精度训练前景广阔,但它常常受到激活、权重和梯度中的异常值的限制(Fishman 等人,2024;He 等人;Sun 等人,2024)。尽管在推理量化方面已经取得了显著进展(Frantar 等人,2022;Xiao 等人,2023),但在大规模语言模型的训练中,成功应用低精度技术的研究相对较少(Fishman 等人,2024)。为应对这一挑战并有效扩展 FP8 格式的动态范围,我们引入了一种细粒度量化策略:具有个元素的 tile-wise 分组或具有个元素的 block-wise 分组。在我们提高精度的累加过程中,相关的反量化开销在很大程度上得到了缓解,这对于实现准确的 FP8 通用矩阵乘法(GEMM)至关重要。此外,为进一步减少 MoE 训练中的内存和通信开销,我们以 FP8 格式缓存和分发激活,同时以 BF16 格式存储低精度优化器状态。我们在两个与 DeepSeek-V2-Lite 和 DeepSeek-V2 规模相似的模型上验证了所提出的 FP8 混合精度框架,训练了约 1 万亿个 token(更多细节见附录 B.1)。值得注意的是,与 BF16 基线相比,我们的 FP8 训练模型的相对损失误差始终保持在 0.25% 以下,这一水平完全在训练随机性的可接受范围内。
3.3.1 混合精度框架
基于在低精度训练中广泛采用的技术(Kalamkar 等人,2019;Narang 等人,2017),我们提出了一种用于 FP8 训练的混合精度框架。在这个框架中,大多数计算密集型操作以 FP8 精度执行,而一些关键操作则战略性地保持其原始数据格式,以平衡训练效率和数值稳定性。整体框架如图 6 所示。
在这里插入图片描述

图 6 采用 FP8 数据格式的整体混合精度框架。为清晰起见,仅展示了线性算子

首先,为加速模型训练,大多数核心计算内核(即 GEMM 操作)以 FP8 精度实现。这些 GEMM 操作接受 FP8 张量作为输入,并生成 BF16 或 FP32 格式的输出。如图 6 所示,与线性算子相关的三个 GEMM 操作,即前向传播(Fprop)、激活反向传播(Dgrad)和权重反向传播(Wgrad),均以 FP8 精度执行。从理论上讲,这种设计使计算速度比原始的 BF16 方法提高了一倍。此外,FP8 的 Wgrad GEMM 操作允许以 FP8 格式存储激活,以供反向传播使用,这显著降低了内存消耗。

尽管 FP8 格式具有效率优势,但某些算子由于对低精度计算敏感,仍然需要更高的精度。此外,一些低成本算子也可以使用更高的精度,而对整体训练成本的影响可忽略不计。因此,经过仔细研究,我们对以下组件保持原始精度(例如 BF16 或 FP32):嵌入模块、输出头、MoE 门控模块、归一化算子和注意力算子。这些有针对性的高精度保留确保了 DeepSeek-V3 训练过程的稳定性。为进一步保证数值稳定性,我们以更高的精度存储主权重、权重梯度和优化器状态。虽然这些高精度组件会带来一些内存开销,但通过在我们的分布式训练系统中跨多个 DP 等级进行高效分片,其影响可以最小化。
3.3.2 量化与乘法的精度提升
基于我们的 FP8 混合精度框架,我们引入了几种策略来提高低精度训练的准确性,重点关注量化方法和乘法过程。
细粒度量化:在低精度训练框架中,由于 FP8 格式的动态范围有限(受其减少的指数位限制),溢出和下溢是常见问题。作为一种标准做法,通过将输入张量的最大绝对值缩放到 FP8 的最大可表示值,使输入分布与 FP8 格式的可表示范围对齐(Narang 等人,2017)。这种方法使低精度训练对激活异常值高度敏感,会严重降低量化精度。为解决这个问题,我们提出了一种细粒度量化方法,在更细的粒度上应用缩放。如图 7(a)所示,(1)对于激活,我们以的 tile 为单位对元素进行分组和缩放(即每个 token 每 128 个通道);(2)对于权重,我们以的块为单位对元素进行分组和缩放(即每 128 个输入通道每 128 个输出通道)。这种方法确保量化过程能够根据较小的元素组调整缩放,从而更好地适应异常值。在附录 B.2 中,我们进一步讨论了如果像权重量化那样对激活进行块级分组和缩放时,训练的不稳定性问题。
在这里插入图片描述

图 7 (a)我们提出一种细粒度量化方法来减轻由特征异常值引起的量化误差;为简化说明,仅展示了 Fprop。(b)结合我们的量化策略,通过每隔个元素的 MMA 提升到 CUDA 核心进行高精度累加,提高 FP8 GEMM 的精度
我们方法的一个关键改进是在 GEMM 操作的内维度上引入了每组缩放因子。标准的 FP8 GEMM 并不直接支持此功能,但结合我们精确的 FP32 累加策略,可以高效地实现。
值得注意的是,我们的细粒度量化策略与微缩放格式(Rouhani 等人,2023b)的思想高度一致,而 NVIDIA 下一代 GPU(Blackwell 系列)的张量核心已宣布支持具有更细量化粒度的微缩放格式(NVIDIA,2024a)。我们希望我们的设计能够为未来的工作提供参考,以跟上最新的 GPU 架构发展。
提高累加精度:低精度 GEMM 操作经常受到下溢问题的困扰,其准确性在很大程度上依赖于高精度累加,通常以 FP32 精度进行(Kalamkar 等人,2019;Narang 等人,2017)。然而,我们观察到 NVIDIA H800 GPU 上 FP8 GEMM 的累加精度仅限于保留约 14 位,这明显低于 FP32 累加精度。当内维度较大时(Wortsman 等人,2023),这个问题会更加突出,这是大规模模型训练中增加批量大小和模型宽度时的典型场景。以两个的随机矩阵的 GEMM 操作为例,在我们的初步测试中,张量核心有限的累加精度导致最大相对误差接近 2%。尽管存在这些问题,但有限的累加精度在一些 FP8 框架中仍是默认选项(NVIDIA,2024b),严重限制了训练精度。
为解决这个问题,我们采用提升到 CUDA 核心以获得更高精度的策略(Thakkar 等人,2023)。过程如图 7(b)所示。具体来说,在张量核心执行 MMA(矩阵乘累加)时,中间结果使用有限的位宽进行累加。一旦达到的间隔,这些部分结果将被复制到 CUDA 核心的 FP32 寄存器中,在那里进行全精度的 FP32 累加。如前所述,我们的细粒度量化沿内维度应用每组缩放因子。这些缩放因子可以在 CUDA 核心上作为反量化过程高效地相乘,且额外计算成本极小。

值得注意的是,这种修改降低了单个 warp 组的 WGMMA(warp 组级矩阵乘累加)指令发射率。然而,在 H800 架构中,通常可以同时执行两个 WGMMA:当一个 warp 组执行提升操作时,另一个 warp 组能够执行 MMA 操作。这种设计使两个操作能够重叠,保持张量核心的高利用率。根据我们的实验,将设置为 128 个元素(相当于 4 个 WGMMA)是能够显著提高精度且不会引入大量开销的最小累加间隔。
尾数优先于指数:与先前工作(NVIDIA,2024b;Peng 等人,2023b;Sun 等人,2019b)采用的混合 FP8 格式(在前向传播中使用 E4M3(4 位指数和 3 位尾数),在 Dgrad 和 Wgrad 中使用 E5M2(5 位指数和 2 位尾数))不同,我们在所有张量上都采用 E4M3 格式以获得更高的精度。我们将这种方法的可行性归因于我们的细粒度量化策略,即 tile 和 block 级缩放。通过对较小的元素组进行操作,我们的方法有效地在这些分组元素之间共享指数位,减轻了有限动态范围的影响。
在线量化:在张量级量化框架(NVIDIA,2024b;Peng 等人,2023b)中采用延迟量化,它通过保留先前迭代中的最大绝对值历史来推断当前值。为确保准确的缩放并简化框架,我们为每个的激活 tile 或的权重块在线计算最大绝对值。基于此,我们导出缩放因子,然后在线将激活或权重量化为 FP8 格式。
3.3.3 低精度存储与通信
结合我们的 FP8 训练框架,我们通过将缓存的激活和优化器状态压缩为低精度格式,进一步降低内存消耗和通信开销。
低精度优化器状态:我们采用 BF16 数据格式而不是 FP32 来跟踪 AdamW(Loshchilov 和 Hutter,2017)优化器中的一阶和二阶矩,且不会导致可观察到的性能下降。然而,优化器存储的主权重和用于批量大小累加的梯度仍保留为 FP32,以确保整个训练过程中的数值稳定性。
低精度激活:如图 6 所示,Wgrad 操作以 FP8 精度执行。为减少内存消耗,自然的选择是以 FP8 格式缓存激活,以供线性算子的反向传播使用。然而,对于一些算子,为实现低成本的高精度训练,我们进行了特殊考虑:
注意力算子之后线性层的输入:这些激活也用于注意力算子的反向传播,因此对精度敏感。我们专门为这些激活采用定制的 E5M6 数据格式。此外,在反向传播中,这些激活将从的量化 tile 转换为的 tile。为避免引入额外的量化误差,所有缩放因子均进行舍入缩放,即 2 的整数次幂。
MoE 中 SwiGLU 算子的输入:为进一步降低内存成本,我们缓存 SwiGLU 算子的输入,并在反向传播中重新计算其输出。这些激活也使用我们的细粒度量化方法存储为 FP8,在内存效率和计算精度之间取得平衡。
低精度通信:通信带宽是 MoE 模型训练中的关键瓶颈。为缓解这一挑战,我们在 MoE 上投影之前将激活量化为 FP8,然后应用分发组件,这与 MoE 上投影中的 FP8 前向传播兼容。与注意力算子之后线性层的输入类似,这种激活的缩放因子为 2 的整数次幂。在 MoE 下投影之前的激活梯度也采用类似策略。对于前向和后向合并组件,我们将其保留为 BF16,以在训练流程的关键部分保持训练精度。
3.4 推理与部署
我们在 H800 集群上部署 DeepSeek-V3,集群内每个节点的 GPU 通过 NVLink 互连,整个集群的所有 GPU 通过 IB 完全互连。为同时确保在线服务的服务级别目标(SLO)和高吞吐量,我们采用以下将预填充和解码阶段分离的部署策略。
3.4.1 预填充
预填充阶段的最小部署单元由 4 个节点和 32 个 GPU 组成。注意力部分采用 4 路张量并行(TP4)与序列并行(SP)相结合,并结合 8 路数据并行(DP8)。其较小的 TP 大小 4 限制了 TP 通信的开销。对于 MoE 部分,我们使用 32 路专家并行(EP32),这确保每个专家处理足够大的批次大小,从而提高计算效率。对于 MoE 的全对全通信,我们使用与训练相同的方法:首先通过 IB 在节点间传输 token,然后通过 NVLink 在节点内的 GPU 之间转发。特别地,对于浅层的密集 MLP,我们使用 1 路张量并行以节省 TP 通信。
为实现 MoE 部分不同专家之间的负载均衡,我们需要确保每个 GPU 处理的 token 数量大致相同。为此,我们引入了冗余专家的部署策略,即复制高负载专家并进行冗余部署。高负载专家是根据在线部署期间收集的统计信息检测出来的,并定期(例如每 10 分钟)进行调整。在确定冗余专家集之后,我们根据观察到的负载在节点内的 GPU 之间仔细重新安排专家,力求在不增加跨节点全对全通信开销的情况下尽可能平衡 GPU 之间的负载。对于 DeepSeek-V3 的部署,我们为预填充阶段设置了 32 个冗余专家。对于每个 GPU,除了其原本承载的 8 个专家外,还将承载一个额外的冗余专家。
此外,在预填充阶段,为提高吞吐量并隐藏全对全通信和 TP 通信的开销,我们同时处理两个计算工作量相似的微批次,将一个微批次的注意力和 MoE 操作与另一个微批次的分发和合并操作重叠。
最后,我们正在探索一种专家动态冗余策略,即每个 GPU 承载更多专家(例如 16 个专家),但在每次推理步骤中仅激活 9 个。在每一层的全对全操作开始之前,我们实时计算全局最优路由方案。鉴于预填充阶段涉及大量计算,计算此路由方案的开销几乎可以忽略不计。
3.4.2 解码
在解码过程中,我们将共享专家视为路由专家。从这个角度来看,每个 token 在路由时会选择 9 个专家,其中共享专家被视为高负载专家,始终会被选中。解码阶段的最小部署单元由 40 个节点和 320 个 GPU 组成。注意力部分采用 TP4 与 SP 相结合,并结合 DP80,而 MoE 部分使用 EP320。对于 MoE 部分,每个 GPU 仅承载一个专家,64 个 GPU 负责承载冗余专家和共享专家。分发和合并部分的全对全通信通过 IB 直接点对点传输来实现低延迟。此外,我们利用 IBGDA(NVIDIA,2022)技术进一步降低延迟并提高通信效率。
与预填充类似,我们根据在线服务中统计的专家负载,在特定间隔内定期确定冗余专家集。然而,由于每个 GPU 仅承载一个专家,我们无需重新安排专家。我们也在探索解码阶段的动态冗余策略。不过,这需要更仔细地优化计算全局最优路由方案的算法,并将其与分发内核融合以降低开销。
此外,为提高吞吐量并隐藏全对全通信的开销,我们也在探索在解码阶段同时处理两个计算工作量相似的微批次。与预填充不同,解码阶段注意力消耗的时间占比更大。因此,我们将一个微批次的注意力与另一个微批次的分发 + MoE + 合并操作重叠。在解码阶段,每个专家的批次大小相对较小(通常在 256 个 token 以内),瓶颈在于内存访问而非计算。由于 MoE 部分仅需加载一个专家的参数,内存访问开销极小,因此使用较少的 SM 不会显著影响整体性能。所以,为避免影响注意力部分的计算速度,我们可以仅为分发 + MoE + 合并分配一小部分 SM。
3.5 硬件设计建议
基于我们对全对全通信和 FP8 训练方案的实现,我们向 AI 硬件供应商提出以下芯片设计建议。
3.5.1 通信硬件
在 DeepSeek-V3 中,我们通过计算与通信重叠来在计算过程中隐藏通信延迟,这与串行计算和通信相比,显著降低了对通信带宽的依赖。然而,当前的通信实现依赖于昂贵的 SM(例如,我们在 H800 GPU 的 132 个 SM 中分配 20 个用于此目的),这会限制计算吞吐量。此外,使用 SM 进行通信会导致效率低下,因为张量核心会完全未被充分利用。
目前,SM 在全对全通信中主要执行以下任务:
在 IB(InfiniBand)和 NVLink 域之间转发数据,同时聚合从单个 GPU 发往同一节点内多个 GPU 的 IB 流量。
在 RDMA 缓冲区(已注册的 GPU 内存区域)和输入 / 输出缓冲区之间传输数据。
执行全对全合并的归约操作。
在通过 IB 和 NVLink 域将分块数据传输到多个专家的过程中,管理细粒度的内存布局。
我们期望未来的供应商开发能够将这些通信任务从宝贵的计算单元 SM 中卸载的硬件,例如作为 GPU 协处理器或类似 NVIDIA SHARP(Graham 等人,2016)的网络协处理器。此外,为降低应用程序编程的复杂性,我们希望这种硬件从计算单元的角度统一 IB(横向扩展)和 NVLink(纵向扩展)网络。有了这个统一的接口,计算单元可以通过基于简单原语提交通信请求,轻松地在整个 IB-NVLink 统一域中完成读取、写入、多播和归约等操作。
3.5.2 计算硬件
提高张量核心中 FP8 GEMM 的累加精度:在当前 NVIDIA Hopper 架构的张量核心实现中,FP8 GEMM(通用矩阵乘法)采用定点累加,在加法之前根据最大指数对尾数乘积进行右移对齐。我们的实验表明,它在符号填充右移后仅使用每个尾数乘积的最高 14 位,并截断超过此范围的位。然而,例如,为了从 32 次 FP8×FP8 乘法的累加中获得精确的 FP32 结果,至少需要 34 位精度。因此,我们建议未来的芯片设计提高张量核心中的累加精度,以支持全精度累加,或者根据训练和推理算法的精度要求选择合适的累加位宽。这种方法可确保误差保持在可接受的范围内,同时维持计算效率。
支持 tile 和 block 级量化:当前的 GPU 仅支持张量级量化,缺乏对像我们的 tile 和 block 级量化这样的细粒度量化的原生支持。在当前的实现中,当达到间隔时,部分结果需要从张量核心复制到 CUDA 核心,与缩放因子相乘,然后加到 CUDA 核心的 FP32 寄存器中。尽管结合我们精确的 FP32 累加策略,反量化开销显著降低,但张量核心和 CUDA 核心之间频繁的数据移动仍然限制了计算效率。因此,我们建议未来的芯片通过使张量核心能够接收缩放因子并实现带分组缩放的 MMA 来支持细粒度量化。这样,整个部分和累加与反量化过程可以直接在张量核心内完成,直到产生最终结果,避免频繁的数据移动。
支持在线量化:尽管在线量化在我们的研究中显示出有效性,但当前的实现难以有效支持它。在现有过程中,我们需要从 HBM(高带宽内存)读取 128 个 BF16 激活值(前一次计算的输出)进行量化,量化后的 FP8 值再写回 HBM,之后又要再次读取用于 MMA。为解决这种低效率问题,我们建议未来的芯片将 FP8 转换和 TMA(张量内存加速器)访问集成到单个融合操作中,以便在激活从全局内存传输到共享内存的过程中完成量化,避免频繁的内存读写。我们还建议支持 warp 级转换指令以加速,这进一步有助于更好地融合层归一化和 FP8 转换。或者,可以采用近内存计算方法,将计算逻辑放置在靠近 HBM 的位置。在这种情况下,BF16 元素在从 HBM 读取到 GPU 时可以直接转换为 FP8,从而将片外内存访问减少约 50%。
支持转置 GEMM 操作:当前的架构使得将矩阵转置与 GEMM 操作融合变得繁琐。在我们的工作流程中,前向传播中的激活被量化为的 FP8 tile 并存储。在反向传播中,需要读取矩阵、反量化、转置、重新量化为的 tile,然后存储在 HBM 中。为减少内存操作,我们建议未来的芯片对于训练和推理所需的精度,能够在 MMA 操作之前直接从共享内存中进行矩阵的转置读取。结合 FP8 格式转换和 TMA 访问的融合,这一增强将显著简化量化工作流程。
4. 预训练
4.1 数据构建
与 DeepSeek-V2 相比,我们优化了预训练语料库,提高了数学和编程样本的比例,同时将多语言覆盖范围扩展到英语和中文之外。我们还改进了数据处理流程,在保持语料库多样性的同时尽量减少冗余。受 Ding 等人(2024)的启发,我们采用文档打包方法来保证数据完整性,但在训练过程中不采用跨样本注意力掩码。最终,DeepSeek-V3 的训练语料库包含 14.8 万亿经过我们分词器处理的高质量且多样的 token。
在 DeepSeekCoder-V2(DeepSeek-AI,2024a)的训练过程中,我们观察到填充中间(Fill-in-Middle,FIM)策略在不影响下一个 token 预测能力的同时,能使模型根据上下文线索准确预测中间文本。与 DeepSeekCoder-V2 一致,我们在 DeepSeek-V3 的预训练中也采用了 FIM 策略。具体来说,我们使用前缀 - 后缀 - 中间(Prefix-Suffix-Middle,PSM)框架来构建数据,如下所示:
<|fim_begin|> 𝑓pre<|fim_hole|> 𝑓suf<|fim_end|> 𝑓middle<|eos_token|>
这种结构在文档级别作为预打包过程的一部分应用。FIM 策略的应用比例为 0.1,与 PSM 框架一致。
DeepSeek-V3 的分词器采用字节级 BPE(Shibata 等人,1999),词汇表扩展到 128K 个 token。我们对预分词器和训练数据进行了修改,以优化多语言压缩效率。此外,与 DeepSeek-V2 相比,新的预分词器引入了结合标点和换行符的 token。然而,当模型处理没有终端换行符的多行提示时,尤其是在少样本评估提示中,这个技巧可能会引入 token 边界偏差(Lundberg,2023)。为解决这个问题,我们在训练过程中随机拆分一定比例的此类组合 token,使模型接触到更广泛的特殊情况,从而减轻这种偏差。
4.2 超参数
模型超参数:我们将 Transformer 层数设置为 61,隐藏层维度设置为 7168。所有可学习参数均以标准差 0.006 进行随机初始化。在 MLA 中,我们将注意力头数设置为 128,每个头的维度设置为 128。KV 压缩维度设置为 512,查询压缩维度设置为 1536。对于解耦的查询和键,我们将每个头的维度设置为 64。除前三层外,我们用 MoE 层替换所有 FFN 层。每个 MoE 层由 1 个共享专家和 256 个路由专家组成,每个专家的中间隐藏层维度为 2048。在路由专家中,每个 token 会激活 8 个专家,并且每个 token 最多被发送到 4 个节点。多 token 预测深度设置为 1,即除了准确预测下一个 token 外,每个 token 还将预测一个额外的 token。与 DeepSeek-V2 一样,DeepSeek-V3 在压缩后的潜在向量后也采用了额外的 RMSNorm 层,并在宽度瓶颈处乘以额外的缩放因子。在这种配置下,DeepSeek-V3 总参数达到 6710 亿,每个 token 激活 370 亿参数。
训练超参数:我们采用 AdamW 优化器(Loshchilov 和 Hutter,2017),超参数设置为,,权重衰减为 0.1。在预训练期间,我们将最大序列长度设置为 4K,并在 14.8 万亿个 token 上对 DeepSeek-V3 进行预训练。在学习率调度方面,在最初的 2K 步中,我们将学习率从 0 线性增加到。然后,在模型消耗 10 万亿个训练 token 之前,保持的恒定学习率。随后,在 4.3 万亿个 token 的训练过程中,我们按照余弦衰减曲线将学习率逐渐衰减到。在训练最后 500 亿个 token 时,前 333 亿个 token 保持的恒定学习率,剩余 167 亿个 token 切换到的恒定学习率。梯度裁剪范数设置为 1.0。我们采用批次大小调度策略,在训练前 469 亿个 token 时,批次大小从 3072 逐渐增加到 15360,在剩余训练过程中保持 15360 不变。我们利用流水线并行将模型的不同层部署在不同的 GPU 上,对于每一层,路由专家将均匀部署在属于 8 个节点的 64 个 GPU 上。对于节点限制路由,每个 token 最多被发送到 4 个节点(即)。对于无辅助损失的负载均衡,在前 14.3 万亿个 token 的训练中,我们将偏差更新速度设置为 0.001,在剩余 500 亿个 token 的训练中设置为 0.0。对于平衡损失,我们将设置为 0.0001,只是为了避免单个序列内出现极端不平衡。MTP 损失权重在前 10 万亿个 token 的训练中设置为 0.3,在剩余 4.8 万亿个 token 的训练中设置为 0.1。
在这里插入图片描述

图 8 “大海捞针”(NIAH)测试的评估结果。DeepSeek-V3 在长达 128K 的所有上下文窗口长度上均表现良好
4.3 长上下文扩展
我们采用与 DeepSeek-V2(DeepSeek-AI,2024c)类似的方法,为 DeepSeek-V3 赋予长上下文能力。在预训练阶段之后,我们应用 YaRN(Peng 等人,2023a)进行上下文扩展,并执行两个额外的训练阶段,每个阶段包含 1000 步,逐步将上下文窗口从 4K 扩展到 32K,然后再扩展到 128K。YaRN 的配置与 DeepSeek-V2 中使用的一致,仅应用于解耦的共享键。两个阶段的超参数保持相同,缩放因子,,,并且缩放系数。在第一阶段,序列长度设置为 32K,批次大小为 1920。在第二阶段,序列长度增加到 128K,批次大小减少到 480。两个阶段的学习率均设置为,与预训练阶段的最终学习率相匹配。
通过这两个阶段的扩展训练,DeepSeek-V3 能够处理长度高达 128K 的输入,同时保持强大的性能。图 8 表明,经过监督微调后,DeepSeek-V3 在 “大海捞针”(NIAH)测试中取得了显著的成绩,在长达 128K 的上下文窗口长度上始终保持稳健的性能。
4.4 评估
4.4.1 评估基准
DeepSeek-V3 的基础模型在以英语和中文为主的多语言语料库上进行预训练,因此我们主要在英语、中文以及多语言基准上评估其性能。我们的评估基于集成在 HAI-LLM 框架中的内部评估框架。考虑的基准分类如下,其中下划线标注的基准为中文基准,双下划线标注的基准为多语言基准:
多学科多选数据集:包括 MMLU(Hendrycks 等人,2020)、MMLURedux(Gema 等人,2024)、MMLU-Pro(Wang 等人,2024b)、MMMLU(OpenAI,2024b)、C-Eval(Huang 等人,2023)和 CMMLU(Li 等人,2023)。
语言理解与推理数据集:包括 HellaSwag(Zellers 等人,2019)、PIQA(Bisk 等人,2020)、ARC(Clark 等人,2018)和 BigBench Hard(BBH)(Suzgun 等人,2022)。
闭卷问答数据集:包括 TriviaQA(Joshi 等人,2017)和 NaturalQuestions(Kwiatkowski 等人,2019)。
阅读理解数据集:包括 RACE(Lai 等人,2017)、DROP(Dua 等人,2019)、C3(Sun 等人,2019a)和 CMRC(Cui 等人,2019)。
指代消解数据集:包括 CLUEWSC(Xu 等人,2020)和 WinoGrande(Sakaguchi 等人,2019)。
语言建模数据集:包括 Pile(Gao 等人,2020)。
中文理解与文化数据集:包括 CCPM(Li 等人,2021)。
数学数据集:包括 GSM8K(Cobbe 等人,2021)、MATH(Hendrycks 等人,2021)、MGSM(Shi 等人,2023)和 CMath(Wei 等人,2023)。
代码数据集:包括 HumanEval(Chen 等人,2021)、LiveCodeBench-Base(0801 - 1101)(Jain 等人,2024)、MBPP(Austin 等人,2021)和 CRUXEval(Gu 等人,2024)。
标准化考试:包括 AGIEval(Zhong 等人,2023)。需要注意的是,AGIEval 包括英语和中文子集。
遵循我们之前的工作(DeepSeek-AI,2024b,c),对于包括 HellaSwag、PIQA、WinoGrande、RACE-Middle、RACE-High、MMLU、MMLU-Redux、MMLU-Pro、MMMLU、ARC-Easy、ARC-Challenge、C-Eval、CMMLU、C3 和 CCPM 在内的数据集,我们采用基于困惑度的评估方法;对于 TriviaQA、NaturalQuestions、DROP、MATH、GSM8K、MGSM、HumanEval、MBPP、LiveCodeBench-Base、CRUXEval、BBH、AGIEval、CLUEWSC、CMRC 和 CMath,我们采用基于生成的评估方法。此外,对于 Pile-test,我们采用基于语言建模的评估方法,并使用比特每字节(Bits-Per-Byte,BPB)作为指标,以确保在使用不同分词器的模型之间进行公平比较。

基准(指标)	射击次数	DeepSeek-V2 基础版	Qwen2.5 72B 基础版	LLaMA-3.1 405B 基础版	DeepSeek-V3 基础版
架构		MoE	密集型	密集型	MoE
激活参数数量		210 亿	720 亿	4050 亿	370 亿

英语 总参数数量 1 2360 亿 720 亿 4050 亿 6710 亿
Pile-test(BPB) 0.606 0.638 0.542 0.548
BBH(EM) 3 次射击 78.8 79.8 82.9 87.5
MMLU(EM) 5 次射击 78.4 85.0 84.4 87.1
MMLU-Redux(EM) 5 次射击 75.6 83.2 81.3 86.2
MMLU-Pro(EM) 5 次射击 51.4 58.3 52.8 64.4
DROP(F1) 3 次射击 80.4 80.6 86.0 89.0
ARC-Easy(EM) 25 次射击 97.6 98.4 98.4 98.9
ARC-Challenge(EM) 25 次射击 92.2 94.5 95.3 95.3
HellaSwag(EM) 10 次射击 87.1 84.8 89.2 88.9
PIQA(EM) 0 次射击 83.9 82.6 85.9 84.7
WinoGrande(EM) 5 次射击 86.3 82.3 85.2 84.9
RACE-Middle(EM) 5 次射击 73.1 68.1 74.2 67.1
RACE-High(EM) 5 次射击 52.6 50.3 56.8 51.3
TriviaQA(EM) 5 次射击 80.0 71.9 82.7 82.9
NaturalQuestions(EM) 5 次射击 38.6 33.2 41.5 40.0
AGIEval(EM) 0 次射击 57.5 75.8 60.6 79.6
代码 HumanEval(通过率 @1) 0 次射击 43.3 53.0 54.9 65.2
MBPP(通过率 @1) 3 次射击 65.0 72.6 68.4 75.4
LiveCodeBench-Base(通过率 @1) 3 次射击 11.6 12.9 15.5 19.4
CRUXEval-I(EM) 2 次射击 52.5 59.1 58.5 67.3
CRUXEval-O(EM) 2 次射击 49.8 59.9 59.9 69.8
数学 GSM8K(EM) 8 次射击 81.6 88.3 83.5 89.3
MATH(EM) 4 次射击 43.4 54.4 49.0 61.6
MGSM(EM) 8 次射击 63.6 76.2 69.9 79.8
CMath(EM) 3 次射击 78.7 84.5 77.3 90.7
中文 CLUEWSC(EM) 5 次射击 82.0 82.5 83.0 82.7
C-Eval(EM) 5 次射击 81.4 89.2 72.5 90.1
CMMLU(EM) 5 次射击 84.0 89.5 73.7 88.8
CMRC(EM) 1 次射击 77.4 75.8 76.0 76.3
C3(EM) 0 次射击 77.4 76.7 79.7 78.6
CCPM(EM) 0 次射击 93.0 88.5 78.6 92.0
多语言 MMMLU - 非英语(EM) 5 次射击 64.0 74.8 73.8 79.4

表 3 DeepSeek-V3 基础版与其他代表性开源基础模型的比较。所有模型均在我们的内部框架中进行评估,并共享相同的评估设置。得分差距不超过 0.3 的被认为处于同一水平。DeepSeek-V3 基础版在大多数基准上取得了最佳性能,尤其是在数学和代码任务上
4.4.2 评估结果
在表 3 中,我们将 DeepSeek-V3 的基础模型与当前最先进的开源基础模型进行比较,包括 DeepSeek-V2 基础版(DeepSeek-AI,2024c)(我们之前发布的模型)、Qwen2.5 72B 基础版(Qwen,2024b)和 LLaMA-3.1 405B 基础版(AI@Meta,2024b)。我们使用内部评估框架对所有这些模型进行评估,并确保它们共享相同的评估设置。需要注意的是,由于过去几个月我们评估框架的变化,DeepSeek-V2 基础版的性能与我们之前报告的结果略有差异。总体而言,DeepSeek-V3 基础版全面超越 DeepSeek-V2 基础版和 Qwen2.5 72B 基础版,在大多数基准上超过 LLaMA-3.1 405B 基础版,基本上成为了最强的开源模型。
从更详细的角度来看,我们将 DeepSeek-V3 基础版与其他开源基础模型逐一进行比较。(1)与 DeepSeek-V2 基础版相比,由于我们在模型架构上的改进、模型规模和训练 token 数量的增加以及数据质量的提升,DeepSeek-V3 基础版如预期般取得了显著更好的性能。(2)与目前最先进的中文开源模型 Qwen2.5 72B 基础版相比,DeepSeek-V3 基础版的激活参数仅为其一半,但在英语、多语言、代码和数学基准上也展现出显著优势。在中文基准方面,除了中文多学科多选任务 CMMLU 外,DeepSeek-V3 基础版的表现也优于 Qwen2.5 72B。(3)与拥有 11 倍激活参数的最大开源模型 LLaMA-3.1 405B 基础版相比,DeepSeek-V3 基础版在多语言、代码和数学基准上也表现得更好。在英语和中文语言基准上,DeepSeek-V3 基础版表现出有竞争力或更优的性能,在 BBH、MMLU 系列、DROP、C-Eval、CMMLU 和 CCPM 等基准上表现尤为突出。
由于我们采用了高效的架构和全面的工程优化,DeepSeek-V3 实现了极高的训练效率。在我们的训练框架和基础设施下,训练 DeepSeek-V3 每万亿 token 仅需 18 万 H800 GPU 小时,这比训练 720 亿或 4050 亿参数的密集型模型成本低得多。

基准(指标) 射击次数 小型 MoE 基线 小型 MoE+MTP 大型 MoE 基线 大型 MoE+MTP
推理时激活参数数量(亿) 24 24 209 209
推理时总参数数量(亿) 157 157 2287 2287
训练 token 数量(万亿) 1.33 1.33 0.54 0.54
Pile-test(BPB) 0.729 0.729 0.658 0.657
BBH(EM) 3 次射击 39.0 41.4 70.0 70.7
MMLU(EM) 5 次射击 50.0 53.3 67.5 66.6
DROP(F1) 1 次射击 39.2 41.3 68.5 70.6
TriviaQA(EM) 5 次射击 56.9 57.7 67.0 67.3
NaturalQuestions(EM) 5 次射击 22.7 22.3 27.2 28.5
HumanEval(通过率 @1) 0 次射击 20.7 26.8 44.5 53.7
MBPP(通过率 @1) 3 次射击 35.8 36.8 61.6 62.2
GSM8K(EM) 8 次射击 25.4 31.4 72.3 74.0
MATH(EM) 4 次射击 10.7 12.6 38.6 39.8

表 4 MTP 策略的消融实验结果。MTP 策略在大多数评估基准上持续提升模型性能
4.5 讨论
4.5.1 多 token 预测的消融研究
在表 4 中,我们展示了 MTP 策略的消融实验结果。具体来说,我们在两个不同规模的基线模型上验证了 MTP 策略。在小规模上,我们在 1.33 万亿 token 上训练了一个总参数为 157 亿的基线 MoE 模型。在大规模上,我们在 540 亿 token 上训练了一个总参数为 2287 亿的基线 MoE 模型。在这些模型的基础上,保持训练数据和其他架构不变,我们为它们添加一个深度为 1 的 MTP 模块,并训练两个采用 MTP 策略的模型进行比较。需要注意的是,在推理时,我们直接丢弃 MTP 模块,因此比较的模型推理成本完全相同。从表中可以看出,MTP 策略在大多数评估基准上持续提升了模型性能。

基准(指标) 射击次数 基于辅助损失的小型 MoE 无辅助损失的小型 MoE 基于辅助损失的大型 MoE 无辅助损失的大型 MoE
激活参数数量(亿) 24 24 209 209
总参数数量(亿) 157 157 2287 2287
训练 token 数量(万亿) 1.33 1.33 0.578 0.578
Pile-test(BPB) 0.727 0.724 0.656 0.652
BBH(EM) 3 次射击 37.3 39.3 66.7 67.9
MMLU(EM) 5 次射击 51.0 51.8 68.3 67.2
DROP(F1) 1 次射击 38.1 39.0 67.1 67.1
TriviaQA(EM) 5 次射击 58.3 58.5 66.7 67.7
NaturalQuestions(EM) 5 次射击 23.2 23.4 27.1 28.1
HumanEval(通过率 @1) 0 次射击 22.0 22.6 40.2 46.3
MBPP(通过率 @1) 3 次射击 36.6 35.8 59.2 61.2
GSM8K(EM) 8 次射击 27.1 29.6 70.7 74.5
MATH(EM) 4 次射击 10.9 11.1 37.2 39.6

表 5 无辅助损失平衡策略的消融实验结果。与纯粹基于辅助损失的方法相比,无辅助损失策略在大多数评估基准上持续实现更好的模型性能
4.5.2 无辅助损失平衡策略的消融研究
在表 5 中,我们展示了无辅助损失平衡策略的消融实验结果。我们在两个不同规模的基线模型上验证了该策略。在小规模上,我们在 1.33 万亿 token 上训练了一个总参数为 157 亿的基线 MoE 模型。在大规模上,我们在 578 亿 token 上训练了一个总参数为 2287 亿的基线 MoE 模型。这两个基线模型都纯粹使用辅助损失来鼓励负载平衡,并使用带有 top-K 亲和度归一化的 sigmoid 门控函数。它们控制辅助损失强度的超参数分别与 DeepSeek-V2-Lite 和 DeepSeek-V2 相同。在这两个基线模型的基础上,保持训练数据和其他架构不变,我们移除所有辅助损失并引入无辅助损失平衡策略进行比较。从表中可以看出,无辅助损失策略在大多数评估基准上持续实现了更好的模型性能。
4.5.3 批量负载平衡与序列负载平衡
无辅助损失平衡和序列级辅助损失的关键区别在于它们的平衡范围:批量级与序列级。与序列级辅助损失相比,批量级平衡施加了更灵活的约束,因为它不对每个序列强制进行域内平衡。这种灵活性使专家能够更好地在不同领域进行专业化。为了验证这一点,我们记录并分析了一个 160 亿参数基于辅助损失的基线模型和一个 160 亿参数无辅助损失模型在 Pile 测试集不同领域上的专家负载。如图 9 所示,我们观察到无辅助损失模型如预期般展示出更大的专家专业化模式。
在这里插入图片描述

图 9 基于辅助损失和无辅助损失模型在 Pile 测试集三个领域上的专家负载。无辅助损失模型比基于辅助损失的模型展示出更大的专家专业化模式。相对专家负载表示实际专家负载与理论平衡专家负载的比率。由于空间限制,我们仅展示两层的结果作为示例,所有层的结果见附录 C
为了进一步研究这种灵活性与模型性能优势之间的相关性,我们额外设计并验证了一种批量级辅助损失,该损失鼓励在每个训练批次上进行负载平衡,而不是在每个序列上。实验结果表明,当实现相似程度的批量级负载平衡时,批量级辅助损失也能实现与无辅助损失方法相似的模型性能。具体来说,在我们对 10 亿参数 MoE 模型的实验中,验证损失分别为:使用序列级辅助损失时为 2.258,使用无辅助损失方法时为 2.253,使用批量级辅助损失时为 2.253。在 30 亿参数 MoE 模型上我们也观察到了类似的结果:使用序列级辅助损失的模型验证损失为 2.085,使用无辅助损失方法或批量级辅助损失的模型验证损失均为 2.080。
此外,尽管批量级负载平衡方法表现出一致的性能优势,但它们在效率方面也面临两个潜在挑战:(1)某些序列或小批次内的负载不平衡;(2)推理期间由于领域转移导致的负载不平衡。第一个挑战可以通过我们使用大规模专家并行和数据并行的训练框架自然解决,该框架保证了每个微批次的大小足够大。对于第二个挑战,我们也设计并实现了一种带有冗余专家部署的高效推理框架(如 3.4 节所述)来克服它。
5. 后训练
5.1 监督微调
我们精心整理了指令调整数据集,包含 150 万个跨越多个领域的实例,每个领域根据其特定需求采用不同的数据创建方法。

推理数据:对于与推理相关的数据集,包括专注于数学、代码竞赛问题和逻辑谜题的数据集,我们利用内部的 DeepSeek-R1 模型生成数据。具体而言,虽然 R1 生成的数据具有很高的准确性,但存在过度思考、格式不佳和长度过长等问题。我们的目标是在 R1 生成的
推理数据的高准确性与常规格式推理数据的清晰简洁之间取得平衡。
为确立我们的方法,我们首先针对特定领域(如代码、数学或通用推理)开发一个专家模型,采用监督微调(SFT)和强化学习(RL)相结合的训练流程。这个专家模型作为最终模型的数据生成器。训练过程中,针对每个实例生成两种不同类型的 SFT 样本:第一种将问题与其原始答案以 <问题,原始答案> 的格式配对;第二种则在问题和 R1 答案的基础上,加入系统提示,格式为 < 系统提示,问题,R1 答案 >。
系统提示经过精心设计,包含引导模型生成带有反思和验证机制的答案的指令。在 RL 阶段,模型利用高温采样生成的答案,即使在没有明确系统提示的情况下,也能融合 R1 生成的数据和原始数据中的模式。经过数百次 RL 步骤后,中间 RL 模型学会融入 R1 模式,从而战略性地提升整体性能。
在完成 RL 训练阶段后,我们采用拒绝采样为最终模型筛选高质量的 SFT 数据,其中专家模型作为数据生成源。这种方法确保最终训练数据既保留了 DeepSeek-R1 的优势,又能生成简洁有效的答案。
非推理数据:对于非推理数据,如创意写作、角色扮演和简单问答,我们利用 DeepSeek-V2.5 生成答案,并邀请人工标注员验证数据的准确性和正确性。
SFT 设置:我们使用 SFT 数据集对 DeepSeek-V3 基础模型进行两轮微调,采用余弦退火学习率调度,从开始,逐渐降至 。在训练过程中,每个单独的序列由多个样本打包而成。然而,我们采用样本掩码策略,以确保这些示例相互隔离且不可见。
5.2 强化学习
5.2.1 奖励模型

我们在 RL 过程中采用基于规则的奖励模型(RM)和基于模型的 RM。
基于规则的 RM:对于可以使用特定规则验证的问题,我们采用基于规则的奖励系统来确定反馈。例如,某些数学问题有确定的结果,我们要求模型以指定格式(如框内)给出最终答案,以便应用规则验证其正确性。同样,对于 LeetCode 问题,我们可以利用编译器根据测试用例生成反馈。只要有可能,我们就利用基于规则的验证,以确保更高的可靠性,因为这种方法不易被操纵或利用。
基于模型的 RM:对于具有自由格式标准答案的问题,我们依靠奖励模型来确定回答是否符合预期的标准答案。相反,对于没有明确标准答案的问题,如涉及创意写作的问题,奖励模型根据问题和相应答案作为输入提供反馈。奖励模型从 DeepSeek-V3 SFT 检查点进行训练。为增强其可靠性,我们构建偏好数据,不仅提供最终奖励,还包括得出奖励的思维链。这种方法有助于降低特定任务中奖励作弊的风险。
5.2.2 组相对策略优化
与 DeepSeek-V2(DeepSeek-AI, 2024c)类似,我们采用组相对策略优化(GRPO)(Shao 等人,2024),它摒弃了通常与策略模型大小相同的评论家模型,而是从组分数中估计基线。具体来说,对于每个问题,GRPO 从旧策略模型中采样一组输出,然后通过最大化以下目标来优化策略模型:
其中、是相关参数,是优势,由每组输出对应的奖励得出:
我们在 RL 过程中纳入来自不同领域(如编码、数学、写作、角色扮演和问答)的提示。这种方法不仅使模型更符合人类偏好,还提升了在基准测试中的性能,特别是在可用 SFT 数据有限的场景中。
5.3 评估
5.3.1 评估设置
评估基准:除了用于基础模型测试的基准外,我们还在 IFEval(Zhou 等人,2023)、FRAMES(Krishna 等人,2024)、LongBench v2(Bai 等人,2024)、GPQA(Rein 等人,2023)、SimpleQA(OpenAI, 2024c)、CSimpleQA(He 等人,2024)、SWE-Bench Verified(OpenAI, 2024d)、Aider 1、LiveCodeBench(Jain 等人,2024)(2024 年 8 月至 11 月的问题)、Codeforces 2、中国国家高中数学奥林匹克竞赛(CNMO 2024)3、美国数学邀请赛 2024(AIME 2024)(MAA, 2024)等基准上评估指令模型。
对比基线:我们对聊天模型与几个强大的基线进行全面评估,包括 DeepSeek-V2-0506、DeepSeek-V2.5-0905、Qwen2.5 72B Instruct、LLaMA-3.1 405B Instruct、Claude-Sonnet-3.5-1022 和 GPT-4o-0513。对于 DeepSeek-V2 模型系列,我们选择最具代表性的变体进行比较。对于闭源模型,通过它们各自的 API 进行评估。
详细评估配置:对于包括 MMLU、DROP、GPQA 和 SimpleQA 在内的标准基准,我们采用 simple-evals 框架 4 中的评估提示。对于 MMLU-Redux,我们在零样本设置下使用 Zero-Eval 提示格式(Lin, 2024)。对于其他数据集,我们遵循其原始评估协议,使用数据集创建者提供的默认提示。在代码和数学基准方面,HumanEval-Mul 数据集总共包含 8 种主流编程语言(Python、Java、Cpp、C#、JavaScript、TypeScript、PHP 和 Bash)。我们使用思维链(CoT)和非思维链方法评估模型在 LiveCodeBench 上的性能,其中数据收集于 2024 年 8 月至 11 月。Codeforces 数据集通过参赛者的百分比进行衡量。SWE-Bench verified 使用无代理框架(Xia 等人,2024)进行评估。我们使用 “diff” 格式评估与 Aider 相关的基准。对于数学评估,AIME 和 CNMO 2024 在温度为 0.7 的情况下进行评估,结果取 16 次运行的平均值,而 MATH-500 采用贪心解码。我们允许所有模型在每个基准上最多输出 8192 个 token。

基准(指标)DeepSeek-V2-0506DeepSeek-V2.5-0905Qwen2.5 72B-InstLLaMA-3.1 405B-InstClaude-3.5-Sonnet-1022GPT-4o-0513DeepSeek-V3
架构MoEMoE密集型密集型--MoE
激活参数数量210 亿210 亿720 亿4050 亿--370 亿
总参数数量2360 亿2360 亿720 亿4050 亿--6710 亿
英语MMLU(EM)78.280.685.388.688.387.288.5
MMLU-Redux(EM)77.980.385.686.288.988.089.1
MMLU-Pro(EM)58.566.271.673.378.072.675.9
DROP(3-shot F1)83.087.876.788.788.383.791.6
IF-Eval(Prompt Strict)57.780.684.186.086.584.386.1
GPQA-Diamond(Pass@1)35.341.349.051.165.049.959.1
SimpleQA(Correct)9.010.29.117.128.438.224.9
FRAMES(Acc)66.965.469.870.072.580.573.3
LongBench v2(Acc)31.635.439.436.141.048.148.7
代码HumanEval-Mul(Pass@1)69.377.477.377.281.780.582.6
LiveCodeBench(Pass@1-Cor)18.829.231.128.436.333.440.5
LiveCodeBench(Pass@1)20.328.428.730.132.834.237.6
Codeforces(Percentile)17.535.624.825.320.323.651.6
SWE Verified(Resolved)22.623.824.550.838.842.0
Aider-Edit(Acc)60.371.665.463.984.272.979.7
Aider-Polyglot(Acc)18.27.65.845.316.049.6
数学AIME 2024(Pass@1)4.616.723.323.316.09.339.2
MATH-500(EM)56.374.780.073.878.374.690.2
CNMO 2024(Pass@1)2.810.815.96.813.110.843.2
中文C-Eval(EM)89.990.491.484.785.487.990.9
CLUEWSC(EM)78.679.586.161.576.776.086.5
C-SimpleQA(Correct)48.554.148.450.451.359.364.8
表 6 DeepSeek-V3 与其他代表性聊天模型的比较。所有模型均在输出长度限制为 8K 的配置下进行评估。包含少于 1000 个样本的基准使用不同温度设置进行多次测试,以得出可靠的最终结果。DeepSeek-V3 是性能最佳的开源模型,并且与前沿闭源模型相比也具有竞争力
5.3.2 标准评估
表 6 展示了评估结果,表明 DeepSeek-V3 是性能最佳的开源模型。此外,它与前沿闭源模型(如 GPT-4o 和 Claude-3.5-Sonnet)相比也具有竞争力。
英语基准:MMLU 是一个广泛认可的基准,用于评估大语言模型在不同知识领域和任务上的性能。DeepSeek-V3 表现出有竞争力的性能,与顶级模型(如 LLaMA-3.1-405B、GPT-4o 和 Claude-Sonnet 3.5)相当,同时显著优于 Qwen2.5 72B。此外,DeepSeek-V3 在 MMLU-Pro(一个更具挑战性的教育知识基准)上表现出色,与 Claude-Sonnet 3.5 非常接近。在 MMLU-Redux(MMLU 的改进版本,修正了标签)上,DeepSeek-V3 超过了其他同行。在 GPQA-Diamond(一个博士水平的评估测试平台)上,DeepSeek-V3 取得了显著的成绩,仅次于 Claude 3.5 Sonnet,并且大幅领先其他竞争对手。
在长上下文理解基准(如 DROP、LongBench v2 和 FRAMES)中,DeepSeek-V3 继续展示其顶级模型的地位。它在 DROP 的 3-shot 设置中取得了令人印象深刻的 91.6 F1 分数,超过了该类别中的所有其他模型。在 FRAMES(一个需要在 100k token 上下文上进行问答的基准)中,DeepSeek-V3 紧随 GPT-4o 之后,同时大幅领先其他模型。这展示了 DeepSeek-V3 在处理极长上下文任务方面的强大能力。DeepSeek-V3 的长上下文能力在 LongBench v2(在 DeepSeek V3 发布前几周发布的数据集)上的最佳性能进一步得到验证。在事实知识基准 SimpleQA 上,DeepSeek-V3 落后于 GPT-4o 和 Claude-Sonnet,这主要是由于其设计重点和资源分配。DeepSeek-V3 将更多训练 token 用于学习中文知识,因此在 C-SimpleQA 上表现出色。在指令跟随基准上,DeepSeek-V3 显著优于其前身 DeepSeek-V2 系列,突出了其在理解和遵守用户定义格式约束方面的改进能力。
代码和数学基准:编码是大语言模型面临的一项具有挑战性和实用性的任务,涵盖了像 SWE-Bench-Verified 和 Aider 这样的工程任务,以及像 HumanEval 和 LiveCodeBench 这样的算法任务。在工程任务中,DeepSeek-V3 落后于 Claude-Sonnet-3.5-1022,但显著优于开源模型。开源的 DeepSeek-V3 有望推动编码相关工程任务的进展。通过提供其强大的能力,DeepSeek-V3 可以在软件工程和算法开发等领域推动创新和改进,使开发者和研究人员能够拓展开源模型在编码任务中的能力边界。在算法任务中,DeepSeek-V3 展示了卓越的性能,在 HumanEval-Mul 和 LiveCodeBench 等基准上超过了所有基线。这一成功可归因于其先进的知识蒸馏技术,该技术有效地增强了其在算法相关任务中的代码生成和问题解决能力。
在数学基准上,DeepSeek-V3 展示了卓越的性能,显著超越基线,为非 o1 类模型树立了新的最先进水平。具体来说,在 AIME、MATH-500 和 CNMO 2024 上,DeepSeek-V3 的绝对得分比第二好的模型 Qwen2.5 72B 高出约 10%,对于如此具有挑战性的基准而言,这是一个巨大的差距。这一卓越能力突出了从 DeepSeek-R1 蒸馏知识的有效性,已证明这对非 o1 类模型非常有益。

模型 Arena-Hard AlpacaEval 2.0
DeepSeek-V2.5-0905 76.2 50.5
Qwen2.5-72B-Instruct 81.2 49.1
LLaMA-3.1 405B 69.3 40.5
GPT-4o-0513 80.4 51.1
Claude-Sonnet-3.5-1022 85.2 52.0
DeepSeek-V3 85.5 70.0

表 7 英文开放式对话评估。对于 AlpacaEval 2.0,我们使用长度控制胜率作为指标
5.3.3 开放评估
除了标准基准测试,我们还使用大语言模型作为评判者,对模型在开放式生成任务上进行评估,结果见表 7。具体来说,我们遵循 AlpacaEval 2.0(Dubois 等人,2024)和 Arena-Hard(Li 等人,2024a)的原始配置,利用 GPT-4-Turbo-1106 作为评判者进行两两比较。在 Arena-Hard 上,DeepSeek-V3 与基线 GPT-4-0314 相比,胜率超过 86%,与 Claude-Sonnet-3.5-1022 等顶级模型表现相当。这突出了 DeepSeek-V3 强大的能力,特别是在处理复杂提示(包括编码和调试任务)方面。此外,DeepSeek-V3 成为第一个在 Arena-Hard 基准上超过 85% 胜率的开源模型,这一成就显著缩小了开源模型和闭源模型之间的性能差距,为开源模型在具有挑战性的领域中设定了新的标准。
同样,DeepSeek-V3 在 AlpacaEval 2.0 上也展现出卓越的性能,超过了闭源模型和开源模型。这展示了它在写作任务和处理简单问答场景方面的出色能力。值得注意的是,它比 DeepSeek-V2.5-0905 的胜率高出 20%,这突出了它在处理简单任务方面的显著改进,也展示了其改进的有效性。
5.3.4 DeepSeek-V3 作为生成式奖励模型
我们将 DeepSeek-V3 的评判能力与最先进的模型(即 GPT-4o 和 Claude-3.5)进行比较。表 8 展示了这些模型在 RewardBench(Lambert 等人,2024)上的性能。DeepSeek-V3 的表现与 GPT-4o-0806 和 Claude-3.5-Sonnet-1022 的最佳版本相当,同时超过了其他版本。此外,DeepSeek-V3 的评判能力还可以通过投票技术得到增强。因此,我们使用 DeepSeek-V3 结合投票,为开放式问题提供自我反馈,从而提高对齐过程的有效性和稳健性。

模型 Chat Chat-Hard Safety Reasoning Average
GPT-4o-0513 96.6 70.4 86.7 84.9 84.7
GPT-4o-0806 96.1 76.1 88.1 86.6 86.7
GPT-4o-1120 95.8 71.3 86.2 85.2 84.6
Claude-3.5-sonnet-0620 96.4 74.0 81.6 84.7 84.2
Claude-3.5-sonnet-1022 96.4 79.7 91.1 87.6 88.7
DeepSeek-V3 96.9 79.8 87.0 84.3 87.0
DeepSeek-V3(maj@6) 96.9 82.6 89.5 89.2 89.6

表 8 GPT-4o、Claude-3.5-sonnet 和 DeepSeek-V3 在 RewardBench 上的性能

模型 LiveCodeBench-CoT MATH-500
Pass@1 Length Pass@1 Length
DeepSeek-V2.5 Baseline 31.1 718 74.6 769
DeepSeek-V2.5 +R1 Distill 37.4 783 83.2 1510

表 9 从 DeepSeek-R1 蒸馏知识的贡献。LiveCodeBench 和 MATH-500 的评估设置与表 6 相同
5.4 讨论
5.4.1 从 DeepSeek-R1 蒸馏知识
我们基于 DeepSeek-V2.5 对从 DeepSeek-R1 蒸馏知识的贡献进行了消融研究。基线模型在短思维链(CoT)数据上进行训练,而其竞争模型使用上述专家检查点生成的数据。
表 9 展示了蒸馏数据的有效性,在 LiveCodeBench 和 MATH-500 基准测试中都显示出显著的改进。我们的实验揭示了一个有趣的权衡:蒸馏带来了更好的性能,但也大幅增加了平均响应长度。为了在模型准确性和计算效率之间保持平衡,我们为 DeepSeek-V3 精心选择了蒸馏的最佳设置。
我们的研究表明,从推理模型中进行知识蒸馏为后训练优化提供了一个有前景的方向。虽然我们目前的工作主要集中在从数学和编码领域蒸馏数据,但这种方法在各种任务领域具有更广泛的应用潜力。在这些特定领域展示的有效性表明,长思维链蒸馏对于提高其他需要复杂推理的认知任务的模型性能可能是有价值的。进一步探索这种方法在不同领域的应用仍然是未来研究的一个重要方向。
5.4.2 自奖励
奖励在强化学习中起着关键作用,指导优化过程。在可以通过外部工具轻松验证的领域,如某些编码或数学场景中,强化学习表现出卓越的效果。然而,在更一般的场景中,构建有效的反馈机制具有挑战性。自奖励是一种有潜力的解决方案,它使模型能够根据自己的输出评估奖励。在 DeepSeek-V3 中,我们探索了使用模型自身的预测作为奖励信号的一部分。初步实验表明,这种方法在某些任务中可以提高模型的性能,但也面临着一些问题,如奖励信号的一致性和稳定性。未来的研究需要更深入地探讨如何设计有效的自奖励策略,以提高模型在各种场景下的性能。
5.4.3 多 token 预测评估
尽管多 token 预测(MTP)在训练过程中显示出提高模型性能的潜力,但在评估方面仍存在挑战。传统的评估指标(如准确率、F1 值等)可能无法充分捕捉 MTP 对模型能力的影响。例如,MTP 可能使模型生成更连贯和准确的长文本,但这些改进可能不会直接反映在标准评估指标中。此外,MTP 的训练目标与实际应用中的推理场景之间存在差异,这也给评估带来了困难。我们需要开发新的评估方法,能够更好地衡量 MTP 对模型性能的影响,特别是在长文本生成和复杂任务处理方面。这将有助于更准确地评估模型的能力,并指导未来的模型改进。
6. 结论、局限性和未来方向

DeepSeek-V3 是一个强大的混合专家语言模型,在多个基准测试中取得了优异的成绩,展示了其在知识、代码、数学和推理等领域的卓越能力。通过创新的架构设计(如无辅助损失的负载均衡策略和多 token 预测训练目标)、高效的训练框架(支持 FP8 混合精度训练和优化的通信机制)以及精心策划的训练数据,我们实现了强大的模型性能和经济高效的训练过程。DeepSeek-V3 不仅在开源模型中表现最佳,而且与前沿闭源模型相比也具有竞争力。
然而,DeepSeek-V3 仍然存在一些局限性。在模型性能方面,尽管它在许多任务中表现出色,但在处理某些复杂或特定领域的问题时,仍有改进的空间。例如,在一些需要深入领域知识和专业推理的任务中,模型的表现可能不尽如人意。此外,虽然我们在训练效率方面取得了显著进展,但进一步提高训练和推理效率仍然是一个重要的目标,特别是在处理大规模数据和长上下文时。
在模型架构方面,虽然 Transformer 架构在大语言模型中取得了巨大成功,但它也存在一些固有的局限性,如计算复杂度随序列长度增加而增加。突破 Transformer 架构的限制,探索新的架构设计,对于提升模型的能力至关重要。
在数据方面,尽管我们使用了大量高质量的训练数据,但数据的质量和多样性仍有提升的空间。探索更多样化的数据来源和更有效的数据增强技术,将有助于进一步提高模型的泛化能力和性能。
未来,我们计划从以下几个方向继续推进研究:
持续提高模型的性能,特别是在复杂任务和特定领域中的表现。我们将探索更先进的训练方法和架构改进,以增强模型的推理能力和知识理解能力。例如,研究如何更好地整合外部知识源,使模型能够处理更专业和复杂的问题。
进一步提高训练和推理效率。我们将探索新的硬件加速技术和算法优化,以减少训练时间和资源消耗。同时,我们将努力提高模型对长上下文的处理能力,实现更高效的无限上下文长度支持。
突破 Transformer 架构的限制,探索新的模型架构。这可能包括研究基于不同原理的架构设计,或者对 Transformer 进行创新性的改进,以克服其当前的局限性,提升模型的建模能力。
不断迭代训练数据的数量和质量,探索引入额外的训练信号源。我们将尝试从更多样化的领域收集数据,并开发更有效的数据处理和增强技术,以推动数据在更全面的维度上进行扩展。
持续探索和迭代模型的深度思考能力,通过扩展推理长度和深度来提高其智能水平和问题解决能力。例如,研究如何让模型进行更深入的推理和更复杂的逻辑思考,以应对更具挑战性的任务。
探索更全面和多维的模型评估方法,避免在研究过程中过度优化固定的基准测试集。这将有助于更准确地评估模型的能力,避免对模型性能产生误导性的评价,确保我们对模型的基础评估更加可靠。
通过不断努力解决这些问题并探索新的方向,我们相信能够进一步提升大语言模型的能力,为人工智能的发展做出更大的贡献。

更多技术内容

更多技术内容可参见
《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】书籍。
更多的技术交流和探讨也欢迎加我个人微信chenjinglei66。

总结

此文章有对应的配套新书教材和视频:

【配套新书教材】
《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】
新书特色:本书从自然语言处理基础开始,逐步深入各种NLP热点前沿技术,使用了Java和Python两门语言精心编排了大量代码实例,契合公司实际工作场景技能,侧重实战。
全书共分为19章,详细讲解中文分词、词性标注、命名实体识别、依存句法分析、语义角色标注、文本相似度算法、语义相似度计算、词频-逆文档频率(TF-IDF)、条件随机场、新词发现与短语提取、搜索引擎Solr Cloud和Elasticsearch、Word2vec词向量模型、文本分类、文本聚类、关键词提取和文本摘要、自然语言模型(Language Model)、分布式深度学习实战等内容,同时配套完整实战项目,例如对话机器人实战、搜索引擎项目实战、推荐算法系统实战。
本书理论联系实践,深入浅出,知识点全面,通过阅读本书,读者不仅可以理解自然语言处理的知识,还能通过实战项目案例更好地将理论融入实际工作中。
《分布式机器学习实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】
新书特色:深入浅出,逐步讲解分布式机器学习的框架及应用配套个性化推荐算法系统、人脸识别、对话机器人等实战项目。

【配套视频】

推荐系统/智能问答/人脸识别实战 视频教程【陈敬雷】
视频特色:把目前互联网热门、前沿的项目实战汇聚一堂,通过真实的项目实战课程,让你快速成为算法总监、架构师、技术负责人!包含了推荐系统、智能问答、人脸识别等前沿的精品课程,下面分别介绍各个实战项目:
1、推荐算法系统实战
听完此课,可以实现一个完整的推荐系统!下面我们就从推荐系统的整体架构以及各个子系统的实现给大家深度解密来自一线大型互联网公司重量级的实战产品项目!
2、智能问答/对话机器人实战
由浅入深的给大家详细讲解对话机器人项目的原理以及代码实现、并在公司服务器上演示如何实际操作和部署的全过程!
3、人脸识别实战
从人脸识别原理、人脸识别应用场景、人脸检测与对齐、人脸识别比对、人脸年龄识别、人脸性别识别几个方向,从理论到源码实战、再到服务器操作给大家深度讲解!

自然语言处理NLP原理与实战 视频教程【陈敬雷】
视频特色:《自然语言处理NLP原理与实战》包含了互联网公司前沿的热门算法的核心原理,以及源码级别的应用操作实战,直接讲解自然语言处理的核心精髓部分,自然语言处理从业者或者转行自然语言处理者必听视频!

人工智能《分布式机器学习实战》 视频教程【陈敬雷】
视频特色:视频核心内容有互联网公司大数据和人工智能、大数据算法系统架构、大数据基础、Python编程、Java编程、Scala编程、Docker容器、Mahout分布式机器学习平台、Spark分布式机器学习平台、分布式深度学习框架和神经网络算法、自然语言处理算法、工业级完整系统实战(推荐算法系统实战、人脸识别实战、对话机器人实战)。

上一篇:自然语言处理系列六十八》搜索引擎项目实战》搜索引擎系统架构设计
下一篇:自然语言处理系列七十》搜索引擎项目实战》搜索Query意图识别和智能纠错

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/70087.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vscode远程报错:Remote host key has changed,...

重装了Ubuntu系统之后&#xff0c;由20.04改为22.04&#xff0c;再用vscode远程&#xff0c;就出现了以上报错。 亲测有效的办法 gedit ~/.ssh/known_hosts 打开这个配置文件 删掉与之匹配的那一行&#xff0c;不知道删哪一行的话&#xff0c;就打开第一行这个 /.ssh/confi…

Python - 爬虫利器 - BeautifulSoup4常用 API

文章目录 前言BeautifulSoup4 简介主要特点&#xff1a;安装方式: 常用 API1. 创建 BeautifulSoup 对象2. 查找标签find(): 返回匹配的第一个元素find_all(): 返回所有匹配的元素列表select_one() & select(): CSS 选择器 3. 访问标签内容text 属性: 获取标签内纯文本get_t…

图的最小生成树算法: Prim算法和Kruskal算法(C++)

上一节我们学习了最短路径算法, 这一节来学习最小生成树. 最小生成树(Minimum Spanning Tree, MST)算法是图论中的一种重要算法, 主要用于在加权无向图中找到一棵生成树, 使得这棵树包含图中的所有顶点, 并且所有边的权重之和最小. 这样的树被称为最小生成树. 最小生成树广泛应…

矩阵系统源码搭建的数据管理开发功能解析,支持OEM

一、引言 在矩阵系统中&#xff0c;数据犹如血液&#xff0c;贯穿整个系统的运行。高效的数据管理开发功能是确保矩阵系统稳定、可靠运行的关键&#xff0c;它涵盖了数据的存储、处理、安全等多个方面。本文将深入探讨矩阵系统源码搭建过程中数据管理功能的开发要点。 二、数据…

DeepSeek 助力 Vue 开发:打造丝滑的日期选择器(Date Picker),未使用第三方插件

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 Deep…

【个人开发】deepspeed+Llama-factory 本地数据多卡Lora微调【完整教程】

文章目录 1.背景2.微调方式2.1 关键环境版本信息2.2 步骤2.2.1 下载llama-factory2.2.2 准备数据集2.2.3 微调模式2.2.3.1 zero-1微调2.2.3.2 zero-2微调2.2.3.3 zero-3微调2.2.3.4 单卡Lora微调 2.2.4 实验2.2.4.1 实验1&#xff1a;多GPU微调-zero12.2.4.2 实验2&#xff1a;…

Elasticsearch:将 Ollama 与推理 API 结合使用

作者&#xff1a;来自 Elastic Jeffrey Rengifo Ollama API 与 OpenAI API 兼容&#xff0c;因此将 Ollama 与 Elasticsearch 集成非常容易。 在本文中&#xff0c;我们将学习如何使用 Ollama 将本地模型连接到 Elasticsearch 推理模型&#xff0c;然后使用 Playground 向文档提…

openGauss 3.0 数据库在线实训课程18:学习视图管理

前提 我正在参加21天养成好习惯| 第二届openGauss每日一练活动 课程详见&#xff1a;openGauss 3.0.0数据库在线实训课程 学习目标 掌握openGauss视图的管理&#xff1a;创建视图、删除视图、查询视图的信息、修改视图的信息。 课程作业 1.创建表&#xff0c;创建普通视图…

qt QOpenGLTexture详解

1. 概述 QOpenGLTexture 是 Qt5 提供的一个类&#xff0c;用于表示和管理 OpenGL 纹理。它封装了 OpenGL 纹理的创建、分配存储、绑定和设置像素数据等操作&#xff0c;简化了 OpenGL 纹理的使用。 2. 重要函数 构造函数&#xff1a; QOpenGLTexture(const QImage &image,…

nlp|微调大语言模型初探索(2),训练自己的聊天机器人

前言 上篇文章记录了具体的微调语言大模型步骤&#xff0c;以及在微调过程中可能遇见的各种报错&#xff0c;美中不足的是只是基于开源数据集的微调&#xff0c;今天来记录一下怎么基于自己的数据集去微调大语言模型&#xff0c;训练自己的智能机器人&#xff01;&#xff01;&…

Java 大视界 -- 量子计算时代 Java 大数据的潜在变革与应对策略(88)

&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎来到 青云交的博客&#xff01;能与诸位在此相逢&#xff0c;我倍感荣幸。在这飞速更迭的时代&#xff0c;我们都渴望一方心灵净土&#xff0c;而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识&#xff0c;也…

手机功耗BugReport字段含义介绍

BugReport一般用来分析功耗问题&#xff0c;例如休眠待机&#xff0c;后台待机&#xff0c;游戏&#xff0c;视频&#xff0c;相机场景等 BugReport字段含义介绍 BugReport字段 含义 备注 Reboot 设备的重启事件 CPU running CPU运行状态&#xff0c;休眠 或者 唤醒 只有…

计算机视觉-局部特征

一、局部特征 1.1全景拼接 先用RANSAC估计出变换&#xff0c;就可以拼接两张图片 ①提取特征 ②匹配特征 ③拼接图像 1.2 点的特征 怎么找到对应点&#xff1f;&#xff08;才能做点对应关系RANSAC&#xff09; &#xff1a;特征检测 我们希望找到的点具有的特征有什么特…

OpenCV(1):简介、安装、入门案例、基础模块

1 OpenCV 简介 OpenCV 是一个功能强大、应用广泛的计算机视觉库&#xff0c;它为开发人员提供了丰富的工具和算法&#xff0c;可以帮助他们快速构建各种视觉应用。随着计算机视觉技术的不断发展&#xff0c;OpenCV 也将会继续发挥重要的作用。OpenCV 提供了大量的计算机视觉算法…

SQL复习

SQL复习 MySQL SQL介绍 SQL SQL的全拼是什么&#xff1f; SQL全拼&#xff1a;Structured Query Language&#xff0c;也叫结构化查询语言。 SQL92和SQL99有什么区别呢&#xff1f; SQL92和SQL99分别代表了92年和99年颁布的SQL标准。 在 SQL92 中采用&#xff08;&#xff…

nlp|微调大语言模型初探索(1),LLaMA-Factory

前言 微调模型通常比从零开始训练一个模型的技术要求低。公司不需要拥有大量的深度学习专家&#xff0c;利用现有的开源工具和库&#xff08;如Hugging Face的Transformers等&#xff09;&#xff0c;中小型公司可以轻松地使用和微调大型模型&#xff0c;从而快速实现AI能力的集…

软件定义汽车时代的功能安全和信息安全

我是穿拖鞋的汉子&#xff0c;魔都中坚持长期主义的汽车电子工程师。 老规矩&#xff0c;分享一段喜欢的文字&#xff0c;避免自己成为高知识低文化的工程师&#xff1a; 简单&#xff0c;单纯&#xff0c;喜欢独处&#xff0c;独来独往&#xff0c;不易合同频过着接地气的生活…

内容中台驱动企业数字化内容管理高效协同架构

内容概要 在数字化转型加速的背景下&#xff0c;企业对内容管理的需求从单一存储向全链路协同演进。内容中台作为核心支撑架构&#xff0c;通过统一的内容资源池与智能化管理工具&#xff0c;重塑了内容生产、存储、分发及迭代的流程。其核心价值在于打破部门壁垒&#xff0c;…

Dify平台搭建面试机器人

无代码搭建面试机器人 什么是Dify 什么是Dify Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务&#xff08;Backend as Service&#xff09;和 LLMOps 的理念&#xff0c;使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员&#xff0c;也能…

Django创建一个非前后端分离平台

1.pub_blog前端创立 1.blog/pub路由 注意两个路由的区别 2.完善页面 用表单实现 3.加载wangeditor的几个文件 4.配置样式 5.配置js代码&#xff0c;单独放在js文件夹中&#xff0c;js文件夹pub_blog onload事件&#xff0c;加载完成后会再加载 5.提交按钮