このサブレディットでは、自分のシステムで特定のモデルを動かせるかどうかをいつもたくさんの人が尋ねています。私が見つけた多くの「VRAM計算機」は、非常に大雑把な推定しか提供しないか、あるいは推定できるモデル数に厳しい制限があることがほとんどです。これは、現在市場に出回っているさまざまな種類のアテンションに対して、どれだけのメモリが利用されているかを把握するのが複雑だからです。その結果、役に立つのは一部の人にはなるものの、「16GBのGPUとホストRAM 32GBで、unsloth もしくは bartowski のこの特定のQ3量子化バリアントを動かせるのか?」という問いには答えられません。
私は、常に最新の状態で、かつ、あるモデルが特定のシステム上で「動くのか」「どれくらい良く動くのか」を正確に見積もれるものを作ろうと考えました。llama.cpp には、層/テンソルを異なるデバイスに割り当てるためのfitアルゴリズムがすでにあり、さらに改良されてより堅牢になり続けています。答えは単純で、提案されたシステム上でGGUFが動かせるかどうかを推定するためにfitアルゴリズムをブラウザ上で直接実行するだけです。追加の利点として、llama.cpp がより新しいモデルにも対応しているため、この推定器もそれらを同様に扱えます。
アプリ: https://acon96.github.io/vram.cpp/ コード: https://github.com/acon96/vram.cpp
マルチGPUのシナリオでは、まだ少し奇妙な挙動があります。特に、2つのGPUとホストメモリの両方にまたがってモデルを分割しようとすると、非常に不自然な動きをします。MoEのフィッティングも少し変わっていますが、それも現時点では llama.cpp の一部である可能性が高いです。また、正しいバッファの対応能力が公開されるように、他のバックエンドのバリアントをいくつか追加する必要もまだあります。
900GBもの重みをダウンロードしたり、大量の時間を使ってテスト用のfitを回したりせずに、自分のモデルに合った正しい量子化を見つけるのに役立てばと思います。
[link] [comments]



