For the complete documentation index, see llms.txt. This page is also available as Markdown.

Gemma 3 - 実行ガイド

llama.cpp、Ollama、Open WebUI上で当社のGGUFを使ってGemma 3を効果的に実行する方法と、Unslothでファインチューニングする方法を学びましょう!

Google が、270M の新モデルと従来の 1B、4B、12B、27B サイズを備えた Gemma 3 をリリースしました。270M と 1B はテキスト専用で、より大きいモデルはテキストと視覚の両方を扱います。GGUF と、効果的な実行方法、およびファインチューニングと実施方法のガイドを提供します RL Gemma 3 で!

実行チュートリアルファインチューニングチュートリアル

Unsloth は、Gemma 3 の推論と学習で float16 マシン上で動作する唯一のフレームワークです。 つまり、無料の Tesla T4 GPU を使う Colab ノートブックでも動作します!

Gemma チームによると、推論の最適な設定は temperature = 1.0, top_k = 64, top_p = 0.95, min_p = 0.0

最適な設定付きの Unsloth Gemma 3 アップロード:

⚙️ 推奨推論設定

Gemma チームによると、公式に推奨される推論設定は次のとおりです:

  • Temperature 1.0

  • Top_K 64

  • Min_P 0.00(任意ですが、0.01 でもうまく動作します。llama.cpp のデフォルトは 0.1 です)

  • Top_P 0.95

  • 反復ペナルティ 1.0。(1.0 は llama.cpp と transformers では無効を意味します)

  • チャットテンプレート:

    <bos><start_of_turn>user\nこんにちは!<end_of_turn>\n<start_of_turn>model\nやあ!<end_of_turn>\n<start_of_turn>user\n1+1 は?<end_of_turn>\n<start_of_turn>model\n
  • \n付きのチャットテンプレート \n改行を表示したもの(最後のものを除く)

✨スマートフォンで Gemma 3 を実行する

モデルをスマートフォンで実行するには、スマホのようなエッジデバイス上で GGUF をローカル実行できるモバイルアプリの利用をおすすめします。ファインチューニング後に GGUF に書き出し、スマホ上でローカル実行できます。モデルの処理には十分な RAM/電力が必要で、過熱する可能性があるため、この用途では Gemma 3 270M または Gemma 3n モデルの使用を推奨します。次を試せます オープンソースプロジェクト AnythingLLM の モバイルアプリ。こちらからダウンロードできます Android 版はこちら または ChatterUI。これらはスマホで GGUF を実行するのに最適なアプリです。

🦙 チュートリアル: Ollama で Gemma 3 を実行する方法

  1. インストール ollama まだなら!

  1. モデルを実行してください!失敗した場合は、 ollama serveを別の端末で呼び出せます。修正点と推奨パラメータ(temperature など)はすべて params Hugging Face のアップロード内で! モデル名 'gemma-3-27b-it-GGUF' は 'gemma-3-270m-it-GGUF:Q8_K_XL' のような任意の Gemma モデルに変更できます。

📖 チュートリアル: llama.cpp で Gemma 3 27B を実行する方法

  1. 最新の llama.cppGitHub こちらから入手してください。以下のビルド手順に従うこともできます。 -DGGML_CUDA=ON-DGGML_CUDA=OFF に変更してください。GPU がない場合、または CPU 推論だけを行いたい場合です。 Apple Mac / Metal デバイスでは、次を設定し、 -DGGML_CUDA=OFF その後は通常どおり進めてください。Metal サポートはデフォルトで有効です。

  1. を使いたい場合は llama.cpp モデルを直接読み込むには、以下を実行できます。(:Q4_K_XL) は量子化タイプです。Hugging Face 経由でもダウンロードできます(3 を参照)。これは次と同様です ollama run

  1. または (インストール後に)経由でモデルをダウンロードします pip install huggingface_hub hf_transfer 。Q4_K_M や他の量子化版(BF16 の完全精度など)を選べます。その他のバージョンはこちら: https://huggingface.co/unsloth/gemma-3-27b-it-GGUF

  1. Unsloth の Flappy Bird テストを実行

  2. 編集 --threads 32 CPU スレッド数について、 --ctx-size 16384 コンテキスト長用(Gemma 3 は 128K のコンテキスト長をサポートします!) --n-gpu-layers 99 GPU オフロードするレイヤー数について。GPU がメモリ不足になったら調整してみてください。CPU のみで推論する場合は、これも削除してください。

  3. 会話モードの場合:

  1. 会話モード以外で Flappy Bird をテストする場合:

弊社の https://unsloth.ai/blog/deepseekr1-dynamic 1.58bit ブログの全文入力は次のとおりです:

🦥 Unsloth で Gemma 3 をファインチューニングする

Unsloth は、Gemma 3 の推論と学習で float16 マシン上で動作する唯一のフレームワークです。 つまり、無料の Tesla T4 GPU を使う Colab ノートブックでも動作します!

Unsloth のファインチューニング修正

Unsloth での私たちの解決策は 3 段階です:

  1. すべての中間活性化を bfloat16 形式に保つ - float32 でもよいですが、その場合は 2 倍の VRAM または RAM を使用します(Unsloth の非同期勾配チェックポイント処理を使用)

  2. テンソルコアを使ってすべての行列乗算を float16 で行い、ただし PyTorch の mixed precision autocast の助けを借りずに、手動で upcast / downcast します。

  3. 行列乗算を必要としないその他の項目(layernorm など)はすべて float32 に upcast します。

🤔 Gemma 3 修正の分析

Gemma 3 1B から 27B は float16 の最大値 65504 を超えます

まず、Gemma 3 をファインチューニングまたは実行する前に、float16 の mixed precision を使用すると、勾配と 活性化が無限大になります 残念ながらこれは、float16 の tensor core しか持たない T4 GPU、RTX 20x シリーズ、V100 GPU で起こります。

RTX 30x 以上、A100、H100 などの新しい GPU では、これらの GPU は bfloat16 tensor core を備えているため、この問題は発生しません! では、なぜ?

Float16 では最大で 65504までの数しか表現できませんが、bfloat16 では 10^38までの巨大な数を表現できます! ただし、どちらの数値形式も 16 ビットしか使わないことに注意してください! これは、float16 がより多くのビットを割り当てて小さな小数をよりよく表現できる一方で、bfloat16 は分数をうまく表現できないためです。

でも、なぜ float16 なのか? それなら float32 を使えばいいのでは! しかし残念ながら GPU 上の float32 は行列乗算では非常に遅く、場合によっては 4〜10 倍も遅くなります! そのため、これは使えません。

最終更新

役に立ちましたか?