RTX PRO 2000 Blackwell 16GBを内蔵したThinkStation P330 TinyのLLM環境について考える

OSのインストール

特に問題ないので書くこともない。あえて言うなら、ディスプレイ出力がグラボ側から撮らないといけないのでそれだけは注意。サーバー利用なので最初だけだが、それほど気を付ける。ミニPCでハマったポイントは特に問題なくubuntuがすんなり入った。初期設定終えてSSHさえ準備できていれば、その後は外からClaudeCodeで何とでもなるので問題なし。

それで実際何に使うのかと言うと

今回、AIエージェントに使用したいと思い準備。ちょっと話がそれるが、それなら今書きながらMac miniでも良いじゃんと言う話もあることに気が付いた。Mac miniで32GBならSSDサイズにもよるが、恐らく同じくらいの金額だった気がする(15万くらい?)。今、ローカルLLMでの自由度ならMac mini。いろんな新技術の導入がMacと言うかMLXならやり易い部分があるのでしょうがない。

単純なLLM速度ならグラボを使用しているこちらが優れているかもしれないが、16GBがやはりネックになるのと、MLXの方が最新技術の対応が速いのでうらやましいと思わないこともない。とは言ってもこちらの話をしないといけない。

フレームワークは?

フレームワークとしては今までllama.cppしか使ったことない。Ollamaを使うのであれば、llama.cppで良い様な気がする。それはClaudeCodeで設定しているのであればそんなに気にすることではない。速度で考えるのならvLLMとかが良いのだろうけど、グラボのメモリが16GBと言うことでちょっと厳しいので、結局必然的にllama.cppになってくる。

TensorRT-LLMを使ってNVFP4モデルでぶん回すぜと思っていた時期もありましたが、最新のモデルはNVFP4未対応。無理して旧モデルを使ってもNVFP4のメリットが生かせない使用方法になる(一人で細かく使う。計算がボトルネックにならない。)。なので計算優位になるような使い方なら勝ち目がないこともないのだろうけど、しょせん一人で使うシステムだし複数キューが入るほどではないはずなので計算優位になる状態は無いのではないだろうか?と言うことで、早々に除外で、結局使い慣れたllama.cppにすることに。

どのモデル使うのか?

その前提で考えても、16GBに入ってある程度の性能のあるLLMと考えると、一番先に浮かんだのがgpt-oss-20bだが、Thinkingモードを外すことが出来ない?そうなると、Qwen3.5かGemma4になるのだが、16GBと言うと大きいモデルは入るかもしれないが使うにはVRAMが足りない。

Qwen3.5-27Bを当初考えていたのだが、モデルだけで16GBが埋まってしまう。なので小さいモデルを使わざるを得ない。とりあえずの現状はQwen3.5-9BとGemma4-E4Bを二つ入れてコンテキストサイズを多めにとって14GB弱と言ったところ。正直ちょっと弱い。CodexCLIの利用枠をこっちに回しても良いのだが、ClaudeCodeでレビューさせていたりするので全く使えなくなってもらっても困る。

とここまで書いているうちに、量子化形式が他にもいろいろあることに気が付く。なので本格的に調べてみる。

Qwen3.5-27Bモデルサイズ
■ 標準量子化(GGUF / llama.cpp系)

BF16:53.81GB
精度:フル精度相当
特記事項:基準となる非量子化寄りのGGUF。llama.cpp用の比較元。

Q8_0:28.67GB
精度:極めて高い
特記事項:最大級の量子化。Bartowskiでは「generally unneeded but max available quant」。

Q6_K_L:23.70GB
精度:ほぼ元性能級
特記事項:embed/outputをQ8_0化した上位版。「Very high quality, near perfect, recommended」。

Q6_K:23.08GB
精度:ほぼ元性能級
特記事項:「Very high quality, near perfect, recommended」。

Q5_K_L:20.73GB
精度:高い
特記事項:embed/outputをQ8_0化した上位版。「High quality, recommended」。

Q5_K_M:19.95GB
精度:高い
特記事項:27Bをかなり活かしやすい実用上位。「High quality, recommended」。

Q5_K_S:19.11GB
精度:高い
特記事項:Q5帯の軽量寄り。「High quality, recommended」。

