exoとは?余ってる端末が“ひとつのAIクラスター”になるOSSを解説

ローカルでLLM(大きめのAI)を動かしてみたい。でも、モデルが大きいと 1台のPCだけじゃ重い し、マシンを新調するのも気が引ける…。
そんなときに名前が挙がりやすいのが、GitHubで公開されている 「exo(exo-explore/exo)」 です。
exoはざっくり言うと、同じネットワーク上の複数デバイスを束ねて“1つのAIクラスター”として動かす ことを目指したツール。
「古い端末やサブPCも、チーム戦に参加させよう」みたいな発想です。
この記事でわかること
- exoが何をするツールなのか(ざっくりイメージ)
- どんな場面で役に立ちそうか
- 仕組みのポイント
- はじめて触るときの流れ(ダッシュボード/APIの話まで)
- 使う前に知っておきたい注意点
exoを一言でいうと

複数のデバイスを自動で見つけて、モデルを分割して、いっしょに推論(生成)を回す ためのオープンソースです。
AIの計算(重い処理)を、複数台で分割(並列化)して持つ やり方ですね。
どんなときに役に立つ?(想定ユースケース)
1) 「ローカルで動かしたい」けど1台だと厳しい
モデルが大きいほど、メモリや計算がきつくなります。
exoはそこを 複数台で割ってなんとかしよう という思想。
2) 手元に端末が複数ある(Mac/PC/ミニPCなど)
メインPC1台だけじゃなく、仕事してない子も戦力にします。
- 仕事用のサブPC
- 使ってないノート
- 家族の余ってる端末
こういうのを“寄せ集め”して戦力化できる可能性があります。
3) 「クラウドじゃなくローカルで回したい」理由がある
例えば
- データを外に出したくない
- ネットが不安定な場所でも動かしたい
- 実験コストを抑えたい
上記に当てはまる人は刺さりますね。
exoの特徴
ここからは、公式リポジトリのREADMEなどを参照して、ポイントをまとめます。
自動でデバイスを発見してつながる
exoは「手動でクラスタ設定しなくても、起動している端末同士が見つけ合う」やり方を打ち出しています。
複数端末を扱うときの“最初の面倒”を減らしたい という設計ですね。
ネットワーク状況も見て、分割のしかたを考える(Topology-aware)
速い端末/遅い端末、Wi‑Fi/有線…みたいに環境はバラバラになりがち。
exoはREADMEで、
- デバイスの性能
- ネットワークの遅延や帯域
を考慮して「いい感じに分割する」ことを目指す、と説明しています。
たとえると、
- 筋肉マッチョには重い荷物を
- 細身な人には軽い荷物を
配って、全体としてスムーズに運ぶ…みたいなイメージ。
Thunderbolt 5のRDMAを“推し”にしている
exoのREADMEでは 「RDMA over Thunderbolt 5」 が特徴として挙げられています。
Thunderbolt 5におけるRDMA(Remote Direct Memory Access)とは、ネットワークで接続された他のコンピューターのメモリ(RAM)に対し、OSやCPUを介さずに直接読み書きを行う技術のこと。
参考:https://appleinsider.com/articles/25/12/20/ai-calculations-on-mac-cluster-gets-a-big-boost-from-new-rdma-support-on-thunderbolt-5#:~:text=Typical%20Ethernet%2Dbased%20cluster%20computing,access%20has%20now%20improved%20considerably.
デバイス間のデータやり取りを“速く・低遅延にする”ための仕組み です。
推論バックエンドはMLX、分散通信はMLX distributed
READMEでは、
- 推論の中核に MLX
- 分散通信に MLX distributed
を使う方針が明記されています。
MLXはApple Siliconの文脈で話題に出やすいライブラリで、exoの位置づけも「その上で分散をやる」寄りの説明です。
まず触るときの流れ

