目次 / モデルの入手と設置
モデルの入手と設置
llama.cpp に読ませる「頭の中身」= Gemma4 のモデルを用意します。画像を扱うために、2 つのファイルが要ります — 本体の GGUF と、画像を見る目にあたる mmproj です。
- モデル本体(例
gemma-4-12b-it-Q4_K_M.gguf)— 文章と推論の頭脳。 - mmproj(例
mmproj-F16.gguf)— 画像を読むための部品。これが無いと画像を渡せません。
どのサイズ・どの量子化を選ぶ?
Gemma4 にはいくつかのサイズがあります。まずは 12B が扱いやすくおすすめ。VRAM が少ない人は E4B、最高精度を狙うなら 31B です。
| サイズ | 向き | 目安のディスク/メモリ(4bit) |
|---|---|---|
| 12B(推奨) | 精度と速度のバランス。最初の一本。 | 約 7 GB |
| E4B(軽量) | VRAM が少ない / とにかく軽く動かしたい。 | 数 GB 程度 |
| 31B(最高精度) | 細部の読み取り重視。遅くても良い人向け。 | 約 18 GB |
量子化(ファイル末尾の Q4_K_M 等)は 圧縮の強さです。数字が大きいほど高品質で重くなります。迷ったら Q4_K_M(標準的なバランス)か、Unsloth の UD-Q4_K_XL(低ビットでも品質を保つ "Dynamic" 量子化)。
| 量子化 | ねらい |
|---|---|
UD-Q4_K_XL | Unsloth 推奨。4bit でも品質を保つ。迷ったらこれ。 |
Q4_K_M | 定番のバランス型。 |
Q8_0 / Q6_K | 高品質・大きめ。VRAM/メモリに余裕がある人。 |
UD-Q3_K_XL / UD-Q2_K_XL | さらに小さく。メモリが厳しいとき。 |
入手その1:Hugging Face から直接(おすすめ)
Ollama を使っていない人はこちらが素直です。Unsloth が配布している GGUF を使います。リポジトリは次の通り(本体 GGUF と mmproj が同じリポジトリに入っています)。
| サイズ | Hugging Face リポジトリ |
|---|---|
| 12B | unsloth/gemma-4-12b-it-GGUF |
| E4B | unsloth/gemma-4-E4B-it-GGUF |
| 31B | unsloth/gemma-4-31B-it-GGUF |
※ ファイル名・配布状況は更新されることがあります。各リポジトリの 「Files」タブで実際の名前を確認してください(以下は 12B リポジトリで確認した実例)。
方法A:ブラウザでダウンロード(一番かんたん)
12B リポジトリの「Files」を開き、次の 2 ファイルの「↓」ボタンで落とします。
| ファイル | これは何 | サイズ |
|---|---|---|
gemma-4-12b-it-Q4_K_M.gguf | モデル本体(または …-UD-Q4_K_XL.gguf) | 約 7 GB |
mmproj-F16.gguf | 画像を読む部品(mmproj) | 約 175 MB |
方法B:huggingface-cli でまとめて(速い・確実)
Python があれば pip install -U "huggingface_hub[cli]" のあと、欲しいファイルだけ指定して落とせます。
# 12B(Q4_K_M)+ mmproj を models/ に保存
huggingface-cli download unsloth/gemma-4-12b-it-GGUF \
gemma-4-12b-it-Q4_K_M.gguf mmproj-F16.gguf \
--local-dir ./models
方法C:llama-server に任せる(connect モード向け)
自分で llama-server を起動する(connect モード)なら、-hf でモデルと mmproj を自動ダウンロードさせられます(初回だけ時間がかかります)。
llama-server -hf unsloth/gemma-4-12b-it-GGUF:Q4_K_M \
--jinja --reasoning-format deepseek --image-max-tokens 1120
-hf はファイルをキャッシュに置きます。アプリの managed モードはファイルのフルパスを指定する方式なので、その場合は方法A/Bでわかりやすい場所に保存するのが楽です。
どこに置く?
置き場所はどこでも構いません(アプリにフルパスで教えるだけ)。迷ったら、わかりやすく 1 フォルダにまとめておきます。
例) C:\models\gemma4\
├─ gemma-4-12b-it-Q4_K_M.gguf ← モデル本体
└─ mmproj-F16.gguf ← 画像を読む部品
※ 本体 GGUF と mmproj は対(ペア)です。サイズが違うと噛み合いません(12B の本体には 12B 用の mmproj を)。同じリポジトリのものを使えば確実です。
アプリに登録する
あとは 設定(LLM 接続) でモードに応じて指定するだけです。
- managed: 設定で
llama-serverのパス・モデル GGUF のパス・mmproj のパスを登録 → アプリが起動します。 - connect: 自分で起動(
-m モデル --mmproj mmproj --jinjaまたは-hf …)→ アプリには URL を教えます。
# connect で自分で起動する例(ローカルのファイルを指定)
llama-server -m C:\models\gemma4\gemma-4-12b-it-Q4_K_M.gguf \
--mmproj C:\models\gemma4\mmproj-F16.gguf \
--jinja --reasoning-format deepseek --image-max-tokens 1120
入手その2:すでに Ollama を使っている人向け(補足)
Ollama で Gemma4 を入れているなら、そのダウンロード済みファイルを llama.cpp から流用できます(再ダウンロード不要)。Ollama は GGUF を「blob」として保存しています。
ollama pull gemma4:12b-it-qat # まだなら取得(QAT = 低ビットでも高品質)
取得後、~/.ollama/models/blobs/(Windows は C:\Users\<あなた>\.ollama\models\blobs\)に sha256-… という名前で保存されます。このうち大きいファイルがモデル本体、小さいほうが mmproj(projector)です。それを上の managed / connect でそのまま指定します。
ollama show 等で実際の対応を確認してください):
- 12B QAT 本体
sha256-faff1a63…/ mmproj は手持ちのmmproj-F16.ggufか内蔵sha256-e70b0e5c… - 31B QAT 本体
sha256-0374ce7b…/ 内蔵 projectorsha256-8e239c9c…(1.2GB)
gemma4:12b 等)の projector は llama.cpp で読めないことがあります。その場合は Hugging Face の mmproj-F16.gguf を使ってください。なお Pixubus EX はあえて Ollama を経由しません(Ollama 自体は画像を ~800px に縮めてしまうため)。ここで使うのは Ollama が落としたファイルだけです。理由は 仕組み へ。
モデルが置けたら、いよいよ接続です。