资讯动态

Exo 上手实录:4 台 Mac 拼出一个 235B 模型的本地推理集群

发布时间:2026/8/31 9:06:17 来源:尧图企业网站定制
Exo 上手实录4 台 Mac 拼出一个 235B 模型的本地推理集群【免费下载链接】exoRun frontier AI locally.项目地址: https://gitcode.com/GitHub_Trending/exo8/exoexo 是一个把多台设备连成分布式 AI 推理集群的工具设备自动互相发现模型按拓扑自动切分对外暴露 OpenAI 兼容接口。如果你的模型塞不进单机内存或者想靠多台 Mac 把推理跑得更快它是为此设计的。三步起看板macOS 最短路径。先把依赖备齐每项一句说明安装 Xcode —— 提供 MLX 编译所需的 Metal 工具链brew install uv node—— uv 管 Python 依赖node 用来构建仪表板安装 rust 并执行rustup toolchain install nightly—— 编译 Rust 绑定目前需要 nightly 工具链安装 macmon —— 硬件监控用版本坑见后文容易踩的坑然后三步拉取源码git clone https://gitcode.com/GitHub_Trending/exo8/exo构建仪表板它是 SvelteKit 前端exo 要先有静态产物才能托管cd exo/dashboard npm install npm run build启动一个集群节点uv run exo启动后仪表板和 API 都在http://localhost:52415。局域网里每台跑着 exo 的机器会自动发现彼此不需要任何手动配置。已经装好 Nix 的话上面大半步骤可以省掉直接nix run .#exo。为什么加机器反而更快单写入器事件排序集群里的所有命令建实例、发请求、删节点都由选出的 master 逐个排序后写入事件日志每个节点的状态都是这段事件的纯重放。你在任何一台机器上看到的状态都一致崩溃后能从日志恢复。选举实现在 src/exo/shared/election.py。拓扑感知自动并行放置模型时它实时查看每台设备的剩余内存、每条链路的带宽和延迟自己决定用流水线切分还是张量切分。建实例前可以调/instance/previews预览所有合法放置方案相当于先拿一份容量评估。RDMA over Thunderbolt 5macOS 26.2 可把 RDMA 开在 TB5 链路上设备间延迟降低 99%。这是越加越快的核心原因——TCP 组网加节点只会越来越慢。张量并行在 2 台设备上最高 1.8 倍加速4 台 3.2 倍。另外推理跑在独立的 runner 进程里单个模型进程崩了不会带走整个集群。️ 实际跑起来是什么样仪表板里能看到设备拓扑、模型列表和聊天界面。上图是 4 × 512GB M3 Ultra Mac Studio同时跑着 DeepSeek v3.18-bit和 Kimi K2 Thinking4-bit。公开测试数据Jeff Geerling原图见仓库Qwen3-235B8-bitexoRDMA单节点约 19.5 t/s → 2 节点 26.2 t/s →4 节点 31.9 t/sllama.cppTCP20.4 → 17.2 → 15.2 t/s节点越多越慢适用多台 Apple Silicon、模型超出单机内存200B~700B 级、有 TB5 的设备。不推荐只有一台机器没得拼白背集群开销Linux目前只有 CPU 推理无 GPU 支持没有 TB5 的组网上面的 TCP 曲线基本就是你能预期的上限。⚠️ 装完容易踩的坑权限与网络注意macOS 应用首次启动会请求修改系统设置并安装一个新的 Network profile拒绝后雷雳网络配置不生效。提示从源码运行且启用 RDMA 时用仓库里的tmp/set_rdma_network_config.sh脚本禁用 Thunderbolt Bridge、给各 RDMA 口开 DHCP别手工改网络配置。RDMA 硬件与版本注意加入 RDMA 集群的设备必须用 TB5 线缆与集群内每一台设备直连是全网状结构不是链状。注意Mac Studio 上紧邻以太网口的那个 TB5 口不可用。注意各设备 macOS 版本必须完全一致连 beta 编号都要对上否则 RDMA 端口互相发现不了。生命周期注意Homebrew 的 macmon 0.6.1 在 M5 上会崩必须装仓库固定的 fork 版本。提示卸载走菜单栏图标 → Advanced → Uninstall应用已被删的话跑sudo ./app/EXO/uninstall-exo.sh最后还要手动去系统设置的登录项里把 EXO 移除。提示源码方式配合 systemd/launchd 时让 exo 前台运行--legacy-daemon只给 SysV 风格的 init 用。值得开的两个进阶开关启用 RDMAmacOS ≥ 26.2先确认硬件任意带 TB5 的 MacM4 Pro Mac Mini、M4 Max Mac Studio / MacBook Pro、M3 Ultra Mac Studio。然后关机 → 长按电源键 10 秒进入启动菜单 → 选 Options 进恢复模式 → Utilities 里打开终端 → 输入下面这条命令 → 重启rdma_ctl enable之后 exo 会自动接管 RDMA 链路的配置。真正改变行为的配置EXO_LIBP2P_NAMESPACEmy-dev-cluster uv run exo—— 同一局域网里隔离多个 exo 集群防止开发集群误入生产集群macOS 应用的高级设置里也有这一项EXO_MODELS_DIRS/Volumes/ExternalSSD/exo-models uv run exo—— 追加模型下载目录冒号分隔多个按顺序找第一个有足够空间的EXO_MODELS_READ_ONLY_DIRS/mnt/nfs/models uv run exo—— 指向 NFS 等预下载好的模型目录里面的模型只读、不会被集群删除uv run exo --no-worker—— 只当协调节点管网络和调度、不跑推理适合网络好但内存不够的机器手边有两台以上 Apple Silicon最好是 TB5 机器又想本地跑几百 B 的模型而不去租 GPU 云的话exo 值得花一个下午搭起来。想把 API 用熟先翻 docs/api.md集群端点和四套兼容接口都列在那里。【免费下载链接】exoRun frontier AI locally.项目地址: https://gitcode.com/GitHub_Trending/exo8/exo创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价