课程
MiniMax M2.7 从众多开源权重模型中脱颖而出,因为它专为复杂的智能体工作流而设计,包括工具使用、多步编码任务以及面向效率的推理。
尽管它体量属于中等,而非最大的模型层级,MiniMax M2.7 仍定位于以更务实的部署成本提供强劲的编码与推理表现。
在本指南中,我将使用 Hyperbolic,因为它提供最便宜的按需 H200 访问、快速的资源开通,以及便捷的方式来启动用于本地式模型服务的 Linux GPU 机器。
您将学到如何:
-
启动一台 Hyperbolic H200 Linux 机器
-
安装用于本地推理的 llama.cpp
-
下载 Unsloth 的 MiniMax M2.7
UD-IQ4_XS GGUF版本 -
将
llama-server作为兼容 OpenAI 的本地 API 运行 -
将本地模型连接到 OpenCode,开展智能体式编码工作流
MiniMax M2.7 有哪些新变化?
与早期的开源模型(例如 MiniMax M2.5)相比,MiniMax M2.7 引入了更偏向智能体的方向。其亮点不止在于编码或推理能力,还在于它被设计用于参与自身的改进过程。
据 MiniMax 介绍,M2.7 是其首个能够深入参与自我演进的模型,能够帮助构建复杂的智能体框架、处理繁复的效率型任务,并与智能体团队、高级技能以及动态工具搜索协同工作。
M2.7 的一大转变在于自我演进工作流。在开发阶段,模型被用于更新自身记忆、为强化学习实验创建复杂技能,并基于实验结果优化自身的学习过程。
这一切使得 M2.7 不再像标准的静态模型,更像是一个为迭代改进而构建的系统。

来源:MiniMaxAI/MiniMax-M2.7 · Hugging Face
我觉得最有意思的是,MiniMax 将 M2.7 定位为不止是另一个开源模型。对我而言,这指向一种更可持续的模型改进与训练方式,其中高级系统能在自身发展中扮演更积极的角色。
与其完全依赖规模庞大的新数据集,它展示了新式训练方法与自我改进闭环如何进一步推动模型性能。
步骤 1:搭建环境
前往 Hyperbolic 注册账号,并使用银行卡至少充值 $5。然后进入 GPUs 选项卡,点击 Launch Instance,选择 H200 SXM5 机器。
本指南使用远程 GPU 服务器,因此在启动机器之前,您需要确保 SSH 访问 准备就绪。SSH 可以让您从本地终端安全连接到运行在 Hyperbolic 上的 Linux 机器。
如果您已在使用 SSH 并配置了密钥对,可继续下一部分。否则,您需要先创建一个密钥对。
创建或准备您的 SSH 密钥
在本地计算机上打开终端,如未配置,请生成 SSH 密钥:
ssh-keygen
按提示操作,回车将其保存在默认位置。您也可以设置口令以增强安全性,但这不是必须的。
密钥创建完成后,打印您的公钥以便复制:
cat ~/.ssh/id_rsa.pub
如果您的系统改用 Ed25519 格式,请运行:
cat ~/.ssh/id_ed25519.pub
复制完整输出并将其添加到您的 Hyperbolic 账户。请确保只上传公钥。私钥应保留在您自己的计算机上,且绝不可共享。
启动实例
添加 SSH 密钥后,前往 Hyperbolic 控制台,打开 GPUs 选项卡并点击 Launch Instance。在可用机器列表中,为本次设置选择 H200 SXM5 实例。

在启动机器之前,请为实例起一个清晰易辨的名称。若您稍后启动多台机器或过一段时间再回来使用,这将方便很多。
随后检查实例设置,确认已附加您的 SSH 密钥,并启动机器。平台将开始为您部署 GPU 服务器。

当机器完全就绪后,它会在控制台中显示为“活动”。此时,您也将看到需要在本地终端中连接用的 SSH 命令。下一步会用到该命令。
通过 SSH 连接到机器
现在在本地终端中运行带端口转发的 SSH 命令,从一开始就启用转发:
ssh -L 8001:127.0.0.1:8001 root@<H200-Instance-IP>
这会将您的本地机器连接至远程 Linux 服务器,并转发 8001 端口,稍后您即可通过浏览器访问 llama.cpp 服务器:http://127.0.0.1:8001。
如果这是您首次连接该服务器,SSH 会要求您确认指纹。输入 yes 后按 Enter。
如果您在创建 SSH 密钥时设置了口令,SSH 会在连接完成前询问它。输入您的口令并按 Enter。建议使用口令,因为它能为您的私钥增加一层保护。

