岩、紙、シリコン:235BのAIモデルをMacBookで動かした方法

多くの人は、コンシューマー向けハードウェアで最先端(フロンティア)のAIモデルを動かすことはできないと言います。

Qwen3-235Bのようなモデルを動かすには、470 GBのRAMが必要です。ハイエンドのMac Studioでも、搭載されているのはわずか192 GBです。業界では、代わりにクラウドGPUをレンタルすることを推奨しています。

私はウェブ開発者であり、システムエンジニアではありません。GPUカーネルや低レベルのメモリ管理を扱う仕事もしていません。しかし、ある疑問が浮かびました。「もし、実際に稼働するモデルの一部だけをロードしたらどうなるだろうか?」

Mixture of Experts (MoE) モデルでは、ほとんどのパラメータは時間の大部分において休止状態にあります。そこで私は、重み(weights)が必要になる直前にロードするシステムを構築することにしました。

C++コードの記述にはAIエージェントを活用しました。私が好奇心を持ち込み、エージェントが実装の深さをもたらしてくれました。

インスピレーションの源は、Filippo Biondiによる衛星に関する論文でした。彼はレーダーを使用してギザの大ピラミッドの内部を調査しました。レーダーは岩を透過することはできませんが、岩に当たった際に発生する振動を測定することはできます。彼はその振動を測定することで、内部のマップを作成したのです。

私はこのロジックをAIのメモリに応用しました。

私はこれをS-MoE (Seismic Mixture of Experts) と呼んでいます。これは3つのストリームを使用して動作します。

• The Scout(偵察役):RAM上で動作するモデルの軽量な部分。次にどのエキスパートがアクティブになるかを予測します。 • The Streamer(ストリーマー):SSDから特定のエキスパート・ブロックをメモリにロードするI/Oスレッド。 • The GPU:届いたばかりの重みを使用して計算を実行します。

このシステムは、Direct I/Oを使用してOSのキャッシュをバイパスします。実行時のヒープ割り当て(heap allocations)は行わず、OSのミューテックス(mutexes)も一切回避します。

結果はどうなったか? 16 GBのMacでも512 GBのMacでも、235Bモデルから全く同じ知能を引き出すことができます。単に、一方が他方よりも高速であるという違いだけです。

AIを取り巻く「メモリの壁」は、自然界の法則ではなく、ソフトウェア上の想定に過ぎません。すでに所有しているハードウェアで、最先端のモデルを動かすことができるのです。

S-MoEはオープンソースです。

Source: https://dev.to/melasistema/rock-paper-silicon-how-a-web-developer-used-a-satellite-hack-and-an-ai-agent-to-ask-a-ridiculous-5am1

Optional learning community: https://t.me/GyaanSetuAi