面向 Apple Silicon 的本地 OpenAI 兼容多模态 API 服务器,支持文本、视觉、音频转录与图像生成/编辑模型的统一部署。
mlx-openai-server 是一个专为 Apple Silicon(M 系列芯片)设计的本地推理 API 服务器,提供完整的 OpenAI API 兼容性。基于 MLX 框架与 FastAPI 构建,覆盖六大模型类型:纯文本语言模型(lm)、多模态模型(multimodal,支持文本+图片+音频)、图像生成(image-generation,支持 Flux 系列等)、图像编辑(image-edit)、文本嵌入(embeddings)和音频转录(whisper)。
项目核心特性包括:多模型并行运行与按需加载卸载机制、推测解码加速、Prompt KV 缓存、可配置量化(4/8/16-bit)、LoRA 适配器支持、工具调用与结构化输出兼容。多模型部署采用进程隔离架构(HandlerProcessProxy),每个模型在独立子进程中运行,有效解决 MLX Metal/GPU 信号量泄漏问题。
使用方式极简,单模型场景一行命令即可启动,多模型场景通过 YAML 配置文件管理。对外暴露标准 /v1/ 端点,可直接用 OpenAI SDK 或任何兼容 OpenAI API 的前端(如 OpenWebUI)无缝对接,实现零代码修改的本地化切换,适用于隐私优先推理、本地 AI 编码助手、AI Agent 后端等场景。
安装与启动
- 环境要求:macOS Apple Silicon,Python ≥3.11 且 <3.13
- 安装:
uv pip install mlx-openai-server - 快速启动:
mlx-openai-server launch --model-path mlx-community/Qwen3-Coder-Next-4bit --model-type lm - Whisper 支持需额外安装 ffmpeg
CLI 主要参数
--model-path:MLX 模型路径(本地或 HuggingFace),必填--model-type:lm / multimodal / image-generation / image-edit / embeddings / whisper,必填--config:YAML 多模型配置文件路径--host/--port:绑定地址与端口,默认 127.0.0.1:8000--served-model-name:自定义对外模型名称--quantize:量化级别(4/8/16)--context-length/--max-tokens:上下文与生成长度,max-tokens 默认 100000--temperature:采样温度,默认 1.0--draft-model-path:推测解码草稿模型路径--prompt-cache-size:提示缓存条目数,默认 10--lora-paths:LoRA 适配器路径(逗号分隔)
多模型 YAML 配置示例
server:
host: "0.0.0.0"
port: 8000
log_level: INFO
models:
- model_path: mlx-community/MiniMax-M2.5-4bit
model_type: lm
served_model_name: Minimax-M2.5
enable_auto_tool_choice: true
tool_call_parser: minimax_m2
reasoning_parser: minimax_m2
- model_path: black-forest-labs/FLUX.2-klein-4B
model_type: image-generation
config_name: flux2-klein-4b
quantize: 4
served_model_name: flux2-klein-4b
on_demand: true
on_demand_idle_timeout: 120
API 调用方式 完全兼容 OpenAI SDK,仅需替换 base_url:
import openai
client = openai.OpenAI(base_url="http://localhost:8000/v1", api_key="not-needed")
response = client.chat.completions.create(
model="glm-4.7-flash",
messages=[{"role": "user", "content": "Say hello in one word."}],
)
print(response.choices[0].message.content)
待确认信息
- PyPI 发布状态未直接确认,仅从安装命令推断
- 无完整兼容模型清单,README 提及 Gemma 4、MiniMax-M2.5、GLM-4.7、Qwen3、Flux 等
- 无公开性能基准数据
- 并发能力上限未说明
当前版本 1.7.1,采用 MIT 许可证,作者 Gia-Huy Vuong (cubist38)。