分享

LLMs之MoE之DeepSeek-V3:DeepSeek-V3的简介、安装和使用方法、案例应用之详细攻略

 处女座的程序猿 2024-12-27 发布于上海

LLMs之MoE之DeepSeek-V3:DeepSeek-V3的简介、安装和使用方法、案例应用之详细攻略


DeepSeek-V3的简介

DeepSeek-V3 是一个拥有 671B 个总参数每个 token 激活 37B 参数的强大混合专家 (MoE) 语言模型。为了实现高效的推理和经济高效的训练,DeepSeek-V3 采用了在 DeepSeek-V2 中经过充分验证多头潜在注意力 (MLA) 和 DeepSeekMoE 架构。 它在 14.8 万亿个多样化且高质量的 tokens 上进行预训练,随后进行监督微调强化学习,以充分发挥其能力。 DeepSeek-V3 的训练过程非常稳定,没有出现任何不可恢复的损失峰值或回滚。其全部训练仅需 2.788M H800 GPU 小时。

总而言之,DeepSeek-V3 是一个高性能高效训练易于部署的开源大型语言模型,其在多个领域展现出强大的能力,并支持多种硬件平台和推理框架。

GitHub地址GitHub - deepseek-ai/DeepSeek-V3

1、DeepSeek-V3 特点

>> 高效的 MoE 架构:使用多头潜在注意力 (MLA) 和 DeepSeekMoE 架构,实现高效推理和经济高效的训练。

>> 创新的负载均衡策略:采用无辅助损失的负载均衡策略,最大限度地减少了由于鼓励负载均衡而导致的性能下降。

>> 多标记预测 (MTP) 目标:采用多标记预测目标,提高模型性能,并可用于推测解码以加速推理。

>> FP8 混合精度训练:首次验证了 FP8 训练在大规模模型上的可行性和有效性,显著提高训练效率并降低训练成本。

>> 推理优化:支持 FP8 和 BF16 推理,并与多个开源推理框架集成,例如 DeepSeek-Infer Demo、SGLang、LMDeploy 和 TensorRT-LLM 等,支持在 NVIDIA 和 AMD GPU 以及华为 Ascend NPU 上运行。

>> 知识蒸馏:从 DeepSeek-R1 系列模型中蒸馏推理能力,提升 DeepSeek-V3 的推理性能,同时控制输出风格和长度。

>> 优秀的性能:在各种基准测试中超越其他开源模型,并与领先的闭源模型性能相当。

2、模型性能

综合评估表明,DeepSeek-V3 优于其他开源模型,并实现了与领先的闭源模型相当的性能。尽管性能出色,但 DeepSeek-V3 仅需要 2.788M H800 GPU 小时即可完成完整训练。此外,它的训练过程非常稳定。在整个训练过程中,我们没有遇到任何无法恢复的损失峰值或执行任何回滚。

Base Model

Standard Benchmarks
Benchmark (Metric)# ShotsDeepSeek-V2Qwen2.5 72BLLaMA3.1 405BDeepSeek-V3
Architecture-MoEDenseDenseMoE
# Activated Params-21B72B405B37B
# Total Params-236B72B405B671B
EnglishPile-test (BPB)-0.6060.6380.5420.548
BBH (EM)3-shot78.879.882.987.5
MMLU (Acc.)5-shot78.485.084.487.1
MMLU-Redux (Acc.)5-shot75.683.281.386.2
MMLU-Pro (Acc.)5-shot51.458.352.864.4
DROP (F1)3-shot80.480.686.089.0
ARC-Easy (Acc.)25-shot97.698.498.498.9
ARC-Challenge (Acc.)25-shot92.294.595.395.3
HellaSwag (Acc.)10-shot87.184.889.288.9
PIQA (Acc.)0-shot83.982.685.984.7
WinoGrande (Acc.)5-shot86.382.385.284.9
RACE-Middle (Acc.)5-shot73.168.174.267.1
RACE-High (Acc.)5-shot52.650.356.851.3
TriviaQA (EM)5-shot80.071.982.782.9
NaturalQuestions (EM)5-shot38.633.241.540.0
AGIEval (Acc.)0-shot57.575.860.679.6
CodeHumanEval (Pass@1)0-shot43.353.054.965.2
MBPP (Pass@1)3-shot65.072.668.475.4
LiveCodeBench-Base (Pass@1)3-shot11.612.915.519.4
CRUXEval-I (Acc.)2-shot52.559.158.567.3
CRUXEval-O (Acc.)2-shot49.859.959.969.8
MathGSM8K (EM)8-shot81.688.383.589.3
MATH (EM)4-shot43.454.449.061.6
MGSM (EM)8-shot63.676.269.979.8
CMath (EM)3-shot78.784.577.390.7
ChineseCLUEWSC (EM)5-shot82.082.583.082.7
C-Eval (Acc.)5-shot81.489.272.590.1
CMMLU (Acc.)5-shot84.089.573.788.8
CMRC (EM)1-shot77.475.876.076.3
C3 (Acc.)0-shot77.476.779.778.6
CCPM (Acc.)0-shot93.088.578.692.0
MultilingualMMMLU-non-English (Acc.)5-shot64.074.873.879.4

