文件最后提交记录最后更新时间
8 天前
3 个月前
2 个月前
3 个月前
3 个月前
3 个月前
13 天前
5 天前
13 天前
13 天前
13 天前
README

DeepSeek-V4模型训练

2026年4月24日,DeepSeekV4系列模型DeepSeekV4-Flash和DeepSeekV4-Pro正式发布并开源,其以先进的 MoE 架构在参数效率与推理性能上实现了重要突破。MindSpeed LLM 目前已实现了 DeepSeekV4-Flash模型 的定长数据场景下的预训练支持,并同步开放源代码。目前提供预训练的实践参考,帮助用户快速上手。

注:当前实现为preview版本,部分场景存在限制,后续我们将持续完善并同步跟进 DeepSeek-V4 技术报告中的演进方向:

场景 特性 支持情况 备注
训练场景 预训练/续训 OK
全参微调 DOING
Lora微调 DOING
数据场景 定长数据 OK
pack数据 DOING
变长数据 DOING
切分策略 TP OK 支持TP=2
PP OK
EP OK
CP DOING
功能特性 Muon优化器 DOING

安装指导

请参考仓库 MindSpeed LLM软件安装文档配置环境和拉取仓库代码

权重转换

  1. 权重下载

    huggingface 下载权重和配置文件

  2. 权重转换

    开源DeepSeekV4-Flash权重为FP8 mixed数据格式,训练前需要对原始权重做反量化后获得bf16格式的权重,反量化方法请参考下述脚本

    cd MindSpeed-LLM
    bash examples/mcore/deepseek4_flash/ckpt_dequant_deepseek4_fp8_to_bf16.sh
    
    

    MindSpeed LLM提供脚本将已经huggingface开源权重转换为mcore权重,用于训练、推理、评估等任务。 使用方法如下,请根据实际需要的TP/PP等切分策略和权重路径修改权重转换脚本

    cd MindSpeed-LLM
    bash examples/mcore/deepseek4_flash/ckpt_convert_deepseek4_flash_hf2mcore.sh # 转换时,请指定路径到反量化后的权重
    

数据预处理

MindSpeed LLM提供脚本 进行数据集处理

使用方法如下,请根据实际需要修改以下参数

cd MindSpeed-LLM
bash examples/mcore/deepseek4_flash/data_convert_deepseek4_pretrain.sh
参数名 含义
--input 数据集路径
--tokenizer-name-or-path 模型tokenizer目录
--output-prefix 数据集处理完的输出路径及前缀名

预训练

MindSpeed LLM提供脚本 进行模型训练

cd MindSpeed-LLM
bash examples/mcore/deepseek4_flash/pretrain_deepseek4_flash_4k_A3_ptd.sh

用户需要根据实际情况修改脚本中以下变量

变量名 含义
MASTER_ADDR 多机情况下主节点IP
NODE_RANK 多机下,各机对应节点序号
CKPT_SAVE_DIR 训练中权重保存路径
DATA_PATH 数据预处理后的数据路径
TOKENIZER_PATH tokenizer目录
CKPT_LOAD_DIR 权重转换保存的权重路径,为初始加载的权重,如无初始权重则随机初始化

全参微调

MindSpeed LLM提供脚本 进行模型训练

cd MindSpeed-LLM
bash examples/mcore/deepseek4_flash/tune_deepseek4_flash_4k_A3_ptd.sh

用户需要根据实际情况修改脚本中以下变量

变量名 含义
MASTER_ADDR 多机情况下主节点IP
NODE_RANK 多机下,各机对应节点序号
CKPT_SAVE_DIR 训练中权重保存路径
DATA_PATH 数据预处理后的数据路径
TOKENIZER_PATH tokenizer目录
CKPT_LOAD_DIR 权重转换保存的权重路径,为初始加载的权重

LoRA微调

MindSpeed LLM提供脚本 进行模型训练

cd MindSpeed-LLM
bash examples/mcore/deepseek4_flash/lora_finetune_deepseek4_flash_4k_A3_ptd.sh

用户需要根据实际情况修改脚本中以下变量

变量名 含义
MASTER_ADDR 多机情况下主节点IP
NODE_RANK 多机下,各机对应节点序号
CKPT_SAVE_DIR 训练中权重保存路径
DATA_PATH 数据预处理后的数据路径
TOKENIZER_PATH tokenizer目录
CKPT_LOAD_DIR 权重转换保存的权重路径,为初始加载的权重

注:LoRA微调使用指令数据集,需先执行 examples/mcore/deepseek4_flash/data_convert_deepseek4_instruction.sh 完成数据预处理,再将产物前缀填入 DATA_PATH