SuperAPI AI 工具集

wan-ascend-adaptation

智能体与模型

查看项目

更新于 10-15 17:20

技能介绍

用途:为 Wan 系列(及类似 DiT 架构)视频生成模型从 NVIDIA CUDA/GPU 迁移到华为昇腾 NPU 提供系统化分步指南,覆盖从设备初始化到分布式并行的推理栈各层。

适用场景:将 Wan2.1/Wan2.2 从 CUDA 移植到昇腾 NPU;适配其他 DiT 视频扩散模型;在昇腾 NPU 上优化推理(注意力、量化、VAE 并行);在 Atlas 800 系列上搭建多卡分布式推理;将 MindIE SD 加速库集成进 PyTorch 视频生成管线。

主要能力(9 个适配领域,各有 references/ 下参考文件):1 设备层(P0);2 算子替换(P0);3 精度策略(P0);4 注意力机制(P1);5 分布式并行(P1);6 VAE Patch 并行(P2);7 模型量化(P2);8 稀疏注意力 RainFusion(P2);9 推理管线集成(P1)。

使用方式:按顺序执行。设备层需导入 torch_npu 与 transfer_to_npu,将 dist.init_process_group(backend="nccl") 改为 backend="hccl",autocast('cuda') 改为 autocast('npu')。算子层用 torch_npu.npu_rms_norm()、mindiesd.rotary_position_embedding()、mindiesd.attention_forward() 等替换。精度层将正弦嵌入降至 float32、RoPE 频率降至 complex64、autocast 用 bfloat16。注意力层通过 ALGO 环境变量多后端调度,组合 Ulysses + Ring Attention。并行层实现 TP×SP×CFG 四维并行与 CFG 并行。VAE 层做空间切片与 P2P 边界交换。量化用 msmodelslim 做 W8A8 动态量化。稀疏注意力实现 RainFusion v1/v2。管线层加入预热、T5_LOAD_CPU、RoPE 频率缓存等。

关键环境变量:ALGO(0/1/3)、FAST_LAYERNORM、USE_SUB_HEAD、T5_LOAD_CPU、PRECISION、OVERLAP、PYTORCH_NPU_ALLOC_CONF、TASK_QUEUE_ENABLE、CPU_AFFINITY_CONF。

关键依赖:torch_npu、mindiesd、msmodelslim、yunchang、torch_atb、atb_ops。

限制:该技能基于 Wan2.2-Original(CUDA)与 Wan2.2-Ascend(NPU)代码库对比得出;昇腾版本移除了 S2V 与 Animate 任务,聚焦 T2V、I2V、TI2V;硬件目标为 Atlas 800I A2 / Atlas 800T A2(8×64G NPU)。具体安装命令与完整代码示例资料未提供。