1) 起動してダッシュボードを見る
https://github.com/exo-explore/exo#quick-start
exoはローカルでダッシュボードとAPIを立ち上げる想定で、URLは README で http://localhost:52415 と案内されています。
「動いたかどうか」を最短で確認するなら、まずここ。
2) OpenAI互換っぽいAPIで叩ける
READMEでは /v1/chat/completions を用意していて、OpenAIの形式に合わせた例が載っています。
つまり、
- “OpenAI互換のクライアント”
- あるいは自作ツール
から呼べる可能性がある、ということ。
他にも GET /models や GET /state の例がREADMEにあります。
セットアップ例
ここは「雰囲気が掴める」ことを優先して、READMEに沿った形でざっくり紹介します。
(※コマンドは環境で変わるので、実行前に公式の手順も必ず確認してください)
macOS / Linux
# 1) リポジトリを取得
git clone https://github.com/exo-explore/exo.git
cd exo
# 2) dashboard をビルド(フロント側)
cd exo/dashboard
npm install
npm run build
cd ../..
# 3) 起動(READMEでは uv を使う流れ)
uv run exo
起動後はブラウザで
http://localhost:52415
を開いてダッシュボードを見る、という流れです。
※READMEではmacOS向けに macmon のインストールにも触れているので、macOSの場合はそこも確認してください。
対応環境・注意点
macOSはGPU、Linuxは現状CPU(README記載)
READMEの「Hardware Accelerator Support」では、
- macOS:GPU
- Linux:CPU(現状)
という説明があります。
“速さ”はネットワークの影響が大きい
複数台で動かす以上、
- Wi‑Fiか有線か
- どのくらい混雑しているか
- 端末が離れすぎていないか
こういうところで体感が変わります。
「よし、4台で爆速!」を期待しすぎるより、
まずは 2台で動かして“どこがボトルネックか”を見る のが気楽です。
セキュリティ的には“LAN内のサービス公開”に注意
ローカルのAPIやダッシュボードは便利だけど、
設定次第ではネットワークに公開されることもあり得ます。
- 誰がアクセスできる状態か
- 外部から到達できないか
は、最初にざっとチェックしておくのがおすすめ。
どこまでできる?
exoは「大きいモデルを複数台で動かしたい」という夢がある一方で、現実は環境で差が出ます。
- “クラスタっぽいこと”を手元で試す入口 として面白い
- まずは小さく動かして、
- ネットワーク
- 端末の熱
- どこが遅いか
を知る勉強材料になる。
まとめ
exoは、複数デバイスを束ねてAI推論を分担させることを目指すOSSです。
- 自動でデバイスを見つける
- ネットワーク状況も踏まえて分割を考える
- ダッシュボード(
localhost:52415)とAPI(/v1/chat/completionsなど)を提供 - macOSはGPU、Linuxは現状CPUという前提がある
「余ってる端末、ただ眠らせるのもったいないな…」って人ほど、試す価値ありです。
参照した一次情報(公式・一次ソース中心)
exo(公式GitHub / README)
https://github.com/exo-explore/exo
MLX / MLX distributed(公式ドキュメント・公式リポジトリ)
https://ml-explore.github.io/mlx/build/html/usage/distributed.html
https://github.com/ml-explore/mlx
exo Labs(関連公式サイト)
https://exolabs.net/
exo Labs Blog(開発側の一次情報として)
https://blog.exolabs.net/day-1
exo README内で引用されている外部検証(Jeff Geerling氏の記事)
https://www.jeffgeerling.com/blog/2025/15-tb-vram-on-mac-studio-rdma-over-thunderbolt-5
最後までお読みいただきありがとうございます
この記事が参考になりましたら、ぜひシェアや他の記事もご覧ください。
AI・開発作業を快適にするデスク環境
比較ガイドを見る →購入前に比較しやすいよう、用途別の選び方をまとめています。
ブラウザで完結する無料ツール
ツール一覧を見る →LEXIA が制作現場向けに開発した無料ツールです。登録不要・ブラウザ上で処理が完結します。
AIの関連記事
もっと見る →




Open NotebookへPDFや資料を追加できない場合に、対応形式、ファイル容量、処理状態、API接続、Dockerリソースを確認する方法を解説します。
4分
Mac miniでOllamaなどのローカルLLMを運用する際に役立つSSDドック、外付けSSD、UPSの選び方を解説します。
4分新着記事
一覧を見る →
Open NotebookをDockerで起動し、AIプロバイダーを設定して最初のPDFやWebページを資料として追加するまでの流れを解説します。
4分

Ollamaでconnection refusedやlocalhost:11434へ接続できないエラーが出る場合に、サービス・ポート・ログ・接続元を確認する方法を解説します。
3分

