Twinkle x昇腾,率先实现Deepseek-V4系列模型高效训练
2026-05-20 17:36:07AI云资讯1332
2026年4月24日,DeepSeek-V4发布。284B到1.6T参数的MoE 模型,混合注意力 CSA/HCA、流形约束超连接 mHC、Hash-MoE 静态路由——DeepSeek-V4不是一个渐进式升级,而是一次架构重构。相较于推理适配,训练对精度要求更高,且流程更复杂,涉及到前向反向等多个环节,而训练涉及到的算力资源更多,资源调度与通信操作复杂性提升,让训练适配变得难上加难。
对于金融等行业的AI Infra团队来说,这个差异尤其关键。监管要求数据不出域,API调用的路走不通。要在自有集群上微调DeepSeek-V4,就必须完整解决MoE分布式训练的一系列工程问题。
某头部股份制银行AI Infra团队率先基于Twinkle+昇腾Atlas 800 A3风冷超节点在FSDP2后端上完成了DeepSeek-V4的SFT/LoRA训练适配,实现了一套与FSDP2深度集成的Expert Parallelism(EP)方案,并启用高效的昇腾NPU融合算子,和针对DeepSeek-V4开发的专属融合算子提升训练吞吐。
一、DeepSeek-V4模型结构适配
DeepSeek-V4 使用了完全自研的 chat template,无法复用 HF 的 apply_chat_template。我们参考官方 encoding_dsv4.py,在 Twinkle 中实现了完整的编码模版。具体的,我们实现了如下的功能:
完整支持三种模式:chat、thinking(标签)、tools(DSML 格式);
DeepSeek-V4特有Tool Calling调用格式支持:解析 DSML 格式的 <|dsml|invoke> 标签;
不同Thinking Mode 支持:包括 reasoning_effort 控制、drop_thinking 策略;


在DeepSeek-V4上做 Agent训练的团队不需要自己处理tool call的编码解码,Twinkle框架通过适配好的模版直接提供。
二、FSDP2-4D并行引擎适配
DeepSeek-V4-Flash的完整模型加载需要超过500GB 显存,单卡无法容纳。分布式训练是唯一的路径。FSDP2(Fully Sharded Data Parallel v2)是 PyTorch 原生的分布式训练方案,通过将模型参数、梯度、优化器状态分片到多张 GPU 上来降低单卡显存占用。
此前我们已经在Twinkle中实现了EP,专家并行(Expert Parallel, EP)的核心思路是:不让每张卡都持有全部专家,而是把专家参数按 EP rank 切分;前向时 router 仍然为每个 token 选择全局 expert id,然后通过 all-to-all 把 token 分发到对应专家所在 rank,本地专家计算完成后再 all-to-all 回收并按 routing weight 合并结果。
本次我们主要在之前FSDP2-4D并行引擎基础上兼容Deepseek-V4 的HashRouter。在 DeepSeek-V4 中,MoE router 有两种形式:普通 TopKRouter 和 HashRouter。当前 EP 适配没有为两者写两套 dispatch 逻辑,而是在 router 接入层做兼容:
对 TopKRouter:router 根据 hidden states 计算 logits,再选择 top-k experts,返回 router_logits / routing_weights / selected_experts 。
对 HashRouter:expert 选择不是动态 top-k,而是通过 tid2eid[input_ids] 查表得到固定 expert id;同时仍然用 gate logits 计算这些专家的 routing weights 。
Twinkle 的 EP patch 会保留 DeepSeek-V4 原生 router 的输出。如果 router 的 forward 支持 input_ids,就把上层传入的 input_ids 透传给 router,因此 HashRouter 可以正常执行 tid2eid[input_ids]。随后,无论 selected experts 来自普通 top-k 还是 hash table,都会被当作全局 expert id 构造 expert_mask,进入统一的 token dispatch 流程。

实测在开启ep_fsdp并行策略后,可进一步提升40%的训练效率。
三、显存、内存优化
284B模型的训练,显存是贯穿所有环节的硬约束。Twinkle在显存、内存等多方面展开了优化。
FSDP2 原本的模型初始化假设所有rank执行同样的`from_pretrained`加载。对于 284B 的模型,每张卡如果加载完整的模型权重,那么加载的权重会在占用284*2Gi*world_sized的内存,假设使用16路fsdp2,即8.875TB的内存。
为解决超大模型在 FSDP2 场景下的初始化内存问题,Twinkle 实现了 rank-aware 的模型初始化机制。具体流程如下:

