rss_feed
filter_alt

詳細検索

expand_more
~
0
10000
最小
最大
Nintendo
PlayStation
Xbox
物理キーボードを検出しました。PCビューに切り替えますか?
ローカルLLMサーバを建てて、自宅でAIを動かしてみよう ~VRAM 8GBでGemma 4 12Bが動くのか実験してみた~

ローカルLLMサーバを建てて、自宅でAIを動かしてみよう ~VRAM 8GBでGemma 4 12Bが動くのか実験してみた~

llama.cppの導入

llama.cppのリリースページから最新版のllama.cpp(b~~の数字が大きいもの)をダウンロードしてください。

今回のRTX 3070 LaptopはCUDA 13.3に対応しているので、CUDA 13.3版とDLLをダウンロードします。

llama.cppのダウンロード

今回は説明のためにCドライブ直下にフォルダを作成します。(今回はb9553をダウンロードしたため、C:\llama-b9553-bin-win-cuda-13.3-x64\に保存しました)
DLLも同じフォルダにブチ込めばOK。

Gemma 4 12Bのダウンロード

llama.cppでローカルLLMを動かすには、モデルがGGUF形式である必要があります。

そのため今回はunslothが公開しているQAT版のGGUFを使用します。まあ、Gemma 4に限らずですが、unslothが公開しているGGUFを使うのが一般的ですね。

  • モデルについて: unsloth/gemma-4-12B-it-qat-GGUF
  • ダウンロードファイル:
    • gemma-4-12B-it-qat-UD-Q4_K_XL.gguf(モデル本体)
    • mmproj-F16.gguf(マルチモーダル(画像・音声)対応用の追加ファイル)

Files and versionsページから上記2つをダウンロードしてください。
今回はC:\models\フォルダに保存しました。

起動スクリプト

本来であれば各種パラメータを理解したうえで、unslothのガイドなどを参考にパラメータを設定しますが、面倒だと思います。

ここに起動スクリプトを書いておくので、すぐに動かしたい方はこれを.ps1ファイルとして保存し、PowerShellで実行してください(フォルダ名などは適宜変更してください)。

& "C:\llama-b9553-bin-win-cuda-13.3-x64\llama-server.exe" `
  -m "C:\models\gemma-4-12B-it-qat-UD-Q4_K_XL.gguf" `
  --mmproj "C:\models\mmproj-F16.gguf" `
  --jinja `
  --ctx-size 150272 `
  -ngl 99 `
  -t 8 `
  -np 1 `
  --kv-unified `
  --kv-offload `
  --no-mmap `
  -fa on `
  --cache-type-k q4_0 `
  --cache-type-v q4_0 `
  --temp 0.7 `
  --top-k 64 `
  --top-p 0.95 `
  --min-p 0.00 `
  --repeat-penalty 1.3 `
  --presence-penalty 0.0 `
  --cache-ram 4096 `
  --ctx-checkpoints 24 `
  --reasoning-budget 0 `
  --reasoning off `
  --host 0.0.0.0 `
  --port 11434

主要パラメータの説明

パラメータ説明
-mモデル本体(GGUFファイル)を指定
--mmprojマルチモーダル(画像など)用のモデルを指定
--ctx-sizeコンテキスト長(処理できるトークンの量。増やすとVRAM使用量も増える)
-nglGPUにオフロードするレイヤー数(99≒全てGPU)
-t使用するCPUスレッド数
--cache-type-k
--cache-type-v
KVキャッシュの量子化形式(VRAM節約のためq4_0)
--reasoning推論のON/OFF。有効にすると回答を出力する前に「考える」。今回は速度重視でOFFとする
--reasoning-budget推論に使用するトークンの最大量
--temp温度(低いほど一貫性のある回答、高いほど創造的な回答)
--repeat-penalty繰り返しペナルティ(高いほど同じ表現の繰り返しを抑制)
--host0.0.0.0にするとLANに公開。PC内でしか使用しない場合は127.0.0.1
--port11434はOllamaのデフォルト値で、llamaをもじっているらしい(この値でなくても可)

他にも多くのパラメータがありますが、ここでは割愛します。AIにでも聞いてください。なお、無限ループを回避するため、temprepeat-penaltyは推奨値から調整しています。

コメントを投稿する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です