GitHub 趋势 · 第 82 期

oMLX:Mac 菜单栏里的 LLM 推理服务器,OpenAI 接口直接可用

#GitHub趋势#AppleSilicon#本地推理#可商用

oMLX 是这轮趋势里最「Mac 原生」的一个。它把 LLM 推理服务器做成了菜单栏 app,专吃 Apple Silicon,对外提供 OpenAI 和 Anthropic 双兼容接口,代码与 bundled 内容都是 Apache 2.0(可商用)。一句话:在你自己的 M 系列芯片上,用和调 OpenAI 一模一样的请求跑本地大模型,不用碰端口、不用管并发、不用付云端 token 费。

本地跑模型这条路,常见方案要么是命令行推理引擎(ollama、llama.cpp),要么是 Python 包,端口、并发、模型加载都得自己配。oMLX 的取向不同:它要做的是「服务」——装好之后,任何 OpenAI 兼容客户端指向一个本地地址就能用,对内是菜单栏里一个能启停、能监控的开关。对不想折腾基础设施、只想要一个稳定本地 API 的人,这个收口刚好补上空缺。

一、它是什么

官方一句话描述:LLM inference server with continuous batching & SSD caching for Apple Silicon — managed from the macOS menu bar(面向 Apple Silicon、带连续批处理与 SSD 缓存的 LLM 推理服务器,从 macOS 菜单栏管理)。

由个人开发者 jundot 维护,2026-02-13 创建,最近推送 2026-09-13(今天仍在动),默认分支 main,主语言 Python,仓库约 70 MB,topic 是 apple-silicon / inference-server / llm / macos / mlx / openai-api。主页 https://omlx.ai,最新发布 0.6.4(2026-08-29)。

关键形态:原生 Swift / SwiftUI 菜单栏 app(不是 Electron),从菜单栏启动、停止、监控服务,自带本地用量历史(按模型统计 + 每小时热力图)、崩溃自动重启、内置自动更新。README 要求的运行环境是 macOS 15.0+(Sequoia)、Python 3.11–3.13、Apple Silicon(M1/M2/M3/M4/M5)。

二、为什么它和「在 Mac 上跑模型」不一样

常见本地方案配置、端口、并发都得自己管。oMLX 把它们收口成一个「服务」:装好之后,任何 OpenAI 兼容客户端直接指向 http://localhost:8000/v1 就能用,内置聊天界面在 http://localhost:8000/admin/chat。

它同时是 OpenAI 和 Anthropic 的 drop-in 替代:支持 streaming usage stats、Anthropic adaptive thinking、vision inputs。也就是说,你给 Claude Code、给 Cursor、给随便什么客户端填一个本地 base_url,就能把云端模型换成自己 Mac 上的模型,业务代码基本不用改。

三、README 列出的核心能力

能力README 表述
连续批处理(continuous batching)多个并发请求合并到同一批推理,吞吐显著高于点对点串行
分层 KV 缓存(tiered KV caching)热缓存放内存、冷块落 SSD,长上下文不再被显存/内存卡死
分页 SSD 缓存KV block 分页存到磁盘(--paged-ssd-cache-dir),用满内存前先落盘
OpenAI + Anthropic 双接口POST /v1/chat/completions、/v1/completions、/v1/messages、/v1/embeddings、/v1/rerank、GET /v1/models
自动发现模型启动即扫描 LLM、VLM、embedding、reranker,零配置默认值(~/.omlx/models,端口 8000)
菜单栏 + MCPSwiftUI 菜单栏管理;可装 MCP(Model Context Protocol)让 Agent 直接调本地模型

最新 0.6.4 重点修了 Qwen3.8-Flash-Next 的 prefill/生成性能、连续批处理、prefix-cache 重建与若干模型加载问题。维护者在一台 M3 Ultra(512 GB 统一内存)上的基准:32K 上下文下,prompt 处理 +33.5%、生成吞吐 +14.6%、总耗时 -24.2%。

四、上手:三种安装,一条命令起服务

硬件前提(README 原文口径):macOS 15.0+(Sequoia)、Python 3.11–3.13、Apple Silicon(M1/M2/M3/M4/M5)。下面命令逐行取自 README。

方式一 · Homebrew(推荐)

brew tap jundot/omlx https://github.com/jundot/omlx
brew install jundot/omlx/omlx

# 升级到最新版本
brew update && brew upgrade omlx

# 作为后台服务运行(崩溃自动重启)
omlx start

方式二 · 下载 macOS App(.dmg)

从 Releases 下载 .dmg 拖进 Applications 即可,app 自带自动更新,并安装一个轻量 ~/.omlx/bin/omlx CLI shim,让终端命令和 Apple Shortcuts 也能控制 app 托管的服务。

方式三 · 从源码 pip