检查 GPU 是否可用
获得对 H200 机器的远程访问后,首先要检查 GPU 是否可见以及 NVIDIA 驱动是否正常工作。
运行:
nvidia-smi
该命令应显示已安装的 NVIDIA GPU、驱动版本、CUDA 版本及可用显存。如果能在此处看到 H200,说明该机器已可用于推理工作。

安装构建工具
现在安装构建 llama.cpp 并在本地运行模型所需的系统软件包。
运行:
apt-get update
apt-get install -y pciutils build-essential cmake git curl wget libcurl4-openssl-dev tmux python3 python3-pip
这些软件包为后续设置提供所需工具:
-
build-essential和cmake用于编译 llama.cpp -
git用于克隆代码仓库 -
curl与wget用于下载文件 -
tmux可在关闭终端后保持长时运行的进程持续活跃。
步骤 2:安装 llama.cpp
机器准备就绪后,下一步安装 llama.cpp,我们将用它在本地运行 MiniMax M2.7。它既提供测试模型的命令行工具,也提供稍后要以兼容 OpenAI 的 API 方式暴露的服务器。
克隆 llama.cpp 仓库
首先将官方 llama.cpp 仓库克隆到远程机器:
git clone https://github.com/ggml-org/llama.cpp
这会在当前目录创建一个 llama.cpp 文件夹,包含构建项目所需的全部源文件。
配置构建
接着运行 CMake 配置构建。在本次设置中,我们启用了 CUDA,以便 llama.cpp 可使用 H200 GPU 进行推理。
cmake llama.cpp -B llama.cpp/build -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON
该命令会在 llama.cpp/build 目录中生成构建文件。
构建所需二进制文件
现在编译我们需要的工具:
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-cli llama-server llama-gguf-split
这会构建三个主要的可执行文件:
-
llama-cli:用于在终端中测试和运行模型 -
llama-server:通过本地 API 和浏览器界面提供模型服务 -
llama-gguf-split:用于处理切分的 GGUF 模型文件
将二进制文件复制到主目录
构建完成后,将编译好的二进制文件复制到主 llama.cpp 目录:
cp llama.cpp/build/bin/llama-* llama.cpp
这样无需每次都输入完整的构建路径,即可更方便地运行这些工具。
检查安装是否成功
最后运行以下帮助命令,确认一切安装正确:
./llama.cpp/llama-cli --help
./llama.cpp/llama-server --help
如果两个命令都返回用法信息而非报错,说明 llama.cpp 已成功安装,您已准备好下载 MiniMax M2.7 模型。
步骤 3:下载 MiniMax M2.7 GGUF 模型
在下载模型前,先在远程机器上安装 Hugging Face 下载工具:
pip -q install -U "huggingface_hub[hf_xet]" hf-xet hf_transfer
这会安装 hf CLI 以及 hf-xet,有助于更高效地处理大文件下载。
接着创建一个存放模型文件的文件夹,并下载 MiniMax M2.7 的 UD-IQ4_XS GGUF 版本。
运行:
mkdir -p /models/minimax-m27
hf download unsloth/MiniMax-M2.7-GGUF \
--local-dir /models/minimax-m27 \
--include "*UD-IQ4_XS*"

