可本地部署MiniMax M3模型:通过startapi.top API快速调用,或用Docker在A100/H100服务器运行官方镜像,亦可用ONNX Runtime在CPU上推理(限131072 tokens)。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你想在本地服务器上跑起 MiniMax M3 模型,调用它处理百万 token 的长文档、解析截图里的代码错误、甚至让它自动操作桌面完成重复任务,而不是只靠网页版点点点——这需要真实可执行的 API 配置、模型加载路径和硬件适配细节。
通过 startapi.top 一键接入 M3 API
方法一:替换 base_url 即可复用现有 OpenAI 代码
将原项目中类似 openai.base_url = "https://api.openai.com/v1" 的配置,改为 startapi.top 提供的 M3 地址:【https://api.startapi.top/v1】。
API Key 必须从 startapi.top 控制台「API Keys」页生成,不能复用 MiniMax 官方平台的密钥,否则返回 401 错误。
方法二:直接用 curl 测试连通性(无需安装 SDK)
执行以下命令,注意把 your_api_key_here 替换为你的真实密钥:
curl -X POST https://api.startapi.top/v1/chat/completions \
-H "Authorization: Bearer your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"model": "minimax-m3", "messages": [{"role": "user", "content": "你好"}]}'
首次返回耗时约 800ms 是正常现象,M3 的 Prefill 阶段需加载稀疏注意力头参数,后续请求会启用自动 Cache 加速。
本地 GPU 服务器部署 M3 官方 Docker 镜像
该方式适用于拥有 A100 40GB 或 H100 80GB 显存的内网服务器,要求 CUDA 12.1+、NVIDIA 驱动 ≥535.104.05。
第一步:拉取镜像并验证 GPU 可见性
执行 nvidia-smi 确认驱动正常 → 运行 docker pull minimax/agent-server:cuda121-ubuntu2204。
第二步:准备模型权重与工具目录
从 MiniMax GitHub Release 页面下载 m3-awq-q4_k_m.gguf(仅 12.7GB),放入 /data/minimax/agent/models/;同步创建空目录 /data/minimax/agent/tools/,即使暂不启用工具调用也必须存在,否则容器启动失败。
第三步:启动服务并暴露端口
docker run --gpus all \
-v /data/minimax/agent/models:/app/models \
-v /data/minimax/agent/tools:/app/tools \
-p 8000:8000 \
-e MODEL_PATH=/app/models/m3-awq-q4_k_m.gguf \
-e TOOLS_DIR=/app/tools \
minimax/agent-server:cuda121-ubuntu2204
容器启动后访问 http://localhost:8000/health,返回 {"status":"ok"} 表示服务就绪。注意:该镜像默认禁用流式响应,如需 streaming,请在环境变量中添加 -e STREAMING_ENABLED=true。
无 GPU 环境下用 ONNX Runtime 跑 M3 推理
纯 CPU 场景仅支持文本输入+输出,无法处理图像/视频或桌面操作,但可用于日志摘要、知识库问答等低延迟非实时任务。
方法一:使用官方导出脚本生成 ONNX 模型
python export_onnx.py --model-path ./models/m3-base --output-dir ./onnx_models --quantize q8 --opset 18
必须指定 --opset 18,低于该版本会导致 MSA 稀疏注意力算子无法序列化,推理时报错 “Unsupported op type: ScatterND”。
方法二:加载并执行最简推理
from onnxruntime import InferenceSession
sess = InferenceSession("./onnx_models/m3-base.onnx", providers=["CPUExecutionProvider"])
inputs = {"input_ids": np.array([[1, 2, 3]], dtype=np.int64)}
outputs = sess.run(None, inputs)
这一步操作起来很简单,直接把文件拖进去就行。但注意:ONNX 模型不支持 1M token 上下文,实测最大有效长度为 131072 tokens,超出部分会被截断且无警告。

















