ホームページ  >  記事  >  テクノロジー周辺機器  >  とてもクール!古い iPhone、iPad、MacBook デバイスは異種クラスタを形成し、Llama 3 を実行できます

とてもクール!古い iPhone、iPad、MacBook デバイスは異種クラスタを形成し、Llama 3 を実行できます

PHPz
PHPzオリジナル
2024-07-19 05:09:59942ブラウズ
余っている機材があれば、試してみてもいいかもしれません。

今回、あなたの手にあるハードウェアデバイスは、AIの分野でもその力を発揮することができます。

iPhone、iPad、Macbook を組み合わせることで、「異種クラスター推論ソリューション」を構築し、Llama3 モデルをスムーズに実行できます。

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

この異種クラスターは Windows システム、Linux、または iOS システムにすることができ、Android のサポートも間もなく開始される予定であることに言及する価値があります。異種クラスタが実行中です。

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3プロジェクト作成者 @evilsocket によると、この異種クラスターには iPhone 15 Pro Max、iPad Pro、MacBook Pro (M1 Max)、NVIDIA GeForce 3080、2x NVIDIA Titan X Pascal が含まれています。すべてのコードは GitHub にアップロードされました。 これを見て、ネチズンはこの老人は確かに単純ではないと表明しました。

しかし、一部のネチズンは速度に関係なく、電気代を支払う余裕がないことを心配し始めています。データを前後に移動すると、損失が大きくなりすぎます。

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

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

プロジェクトの紹介

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

上記の関数の実装は、Cakeと呼ばれるRustフレームワークから分離できません。 Cake は、大規模なモデル (Llama3 など) の分散推論を完了でき、コンシューマー グレードのハードウェアを異種クラスターに組み合わせるように設計されています。コンシューマー グレードのハードウェアは、iOS、Android、macOS、Linux、Windows などのさまざまなオペレーティング システムを使用します。 AIがもっと身近になるように。

プロジェクトアドレス: https://github.com/evilsocket/cake

Cake の主なアイデアは、トランスフォーマー ブロックを複数のデバイスにシャードして、通常は適合しないモデルで推論を実行できるようにすることです。単一デバイスの GPU メモリ。データ転送による遅延を最小限に抑えるために、同じワーカー スレッド上の連続するトランスフォーマー ブロックの推論はバッチで実行されます。 太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

Cake は現在、次のシステムとデバイスをサポートしています:

コンパイル

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

Rust をインストールした後、次のコードを実行します:

cargo build --release

ユーザーがアプリケーションで iOS バインディングを生成したい場合は、続行できます。以下のように説明されている操作:

make ios

を使用してワーカーノードを実行します:

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

マスターノードを実行します:

cake-cli --model /path/to/Meta-Llama-3-8B \         --topology topology.yml
どの層がどのワーカーによって提供されるかは、topology.yml によって決定されます:

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'
メモリとディスク容量の最適化の問題について ユーザーは、フォルダー全体ではなく、モデル内で実際に必要なデータのみをワーカーに提供したい場合があります。この場合、cake-split-model を使用できます。たとえば、llama3 セーフテンソルの小さいバージョンを生成するには、次のコードを使用できます:

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

以上がとてもクール!古い iPhone、iPad、MacBook デバイスは異種クラスタを形成し、Llama 3 を実行できますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。