这将创建专用的模型目录,并仅下载 UD-IQ4_XS 文件,即本指南使用的 4 位量化版本。
下载体积较大,约 108 GB,具体耗时取决于您实例的网络速度。
下载完成后,运行以下命令检查是否包含所有 GGUF 分片:
find /models/minimax-m27 -name "*.gguf"
您应该会看到列出四个 GGUF 文件,类似如下:
/models/minimax-m27/UD-IQ4_XS/MiniMax-M2.7-UD-IQ4_XS-00003-of-00004.gguf
/models/minimax-m27/UD-IQ4_XS/MiniMax-M2.7-UD-IQ4_XS-00002-of-00004.gguf
/models/minimax-m27/UD-IQ4_XS/MiniMax-M2.7-UD-IQ4_XS-00001-of-00004.gguf
/models/minimax-m27/UD-IQ4_XS/MiniMax-M2.7-UD-IQ4_XS-00004-of-00004.gguf
如果四个文件都在,说明模型已正确下载,您可以在下一步启动服务器。
步骤 4:在本地运行 MiniMax M2.7
现在使用 llama-server 启动模型。这将加载 MiniMax M2.7 GGUF 模型,在 GPU 上运行,并通过本地服务器暴露在 8001 端口。
先启动一个 tmux 会话
在启动模型服务器之前,先开启一个 tmux 会话,这样即使 SSH 连接断开或您关闭终端窗口,进程也能继续运行。
运行:
tmux new -s minimax
这会创建一个名为 minimax 的 tmux 会话,我们将用它来运行服务器。
启动服务器
现在进入 llama.cpp 目录,并使用模型路径和推理参数启动服务器:
cd llama.cpp
./llama-server \
--model /models/minimax-m27/UD-IQ4_XS/MiniMax-M2.7-UD-IQ4_XS-00001-of-00004.gguf \
--alias "MiniMax-M2.7" \
--host 0.0.0.0 \
--port 8001 \
--ctx-size 32768 \
--batch-size 2048 \
--ubatch-size 512 \
--threads 16 \
--parallel 1 \
--flash-attn on \
--n-gpu-layers 999 \
--temp 1.0 \
--top-p 0.95 \
--top-k 40
这会在 8001 端口启动服务器并加载模型。随着模型加载,请在终端中观察日志。

如果模型成功加载进 GPU 内存,您会看到服务器在所配置地址与端口上监听的提示信息。

让服务器在后台持续运行
模型完全加载后,您可以将其保留在 tmux 中运行,并从会话中分离而不停止进程。
按下 Ctrl+B,然后按 D。这会将您带回普通终端,同时让模型服务器在后台保持运行。
若稍后想再次查看日志,可通过以下方式重新附着到会话:
tmux attach -t minimax
检查模型服务器是否正常工作
服务器启动后,打开另一个终端会话并运行:
curl http://127.0.0.1:8001/v1/models
您应看到类似如下的输出:
{"models":[{"name":"MiniMax-M2.7","model":"MiniMax-M2.7","modified_at":"","size":"","digest":"","type":"model","description":"","tags":[""],"capabilities":["completion"],"parameters":"","details":{"parent_model":"","format":"gguf","family":"","families":[""],"parameter_size":"","quantization_level":""}}],"object":"list","data":[{"id":"MiniMax-M2.7","aliases":["MiniMax-M2.7"],"tags":[],"object":"model","created":1776336809,"owned_by":"llamacpp","meta":{"vocab_type":2,"n_vocab":200064,"n_ctx_train":196608,"n_embd":3072,"n_params":228689764864,"size":108405492736}}]}
如果您看到列出了 MiniMax-M2.7 模型,说明服务器运行正常。
在浏览器中打开 WebUI
由于您已在 8001 端口启用了 SSH 端口转发,现在可以直接在浏览器中打开 llama.cpp 的 WebUI,访问 http://127.0.0.1:8001 即可。
这让您可以直接在本地浏览器中访问模型界面。

测试模型
此时模型应已可用。您可以在 WebUI 中测试,或通过终端发起 API 请求,以确认一切正常。
在我的设置中,MiniMax M2.7 的响应极快,达到了约每秒 120 个 token。坦率地说,这感觉是我在这一体量上运行过的最快的本地模型之一,尤其是在更长、技术性更强的提示下仍然非常灵敏。

当其能正确响应后,MiniMax M2.7 就已在本地完整运行,并可连接到您的编码工作流。
步骤 5:将 MiniMax M2.7 与 OpenCode 配合使用
现在本地 llama.cpp 服务器已在运行,下一步是将其连接到 OpenCode。OpenCode 是一个基于终端的编码智能体,支持通过其配置文件添加自定义提供方。如果您想了解更多,请查看我们的 OpenCode 与 Claude Code 对比。
对于像 llama.cpp 这样的本地模型,最干净的设置方式是将 OpenCode 指向运行在 http://127.0.0.1:8001/v1 的本地、兼容 OpenAI 的端点。
安装 OpenCode
在远程机器上通过以下命令安装 OpenCode:
curl -fsSL https://opencode.ai/install | bash

