MiniMax M3.1 Flash 的权重在 10 月 23 日开放下载,总参数约 428B、激活约 23B、原生上下文 1M token。看到「激活 23B」,很多人的第一反应是「一张高端消费卡是不是就能碰了」——恰恰相反,官方所有已验证部署配方的最小档位是 4 张数据中心卡,Hopper 平台甚至要整机 8 张 H100。这篇 SOP 只回答一个问题:怎么把它真正跑起来。三条官方验证配方、一本显存账本、一份排障清单;所有命令逐字来自 vLLM 官方 recipe 与 SGLang 官方 cookbook,逐条标出处;数字凡属推算或未公布,一律如实标注。
先划分工边界:发布背景、匿名测试叙事与基准成绩表归 10 月 21 日的揭盅篇,该篇不含任何部署内容;权重的获取路径概览、协议条款细读与开源生态归开源篇,那篇给的是「去哪里拿、拿到后能干什么」的概览;本文专注部署命令实录、显存账本与排障,与两篇不重叠。
一、部署门槛:官方没有单卡配方
官方未公布统一的「最低硬件配置表」,能查到的只有各框架的已验证配方。按 vLLM 官方 recipe 与 SGLang 官方 cookbook 的口径,最小可行档位是:4 张 Blackwell(B200/B300/GB200/GB300,张量并行 TP4)、或 4 张 AMD MI355X(TP4)、或 Hopper 整机 8×H100/H200(TP8,走 FP8 路径)。没有任何官方配方支持单卡或消费级卡。
这不是官方偷懒,而是模型结构决定的,第五节会把账算透。官方模型卡原话也只给了弹性表述:「实际可用上下文长度与吞吐取决于显卡显存和服务配置」。下面所有命令都基于官方已验证档位,别在 4090 上硬试。
二、权重下载:三个口径并存的体积账
官方地址两处(发布日实测):Hugging Face 的 MiniMaxAI/MiniMax-M3.1-Flash,公开、非 gated,Hub 元数据显示 2026-10-23 02:26 UTC 上线(timesof.ai 口径,另一媒体称文件更新于 03:37 UTC,时差小事但引用「发布时刻」时注明口径);魔搭的 MiniMax/MiniMax-M3.1-Flash(仓库地址:modelscope.cn/models/MiniMax/MiniMax-M3.1-Flash;IT之家转官方)。注意:GitHub 上没有以模型命名的官方仓库,github.com/MiniMax-AI/MiniMax-M3.1-Flash 实测 404,组织页可见的相关仓库是内核库 MiniMax-AI/MSA(SGLang Blackwell 部署必需,第四节用到)。网上若出现「官方 GitHub 模型仓」地址,均为编造。
下载命令(模型卡原文,出处:huggingface.co/MiniMaxAI/MiniMax-M3.1-Flash 的 local-deployment 节):
hf download MiniMaxAI/MiniMax-M3.1-Flash --local-dir MiniMax-M3.1-Flash国内直连 hf.co 不通时,社区博客(cnblogs 实测口径)给出镜像写法:
export HF_ENDPOINT=https://hf-mirror.com
huggingface-cli download MiniMaxAI/MiniMax-M3.1-Flash --local-dir ./MiniMax-M3.1-Flash体积必须多口径并存,官方没有给过一个统一数字:
- 社区统计口径:252.4 GB,48 个 safetensors 分片加 2.3 GB DSpark 草稿头(orcarouter 统计,二手口径,非官方逐字);
- vLLM 官方 recipe 口径:运行时权重占用 NVFP4 变体 285 GB、MXFP4(Quark)293 GB、FP8 变体 533 GB;
- 参数量还有一处矛盾:模型卡写「约 428B」,HF safetensors 元数据标「220B params」,官方未调和(timesof.ai 指出),本文以模型卡为准并注明差异。
下载体积与运行时占用不一致(252.4 GB 对 285 GB),可能是两者口径之差,官方未直接确认分片总数,引用时别混用。精度方面,官方 checkpoint 是 QAT 原生单一格式:路由专家 NVFP4、共享专家 MXFP8、query 路径 FP8(vLLM recipe 口径);官方同日未发布独立 FP8/BF16/INT4 量化仓(未公布),已见的变体是 AMD 官方 Quark-MXFP4(293 GB)、FlagRelease 面向九平台的 W8A8 版(第六节)与第三方 unsloth GGUF——后者档位体积与跑分损失均未核实,且官方模型卡明确警告「Results are for the official weights; third-party quantizations may differ」。
三、vLLM 实录:先解决版本,再抄命令
最关键的前置条件:vLLM 需 0.33.0 及以上,但该版本在发布当日不在 PyPI 上——模型代码合并进上游 PyPI wheel 约需一周(vLLM 官方博客口径)。这一周里只有两条正路:用官方预构建 Docker 镜像,或装 nightly wheel。直接 pip 装稳定版然后报「不认识 speculative method / parser / 架构」,就是踩了这个坑。
官方镜像(出处:vLLM 官方博客与 recipe):
vllm/vllm-openai:minimax-m31-flash # NVIDIA
vllm/vllm-openai-rocm:minimax-m31-flash # AMD配方一:H100/H200 整机 TP8(Hopper 走 FP8 KV 与 Marlin 内核,官方未在此配置启用 DSpark;以下命令逐字出自 vLLM recipe):
vllm serve MiniMaxAI/MiniMax-M3.1-Flash \
--tensor-parallel-size 8 \
--reasoning-parser minimax_m3 \
--block-size 128 \
--kv-cache-dtype fp8 \
--attention-config '{"indexer_kv_dtype": "fp8"}' \
--compilation-config '{"cudagraph_mode": "FULL_AND_PIECEWISE"}' \
--max-model-len 262144 \
--max-num-seqs 80 \
--limit-mm-per-prompt '{"video": 0}' \
--gpu-memory-utilization 0.9 \
--no-enable-log-requests \
--disable-hybrid-kv-cache-manager \
--moe-backend marlin \
--enable-auto-tool-choice \
--tool-call-parser minimax_m3配方二:GB200 TP4(Blackwell,NVFP4 原生,带 DSpark 投机解码):
VLLM_FLOAT32_MATMUL_PRECISION=high \
vllm serve MiniMaxAI/MiniMax-M3.1-Flash \
-tp 4 \
--reasoning-parser minimax_m3 \
--block-size 128 \
--kv-cache-dtype nvfp4 \
--attention-config '{"indexer_kv_dtype": "nvfp4", "use_prefill_query_quantization": true}' \
--compilation-config '{"cudagraph_mode": "FULL_AND_PIECEWISE"}' \
--speculative-config '{"method":"dspark","num_speculative_tokens":3,"attention_backend":"FLASH_ATTN","kv_cache_dtype":"fp8","draft_sample_method":"probabilistic","rejection_sample_method":"block"}' \
--max-num-seqs 256 \
--disable-hybrid-kv-cache-manager配方三:MI355X TP4(AMD,需把 NVFP4 专家重量化为 MXFP8):
VLLM_ROCM_USE_AITER=1 VLLM_ROCM_USE_AITER_FUSION_SHARED_EXPERTS=1 \
vllm serve MiniMaxAI/MiniMax-M3.1-Flash \
-tp 4 \
--reasoning-parser minimax_m3 \
--block-size 128 \
--kv-cache-dtype nvfp4 \
--attention-config '{"indexer_kv_dtype": "nvfp4", "indexer_decode_cp": true}' \
--quantization-config.moe mxfp8 \
--speculative-config '{"method":"dspark","num_speculative_tokens":3,"attention_backend":"TRITON_ATTN","kv_cache_dtype":"fp8","draft_sample_method":"probabilistic"}' \
--disable-hybrid-kv-cache-manager两个强制参数要单独说。其一,--block-size 128 是硬性要求,对应 MSA 稀疏注意力的稀疏块 128——漏掉它,vLLM 直接报 No common block size for 16(vLLM recipe 口径),这是官方预置报错清单里的第一条。其二,所有官方命令都带 --disable-hybrid-kv-cache-manager,官方配方未单独解释该参数,但既然逐条配方都带,就不要自行去掉;漏掉它的具体报错官方未给出,遇到启动异常先恢复原命令再排查。
1M 上下文怎么开:模型原生支持 1,048,576 token,vLLM 用 --max-model-len 控制,默认 auto 按硬件 KV 容量自适应;注意官方 Hopper 示例因显存显式限到 262144(256K),并非官方默认开满 1M。DSpark 草稿头内置在 checkpoint 的 dspark/ 目录,speculative-config 无需另指路径。官方 recipe 还提供 1P1D prefill/decode 分离完整配置,AMD 侧 prefill 节点每 rank 需 560 GiB 主机内存巨页(对应第七节第九条)。
四、SGLang 实录:代码未合 main,安装路径特殊
与 vLLM 不同,SGLang 对 M3.1 Flash 的支持代码截至发文未合入 SGLang main,官方文档给出从支持 PR 安装的流程(PR 编号在文档中标注为 TBD,需替换为实际值;出处:SGLang 官方 cookbook):
PR_NUMBER=<the PR number of the model support PR>
git clone https://github.com/sgl-project/sglang.git
cd sglang
git fetch origin "pull/${PR_NUMBER}/head"
git checkout FETCH_HEAD
uv pip install --prerelease=allow -e pythonBlackwell 平台另需安装 MiniMax 官方 MSA 内核(Hopper 与 AMD 不需要),且必须 pin 到官方指定的 commit:
git clone https://github.com/MiniMax-AI/MSA.git
cd MSA
git checkout c8e1013a16a708d2a7656805d5fc26f2b87715d1
uv pip install --no-deps -e .不想折腾源码可用官方 Docker 镜像:lmsysorg/sglang:dev-minimax-m31-flash(NVIDIA)与 lmsysorg/sglang:dev-minimax-m31-flash-mi35x(AMD MI350X/MI355X,ROCm 7.2)。
配方四:4×B300 Balanced 验证配方(官方逐字):
FMHA_SM100_ALLOW_JIT=1 \
sglang serve \
--trust-remote-code \
--model-path MiniMaxAI/MiniMax-M3.1-Flash \
--reasoning-parser minimax-m3 \
--tool-call-parser minimax-m3 \
--tp 4 \
--moe-runner-backend flashinfer_trtllm_routed \
--speculative-algorithm DSPARK \
--speculative-use-block-verification \
--cuda-graph-backend-prefill breakable \
--chunked-prefill-size 32768 \
--max-running-requests 128 \
--cuda-graph-max-bs-decode 128 \
--mem-fraction-static 0.8 \
--tokenizer-worker-num 8 \
--host 0.0.0.0 \
--port 30000配方五:8×H200 Balanced 验证配方(官方逐字):
sglang serve \
--trust-remote-code \
--model-path MiniMaxAI/MiniMax-M3.1-Flash \
--reasoning-parser minimax-m3 \
--tool-call-parser minimax-m3 \
--tp 8 \
--context-length 140000 \
--cuda-graph-backend-prefill breakable \
--mem-fraction-static 0.85 \
--cuda-graph-max-bs-decode 64 \
--tokenizer-worker-num 8 \
--host 0.0.0.0 \
--port 30000三个细节容易翻车。第一,两套框架的 parser 写法不同:SGLang 用连字符 minimax-m3,vLLM 用下划线 minimax_m3,互抄必错。第二,DSpark 在 SGLang 只需 --speculative-algorithm DSPARK,自动从仓库 dspark/ 加载;PD 分离部署两端都必须开 DSpark。第三,1M 上下文在 SGLang 没有专门开关,官方 1M 性能口径是 4×B300 MonoKernel 配方、batch 1 时 1M 上下文解码 723 tok/s(256K 为 919、1K 为 1028),该配方的 --max-running-requests 上限是 8。
五、显存账本:428B 全驻留,23B 只管算力
逐项标口径的账本:
| 项目 | 数字 | 口径 |
|---|---|---|
| 权重下载体积 | 252.4 GB(48 分片 + 2.3 GB 草稿头) | 社区统计(orcarouter),非官方逐字 |
| 运行时权重(NVFP4 变体) | 285 GB | vLLM 官方 recipe |
| 运行时权重(MXFP4 Quark) | 293 GB | vLLM 官方 recipe |
| 运行时权重(FP8 变体) | 533 GB | vLLM 官方 recipe |
| BF16 全量权重 | 约 856 GB | 按 428B×2 字节推算,非官方数字,官方无 BF16 仓库 |
| SGLang MonoKernel 每路由专家副本 | 54.1 GiB/rank | SGLang 官方 cookbook |
| SGLang KV 池(B300,mem-fraction 0.8) | 约 650 万 tokens(MonoKernel)/ 1040 万(标准路径) | SGLang 官方 cookbook |
| 1M 上下文 KV cache 总量 | 未公布 | 官方与社区均无独立数字 |
| 最低可行硬件 | 4×B200/B300、4×MI355X、8×H100/H200 | vLLM/SGLang 官方已验证配方 |
这张表的核心是回答一个流传很广的误解:「激活 23B,是不是只需要 23B 模型的显存?」答案是否定的,而且要把根因说透:每个 token 只激活约 23B 参数,这决定的是单步计算量与能耗,不是存储需求——MoE 的所有 428B 专家权重都要完整驻留显存,路由器每一步只是从中挑人干活。AI 门户(caip.org.cn)也专门提醒「不能直接据此断言模型只需要相当于一个 230 亿参数模型的存储资源」。这就是消费级不可行的根因:显存账本按 428B 总参算,不按 23B 激活算;激活 23B 降低的是算力门槛,不降低显存门槛。
1M 上下文的 KV cache 到底要多少 GB,官方与社区都没有公布独立数字。可以确认的是 MSA 架构让 KV 单价很低(稀疏块 128、top-16 块、每 query 上限 2048 keys),SGLang 口径下 B300 单机 KV 池即可容纳约 650 万至 1040 万 token——但「1M 上下文全局要多少显存」这个问题,如实写:未公布,别估算冒充官方。
消费级现状(证据等级:低,如实写):官方最小配方即 4 张数据中心卡;Transformers、KTransformers、unsloth、ATOM 在模型卡上均标「适配中」,低门槛路径官方尚未交付。第三方 GGUF 已出现,但其档位体积、可运行硬件与精度损失均未核实,官方明确警告第三方量化结果可能有差异。等官方适配落地之前,A23B 对消费级用户的意义暂时只是「看得见、跑不动」。
六、国产算力路径:FlagOS Day-0 九芯片
FlagOS(智源)在发布首日完成 9 家芯片适配:平头哥、英伟达、华为昇腾、海光、昆仑芯、沐曦、摩尔线程、清微智能、天数智芯,统一提供 W8A8 版本,走 vLLM-plugin-FL 或 SGLang-plugin-FL 插件路径,模型仓库命名形如 FlagRelease/MiniMax-M3.1-Flash-W8A8-<芯片>-FlagOS-Express(魔搭与 HF 均有)。模型卡 multi-chip-deployment 章节收录了 FlagOS 入口。适配分工上,平头哥、英伟达、海光、昆仑芯、沐曦、天数走 vLLM 路径,摩尔线程与华为昇腾走 SGLang 路径;摩尔线程官方公告称 MTT S5000 Day-0 完成。
性能数字均为 FlagOS 官方口径(32K 输入/1K 输出/64 并发,基线为 8×H100 原生 SGLang 0.5.19):单位算力吞吐相对百分比,平头哥 165.0%、华为昇腾 99.5%、昆仑芯 85.9%。注意这组测试标注的「BF16」精度口径存疑——428B BF16 权重约 856 GB,放不进 8×H100 共 640 GB 显存(见第五节推算),所以引用时只引相对百分比、不引绝对吞吐。华为昇腾方面,「首日接入」是 MiniMax 官方口径,但昇腾侧独立官方部署文档目前未被检索到,具体卡型号未公布,如实标注。
七、排障清单:发布次日无社区沉淀,靠官方预置口径
先如实交代背景:截至核真日(发布次日),GitHub 上未检索到 M3.1-Flash 专属的高频 issue 案例,发布当日尚无成规模的社区排障沉淀——这很正常,机器还没到货。眼下唯一可靠的依据是官方文档预置的报错口径:vLLM recipe 与 SGLang cookbook 共预置 13 条,以下择要收录,每条附解法与出处。
- vLLM 报
No common block size for 16——漏了--block-size 128(MSA 稀疏块强制 128)。出处:vLLM recipe。 - vLLM 不认识 speculative method、parser 或模型架构——0.33.0 发布当日不在 PyPI,改用 nightly wheel 或官方 Docker 镜像,代码合并上游约需一周。出处:vLLM 官方博客与 recipe。
- SGLang Blackwell 在 import 阶段服务器起不来——没装 MSA 内核,按第四节 pinned commit 安装 MiniMax-AI/MSA。出处:SGLang cookbook。
- SGLang Blackwell 报
JIT compilation is disabled and AOT kernel ... was not found——设置环境变量FMHA_SM100_ALLOW_JIT=1;官方特别说明该检查只看变量是否存在,设成 0 关不掉。出处:SGLang cookbook。 - SGLang Blackwell 跑得慢,且日志里没有
nvfp4_to_fp8 backend=qmul4——静默回退到了慢路径,需要 nvcc 13.4 及以上(PyTorch wheel 自带的 cu130 不算数),把 CUDA_HOME 指向 13.4 toolkit。出处:SGLang cookbook。 - SGLang 8×B200 报 CUDA graph 捕获 OOM——照抄了 B300 配方所致;官方给 B200 的建议是改
--mem-fraction-static 0.75加--cuda-graph-max-bs-prefill 16384。出处:SGLang cookbook。 - SGLang AMD 拒绝
--tp 8——ROCm 路径仅支持 TP4 及以下,官方建议拆成两个 TP4 服务加路由层。出处:SGLang cookbook。 - SGLang MonoKernel 拒绝启动——需要
--page-size 128、8-token DSpark 链(--speculative-num-steps 1 --speculative-eagle-topk 1 --speculative-num-draft-tokens 8 --speculative-dspark-block-size 7)和--disable-attn-tp-gather三件套。出处:SGLang cookbook。 - vLLM PD 分离 prefill 节点报
Cannot map 560.00 GiB of 1024 MiB HugeTLB pages——启动前预留巨页:
echo 2240 | sudo tee /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages并放开容器的 hugetlb 限额。出处:vLLM recipe。
10. 推理文本混进回答正文——没开 reasoning parser 或写法抄错:vLLM 用下划线 minimax_m3,SGLang 用连字符 minimax-m3。出处:两份官方文档对照。
11. from_pretrained 直接跑不通——Transformers 官方仍标「in progress」,模型卡的 library 字段写 transformers 有误导性,现阶段请用 vLLM、SGLang 或 TokenSpeed。出处:模型卡与 cnblogs 实测。
12. 国内下载慢或失败——HF_ENDPOINT=https://hf-mirror.com 切镜像,且 252 GB 量级的权重先查磁盘余量。出处:cnblogs 社区实测。
13. 长 prompt 首 token 延迟高——单 tokenizer 进程是瓶颈,官方所有配方带 --tokenizer-worker-num 8;另保持 --max-running-requests 与 --cuda-graph-max-bs-decode 相等,保证 decode 全部命中 CUDA graph。出处:SGLang cookbook。
八、矛盾与未公布:写进心里,免得被坑
除前文已述的参数量(428B 对 220B)、体积(252.4 GB 对 285 GB)、精度表述(vLLM recipe 的「路由专家 NVFP4 + 共享专家 MXFP8 + query FP8」对媒体转述官方公告的「路由专家 W4A4、索引器和主分支 Q8KV4」)三处矛盾外,还有几件事官方至今没有给答案:统一的最低硬件配置表(只有各框架已验证配方)、1M 上下文 KV cache 的 GB 需求、官方独立 FP8/BF16/INT4 量化仓库、昇腾侧部署文档与卡型号、第三方 GGUF 各档体积与跑分损失。本文对所有未公布项均不估算。最后一个提醒:权重按 MiniMax Community License 发布,非商用免费,商用须署名「Built with MiniMax M3.1-Flash」,年营收超 2000 万美元需事先书面授权——这是开放权重,不是 OSI 意义上的开源。
FAQ
Q1:我只有一张 4090 或一张 Mac,真的完全没戏吗? A:官方路径确实没戏。官方最小配方是 4 张数据中心卡,根因是 428B 专家权重全部驻留显存,激活 23B 只降低算力不降低显存门槛。Transformers、KTransformers、unsloth、ATOM 均标「适配中」,第三方 GGUF 已出现但档位与效果未核实,官方明确警告第三方量化结果可能有差异。建议等官方低门槛路径交付再动手。
Q2:vLLM 启动报 No common block size for 16,怎么解?
A:命令里漏了 --block-size 128。这个参数是硬性要求,对应 MSA 稀疏注意力的稀疏块 128,官方三条 vLLM 配方全部携带。补上即可。同时检查 --disable-hybrid-kv-cache-manager 是否保留,所有官方配方均带此参数,不要自行删减。
Q3:1M 上下文怎么开?为什么官方示例只给了 256K?
A:vLLM 用 --max-model-len 控制,默认 auto 按硬件 KV 容量自适应;官方 Hopper 示例因显存显式限到 262144(256K)。SGLang 无专门开关,其 8×H200 配方上下文为 140000。1M 上下文的 KV cache 总显存需求官方未公布,上 1M 前先确认你的 KV 池容量(SGLang 口径下 B300 单机约 650 万至 1040 万 token)。
Q4:SGLang 在 Blackwell 上起不来或跑得很慢,先查什么?
A:三步。第一步,确认按 pinned commit 装了 MSA 内核,缺它 import 阶段就挂;第二步,确认环境变量 FMHA_SM100_ALLOW_JIT=1 存在;第三步,确认 nvcc 13.4 及以上(PyTorch wheel 的 cu130 不算),否则会静默回退慢路径,特征是日志里没有 nvfp4_to_fp8 backend=qmul4。三者全部来自 SGLang 官方 cookbook 预置口径。
Q5:公司想商用部署,协议上要注意什么? A:MiniMax Community License 对非商用免费;商用须展示署名「Built with MiniMax M3.1-Flash」并通知官方;年营收超 2000 万美元的公司需事先取得书面授权。另外注意,官方 checkpoint 是 QAT 原生量化格式,第三方量化与官方权重的效果可能存在差异(官方原话警告),商用环境建议以官方权重为准。
延伸阅读
- 匿名太空兔 200T token 揭盅:MiniMax M3.1 Flash 发布:发布背景、匿名测试全记录与官方基准表
- Nemotron 3.5 Bolt 本地部署:74B 塞进 24GB 三条路:另一端的极致——单张 24GB 卡的部署实录
- 开源权重许可证对比横评:MiniMax Community License 之外,五大协议成色对比