mcpField
G
gemma-dev

gemma-dev

github.com/google-gemma開発1.0k434 回インストール今日更新
リポジトリ

gemma-dev について

gemma-devは、Gemmaアプリ開発向けのスキルです。タスク、入力モダリティ、デプロイ条件に応じたモデルやツールの選定に加え、推論最適化とドキュメント参照を案内します。

主な機能

  1. 01タスクとモダリティに応じたGemmaモデルの選定
  2. 02試作、クラウド、デバイス向けツールの選択
  3. 03MTPによる推論高速化の提案
  4. 04デプロイ先に応じたQATモデルの推薦
  5. 05MCPまたは公式ドキュメントの参照案内

活用シーン

  1. 01マルチモーダルアプリ向けGemmaモデルの選択
  2. 02ブラウザーまたはクラウドへのデプロイ計画
  3. 03推論レイテンシの低減や量子化モデルの選択

MCP 対応

Google MCP サーバーに search_documentation ツールがある場合、スキルはそれだけをドキュメント参照元として使うよう案内します。ない場合は公式ドキュメントのURLを使います。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/google-gemma/gemma-skills --skill gemma-dev

インストール後、Claude Code で/gemma-devを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/
gradio-app.py
transformers-js-app.js
vertex-ai-app.py

詳細

Gemma 開発スキル

1. 基本原則:アプリ開発ツールを優先する

ユーザーが「Training」「Fine-tuning」または「Research」を明示的に依頼しない限り、生の PyTorch、TensorFlow、または transformers のコードを生成しないでください。常に、アプリ開発向けに最適化された高レベルのフレームワーク、SDK、ツールをデフォルトとして使用してください。

2. モデル選択ガイド

重要: gemma-3-1b-it を安易にデフォルトとして選ばないでください。ユーザー固有のドメイン、技術的な制約、必要な入力モダリティを分析し、最適なモデルを正確に推奨してください。標準モデルを推奨する場合は、必ず Gemma 4 世代をデフォルトとして選んでください。ライブラリが Gemma 4 アーキテクチャに対応していない場合は、ライブラリを更新してから再度試してください。

Gemma の主要モデル

Gemma 4 のすべてのモデルには思考モードが搭載されており、応答を生成する前に複雑な論理、数学、複数ステップの問題を処理する高度な推論が可能です。

  • Gemma 4(26B A4B/31B)
    • リポジトリ:google/gemma-4-26B-A4B-it、google/gemma-4-31B-it
    • 対応入力:テキストと画像
    • コンテキストウィンドウ:256K トークン
    • 最適な用途:高度なマルチモーダル推論、複雑なビジョンタスク、大量のドキュメントコンテキストの分析。
    • 注:26B A4B は、高速で大規模な推論を実現する高効率な Mixture-of-Experts を採用しており、密モデルの 31B バリアントも用意されています。
  • Gemma 4(12B)
    • リポジトリ:google/gemma-4-12B-it
    • 対応入力:テキスト、画像、音声
    • コンテキストウィンドウ:256K トークン
    • 最適な用途:マルチモーダル推論(音声を含む)、ノート PC での推論、コンシューマー向けデバイス。
  • Gemma 4(E2B/E4B)
    • リポジトリ:google/gemma-4-E2B-it、google/gemma-4-E4B-it
    • 対応入力:テキスト、画像、音声
    • コンテキストウィンドウ:128K トークン
    • 最適な用途:モバイル NPU による高速化。堅牢な推論とネイティブな音声処理の両方を明示的に必要とするオンデバイスのワークフロー。
レガシーおよび軽量モデル(Gemma 3)
  • Gemma 3(4B/12B/27B)
    • リポジトリ:google/gemma-3-4b-it、google/gemma-3-12b-it、google/gemma-3-27b-it
    • 128K のコンテキストウィンドウで、テキストと画像の入力に対応します。ハードウェアが前世代のアーキテクチャ向けに明示的に最適化されている場合に使用してください。
  • Gemma 3(270M/1B)
    • リポジトリ:google/gemma-3-270m-it、google/gemma-3-1b-it
    • 32K のコンテキストウィンドウで、テキストのみの入力に対応します。厳しいリソース制約のある環境での高速かつ軽量なテキスト生成やエッジコンピューティングに使用してください。
タスク専用バリアント

標準モデルに高度に専門化されたワークフローを無理に実行させず、目的に特化したバリアントをユーザーに案内してください。

  • RAG/ベクトル検索:EmbeddingGemma 2 を使用
    • リポジトリ:google/embeddinggemma-2
    • この専用の埋め込みモデルは、出力次元を柔軟に指定(128~768)でき、最大 8k トークンに対応します。ベストプラクティスについては、EmbeddingGemma 2 のモデルカードを取得してください。
  • コンテンツモデレーション:ShieldGemma 2 を使用
    • リポジトリ:google/shieldgemma-2-4b-it
    • この分類器は、セーフティコンプライアンスを確保するため、メインの LLM と並行して実行できるように設計されています。ベストプラクティスについては、ShieldGemma 2 のモデルカードを取得してください。

3. デプロイのワークフロー

