用途:在 Apple Silicon Mac 上借助苹果 MLX 张量框架原生运行 MiniCPM5-1B,充分利用 M 系列芯片吞吐,全程在一个 Python 进程内完成,无需独立服务器或 llama.cpp 构建链。
必要输入:MLX_REPO 为必填,示例 openbmb/MiniCPM5-1B-MLX(预转换 4-bit affine);本地转换时改用 HF_REPO + QUANT(openbmb/MiniCPM5-1B,4bit 或 bf16);MAX_TOKENS 默认 200。
使用方式:先安装 pip install "mlx-lm>=0.31" "gguf"。优先使用预转换 MLX 仓库:mlx_lm.generate --model "${MLX_REPO}" --prompt "..." --max-tokens ${MAX_TOKENS} --temp 0.7 --top-p 0.95。仅当拥有自训练 HF fp16 检查点时才用 mlx_lm.convert 本地转换,可转 bf16 或加 -q --q-bits 4 转 4-bit,再按上述方式运行。验证时 1+1=? 的回复应包含 2。如需服务化,可用 mlx_lm.server --model "${MLX_REPO}" --host 127.0.0.1 --port 8000,再通过 curl 请求 /v1/chat/completions。
常见问题:首次生成慢,MLX 首次调用会 JIT 编译内核(约 5-10 秒),之后命中缓存;若模型在 <|im_end|> 后继续生成,通常因 mlx-lm 低于 0.31 忽略多 id eos_token_id 列表,可升级或加 --extra-eos-token "<|im_end|>" 手动覆盖,该 token 为 130073,在 0.31+ 已列入 generation_config.json。
限制与替代:不适用于非 Apple Silicon 环境,此时应改用 minicpm5-deploy-llama-cpp(CPU/CUDA)或 minicpm5-deploy-vllm(CUDA);需要桌面 GUI 可用 minicpm5-deploy-lmstudio;想要一行命令 CLI 运行可用 minicpm5-deploy-ollama。更多细节见 docs/deployment/mlx.md。