
Exo 分布式 AI 集群当一台 Mac 突然断电剩下三台为什么还能跑【免费下载链接】exoRun frontier AI locally.项目地址: https://gitcode.com/GitHub_Trending/exo8/exoExo 分布式 AI 集群把多台 Apple 设备拼成一个整体让你在本地跑下单机内存装不下的大模型支持 OpenAI、Claude、Ollama 多套 API。问题是家用集群没有值班运维一台节点在推理中途失联其他节点是互相等待还是自己接管读完你会知道 exo 对节点死亡、进程崩溃、模型掉线这三类故障的分层响应方式以及每处设计取舍背后的代价。主节点断电三秒内完成重新选举无需人工介入主节点所在的机器突然断电时其余节点会不会僵住等一个永远不回来的指挥者不会——exo 的选举设计里没有初始化阶段每个节点启动时就默认自己是主集群永远不可能出现无主状态。具体实现在 src/exo/shared/election.py每个节点持有一个由时钟值、资历、已处理命令数和候选会话组成的消息比较规则是按序字典序、四元组不留平局分支。一旦侦听到连接变化——有节点加入或掉线——立刻发起一场竞选竞选超时定为 3 秒。主节点死了之后存活节点感知到连接事件几秒内新主就接管命令转发正在进行的推理会话不需要人工干预。代价是所有节点都要为竞选买单而且比较必须是严格全序——选举里平局等于脑裂exo 直接用数据结构消灭了这种可能。主节点保住了推理进程却仍可能在任何时刻暴毙。推理进程被 kill每个在途任务都会收到显式错误多节点推理里最高频的故障不是网络事故而是进程死亡OOM killer 出手、驱动崩溃、一个 runner 直接退出。推理进程被杀后任务如何续跑exo 的答案是不装死supervisor 每 5 秒轮询一次 runner 进程是否存活。机制在 src/exo/worker/runner/supervisor.py 里。发现进程死亡后它先解析退出码——负数意味着被信号杀死具体信号会写进诊断信息然后给该 runner 上每个在途任务逐个发一条 ErrorChunk客户端的流式连接拿到的是明确报错而不是无限挂起runner 状态被置为失败连同诊断数据一起上报给 master。此外还有两道看门狗prefill 60 秒、decode 5 秒用来抓进程活着但推理卡死这种更隐蔽的状态。exo 不会在原地重启一个死掉的 runner。张量并行里切分对整组设备才有效一块分片死了整个切分方案就失效——恢复单元是实例级的重新放置而不是单进程拉起。这比静默重启半加载的进程更诚实你拿到的是错误和诊断而不是一段来源可疑的续写。进程级死亡可以重放但一台整机掉网呢节点掉线与重连集群缩到单机继续推理再重新分片容错最残酷的考验不是进程崩溃而是节点掉线——四台里的某一台 Mac 直接失联原本切在四节点上的模型瞬间不可用。节点掉线后推理还能不能继续exo 的做法是把集群收缩到存活节点上先保住推理再谈恢复。tests/test_resilience.py 里有一段完整演练先跑两节点推理断开一台后实例收缩到剩下的单节点继续出词节点重新连上、集群重聚后两节点推理再次恢复。重新放置的决策由 master 基于存活拓扑和各链路的带宽延迟完成切分方案在 src/exo/master/placement.py 里重算——它把设备资源和链路特性一起当变量而不是简单按节点数平分。可观测性落在每台节点 52415 端口的 dashboard 上逐台显示负载与温度长连接靠 src/exo/api/keepalive.py 的 SSE 心跳保活避免流式任务被误判断线。四节点切分不会在只剩三台时透明地继续按四节点方案跑——在途生成会中断、实例被拆除重放。这是正确性要付的账张量并行切分在另一组设备上不存在合法续跑路径重算是唯一安全解。从单台 Mac 到 N 台你的下一步执行git clone https://gitcode.com/GitHub_Trending/exo8/exo拿到代码装好 Nix 的机器上可以直接用 nix 一键拉起 exo。同一局域网里的设备会自动互相发现不需要手工配地址如果你的 Mac 是 Thunderbolt 5 机型把机器用线直连就能启用 RDMA设备间延迟会降一个量级。启动后打开任意节点 52415 端口的 dashboard确认所有机器都出现在列表里——然后做最值钱的一个实验推理中途拔掉一台节点亲眼看集群怎么收缩、重选、再重新分片。Thunderbolt 5 上的 RDMA 正在把 Mac 间的通信从网络变成总线家用集群的瓶颈随之从带宽转向调度与恢复。放置级恢复加拓扑感知切分会很快成为本地多节点推理的标配形态。【免费下载链接】exoRun frontier AI locally.项目地址: https://gitcode.com/GitHub_Trending/exo8/exo创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考