智能体/生成式 AI

使用 NVIDIA TensorRT LLM 部署 MiniMax M2/M2.1 稀疏 MoE 大模型

MiniMax M2/M2.1 是一款面向 Agents 和 Coding 工作流的开源稀疏 MoE 模型,在工具调用、跨语言编码与长链路规划上表现突出。依托 NVIDIA 推出的高性能大模型推理框架 TensorRT LLM,MiniMax  M2/M2.1 已实现深度适配与全面优化支持。借助 TensorRT LLM 的算子融合、精细化内存管理及多 GPU 并行推理能力,开发者和企业用户可高效完成 MiniMax M2/M2.1 的部署与上线,在提升吞吐与响应性能的同时显著降低推理延迟和算力成本,加速大模型在真实业务场景中的落地。本文将介绍如何使用 TensorRT LLM 对 MiniMax-M2/M2.1 系列模型进行推理部署。

MiniMax M2/M2.1 系列模型

MiniMax M2 是 MiniMax 推出并开源的新一代文本大模型,核心面向编程与 Agent 场景,通过高效的 MoE 架构在性能、速度与成本之间取得平衡,在多项权威评测中跻身全球第一梯队,并以低门槛 API 定价推动大模型规模化落地。近期推出的 MiniMax M2.1 在此基础上进一步升级,显著强化多语言编程、Web 与移动应用及办公场景能力,更注重真实可运行、可交付的复杂任务执行,体现 MiniMax 向更实用的 AI 原生工作流演进。

最新 MiniMax M2.1 亮点在于:

  • 面向真实生产环境的多语言与全栈能力:系统性提升 Rust、Java、C++、Golang、TypeScript 等多语言编程能力,覆盖从系统层到应用层的真实工程开发。
  • 可交付的 Web / App 与智能体工作流:显著强化 Web / Android / iOS 全栈开发能力,同步提升交互理解与视觉表达,支持可运行、可交付的应用生成与 Agent 工作流。
  • 面向复杂任务与办公场景:更强复合指令执行能力,适配复杂办公与持续任务,同时模型回复更简洁、响应更快、Token 成本更低,兼顾编码与通用生产力场景。

TensorRT LLM 加速大模型推理

NVIDIA TensorRT LLM 作为高性能优化与部署推理框架,专注于实现低延迟、高吞吐、可扩展的生成式推理,并针对 Transformer 架构进行了深度优化,支持主流大模型结构与多精度推理。在技术上,TensorRT LLM 提供 高效算子融合、Paged KV Cache、动态批处理(In‑flight Batching) 以及 FP16 / BF16 / INT8 / FP8 等多精度支持,大幅降低显存占用并提升生成效率。同时支持 Tensor Parallel / Pipeline Parallel 等并行策略,便于大模型在多 GPU、多节点环境中部署。

针对 MiniMax M2/M2.1,TensorRT LLM 已经包含了模型大部分的基础组件。由于模型的独特之处,我们仍然需要额外的实现:

  1. MoE 的 Routing 方式,使用的是 Sigmoid -> Add Bias -> Top-K -> Renormalization 的方式。
  2. QK Norm 的维度是 head_num * head_size,在 Tensor Parallel(TP)模式 下,Attention 会沿 head_num 维度进行切分。在这种情况下,如果采用 Attention Data Parallel(DP)模式可以获得更好的效果。

基于 TensorRT LLM 运行 MiniMax M2/M2.1 模型

以下是基于 TensorRT LLM 进行模型性能基准测试以及服务化部署展示。

1. 性能基础测试(以 Hopper 架构的环境为例)
a. 准备数据集。在这个案例中,ISL = 2048, OSL = 256, num_request = 1024

python benchmarks/cpp/prepare_dataset.py --stdout --tokenizer /path/to/MiniMax-M token-norm-dist --input-mean 2048 --output-mean 256 --input-stdev 0 --output-stdev 0 --num-requests 1024 > /path/to/dataset.txt

b. 准备  TensorRT LLM 的配置 (这部分按需配置,建议打开 Attention Data Parallel)

cat >/path/to/extra-llm-api-config.yml <<EOF
cuda_graph_config:
enable_padding: true
enable_attention_dp: true
EOF

c. 使用 trtllm-bench 指令获取 benchmark 数据

trtllm-bench \
      --model MiniMaxAI/MiniMax-M2 \
      --model_path /path/to/MiniMax-M2 \
      throughput \
      --backend pytorch \
      --max_batch_size 128 \
      --tp 4 \
      --ep 4 \
      --concurrency 10\
      --dataset /path/to/dataset.txt \
      --extra_llm_api_options /path/to/extra-llm-api-config.yml \
      --streaming

1. 部署示例
a. 与其他模型在 TensorRT LLM 部署类似,按照如下命令启动服务

trtllm-serve \
  /path/to/MiniMax-M2 \
  --host localhost \
  --port 8000 \
  --backend pytorch \
  --max_batch_size 128 \
  --max_num_tokens 16384 \
  --tp_size 4 \
  --ep_size 4 \
  --kv_cache_free_gpu_memory_fraction 0.8 \
  --extra_llm_api_options /path/to/extra-llm-api-config.yml

b. 使用 OpenAI API 请求推理

curl -X POST "http://localhost:8000/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MiniMaxAI/MiniMax-M2",
    "messages": [
      {"role": "user", "content": "What is MiniMax M2?"}
    ],
    "max_tokens": 128,
    "stream": false
  }'

总结与展望

未来,NVIDIA 技术专家团队将持续关注 MiniMax 系列模型的演进方向,围绕大模型训推效率与系统级性能优化,深入探索更多加速技术路径的研究与实践,包括新一代低精度策略、更高效的算子融合方案,以及对 NVIDIA 新一代 GPU 架构特性的适配与支持,进一步挖掘 MiniMax 模型在不同应用场景下的性能潜力。欢迎通过 PR15032 了解如何使用 TensorRT LLM 部署 MiniMax M2/M2.1。

标签