git clone https://github.com/jundot/omlx.git
cd omlx
pip install -e .          # 仅核心
pip install -e ".[mcp]"   # 含 MCP 支持

起服务

omlx start                                  # 后台服务(macOS app 或 Homebrew 安装)
omlx stop
omlx restart

omlx serve --model-dir ~/models             # 前台服务,挂在这个终端

五、接口与配置(逐字来自 README)

任意 OpenAI 兼容客户端连 http://localhost:8000/v1,内置聊天 UI 在 http://localhost:8000/admin/chat。可调的启动参数(README 原文):

omlx serve --model-dir ~/models --memory-guard safe
omlx serve --model-dir ~/models --memory-guard-gb 48
omlx serve --model-dir ~/models --paged-ssd-cache-dir ~/.omlx/cache
omlx serve --model-dir ~/models --hot-cache-max-size 20%
omlx serve --model-dir ~/models --max-concurrent-requests 16
omlx serve --model-dir ~/models --mcp-config mcp.json
omlx serve --model-dir ~/models --hf-endpoint https://hf-mirror.com
omlx serve --model-dir ~/models --api-key your-secret-key
OMLX_API_KEY=your-secret-key omlx serve --model-dir ~/models --host 0.0.0.0

这些参数也能在 Web Admin Panel(/admin)里改,写入 ~/.omlx/settings.json,CLI 标志优先。MCP 支持:在 Homebrew 安装的 venv 里 /opt/homebrew/opt/omlx/libexec/bin/pip install mcp。

安全细节值得记一句。oMLX 拒绝在任何非回环地址(LAN 或 0.0.0.0)上无 API key 启动;把 host 改到局域网前必须先设 API key,否则起不来。loopback-only 绑定可以跳过校验。

六、我的判断

说明
适合手上是 Apple Silicon Mac、想把本地模型当「服务」用的人:给 Claude Code / Cursor / 自建 Agent 填一个本地 base_url 就能换模型;做隐私推理、离线 Demo、按量零云费都很顺;Apache 2.0 可直接商用
不适合非 Apple 芯片环境(只支持 macOS + Apple Silicon,无 Windows / Linux / Intel 版本);macOS 15 以下的系统;想用 GLM-5.2 / MiniMax M3 / Qwen3.5 又不想装完整 Xcode 的人(原生自定义内核需要 Metal 工具链,Command Line Tools 不够,会报 xcrun: unable to find utility "metal")

先说许可,这是它的加分项。代码与 bundled 内容都是 Apache 2.0,没有之前 YuE 那种「代码开源、权重禁商用」的分裂——拿去改、拿去集成、拿去商用都可以,这对想落地的团队是实打实的区别。

再看性能前提。README 明确:GLM-5.2 / MiniMax M3 / Qwen3.5 这几个家族不走原生自定义内核时,会静默回退到慢得多的通用路径——GLM-5.2 的融合 DSA prefill 在有内核时约 845 tok/s,回退后约 29 tok/s(M3 Ultra 实测),差近 30 倍。要这速度,得装完整 Xcode 或从官方 DMG(已预编译内核)装。

版本边界。macOS 15.0(Sequoia)是硬门槛,老系统直接不能用;M1–M5 都支持,但效果随统一内存大小拉开差距,长上下文尤其吃内存。

和「边缘部署」那条线。oMLX 正是之前说要凑、却一直凑不齐成员的「把模型塞进小设备与边缘」族里最像样的一个:它把服务端能力下沉到一台消费级 Mac,而不是一台服务器。这一族后续可以拿它当锚点做横向合集。

仓库:jundot/omlx(https://github.com/jundot/omlx)

star:GitHub API 快照 21,671;Trending 日榜快照 21,671(+25 今日);fork 1,872;open issue 1,357;subscribers 114

语言 Python · 创建 2026-02-13 · 最近推送 2026-09-13 · 默认分支 main · 仓库体积 70,093 KB · topic:apple-silicon / inference-server / llm / macos / mlx / openai-api

许可:Apache-2.0(代码与 bundled 内容;可商用)

最新发布:0.6.4(2026-08-29);主页 https://omlx.ai

数据来源:GitHub Trending 官方页面与 GitHub API · 抓取时间:2026-09-13 17:39

这期的重点不是又多一个本地推理引擎,而是 oMLX 把「在 Mac 上跑模型」从命令行玩具收口成了标准服务:菜单栏管理、OpenAI/Anthropic 双接口、Apache 2.0 可商用。对只想在自己机器上把模型当 API 用、又不想碰一堆端口和并发配置的人,它把门槛降到了一条 omlx start。

下期若趋势榜继续零新面孔,就按之前说的做主题族横向合集,oMLX 可作为「边缘/小设备部署」族的锚点;出现高动量新面孔,回单项目精读。想看哪个方向,评论区说一声。

#GitHub趋势#AppleSilicon#本地推理#可商用