系统架构
Mac Studio M3 Ultra · 512GB · 单机全栈
架构总览
code
┌─────────────┐ Anthropic API ┌─────────────┐ MLX Engine ┌─────────────────┐
│ Claude Code │ ─────────────────→ │ oMLX :8000 │ ────────────→ │ MiniMax M2.5 │
└─────────────┘ └──────┬──────┘ │ 237GB · 8-bit │
│ └─────────────────┘
│ OpenAI API
│
┌─────────────┐ Monitor ┌──────┴──────┐ Bot API ┌─────────────────┐
│ NeoWatch │ ─────────────────→ │ OpenClaw │ ────────────→ │ Telegram │
│ :3940/:3939 │ │ :18789 │ │ @NeoBao2_bot │
└─────────────┘ └─────────────┘ └─────────────────┘
↑
│ Health Check
┌──────┴──────┐
│ Lobster │
│ Patrol │
│ 12x/day │
└─────────────┘
核心设计原则
- 单一推理引擎 — oMLX 同时提供 Anthropic API 和 OpenAI API,不需要格式转换层
- 原生协议 — Claude Code 直接用 Anthropic API 对话,零中间层
- 三层监控 — NeoWatch 实时 + 龙虾巡检定期 + Claude Code 交互式
服务清单
| 服务 | 端口 | 职责 | 技术栈 |
|---|---|---|---|
| oMLX Server | 8000 | 推理引擎,原生双 API | Python + MLX |
| OpenClaw | 18789 | AI 网关 + Telegram Bot | Node.js |
| NeoWatch Backend | 3940 | 系统监控 API + 采集器 | FastAPI + WebSocket |
| NeoWatch Frontend | 3939 | 赛博朋克仪表盘 | Next.js |
| Open WebUI | 3000 | Web 聊天界面 | Docker |
| Lobster Patrol | — | 定时深度巡检 | Claude Code Agent |
关键技术决策
推理引擎:MLX > llama.cpp
Apple Silicon 统一内存架构下,MLX 直接使用 Metal GPU,零内存拷贝。对 MoE 模型(M2.5 456B 参数,激活 45.9B)优化更好。
模型选择:M2.5 8-bit 为主力
| 维度 | 4-bit (120GB) | 8-bit (237GB) |
|---|---|---|
| 速度 | ~51 tok/s (prefill 3x) | ~25 tok/s |
| 质量 | MoE 量化损失小 | 基线 |
| Free 内存 | ~380GB | ~240GB |
| 适合 | 多任务 / 快速迭代 | 日常使用 / 高质量 |
服务管理:macOS LaunchD
原生方案,KeepAlive: true 自动重启崩溃服务,ThrottleInterval: 60s 防止崩溃循环。
所有服务通过 ai-status / ai-restart 一键管理。
数据流
Claude Code 推理路径
code
用户输入 → Claude Code → Anthropic API → oMLX → MLX Engine → M2.5
↓
SSD Paged Cache (KV)
OpenClaw 推理路径
code
Telegram 消息 → OpenClaw → OpenAI API → oMLX → MLX Engine → M2.5
↓
qmd 记忆检索 → MEMORY.md / SOUL.md
监控路径
code
NeoWatch 采集器 (5个) → FastAPI → WebSocket → 赛博朋克仪表盘
↓
Telegram 告警 (阈值触发)
目录结构
code
~/
├── models/ 大模型权重 (237GB+)
├── omlx-repo/ oMLX 源码 (editable install)
├── neowatch/ 系统监控项目
│ ├── backend/ FastAPI + 5 采集器
│ └── frontend/ Next.js 赛博朋克 UI
├── scripts/ 管理脚本
│ ├── ai-services.sh 统一服务管理
│ ├── ai-switch.sh 模型切换 (带安全等待)
│ └── lobster-patrol.sh 龙虾巡检
├── logs/ 所有服务日志
└── Library/LaunchAgents/ 自启服务配置 (ai.*.plist)
所有服务运行在单台 Mac Studio 上,无需云服务器、无需 GPU 集群。