distributed-llama: テンソル並列で家庭内デバイスをクラスタ化し大規模LLMを実行する分散推論エンジン

distributed-llama: テンソル並列で家庭内デバイスをクラスタ化し大規模LLMを実行する分散推論エンジン

解決する課題

Distributed Llama は、複数の家庭内デバイス(PC、Mac Mini、Raspberry Pi など)を 1 つの強力なクラスタに接続して LLM 推論を高速化します。これにより、単一マシンのハードウェアリソースが限られている問題を解消し、RAM 制約のために実行できなかった大規模モデル(例: Llama 3.1 405B)を動かすことが可能になります。

仕組み

本プロジェクトはテンソル並列を用いて、ニューラルネットワークをイーサネット接続された複数ノードに分割します。ルート‑ワーカーモデルを採用しています:

  • Root Node: モデルのロード、重みの配布、ニューラルネットワーク状態の同期を管理します。また、ネットワークの自分のスライスを処理するワーカーとしても機能します。
  • Worker Nodes: 割り当てられたネットワークのスライスを処理し、モデル固有の設定は不要です。

システムは 2 の累乗(1, 2, 4 … 2^n)台のノードをサポートし、接続されたすべてのデバイスで RAM 使用量を分散します。

対象ユーザー

複数の余剰デバイスを所有し、高価なエンタープライズハードウェアを購入せずにローカルで大規模 LLM を走らせたいユーザー向けです。Linux、macOS、Windows をサポートし、ARM と x86_64 AVX2 CPU、さらに Vulkan を利用した GPU に最適化されています。

ハイライト

  • クロスプラットフォーム対応: Linux、macOS、Windows、Raspberry Pi で動作。
  • 幅広いモデル対応: Llama 3.1、3.2、3.3、DeepSeek R1 Distill、Qwen 3 系列に対応。
  • ハードウェア柔軟性: CPU(ARM/x86_64)および GPU(Vulkan)での推論をサポート。
  • 柔軟なデプロイ: CLI チャット、ベンチマークツール、API サーバーを同梱。

Sources