Ollama gemma3とllama3.1の日本語精度・速度をRTX 3060で比較する

※本記事にはプロモーション(広告・アフィリエイトリンク)を含みます。
RTX 3060(VRAM 12GB)でOllamaを動かし、gemma3とllama3.1のどちらを選ぶかで迷っている人向けの記事だ。比較軸を先に定義してから表で並べ、用途別の選び方まで書き切る。
比較の前提:RTX 3060 12GB に収まるモデルサイズ
Ollamaはモデルをデフォルトで4ビット量子化(Q4_K_M)で配布している。VRAMの目安は「パラメータ数(十億)× 0.6〜0.7GB」前後だが、コンテキスト長の設定やKVキャッシュの確保量によっても変動する。以下の数値は公式スペックから推算した概算値であり、実測値ではない点に注意してほしい。
| モデル名 | パラメータ数 | VRAM目安(推算) | RTX 3060で動くか |
|---|---|---|---|
| gemma3:1b | 1B | 約1GB | ✅ |
| gemma3:4b | 4B | 約3.3GB | ✅ |
| gemma3:12b | 12B | 約7.9GB | ✅ |
| gemma3:27b | 27B | 約17GB | ❌ 収まらない |
| llama3.1:8b | 8B | 約4.7GB | ✅ |
| llama3.1:70b | 70B | 約43GB | ❌ 論外 |
RTX 3060で現実的に選べるのは gemma3:12b以下 と llama3.1:8b。この2つが本記事のメイン比較対象になる。
3つの比較軸を先に決める
比較軸は「速度・日本語精度・コンテキスト長」の3つに絞る。用途によって重視する軸が変わるため、まず全軸を整理してから選び方を書く。
速度(tok/s)
生成速度はパラメータ数が少ないほど速い。gemma3:4b > llama3.1:8b ≈ gemma3:12b という序列になる可能性が高いが、モデルのアーキテクチャの違いもあるため単純比較はできない。速度は環境によって大きく変わるため、--verbose オプションで自分の環境の実測値を取るのが確実だ。
ollama run gemma3:12b "日本語で100文字程度の自己紹介を書いてください" --verbose
出力末尾に eval rate: XX.X tokens/s が表示される。この数値を記録しておくと、モデルを切り替えたときの判断基準になる。
日本語精度
gemma3はGoogleが開発したモデルで、公式サイトに多言語対応(英語・日本語・韓国語ほか多数)が明記されている。日本語の学習データが意図的に組み込まれており、文語・口語ともに安定した出力が得やすい傾向がある。
llama3.1はMetaのモデルで英語中心の設計だ。日本語も出力できるが、文章の自然さがgemma3より落ちることがある。英語でのコード生成やテキスト処理においては評価が高いとされている。
コンテキスト長
gemma3:12b・llama3.1:8bともに最大128kトークンのコンテキストウィンドウを公式が公表している(執筆時点)。Ollama経由でのデフォルト値は設定によって変わるため、長文を扱うときは明示的に指定するとよい。
OLLAMA_NUM_CTX=32768 ollama run gemma3:12b
gemma3 vs llama3.1 まとめ比較表
| 比較軸 | gemma3:4b | gemma3:12b | llama3.1:8b |
|---|---|---|---|
| VRAM目安(推算) | 約3.3GB | 約7.9GB | 約4.7GB |
| 日本語精度 | やや低め | 高い | 中程度 |
| 生成速度(相対) | 速い | 中程度 | 中〜速い |
| 英語精度 | 中程度 | 高い | 非常に高い |
| コンテキスト長(最大) | 128k | 128k | 128k |
| 日本語メイン用途への適合 | ◯ | ◎ | △ |
※ 日本語精度・英語精度は、公式の多言語サポート情報および一般的な評価傾向に基づく相対比較。実際の出力品質はプロンプト・量子化レベル・Ollamaのバージョンによって異なる。
用途別の選び方
日本語の文章生成・要約・QA が主目的
→ gemma3:12b を選ぶ
VRAMを7.9GB近く使うが、日本語の出力品質が安定している。ブログ記事の要約、日本語のQ&A応答、日本語テキストの分類など、日本語が主軸の用途に向いている。
英語コードの補完・英語ドキュメント処理が主目的
→ llama3.1:8b を選ぶ
Metaのモデルは英語コードと英語テキスト処理での評価が高い。コーディングアシスタント的な使い方や英語ドキュメントを扱う場面では、日本語精度が多少低くてもこちらが実用的な場合がある。
ComfyUI・Stable Diffusion WebUI と同じ GPU を共有している場合
→ gemma3:4b で小さく始める
画像生成サービスとGPUを共有する環境では、VRAMの取り合いになる。gemma3:4bは約3.3GBで動くため、残りのVRAMを画像生成に残せる。複数プロセスがVRAMを競合する状況では、LLMの起動タイミングに注意が必要だ。他サービスがVRAMを占有した状態でOllamaが起動すると、モデルの一部がシステムRAMにオフロードされ、生成速度が大幅に落ちることがある。同一RTX 3060上での画像生成のパフォーマンスについてはFLUX Schnell RTX 3060で512×512を何秒で出せるかも参考になる。
インストールと動作確認の手順
Ollamaが未インストールの場合は公式(ollama.com)から入手する。
# Linux(公式の1行インストール)
curl -fsSL https://ollama.com/install.sh | sh
# モデルの取得
ollama pull gemma3:12b
ollama pull llama3.1:8b
# 対話モードで起動
ollama run gemma3:12b
APIサーバーとして使う場合は localhost:11434 に自動で立ち上がる。
curl http://localhost:11434/api/generate \
-d '{
"model": "gemma3:12b",
"prompt": "Ollamaについて日本語で説明してください",
"stream": false
}'
レスポンスに含まれる eval_count(生成トークン数)と eval_duration(ナノ秒)から tok/s を計算できる:eval_count / eval_duration * 1_000_000_000。これを手元に記録しておくと、モデルを変えたときや量子化を変えたときの比較が楽になる。
まとめ
- 日本語用途は gemma3:12b が最初の選択肢
- 英語・コード用途は llama3.1:8b のほうが向いている場合が多い
- VRAMを他サービスと共有する環境では gemma3:4b で小さく始めるのが現実的
- 速度は環境によって大きく変わるため、
--verboseで自分の実測値を必ず取っておく
まず ollama pull gemma3:12b でモデルを取得し、--verbose をつけて日本語のプロンプトを投げてみてください。tok/s の実測値が手元にあると、その後のモデル選びの判断軸が具体的になります。
よくある質問
gemma3とllama3.1はどちらが日本語に強いですか?
日本語の学習データを意図的に組み込んでいるgemma3のほうが安定した日本語出力を得やすい傾向があります。llama3.1も日本語は扱えますが、文章の自然さではgemma3に劣ることがあります。英語タスクが主目的ならllama3.1が有利です。
RTX 3060でllama3.1:70bは動きますか?
4ビット量子化でも推定40GB以上のVRAMが必要なため、RTX 3060の12GBには収まりません。CPUオフロードを使えば起動できますが速度が極端に落ちます。RTX 3060で扱えるllama3.1シリーズは8bが現実的な上限です。
OllamaのAPIをアプリから呼び出す方法は?
Ollamaはlocalhost:11434にREST APIサーバーを立ち上げます。/api/generateエンドポイントにmodelとpromptをJSONでPOSTするだけで呼び出せます。stream:falseにすると全文が一括返答され、stream:trueにするとチャンク単位でストリーミングされます。