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