注意:最佳结果以粗体显示。分差不超过 0.3 的分数被视为处于同一水平。DeepSeek-V3 在大多数基准测试中表现最佳,尤其是在数学和代码任务方面。更多评估详情,请查阅我们的论文。

Context Window上下文窗口

在“大海捞针”(NIAH)测试中的评估结果。DeepSeek-V3 在所有上下文窗口长度(最长为 128K)上的表现都很出色。

Chat Model

标准基准(大于 670 亿参数的模型)
Benchmark (Metric)DeepSeek V2-0506DeepSeek V2.5-0905Qwen2.5 72B-Inst.Llama3.1 405B-Inst.Claude-3.5-Sonnet-1022GPT-4o 0513DeepSeek V3
ArchitectureMoEMoEDenseDense--MoE
# Activated Params21B21B72B405B--37B
# Total Params236B236B72B405B--671B
EnglishMMLU (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
CodeHumanEval-Mul (Pass@1)69.377.477.377.281.780.582.6
LiveCodeBench (Pass@1-COT)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
MathAIME 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
ChineseCLUEWSC (EM)89.990.491.484.785.487.990.9
C-Eval (EM)78.679.586.161.576.776.086.5
C-SimpleQA (Correct)48.554.148.450.451.359.364.8

注意:所有模型均在将输出长度限制为 8K 的配置下进行评估。对于包含少于 1000 个样本的基准测试,会使用不同的温度设置多次进行测试,以得出可靠的最终结果。DeepSeek-V3 是表现最佳的开源模型,并且在与前沿的闭源模型的对比中也展现出具有竞争力的性能。

Open Ended Generation Evaluation
ModelArena-HardAlpacaEval 2.0
DeepSeek-V2.5-090576.250.5
Qwen2.5-72B-Instruct81.249.1
LLaMA-3.1 405B69.340.5
GPT-4o-051380.451.1
Claude-Sonnet-3.5-102285.252.0
DeepSeek-V385.570.0

注意:英语开放式对话评估。对于 AlpacaEval 2.0,我们使用长度控制下的胜率作为指标。

DeepSeek-V3的安装和使用方法

DeepSeek-V3 提供了多种本地运行方式,但HuggingFace's Transformers 尚未直接支持。

1、安装

克隆仓库并安装依赖

git clone https://github.com/deepseek-ai/DeepSeek-V3.git
cd DeepSeek-V3/inference
pip install -r requirements.txt

下载模型权重

从 HuggingFace 下载模型权重,并将其放入 /path/to/DeepSeek-V3 文件夹。

Model#Total Params#Activated ParamsContext LengthDownload
DeepSeek-V3-Base671B37B128K🤗 HuggingFace
DeepSeek-V3671B37B128K🤗 HuggingFace

模型权重转换 (DeepSeek-Infer Demo 示例)

python convert.py --hf-ckpt-path /path/to/DeepSeek-V3 --save-path /path/to/DeepSeek-V3-Demo --n-experts 256 --model-parallel 16

2、模型推理

DeepSeek-V3 可以使用以下硬件和开源社区软件在本地部署:

>> DeepSeek-Infer 演示:我们为 FP8 和 BF16 推理提供了一个简单、轻量级的演示。

>> SGLang:完全支持 BF16 和 FP8 推理模式下的 DeepSeek-V3 模型。

>> LMDeploy:支持本地和云部署的高效 FP8 和 BF16 推理。

>> TensorRT-LLM:目前支持 BF16 推理和 INT4/8 量化,即将支持 FP8。

>> AMD GPU:支持在 BF16 和 FP8 模式下通过 SGLang 在 AMD GPU 上运行 DeepSeek-V3 模型。

>> 华为Ascend NPU:支持在华为Ascend设备上运行DeepSeek-V3。

除了以下两种,项目还推荐使用 SGLang、LMDeploy 和 TensorRT-LLM 等框架进行推理,并提供了相应的链接和说明。 SGLang 特别支持 AMD GPU。 华为 Ascend NPU 的支持也通过 MindIE 框架实现。 如果需要 BF16 权重,可以使用提供的转换脚本进行转换。

运行推理 (DeepSeek-Infer Demo 示例,交互式):

torchrun --nnodes 2 --nproc-per-node 8 generate.py --node-rank $RANK --master-addr $ADDR --ckpt-path /path/to/DeepSeek-V3-Demo --config configs/config_671B.json --interactive --temperature 0.7 --max-new-tokens 200

运行推理 (DeepSeek-Infer Demo 示例,批量):

torchrun --nnodes 2 --nproc-per-node 8 generate.py --node-rank $RANK --master-addr $ADDR --ckpt-path /path/to/DeepSeek-V3-Demo --config configs/config_671B.json --input-file $FILE

3、使用方法

T1、在DeepSeek的官方网站上与DeepSeek-V3聊天

地址:DeepSeek

T2、在 DeepSeek 平台上提供与 OpenAI 兼容的 API

地址:DeepSeek

DeepSeek-V3的案例应用

项目提供了 DeepSeek-V3 在各种基准测试上的评估结果,涵盖了自然语言理解、代码生成、数学推理等多个方面,包括英文和中文基准测试,以及多语言基准测试。 DeepSeek-V3 在大多数基准测试中都取得了最佳性能,尤其是在数学和代码任务上。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多