distributed-llama:一种通过张量并行将家庭设备聚合以运行大型 LLM 的分布式推理引擎
distributed-llama:一种通过张量并行将家庭设备聚合以运行大型 LLM 的分布式推理引擎
它解决了什么问题
Distributed Llama 通过将多台家庭设备(如 PC、Mac Mini 或 Raspberry Pi)连接成一个强大的集群,帮助用户加速 LLM 推理。这解决了单机硬件资源受限的问题,使得能够运行大型模型(例如 Llama 3.1 405B),而这些模型在单机上因内存不足而无法使用。
工作原理
该项目使用张量并行将神经网络划分到多个节点上,并通过以太网进行通信。它采用根节点‑工作节点架构:
- 根节点:负责模型加载、权重分发以及神经网络状态的同步。同时它也充当工作节点,处理自己负责的网络切片。
- 工作节点:处理分配给自己的神经网络切片,无需进行模型特定的配置。
系统支持 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