MiniMax-M2.5 MXFP4 for vLLM-Ascend【免费下载链接】cann-recipes-infer本项目针对LLM与多模态模型推理业务中的典型模型、加速算法提供基于CANN平台的优化样例项目地址: https://gitcode.com/cann/cann-recipes-infer项目简介本项目提供 MiniMax-M2.5 在昇腾 NPU 上基于 vLLM 的 MXFP4/W4A4 量化推理部署方案包含针对vllm和vllm-ascend的补丁及一键启动脚本。主要功能vllm-ascend量化能力增强0001补丁在 NPU 平台能力列表中补齐 Quark 量化方法识别增强quant_description读取健壮性避免缺失 key 导致加载失败vllmMiniMax M2.5 MXFP4/W4A4 全链路适配0002补丁含 7 个 commitQK RMSNorm 张量并行切分修复KV head TP size 场景NPU 端 MXFP4 FP4-E2M1 软件反量化及 E8M0 block scaling 实现替代 CUDA-only 的 Quark 内核NPU 端激活 QDQ 仿真FP4 E2M1 codebook power-of-two block scaleQuark MoE apply 函数签名适配昇腾fused_experts调用路径MoE 权重加载时预反量化避免图模式捕获阶段的动态反量化MoE routing 回退对齐 layer 级 router 语义grouped-topk / correction biasARM 内存序修复shm_broadcast.py中添加memory_fence()保障弱内存序平台的正确性一键启动脚本支持 MXFP4 W4A4 场景的快速部署可通过环境变量灵活配置目录结构minimax_m2.5_mxfp4/ ├── README.md ├── set_env.sh ├── run_vllm.sh ├── run_vllm_w4a4.sh └── patch_vllm/ ├── apply.sh ├── 0001-vllm-ascend-patch-for-mxfp4.patch └── 0002-vllm-patch-for-mxfp4.patch硬件要求项目要求昇腾设备Atlas A3Ascend 910_93NPU 卡数16 张磁盘需容纳 MiniMax-M2.5 MXFP4 量化权重前置条件执行前请确认本机已准备昇腾 CANN / torch / torch_npu 运行环境本地vllm源码目录本地vllm-ascend源码目录MiniMax-M2.5 MXFP4 权重目录推荐镜像推荐直接使用以下 Docker 镜像作为基础环境镜像已包含兼容版本的vllm和vllm-ascend源码docker pull quay.io/ascend/vllm-ascend:v0.14.0rc1-a3补丁基线版本补丁与vllm/vllm-ascend的源码版本严格对应建议使用推荐镜像中自带的版本。使用其他版本可能导致git am应用失败或运行时行为不一致。补丁文件目标仓库仓库地址基线 commit容器内路径0001-vllm-ascend-patch-for-mxfp4.patchvllm-ascendhttps://github.com/vllm-project/vllm-ascend52d4acfa51fb868823d1070b81cbd2d97e9e4696/vllm-workspace/vllm-ascend0002-vllm-patch-for-mxfp4.patchvllmhttps://github.com/vllm-project/vllmd7de043d55d1dd629554467e23874097e1c48993/vllm-workspace/vllm创建容器docker run -it -d --nethost --shm-size512g \ --privileged \ --name minimax-m25-mxfp4 \ --device/dev/davinci_manager \ --device/dev/hisi_hdc \ --device/dev/devmm_svm \ -v /usr/local/Ascend/driver:/usr/local/Ascend/driver:ro \ -v /usr/local/sbin:/usr/local/sbin:ro \ -v /path/to/model:/model \ quay.io/ascend/vllm-ascend:v0.14.0rc1-a3 /bin/bash将/path/to/model替换为宿主机上 MiniMax-M2.5 MXFP4 权重的实际路径。默认目录约定以下目录可通过环境变量覆盖export VLLM_DIR/vllm-workspace/vllm export VLLM_ASCEND_DIR/vllm-workspace/vllm-ascend export MODEL_PATH/model/MiniMax-M2.5-MXFP4使用方式1. 初始化环境cd /project/to/cann-recipes-infer/integration/vllm/minimax_m2.5_mxfp4 source set_env.shset_env.sh会自动配置 CANN toolkit、ATB 库路径、LD_LIBRARY_PATH及运行时环境变量。如果 CANN toolkit 不在默认路径可提前设置ASCEND_TOOLKIT_HOMEexport ASCEND_TOOLKIT_HOME/path/to/ascend-toolkit/latest source set_env.sh2. 应用补丁bash patch_vllm/apply.sh脚本会先对vllm/vllm-ascend做 dry-run 检查再用git am --3way应用补丁对vllm额外补上shm_broadcast.py的 ARM 内存序修复可选安装amd-quark如需关闭amd-quark安装INSTALL_AMD_QUARK0 bash patch_vllm/apply.sh3. 启动 MiniMax-M2.5 MXFP4 W4A4 服务bash run_vllm_w4a4.sh常用覆盖参数示例MODEL_PATH/path/to/MiniMax-M2.5 \ TP_SIZE16 \ PORT8000 \ MAX_NUM_SEQS32 \ MAX_NUM_BATCHED_TOKENS32768 \ ENABLE_EXPERT_PARALLEL1 \ RUN_IN_BACKGROUND1 \ bash run_vllm_w4a4.shrun_vllm.sh是run_vllm_w4a4.sh的兼容入口默认行为一致。关键环境变量MODEL_PATHMiniMax-M2.5 MXFP4 权重目录SERVED_MODEL_NAME服务暴露模型名默认MiniMax-M2.5TP_SIZE张量并行大小默认16PORT服务端口默认8000MAX_NUM_SEQS最大并发请求数默认32MAX_NUM_BATCHED_TOKENS最大 batch token 数默认32768ENABLE_EXPERT_PARALLEL是否开启 EP默认1VLLM_ASCEND_ENABLE_FLASHCOMM1是否开启 FlashComm1默认1VLLM_MXFP4_SKIP_ACT_QDQ是否跳过激活 QDQ 仿真默认0ENABLE_TOOL_REASONING是否开启 MiniMax tool/reasoning parser默认1ENFORCE_EAGER是否强制 eager 模式跳过图编译默认0COMPILATION_CONFIG编译配置 JSON默认{cudagraph_mode:FULL_DECODE_ONLY}LOG_DIR日志输出目录默认/data/logsRANK当前节点编号用于多机场景的日志文件命名默认0RUN_IN_BACKGROUND是否后台启动默认0验证方式启动成功后可执行curl -sf http://127.0.0.1:8000/v1/models或发送一个简单对话请求curl http://127.0.0.1:8000/v1/chat/completions \ -H Content-Type: application/json \ -d { model: MiniMax-M2.5, messages: [{role: user, content: 介绍一下中国的上下五千年}], max_tokens: 256 }故障排查git am失败通常表示本地vllm或vllm-ascend版本与补丁基线不一致请先确认源码版本或手动处理冲突amd-quark安装失败确认 Python 环境和网络可用必要时先手动安装服务启动后报 Quark / MXFP4 相关错误优先确认补丁是否全部应用成功以及MODEL_PATH是否为对应的 MXFP4/W4A4 权重多卡或多进程异常优先确认ASCEND_RT_VISIBLE_DEVICES、TP_SIZE、EP 配置是否匹配当前机器资源【免费下载链接】cann-recipes-infer本项目针对LLM与多模态模型推理业务中的典型模型、加速算法提供基于CANN平台的优化样例项目地址: https://gitcode.com/cann/cann-recipes-infer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考