ユーザーのデプロイ目標に適したツールスタックとベストプラクティスを案内します。

  • プロトタイピングとデモ:Gradio と Transformers を使用して、Python でインタラクティブな UI を迅速にプロトタイピングします。[assets/gradio-app.py] のベストプラクティスに従ってください。
  • Web アプリケーションとクライアントアプリケーション:transformers.js を使用して、デバイス上で直接、またはブラウザー内だけで推論を実行します。[assets/transformers-js-app.js] のベストプラクティスに従ってください。重要: 必ず Hugging Face 版(npm i @huggingface/transformers)をインストールし、Xenova 版(npm i @xenova/transformers)は使用しないでください。
  • エンタープライズ向けクラウドデプロイ:Vertex AI を使用して、コンテナ化されたスケーラブルなクラウドネイティブの本番環境を構築します。[assets/vertex-ai-app.py] のベストプラクティスに従ってください。そのためには、環境変数 GOOGLE_CLOUD_PROJECT、GOOGLE_CLOUD_LOCATION(例:us-central1)、GOOGLE_CLOUD_ENDPOINT_ID を設定する必要があります。
  • Apple Silicon(MLX):ユーザーが Mac の Apple Silicon ハードウェアを使用している場合は、MLX を推奨します。これらの設定は、主にテキストのワークフロー向けに最適化されています。
    • 簡単な方法:Ollama を、gemma4:26b や gemma4:31b などのモデルタグとともに使用します。
    • 高度な方法:mlx-lm パッケージ(pip install mlx-lm)を使用して、mlx_lm.lora による直接的な制御、カスタム量子化、ファインチューニング(LoRA/QLoRA)を行います。
    • 詳細については、MLX integration guide を参照してください。

4. マルチトークン予測(MTP)による推論の高速化

ユーザーがより高速な推論や低レイテンシを求めている場合は、Gemma 4 に組み込まれた投機的デコーディング技術である**マルチトークン予測(MTP)**を推奨します。MTP は、軽量なドラフター(アシスタント)モデルを使用して複数の候補トークンを提案し、完全なターゲットモデルが 1 回のフォワードパスでそれらを検証します。これにより、同じ出力品質を保証しながら、大幅に高速化できます。

アシスタントモデルのリポジトリ

各 Gemma 4 ターゲットモデルには、対応するアシスタントモデルがあります。命名規則は <target-model-id>-assistant です。

  • リポジトリ:
    • google/gemma-4-E2B-it-assistant
    • google/gemma-4-E4B-it-assistant
    • google/gemma-4-12B-it-assistant
    • google/gemma-4-31B-it-assistant
    • google/gemma-4-26B-A4B-it-assistant

ベストプラクティスについては、Speed-up Gemma 4 with Multi-Token Prediction を取得してください。

5. 量子化を考慮した学習(QAT)

品質を最小限しか損なわずに効率を最大化するデプロイでは、Gemma の公式**量子化を考慮した学習(QAT)**モデルを利用できます。学習済みモデルを圧縮する標準的な学習後量子化(PTQ)では品質が低下する場合がありますが、QAT は量子化のシミュレーションを学習プロセス自体に組み込みます。

ターゲットのデプロイエンジンに応じて、QAT モデルを推奨してください。

  • llama.cpp / LM Studio(ローカル): {model-name}-qat-q4_0-gguf(単一ファイルの GGUF バイナリ)を推奨します。
  • vLLM / SGLang: サーバー向けには {model-name}-qat-w4a16-ct、モバイル向けには {model-name}-qat-mobile-ct を推奨します。圧縮テンソルで、4 ビットの重みと 16 ビットのアクティベーションを使用します。
  • 投機的デコーディング: {model-name}-qat-q4_0-unquantized を、対応するアシスタントのドラフトモデル {model-name}-qat-q4_0-unquantized-assistant と組み合わせて使用することを推奨します。
  • その他の形式: 他の形式(例:MLX)に変換するため、重みが量子化されていない {model-name}-qat-q4_0-unquantized を推奨します。
  • モバイルデプロイ(Transformers): 2 ビットのデコーディング層、最適化された KV キャッシュ、静的アクティベーションを活用する {model-name}-qat-mobile-transformers を推奨します。

Hugging Face の公式コレクション:

  • collections/google/gemma-4-qat-q4_0:-unquantized/-assistant(E2B、E4B、12B、26B A4B、31B)、-gguf(E2B、E4B、12B、26B A4B、31B)、-w4a16-ct(E2B、E4B、12B、31B)が含まれています。
  • collections/google/gemma-4-qat-mobile:-mobile-transformers/-mobile-ct(E2B、E4B)が含まれています。

6. ドキュメントの参照

MCP がインストールされている場合(推奨)

Google MCP サーバーの search_documentation ツールを利用できる場合は、ドキュメントの情報源としてそれだけを使用してください。

  1. クエリを指定して search_documentation を呼び出します
  2. 返されたドキュメントを読みます
  3. API の詳細については、MCP の検索結果を信頼してください。常に最新の情報が得られます。

重要

MCP ツールが利用できる場合は、URL を手動で取得しないでください。MCP は URL の取得よりも正確で、トークン効率に優れた、最新のインデックス済みドキュメントを提供します。

MCP がインストールされていない場合(フォールバックのみ)

MCP のドキュメントツールが利用できない場合は、fetch_url を使用して公式ドキュメントを取得してください。

  1. Index URL(https://gemma.ai/llms.txt)を取得して、利用可能なページを確認します。
  2. 必要に応じて特定のページを取得します。主なリファレンスページは次のとおりです。

コメント