Q4_K_L:18.07GB
精度:良好
特記事項:embed/outputをQ8_0化した4bit上位。「Good quality, recommended」。

Q4_1:17.49GB
精度:Q4_K_Sに近い
特記事項:Legacy format。Apple Siliconでtokens/watt改善の余地あり。

Q4_K_M:17.13GB
精度:良好
特記事項:標準基準。「default size for most use cases, recommended」。

Q4_K_S:16.09GB
精度:やや低下するが実用的
特記事項:「Slightly lower quality with more space savings, recommended」。

Q4_0:15.98GB
精度:Q4_K系より古い傾向
特記事項:Legacy format。ARM/AVX向けonline repacking対応。

IQ4_NL:15.95GB
精度:IQ4_XSに近い
特記事項:「Similar to IQ4_XS, but slightly larger」。

Q3_K_XL:15.70GB
精度:低めだが使える
特記事項:embed/outputをQ8_0化。「低RAM環境向け」。

IQ4_XS:15.17GB
精度:まずまず良い
特記事項:「Q4_K_Sより軽量で近い性能、recommended」。

Q3_K_L:14.59GB
精度:低めだが使える
特記事項:「低RAM環境向け」。

Q3_K_M:13.85GB
精度:低い
特記事項:「Low quality」。

IQ3_M:13.14GB
精度:中低品質
特記事項:「Q3_K_M相当の性能」。サイズ重視の現実解。

Q3_K_S:12.64GB
精度:低い
特記事項:「Low quality, not recommended」。

IQ3_XS:12.19GB
精度:かなり低め
特記事項:「Q3_K_Sよりややマシ」。

Q2_K_L:12.00GB
精度:かなり低い
特記事項:「Very low quality but surprisingly usable」。

IQ3_XXS:11.32GB
精度:かなり低い
特記事項:「Q3系相当」。

Q2_K:10.76GB
精度:非常に低い
特記事項:「Very low quality but surprisingly usable」。

IQ2_M:9.48GB
精度:低い
特記事項:「SOTA技術で最低限使える」。

IQ2_S:8.76GB
精度:低い
特記事項:「低品質だが実用可能」。

IQ2_XS:8.49GB
精度:低い
特記事項:「低品質だが実用可能」。

IQ2_XXS:7.75GB
精度:非常に低い
特記事項:「極限軽量」。

■ Unsloth UD系(Dynamic Quant)

UD-Q8_K_XL:35.5GB
精度:非常に高い
特記事項:UD系最上位。Q8_0よりさらに巨大。

UD-Q6_K_XL:25.7GB
精度:非常に高い
特記事項:Q6_Kより重い高品質版。

UD-Q5_K_XL:20.2GB
精度:高い
特記事項:Q5_K_M帯で品質寄り。

UD-Q4_K_XL:17.6GB
精度:良好
特記事項:Q4_K_M帯の品質改善版。

UD-Q3_K_XL:14.4GB
精度:中低品質帯
特記事項:Q3系の改良版。

UD-Q2_K_XL:11.2GB
精度:低い
特記事項:軽量寄り。

UD-IQ3_XXS:11.5GB
精度:かなり低い
特記事項:極端圧縮。

UD-IQ2_M:10.2GB
精度:低い
特記事項:軽量優先。

UD-IQ2_XXS:8.57GB
精度:非常に低い
特記事項:極限軽量。

だらだらと書いたが、入れるだけなら結構選択肢があるが、16GBである程度の運用をするとなるとまた話が変わってくる。そこで、実際さらに考慮しないといけないのがコンテキストをどれだけ持たせるか。

コンテキストも多ければいいと思っていたが、KVキャッシュ精度を維持できる有効コンテキスト長を確保できなければ意味がないので(全く意味がなくはないかも知れないが)それを含めて16GBの利用を検討しなければいけない。

そんな中、IQ3_Mに決定したのだが、Qwen3.6-35B-A3Bがいつの間にか出ていたのでまた話が変わる。最初はQwen3.5-27Bで良いじゃないかと思っていたが、よく考えたら速度が段違いなのでQwen3.6-35B-A3Bを使用することに。