训练启动时,Rank0 负责加载完整预训练权重,其他 Rank 仅基于 config 构建空模型,从而避免所有设备重复加载整份权重带来的巨大内存开销。随后,Twinkle 在 FSDP2 包裹和模型切分完成后,利用 rank0 广播机制将分片权重分发到各个 Rank,并进一步同步非 persistent buffer。最终,每个 Rank 仅持有自身所需的本地模型分片,在显著降低初始化内存占用的同时,完成训练前的模型恢复与对齐。
四、昇腾算力深度适配
为保障Twinkle框架在昇腾平台高效稳定训练DeepSeek-V4,我们联合华为小巧灵团队,基于昇腾Atlas 800 A3风冷超节点完成多维度深度工程适配与性能优化。
1.通用NPU融合算子适配
在NPU算子适配工作中,我们针对昇腾AI处理器的硬件架构特性,重点实现了GEMM(通用矩阵乘法)、RMSNorm(均方根归一化)、RoPE(旋转位置编码)等核心算子的高效迁移与深度优化。通过充分挖掘NPU的并行计算能力与融合指令集,确保计算精度无损的同时实现高效率训练。经过实测,开启NPU融合算子后,整网训练吞吐提升13%+。
2.DeepSeek-V4专属高性能NPU融合算子适配
针对DeepSeek-V4-Flash的Attention核心结构,昇腾CANN设计并实现了4个在训练场景下使用的高性能Ascend C算子,提升核心计算模块的性能并优化显存,Twinkle训练框架深度适配了这4个高性能融合算子。
●LightningIndexer(LI)算子基于一系列操作得到每一个token对应的Top-k个位置,输出Top-k位置的索引,供SparseAttnSharedkv作为输入完成计算。
●SparseAttnSharedKV(SAS)算子旨在完成Attention计算,根据输入cmp_ratio不同支持3种Attention计算,分别为Sliding Window Attention(SWA)、Compressed Attention(CFA)以及Sparse Compressed Attention(SCFA)。
●SparseAttnSharedkvGrad(SASG)是SAS的反向算子,计算过程分为3个阶段。阶段一根据不同cmp_ratio场景,对输入ori_kv与cmp_kv进行选择,阶段二计算P、dP、dS,阶段三计算dQ, dKV, dSinks。
●SparseLightningIndexerGradKLLoss算子,由于LI模块进行Loss计算时存在巨大显存开销(序列的平方级别,需要计算Main Attention score)。SparseLightningIndexerGradKLLoss算子将Main Atttion score计算、LI的反向、以及Loss计算过程融合,减少中间显存占用,优化显存和性能。

高性能融合算子具体原理和实现可查阅 cann-recipes-train开源仓介绍,预计训练效率提升收益在60%。
3.适配验证:训练精度对标Loss曲线高度对齐
同时我们还在昇腾上验证了训练适配的正确性和精度。通过与GPU训练的Loss曲线对比,可以看到趋势完全吻合,逐Step Loss差异在千分之一以内,训练可正常收敛。

通过以上适配工作,用户需要4机32卡Atlas 800 A3风冷超节点,使用cookbook中的训练脚本,即可启动DeepSeek-V4系列模型的微调。
五、快速开始
# 环境准备
## 使用构建的镜像
docker pull swr.cn-southwest-2.myhuaweicloud.com/ascend-sact/twinkle-npu:v3
## 从源码安装
git clone https://github.com/modelscope/twinkle.git
cd twinkle
pip install -e .
# 转换 DeepSeek-V4-Flash FP4/FP8 权重为BF16训练格式
git clone https://gitcode.com/cann/cann-recipes-train.git
cd cann-recipes-train/llm_pretrain/deepseekv4/utils
python3 convert_model.py \
--input_fp8_hf_path /data/models/DeepSeek-V4-Flash \
--output_hf_path /data/models/DeepSeek-V4-Flash-BF16 \
--quant_type bfloat16
#A3节点4机32卡训练
ASCEND_RT_VISIBLE_DEVICES=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 \
torchrun --nnodes=4 \
--nproc_per_node=16 \
--node_rank=$NODE_RANK \
--master_addr=$MASTER_ADDR \
--master_port=$MASTER_PORT \
cookbook/transformers/deepseek_v4_flash.py
训练过程截图:

相关文章
- 心怀挚爱,共绽光芒——鲲鹏昇腾开发者大会2026即将启幕
- 金融智能新跨越:中国银联依托昇腾算力率先完成DeepSeek-V4私有化部署
- 显示龙头卡莱特完成DeepSeek V4在昇腾平台验证,国产大模型工程化落地提速
- 技术创新赋能千行万业 昇腾人工智能伙伴峰会2026圆满举办
- 昇腾携手20家伙伴发布AI应用场景解决方案 加速千行万业智能化升级
- 昇腾0day支持智谱GLM-5,744B模型单机高效推理
- 昇腾原生支持,科学多模态大模型Intern-S1-Pro正式发布并开源
- 睿思智联获昇腾 Atlas 800T/800I A3 认证:从 “能用” 到 “好用” 定义国产智算精细化管理新标准
- 昇腾云客户2663家,华为云稳居最大国产AI云服务提供商
- 昇腾赋能 TransMLA:无需重训突破架构壁垒,助力主流大模型高效适配 MLA
- 巅峰对决松山湖!鲲鹏昇腾创新大赛全国总决赛2025圆满落幕
- 以创新赴约,为未来赋能!鲲鹏昇腾创新大赛2025全国总决赛即将开赛
- 中国电信TeleStudio:深度适配华为昇腾算力底座,开启AIGC普惠新时代
- 助力打造“数智龙华”AI CITY先锋城区,“鸿蒙+昇腾”双生态数字孪生平台成功落地
- 昇腾生态硬核赋能!上交大攻克超长上下文推理难题,性能大幅跃升
- 从代码生成到智能开发:北大发布基于昇腾平台软件开发解决方案
人工智能企业
更多>>人工智能硬件
更多>>人工智能产业
更多>>人工智能技术
更多>>- Twinkle x昇腾,率先实现Deepseek-V4系列模型高效训练
- 高德发布鸿蒙首个生成式 UI 开源框架 AGenUI,告别传统 UI 开发模式
- 发布即适配| 天数智芯全力支持腾讯混元Hy3 preview 开源落地,共推国内大模型产业普惠
- Seedance 2.0面向企业公测,豆包大模型日均Token使用量突破120万亿
- 端到端OCR模型第一!百度千帆Qianfan-OCR正式发布
- 云知声Unisound U1-OCR大模型发布!首个工业级文档智能基础大模型,开启OCR 3.0时代
- 基石智算上线 MiniMax M2.5,超强编程与智能体工具调用能力
- 昇腾原生支持,科学多模态大模型Intern-S1-Pro正式发布并开源