然后重新加载您的 shell,并检查版本以确认安装成功:
source ~/.bashrc
opencode --version
1.4.6
创建 OpenCode 配置
接下来,创建一个 opencode.json 文件,告知 OpenCode 使用您的本地 llama.cpp 服务器作为兼容 OpenAI 的提供方。
cat > opencode.json <<'EOF'
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"llama.cpp": {
"npm": "@ai-sdk/openai-compatible",
"name": "llama-server (local)",
"options": {
"baseURL": "http://127.0.0.1:8001/v1",
"timeout": 600000,
"chunkTimeout": 120000
},
"models": {
"MiniMax-M2.7": {}
}
}
},
"model": "MiniMax-M2.7"
}
EOF
该配置将 OpenCode 指向本地服务器,将默认模型设为 MiniMax-M2.7,并采用与 OpenCode 文档一致的、兼容 OpenAI 的自定义提供方方式。OpenCode 也支持在应用内使用 /models 命令选择模型。
启动一个测试项目
现在创建一个简单的项目文件夹,并在其中启动 OpenCode:
mkdir ml-app
cd ml-app/
Opencode
OpenCode 打开后,输入 /models,并在本地提供方下选择 MiniMax-M2.7。

在编码任务上测试 MiniMax M2.7
选择模型后,给出一个真实的编码提示。例如:
Build a simple machine learning API app with FastAPI using just two files: one app.py file for the API and model loading/prediction logic, and one test_app.py file for basic endpoint tests.
实际使用中,此处的体验会开始令人印象深刻。模型几乎立即开始工作,创建任务计划并着手构建文件。在我的测试中,它的响应非常灵敏,这与通过 llama.cpp 运行时的高速表现相吻合。

最终,它能够创建文件、运行测试并展示结果。

之后,您可以继续推进,比如让它测试 ML API 端点、改进应用结构或添加新功能。由于 OpenCode 针对基于终端的编码工作流而构建,此时本地 MiniMax 的设置不再只是“在服务器上跑个模型”,而更像一个实用的编码智能体。

在我的场景中,这个本地 ML API 应用在运行结束时已能正常工作。我们运行了单元测试、做了冒烟测试,并确保在运行与测试代码时没有错误。总体而言,完成全部流程大约花了 2 分钟,这很好地体现了该模型在本地编码工作流中的速度感。
关于 MiniMax M2.7 本地部署的结语
我最初从 vLLM 开始,但在尝试运行 4 位 AWQ 模型时遇到了不少问题。就这类设置而言,我发现 llama.cpp 更易上手。安装更简单、流程更直观,也能更快地让一切正确跑起来。
我还喜欢 llama.cpp 自带 WebUI,可以立即在浏览器中用类似 ChatGPT 的界面测试模型。这使得快速检查提示、测试响应、以及在连接到 OpenCode 之前确认模型工作正常变得更容易。
对于本地使用而言,我认为 MiniMax M2.7 是我迄今运行过的最佳模型之一。它比 GLM 5.1 更小,速度更快,善于理解代码,并在智能体式编码任务上表现强劲。即便是 4 位版本 在处理更复杂任务时也有出色表现,给人一种可实际落地使用,而非仅供试验的感觉。
速度是这套方案突出的重要原因。在我的场景中,MiniMax M2.7 以约 每秒 120 个 token 的平滑生成速度运行,并且通过 SSH 端口转发,我可以像在本机运行一样从本地浏览器或 API 使用它。这让整个工作流显得快速、简洁且非常实用。
作为一名持证的数据科学家,我热衷于利用前沿技术打造创新的机器学习应用。凭借在语音识别、数据分析与报告、MLOps、对话式人工智能以及自然语言处理方面的扎实背景,我不断打磨构建智能系统的能力,力求带来切实影响。除技术专长外,我也擅长沟通,能够将复杂概念提炼为清晰、简明的表述。因此,我成为数据科学领域备受关注的博主,与不断壮大的数据专业人士社区分享洞见与实践经验。目前,我专注于内容创作与编辑,借助大语言模型打造有力且吸引人的内容,帮助企业与个人更好地发挥数据价值。