UD-Q8_K_XL|38.5GB|精度:極めて高い
 特記事項:UD系最上位。ほぼフル精度に近い品質だがサイズは非常に大きい

UD-Q6_K_XL|31.8GB|精度:非常に高い
 特記事項:6bit上位版。高品質だが単GPUではVRAM要求が高い

UD-Q6_K|29.1GB|精度:非常に高い
 特記事項:6bit帯の標準。フル精度にかなり近い体感

UD-Q5_K_XL|26.6GB|精度:かなり高い
 特記事項:5bit上位。Q5_K_Mよりわずかに品質寄り

UD-Q5_K_M|26.5GB|精度:かなり高い
 特記事項:5bitバランス型。高品質用途の実用ライン

UD-Q5_K_S|24.9GB|精度:かなり高い
 特記事項:5bit軽量寄り。まだ十分高品質

UD-Q4_K_XL|22.4GB|精度:高い
 特記事項:4bit上位。Q4_K_Mよりやや品質寄り

UD-Q4_K_M|22.1GB|精度:高い
 特記事項:4bit標準本命。サイズと品質のバランスが良い

UD-Q4_K_S|20.9GB|精度:高い
 特記事項:4bit軽量版。品質を保ちつつ軽量化

UD-IQ4_NL|18.0GB|精度:やや高い
 特記事項:IQ系4bit。サイズの割に品質寄り

UD-IQ4_XS|17.7GB|精度:やや高い
 特記事項:4bit軽量寄り。16GBではやや厳しい

UD-Q3_K_XL|16.8GB|精度:中〜やや高い
 特記事項:3bit上位。16GBではかなりギリギリ

UD-Q3_K_M|16.6GB|精度:中
 特記事項:3bitバランス型。精度寄りだが16GBでは余裕少

UD-Q3_K_S|15.4GB|精度:中
 特記事項:3bit軽量寄り。16GB運用で試せる上限帯

UD-IQ3_S|13.7GB|精度:中低〜中
 特記事項:16GB向け本命。速度・余裕・品質のバランス良

UD-IQ3_XXS|13.2GB|精度:中低
 特記事項:軽量寄り3bit。16GBで安全に回しやすい

UD-Q2_K_XL|12.3GB|精度:低〜中低
 特記事項:2bit系の中では比較的品質寄り

UD-IQ2_M|11.5GB|精度:低
 特記事項:2bit標準。軽さ重視用途

UD-IQ2_XXS|10.8GB|精度:低
 特記事項:超軽量2bit。品質よりサイズ優先

UD-IQ1_M|10.0GB|精度:非常に低い
 特記事項:最軽量帯。実験・動作確認用途

一旦UD-IQ3_Sで設定完了。コンテキスト128K、KVキャッシュ量子化q8設定で16GBに安定して入る。長文品質テストで問題ないので一応128k問題ないようだ。

そして、UD-Q3_K_Sに設定そのまま切り替えてみたらうまく行かない。どうもギリギリすぎたようだ。コンテキストを下げてまで導入するかと言うと考えると今のままでも良い様な気がする。

とりあえずのところはUD-IQ3_Sで確定と言うことで。しかし、16GBのグラボでこの規模のLLMが動くようになるとは夢にも思わなかったが、量子化に関しては回転系の量子化の導入がまだこれからなのでもっと劇的に話が変わってくるはず。

少なくとも今現在は計算よりもメモリ効率の方がボトルネックになっているので、計算増えてもモデルやKVキャッシュが小さくなったりする方がトータルでは速くなる感じはもう少し続きそう。

と言うことでしばらくはこんな感じで使ってみようと思います。

【宣伝】SwitchBot 購入はこちらから

SwitchBot公式ページ
クーポン「AF-4903」で5%引き(アフィリエイトクーポンになりますのでご協力お願いします)
割引の詳しい仕組みに関してはこちらのページを参照ください。

大きいセールがある場合はAmazonもしくは楽天から購入するとお得です。
買い物情報はこちらからご確認ください。気分で紹介しています。

アリエクのクーポン情報もまとめています。こちらをご覧ください。

当ページにはアフィリエイトリンクを含む場合があります。