6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Gemma4 26B QATをRTX 5070 Ti のVRAM16GBに全載せし、通常版Q5/Q6と速度・品質を比較した

Gemma4のQAT版が出た。どうやら、通常の量子化よりも品質を残したままメモリ使用量をかなり下げられるらしい。

特に気になったのが26B A4B版で、QAT GGUFなら16GB VRAMのGPUにも全載せできるという話だった。もし本当に載るなら、RTX 5070 Ti 16GBでもかなり速く動くはず。

なので、自分の環境でも試した。その結果、gemma-4-26B-A4B-it-qat-UD-Q4_K_XL.gguf は128Kコンテキストのまま 111.9 tok/s まで出た。通常のGemma4 26B Q4/Q5/Q6系が33〜35 tok/s前後だったので、速度だけ見るとかなり強い。

この記事では、まず実行設定とパラメータの位置づけを整理し、そのうえで速度、通常版との違い、実際に使う上での注意点をまとめる。

使ったもの

項目 内容
GPU RTX 5070 Ti 16GB
環境 WSL2 + Docker + llama-swap
推論 llama.cpp / llama-server
モデル gemma-4-26B-A4B-it-qat-UD-Q4_K_XL.gguf
context 128K
用途 OpenCode / llama-swap経由

設定

llama-swapでは、まず以下のようにパラメータの位置づけを決めた。

設定 context batch 位置づけ
常用 128K b2048/ub256 まず使う基準値。GPU全載せなので、この時点でも十分速い
速度計測 128K b4096/ub512 111.9 tok/sを出した設定。16GB VRAMではかなり攻めている
fallback 128K b1024/ub128 expert CPU退避。GPU全載せが不安定なときの逃げ道

大事なのは、b4096/ub512だけが実用設定という意味ではないこと。QAT版はモデル自体が軽く、b2048/ub256でも通常のGemma4 26Bよりかなり軽く動く。以降の速度表で出す111.9 tok/sは、上の表でいう「速度計測」の条件で測った値である。

今回のピーク値を出した速度計測用の設定は以下。

gemma-4-26B-A4B-it-qat-UD-Q4_K_XL-C128K-GPU.gguf:
  ttl: 900
  cmd: >-
    llama-server-upstream
    -m /models/gemma4/gemma-4-26B-A4B-it-qat-UD-Q4_K_XL.gguf
    -c 131072 -ngl 99 -fa on -ctk q4_0 -ctv q4_0
    -b 4096 -ub 512
    --parallel 1 --jinja --reasoning auto --reasoning-format deepseek
    --temp 0.7 --top-p 0.95 --top-k 64 --repeat-penalty 1.05
    --no-mmap --host 0.0.0.0 --port ${PORT}

ポイントはこのあたり。

設定 意味
-c 131072 128K context
-ngl 99 GPU全載せ
-ctk q4_0 -ctv q4_0 KV cacheを軽量化
-b 4096 -ub 512 速度計測用。16GB VRAMでは攻めた値

評価方法

速度だけでなく、OpenCodeで使ったときの実用感も見るために、自作のベンチマークパイプラインで段階的に評価した。

使った主なコードは以下。

用途 ファイル
API直呼びの速度・品質評価 benchmarks/run_pipeline.py
Phase3の単発タスク定義 benchmarks/prompts/phase3_tasks.yaml
OpenCode実行評価 benchmarks/benchmark/phase4_runner.py
採点API呼び出し benchmarks/providers/judge_client.py

採点は主に GLM-5.1(z.ai API) に0〜5点で判定させた。Phase5では、GLM-5.1だけだと甘く出るケースがあるため、Claude Sonnet でもブラインド採点して平均を見た。

Phase 見るもの
Phase2 API直呼び。短いQA、要約、コード生成などで速度と回答品質を見る
Phase3 単発8タスク。日本語指示、計算、JSON出力、翻訳、Python実装/バグ修正など
Phase4 OpenCodeで実ファイルを作らせる。Pythonバックテスト、HTML作成、複数ファイル修正など
Phase5 11タスクの最終評価。日本語記事、投資レポート、CatBoost実装、HTMLサイトなど

例えばPhase3では、二分探索の実装、単語カウントコードのバグ修正、JSONだけを出すタスク、りんご販売利益の計算などを投げた。Phase4/5では、単なる文章回答ではなく、指定パスにファイルを作成させ、Pythonなら実行、HTMLなら構文や成果物の有無を確認している。

この評価で拾える問題は、単純な文章力だけではない。たとえば「JSON以外を出すな」と言っているのにMarkdownフェンスを付ける、計算式を1箇所間違える、HTMLのクォートを欠落させる、指定ファイルを作らない、といった実作業で困るミスも点数に反映される。

結果

Phase2の速度比較は以下。QAT版は、設定章で示した「速度計測」の条件で測っている。

モデル Phase2 score Phase2速度
Gemma4-26B-QAT-Q4KXL 5.00 111.9 tok/s
Gemma4-26B-Q4KM 5.00 35.3 tok/s
Gemma4-26B-UD-Q5KM 5.00 33.4 tok/s
Gemma4-26B-UD-Q6K 5.00 33.4 tok/s

OpenCodeで触った体感もかなり軽い。26Bなのに小型モデルっぽい速度で返ってくる。

品質は少し落ちる

速度はかなり良いが、通常のQ5/Q6系より少し雑に感じる場面がある。

モデル Phase3 Phase4 Phase5
Gemma4-26B-QAT-Q4KXL 3.88 3.43 4.68
Gemma4-26B-Q4KM 4.62 3.43 4.77
Gemma4-26B-UD-Q6K-nc13 4.62 4.29 4.73
Gemma4-26B-UD-Q5KM 4.75 4.00 4.55

Phase5では、GLM-5.1単独採点だと満点だったが、Claude Sonnetのブラインド採点ではHTMLのクォート欠落による構文エラーを拾われた。速度は出るが、コードの細部で荒さが出る。

使いどころ

用途 判断
高速チャット 向いている
長文要約 128Kで動くので向いている
軽いコード生成 速さ優先ならあり
複雑なOpenCode作業 通常Q5/Q6の方が安心
正確な多段タスク Gemma4 UD-Q5/Q6を優先

自分の使い分けとしては、QAT版は「雑に速く回したいモデル」。厳密な作業では通常Q5/Q6を使う。

動作感↓

参考リンク

まとめ

Gemma4-26B-QAT-Q4KXLは、RTX 5070 Ti 16GBで128K contextのまま 110 tok/s級 で動いた。

QAT版の軽さとGPU全載せが効いた結果だと思う。品質は通常Q5/Q6より少し落ちるので、速さ重視の探索や軽作業向けとして使う。

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?