oMLX 与 Apple Shortcuts 集成教程:自动化工作流调用本地大模型
【免费下载链接】omlxLLM inference server with continuous batching & SSD caching for Apple Silicon — managed from the macOS menu bar项目地址: https://gitcode.com/GitHub_Trending/om/omlx
oMLX 是一个专为 Apple Silicon 打造的本地大模型推理服务器(LLM inference server),支持连续批处理(continuous batching)与 SSD 分层缓存,还能直接从 macOS 菜单栏管理。而 macOS 应用会额外安装一个轻量的~/.omlx/bin/omlxCLI 命令,这让终端命令和 Apple Shortcuts(快捷指令)都能直接控制服务器——这正是本教程要利用的核心能力:用几个快捷指令,把“启动服务器、提问本地大模型、查看状态”变成一键甚至零键的自动化工作流。
为什么值得把 oMLX 接入快捷指令?
大多数人用 oMLX 的方式是:打开菜单栏图标 → 点启动 → 浏览器里聊天。但把 oMLX 接入 Apple Shortcuts 后,你能做到:
- ⚡一键启停:离开前停掉服务器省电,上班前一键拉起;
- 💬随时随地提问:在“快捷指令”App 里输入一句话,直接获得本地大模型的回答;
- 📋融入系统自动化:结合键盘快捷键、Siri 触发、文件处理流程,让本地模型成为你的“随身助手”;
- 🔋零成本、零隐私顾虑:所有推理都发生在你的 Mac 上。
oMLX 的 Web 管理面板本身就很强大,模型下载、对话、基准测试都在这里完成:
下面一步步来。
第 1 步:安装 oMLX 并确认 CLI 可用
oMLX 的 macOS 应用支持两种方式安装:
- 从 Releases 下载
.dmg拖入 Applications(推荐,支持应用内自动更新); - 通过 Homebrew:
brew install jundot/omlx/omlx,然后omlx start作为后台服务运行。
安装 macOS 应用后,会自动安装轻量 CLI shim。在终端验证一下:
omlx start # 启动应用管理的后台服务器 omlx stop # 停止 omlx restart # 重启启动成功后,OpenAI 兼容 API 在http://localhost:8000/v1可用,内置聊天界面在http://localhost:8000/admin/chat。这些命令的定义可以在 omlx/cli.py 中找到,完整说明见 README.md。
第 2 步:创建“一键启停服务器”快捷指令
这是最简单、回报最快的一条快捷指令:
打开快捷指令(Shortcuts)App→ 点+新建;
添加“运行 Shell 脚本”步骤(搜索关键词Shell);
把脚本内容设为:
~/.omlx/bin/omlx start --no-wait命名为“启动本地大模型”,完成。
💡 小技巧:
--no-wait参数会让命令发完即返回(不用等健康检查),非常适合快捷指令;如果希望“确认服务器真的起来了再退出”,可以去掉该参数并等待默认的 60 秒超时。
照同样方法,把脚本改成omlx stop或omlx restart,再做两条“停止本地大模型”“重启本地大模型”快捷指令。
再给“启动”快捷指令分配一个键盘快捷键(快捷指令详情 → 快捷键),以后按组合键即可唤醒本地大模型,比点击菜单栏还快。