Ollamaでディスク容量が不足したときに、モデル一覧、不要モデルの削除、保存先の確認、バックアップ範囲を整理する方法を解説します。
4分
LEXIA BLOG のすべての記事
ブログトップ →- 紙資料をAIノート化する手順|スキャン・OCR・保存の実践構成
- 非破壊ブックスキャナー3選|本を裁断せずOpen Notebookへ
- OCR精度を上げる8つの方法|傾き・解像度・文字化けを減らすコツ
- Open Notebook向けドキュメントスキャナー3選|紙資料をAIノートへ
- Open NotebookでPDFを読み込めないときの確認項目|形式・容量・処理状態
- Mac miniでローカルLLMを使う周辺機器3選|SSD・ドック・UPS
- Open Notebookの使い方|Dockerで起動して最初の資料を追加するまで
- Ollama用外付けSSD 3選|モデル保存と速度の考え方
- Ollamaに接続できないときの直し方|localhost:11434の確認手順
- Ollama用ミニPCの選び方|メモリ・SSD・冷却から考える3候補
- Ollamaの容量不足を解消する方法|モデル削除・保存先変更の確認手順
- Macの音声入力用マイク4選|USB-C接続と設定の確認点
- Ollamaが遅い原因は?モデル・メモリ・GPUを順番に確認する方法
- 音声入力ヘッドセット3選|長時間でも距離が変わりにくい選び方
- 音声入力で句読点・改行を入れる方法|Mac・Windowsの話し方一覧
- 生活音に強い音声入力マイク3選|空調・タイピング対策
- Windows 11で音声入力が使えないときの直し方|Win+Hが反応しない原因
- 音声入力用USBマイク4選|精度を上げる選び方と置き方
- Macで音声入力が使えない・反応しないときの確認手順
- 音声入力の誤変換を減らす7つの対策|原因を30秒で切り分ける方法
- Amicalの音声入力用マイク4選|環境別の選び方と設定のコツ
- NotebookLMの代替5選|無料・セルフホストのオープンソース版まとめ【2026年最新】
- Ollamaの使い方|ローカルLLMをMac・Windowsで無料で動かす手順【2026年最新・初心者向け】
- Valkeyとは?Redisから分かれたOSSの正体|ライセンス・互換性・移行の判断材料
- Claude Codeの料金は結局いくら?Pro・Max・API課金とコスト最適化【2026年版】
- Mac mini複数台でClaude Codeを並列運用する方法|構成・費用・セキュリティ
- Tursoとは?SQLiteをRustで書き直す“次世代の組み込みDB”の全貌
- OpenMontageとは?AIエージェントが“制作チーム”になる次世代の動画生成システム
- Penpotとは?Web標準で“デザイン=コード”を実現するオープンソースのFigma代替
- Firecrawlとは?Webを“LLMが使えるデータ”に変えるAI時代のスクレイピングAPI
- Web制作の現場で話題の「shadcn/ui」シャドシーエヌユーアイとは?メリット・デメリットをわかりやすく解説
- 最近よく聞く「Godot Engine」って何?初心者が調べてわかったこと
- 完全無料で独自ドメインが取れる「DigitalPlat FreeDomain」って怪しい?メリットと注意点を解説
- パソコンの操作、AIが代わりにやってくれる時代が来た…?話題の「UI-TARS」について調べてみた
- Claude-MemでAIに「記憶」を持たせる:使い方と他AIとの比較
- Sipeed PicoClaw 完全ガイド:10ドルのハードウェアで動く、超軽量AIエージェントの世界へようこそ
- superpowers フレームワークによる「ジュニアエンジニア」からの脱却
- Rorkとは?文章だけでアプリが作れるって本当?
- Supermemoryとは?AIが忘れる理由や記憶を補う仕組み
- Amical(アミカル)とは?無料AI音声入力の使い方・日本語精度を徹底解説【2026年最新】
- Moltbot(モルトボット)とは?できることと安全に使うための注意点
- LobeHubとは?LobeChatから進化したAIエージェントワークスペースを紹介
- YOLOとは何か?物体検出をリアルタイムかつ高速に行う近未来AIについて
- MiroThinkerとは?検索しながら考えるAIを実際に触ってみた感想
- Dyadとは?ローカルでWebアプリを作れる次世代ビルダー徹底解説
- Bun v1.3なにが変わった?公式動画から読み解く最新アップデート
- OpenAIの新モデル「GPT-5.2」とは?
- SAM Audio(サム・オーディオ)とは?|音を自由に切り取る次世代AIをわかりやすく解説
- A2UIは実際にどう使われる?想定ユースケースを具体例で解説
- A2UIとは?AIエージェント向けUI標準化プロジェクトを徹底解説
- Sim.aiって何?視覚的にAIエージェントを設計できるOSSワークフロー基盤
- adk-go とは?Goで始める実務向けAIエージェント開発
- GensparkのAI Developerとは?GensparkのAI Developerを使って安全な便利ツールを作ってみた
- v0ってどこまで実用的なアプリ作れる?
- ローカルファーストは良いぞって話
- コマンドラインでMarkdownを美しく読む:glowの使い方と魅力
- Onlookとは?:Subframe・Tempo・v0・Boltなど、デザイナーと開発者のための次世代UIツール徹底比較
- Open Notebookとは?セルフホストでNotebookLMを自前運用する方法【2026年最新】
- もう.envを手動で共有しない!Infisicalが変えるシークレット管理の新常識
- LanceDBとは?クラウドに頼らない次世代ベクトルデータベースを調べてみた
- Lobe Chatとは?OpenAI・Claude・Geminiを一括管理できる最強AIフレームワーク
- Bunとは?:もうnpmには戻れないかも。かわいい顔した爆速JS
- Firebase Studioとは?Googleが描くAI時代の新しい開発環境
- Stremioの運営元・収益構造を含む「危険性」のリアルな見方:使う前に知っておきたいポイント
- AIでWebアプリを自動生成!Lovableとは?
- Generative AI for Beginners 最新版(21 レッスン版)を徹底解説
- OpenHands(旧OpenDevin)とは?AIが自動で開発を進める時代の幕開け
- Bolt.newとは?ブラウザで動くAI開発エージェントの使い方と特徴を解説
- Stremio / stremio-web とは?危険性と合法性を調査 — 将来性も含めて
- Firebase Studioの始め方|登録からAIプロトタイプ作成・デプロイまで完全ガイド
- Claude Code入門:ターミナルで動く“エージェント型”コーディングアシスタント
- Stagehandとは?E2Eテストが超楽になる!?“AIブラウザ自動化”の衝撃
- STUDIOアップデート総点検:あと「STUDIO AI」どこ行った?