AI在线 AI在线

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

假如你有闲置的设备,或许可以试一试。这次,你手里的硬件设备也能在 AI 领域大展拳脚了。将 iPhone、iPad、Macbook 进行组合,就能组装成「异构集群推理方案」, 然后顺畅的运行 Llama3 模型。值得一提的是,这个异构集群可以是 Windows 系统,也可以是Linux、iOS 系统,并且对 Android 的支持很快到来。                                                        异构集群正在运行中。根据项目作者 @evilsocket 的介绍,

假如你有闲置的设备,或许可以试一试。

这次,你手里的硬件设备也能在 AI 领域大展拳脚了。

将 iPhone、iPad、Macbook 进行组合,就能组装成「异构集群推理方案」, 然后顺畅的运行 Llama3 模型。

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

值得一提的是,这个异构集群可以是 Windows 系统,也可以是Linux、iOS 系统,并且对 Android 的支持很快到来。

图片                                                        异构集群正在运行中。

根据项目作者 @evilsocket 的介绍,这个异构集群包括 iPhone 15 Pro Max、iPad Pro、MacBook Pro (M1 Max)、NVIDIA GeForce 3080、2x NVIDIA Titan X Pascal。所有代码都已经上传到 GitHub。

看到这,网友纷纷表示,这位老哥确实不简单。

图片

不过也有网友开始担心能耗问题,暂且不管速度,电费都耗不起。来回搬数据,损耗太大了。

图片

图片

项目介绍

上述功能的实现,离不开一个名为 Cake 的 Rust 框架。Cake 可以完成大模型(例如 Llama3)的分布式推理,旨在将消费级硬件组合成异构集群,其中消费级硬件采用多种操作系统,包括:iOS、Android、macOS、Linux 和 Windows,从而使 AI 更易于访问。

图片

项目地址:https://github.com/evilsocket/cake

Cake 的主要思路是将 transformer 块分片到多个设备,以便能够让通常不适合单个设备 GPU 内存的模型运行推理。对同一工作线程上的连续 transformer 块的推理是分批进行的,以便最大限度地减少数据传输造成的延迟。

Cake 目前支持的系统和设备如下:

图片

编译

安装 Rust 后,运行下列代码:

cargo build --release

假如用户想要在应用程序中生成 iOS 绑定,可以进行下述操作:

make ios

使用

运行 worker 节点:

cake-cli --model /path/to/Meta-Llama-3-8B \ # model path, read below on how to optimize model size for workers
         --mode worker \                    # run as worker
         --name worker0 \                   # worker name in topology file
         --topology topology.yml \          # topology
         --address 0.0.0.0:10128            # bind address

运行 master 节点:

cake-cli --model /path/to/Meta-Llama-3-8B \
         --topology topology.yml

其中 topology.yml 确定哪些层由哪个 worker 提供服务:

linux_server_1:
  host: 'linux_server.host:10128'
description: 'NVIDIA Titan X Pascal (12GB)'
layers:
    - 'model.layers.0-5'
linux_server_2:
  host: 'linux_server2.host:10128'
description: 'NVIDIA GeForce 3080 (10GB)'
layers:
    - 'model.layers.6-16'
iphone:
  host: 'iphone.host:10128'
description: 'iPhone 15 Pro Max'
layers:
    - 'model.layers.17'
ipad:
  host: 'ipad.host:10128'
description: 'iPad'
layers:
    - 'model.layers.18-19'
macbook:
  host: 'macbook.host:10128'
description: 'M1 Max'
layers:
    - 'model.layers.20-31'

关于内存和磁盘空间优化问题,用户可能希望只向 worker 提供模型中实际需要的数据,而不是整个文件夹,在这种情况下,可以使用 cake-split-model 。例如,要生成较小版本的 llama3 safetensors,可以采用如下代码:

cake-split-model --model-path path/to/Meta-Llama-3-8B \ # source model to split
                 --topology path/to/topology.yml \      # topology file
                 --output output-folder-name

参考链接:https://x.com/tuturetom/status/1812654489972973643

相关资讯

白宫发文,呼吁开发者放弃C、C++:Rust被「钦点」内存安全

近年来,C、C 编程语言成了美国官方的「眼中钉」,而内存安全的 Rust 等语言摇身一变成了「新宠」。近日,在一份 19 页的报告《回归基础构件:通往安全软件之路》中,白宫国家网络主任办公室(ONCD)呼吁开发者使用「内存安全的编程语言」,比如 Rust 语言。报告指出,从一开始就选择内存安全的编程语言,是以安全设计方式开发软件的重要途径。此外,ONCD 表示,报告中的建议是与包括科技公司、学术界和其他机构合作制定的,并收集了包括惠普、埃森哲和 Palantir 在内等多家科技公司支持报告的意见。报告地址:,这
3/1/2024 3:25:00 PM
机器之心

基于 Rust 实现简单、快速、轻量级的 AI Agent 框架 Rig

这几天 AI Agent 生态进入爆发期,有个叫 Rig 非常抢眼,它是基于 Rust 构建的 AI 应用开发专业框架。 与它类似还有个叫 ELIZA  框架,本文主要介绍 Rig。 什么是 Rig?Rig(ARC) 是一个基于 Rust 优势面向 LLM 工作流引擎的 AI 系统构建框架,目的是要解决更底层的性能优化问题。
12/23/2024 6:10:00 AM
渔夫

接连被开源项目curl、Prisma弃用,Rust语言遭遇水逆,网友:从狂热粉到后悔莫及

一时之间,Rust 编程语言陷入到了接连被弃用的窘境。 作为一门系统编程语言,Rust 专注于安全,尤其是并发安全。 它支持函数式和命令式以及泛型等编程范式的多范式语言,在语法上和 C、C 类似。
1/5/2025 8:09:00 PM
机器之心
  • 1