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
- undefinedb4rtaz/distributed-llama