exo-explore/exoView GitHub Homepage for Latest Official Releases
Exo: 日常的なデバイスを使って自宅で独自のAIクラスタを稼働させる
GPL-3.0Pythonexoexo-explore 31.3k Last Updated: March 21, 2025
exo-explore/exo
exo は、自宅で独自の AI クラスターを構築することを主な目標とする、革新的なオープンソースプロジェクトです。主な特徴は以下の通りです。
- デバイス統合
- お持ちの様々なデバイス(iPhone、iPad、Android、Mac、NVIDIA GPU、Raspberry Piなど)を統合し、強力な GPU クラスターとして活用できます。
- 主要機能:
- 幅広いモデルサポート:LLaMA(MLX および tinygrad)、Mistral、LlaVA、Qwen、Deepseek など、多様なモデルをサポートしています。
- 動的なモデルパーティショニング:現在のネットワークトポロジーと利用可能なデバイスリソースに基づいて、モデルの割り当てを自動的に最適化し、単一のデバイスよりも大きなモデルを実行できます。
- 自動デバイス検出:ネットワーク内の他のデバイスを自動的に検出し、手動設定は不要です。
- ChatGPT 互換 API:ChatGPT 互換の API インターフェースを提供し、わずか 1 行のコード変更で、お持ちのハードウェア上でモデルを実行できます。
- デバイスの平等性:
- マスター/スレーブアーキテクチャではなく、P2P アーキテクチャを採用しています。
- デバイスがネットワーク内のどこかに接続されていれば、モデルの実行に使用できます。
- ハードウェア要件:
- 唯一の要件は、すべてのデバイスの総メモリがモデル全体を格納するのに十分であることです。
- 例えば、llama 3.1 8B (fp16) を実行するには、16GB の総メモリが必要です。以下の構成で実現できます。
- 8GB M3 MacBook Air 2台
- 16GB NVIDIA RTX 4070 Ti 搭載ノートPC 1台
- 4GB RAM の Raspberry Pi 2台 + 8GB Mac Mini 1台
- インストール要件:
- Python >= 3.12.0 が必要です。
- Linux 上で NVIDIA GPU を使用する場合は、以下も必要です。
- NVIDIA ドライバー
- CUDA ツールキット
- CUDNN
このプロジェクトの革新的な点は、一般ユーザーが自宅にある既存のデバイスを利用して AI 演算クラスターを構築できるため、大規模な AI モデルを実行するためのハードウェアの敷居を大幅に下げることができることです。異種デバイスの協調動作をサポートし、性能の低いデバイスを追加するだけでも、クラスター全体の処理能力を向上させることができます。