第 3 步:创建“提问本地大模型”快捷指令
这一步是重头戏:在快捷指令里直接调用本地大模型,拿到的回答可以复制到剪贴板、朗读出来或存进备忘录。
新建快捷指令,按顺序添加以下步骤:
① 获取文本(可选)添加“询问用户输入”步骤,提示语设为“你想问什么?”。这样每次运行快捷指令时会弹窗让你输入问题,支持 Siri 语音触发。
② 构造请求体添加“获取 URL 的内容”步骤太简单,我们改用“发送 HTTP 请求”步骤(macOS 13+):
URL:
http://localhost:8000/v1/chat/completions方法:
POSTHeader:
Content-Type: application/jsonBody(文本区,用快捷指令变量拼接
{{输入}}):{ "model": "你的模型目录名", "messages": [ {"role": "user", "content": "{{输入}}"} ] }模型名怎么查?运行
omlx服务器后访问http://localhost:8000/v1/models就能看到全部已发现模型(该端点实现见 omlx/server.py)。
③ 提取回答添加“获取 JSON 数据”步骤,字段路径填choices.0.message.content,即可从响应里取出模型的回答文本。
④ 呈现结果(三选一或叠加)
- “复制到剪贴板”——随时粘贴到任何应用;
- “朗读文本”——让 Mac 直接用语音念出回答;
- “追加到文件 / 添加到备忘录”——把问答留档。
如果设置了 API Key(omlx serve --api-key 你的密钥),在“发送 HTTP 请求”里再加一个 Header:Authorization: Bearer 你的密钥。
这条快捷指令做好了以后,试着对它说:“嘿 Siri,问本地模型:用三句话解释什么是 KV 缓存。”——全程不需要打开任何窗口。
第 4 步:用快捷指令检查服务器状态
oMLX 提供了一个专为外部轮询设计的轻量状态端点/api/status(源码见 omlx/server.py 中的server_status),会返回版本、运行时长、已发现/已加载模型数、活跃请求数等信息。
创建一条快捷指令:
- “获取 URL 的内容”:
http://localhost:8000/api/status; - “获取 JSON 数据”:取
status、models_loaded等字段; - “显示通知”:拼接成“✅ oMLX 运行中,已加载 {{models_loaded}} 个模型”。
配合自动(Automations)功能,可以设置“当 Mac 连上公司 WiFi 时”自动运行“启动服务器”快捷指令,“离开时”自动停止——本地大模型从此随生活场景自动起停。
进阶玩法与实用建议
| 场景 | 做法 |
|---|---|
| 文件摘要 | “读取文本文件/所选文本” → 调用上面的“提问模型”流程,把文件内容作为 prompt |
| 每日晨报 | 自动化触发 → 让模型总结备忘录/日历 → 朗读 |
| 多模型切换 | 快捷指令变量存放不同模型名,切换 profile 调用 |
| 省电模式 | “停止”快捷指令加入自动化:充电低于 20% 时运行 |
几个注意事项:
- 📌模型必须在服务器上已加载,否则请求会报错或触发自动加载(首次加载较慢,oMLX 支持 LRU 自动驱逐与按需加载,机制见 README.md 的 Multi-Model Serving 章节);
- 📌 快捷指令走的是
localhost,只在 Mac 本机(或同一局域网内,若服务器绑定了非 127.0.0.1 主机)可访问; - 📌 oMLX 的 SSD 冷缓存会在服务器重启后依然保留历史上下文缓存,配合快捷指令频繁启停,响应速度也不会打折扣(缓存机制见 omlx/server.py 与 docs/images/omlx_hot_cold_cache.png 展示的热冷双层缓存)。
总结
| 快捷指令 | 核心命令 / 端点 | 一句话价值 |
|---|---|---|
| 启动/停止/重启 | omlx start/stop/restart | 一键管理本地大模型服务器 |
| 提问模型 | POST /v1/chat/completions | 在快捷指令里直接对话本地模型 |
| 状态检查 | GET /api/status | 随时掌握服务器与模型状态 |
oMLX 的 CLI shim 与 OpenAI 兼容 API 天然就是为自动化而设计的,接入 Apple Shortcuts 几乎零门槛。今天花 10 分钟搭好这三条快捷指令,你的 Mac 就会变成一台随叫随到的本地 AI 工作站。🚀
【免费下载链接】omlxLLM inference server with continuous batching & SSD caching for Apple Silicon — managed from the macOS menu bar项目地址: https://gitcode.com/GitHub_Trending/om/omlx
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考