distributed-llama: 一個透過張量並行技術將家用設備集群化以執行大型 LLM 的分散式推論引擎

distributed-llama: 一個透過張量並行技術將家用設備集群化以執行大型 LLM 的分散式推論引擎

它解決了什麼問題

Distributed Llama 允許使用者透過將多個家用設備(例如 PC、Mac Mini 或 Raspberry Pi)連接成一個強大的集群,來加速 LLM 推論。這解決了單機硬體資源有限的問題,使得能夠執行原本會因 RAM 限制而無法執行的超大型模型(例如 Llama 3.1 405B)。

運作原理

該專案使用張量並行(tensor parallelism)技術,透過乙太網路連接將神經網路拆分到多個節點上。它採用根節點-工作節點(root-worker)架構:

  • 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