モデル概要
モデル特徴
モデル能力
使用事例
🚀 Gemma 3nモデル紹介
Gemma 3nはGoogleが開発した軽量で最先端のオープンソースモデルファミリーで、Geminiモデルと同じ研究と技術に基づいて構築されています。このモデルは、テキスト、オーディオ、ビジュアル(画像とビデオ)の入力をサポートし、自動音声認識や自動音声翻訳など、様々なタスクに適用可能です。
🚀 クイックスタート
このリポジトリはGemma 3n E4B IT(指令)のリリースバージョンに対応しており、Hugging Faceのtransformers
ライブラリと併用することができます。Gemma 3nモデルはtransformers 4.53.0バージョンからサポートされています。
まず、Transformersライブラリをインストールします。
$ pip install -U transformers
次に、あなたのユースケースに応じて関連するコードスニペットをコピーします。
モデルの実行
pipeline
APIを使用した実行
pipeline
を使用してモデルとプロセッサを初期化し、推論を行うことができます。以下に例を示します。
from transformers import pipeline
import torch
pipe = pipeline(
"image-text-to-text",
model="google/gemma-3n-e4b-it",
device="cuda",
torch_dtype=torch.bfloat16,
)
指令微調整されたモデルの場合は、入力をチャットテンプレートで処理してからpipelineに渡す必要があります。
messages = [
{
"role": "system",
"content": [{"type": "text", "text": "You are a helpful assistant."}]
},
{
"role": "user",
"content": [
{"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"},
{"type": "text", "text": "What animal is on the candy?"}
]
}
]
output = pipe(text=messages, max_new_tokens=200)
print(output[0]["generated_text"][-1]["content"])
# Okay, let's take a look!
# Based on the image, the animal on the candy is a **turtle**.
# You can see the shell shape and the head and legs.
単一のGPUでモデルを実行する
from transformers import AutoProcessor, Gemma3nForConditionalGeneration
from PIL import Image
import requests
import torch
model_id = "google/gemma-3n-e4b-it"
model = Gemma3nForConditionalGeneration.from_pretrained(model_id, device_map="auto", torch_dtype=torch.bfloat16,).eval()
processor = AutoProcessor.from_pretrained(model_id)
messages = [
{
"role": "system",
"content": [{"type": "text", "text": "You are a helpful assistant."}]
},
{
"role": "user",
"content": [
{"type": "image", "image": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/bee.jpg"},
{"type": "text", "text": "Describe this image in detail."}
]
}
]
inputs = processor.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
with torch.inference_mode():
generation = model.generate(**inputs, max_new_tokens=100, do_sample=False)
generation = generation[0][input_len:]
decoded = processor.decode(generation, skip_special_tokens=True)
print(decoded)
# **Overall Impression:** The image is a close-up shot of a vibrant garden scene,
# focusing on a cluster of pink cosmos flowers and a busy bumblebee.
# It has a slightly soft, natural feel, likely captured in daylight.
✨ 主な機能
- マルチモーダル入力サポート:テキスト、オーディオ、画像、ビデオの入力を処理できます。
- アーキテクチャの革新:有効パラメータに基づく2種類のサイズがあり、MatFormerアーキテクチャを採用しており、E4Bモデル内にサブモデルをネストすることができます。
- 効率的なリソース利用:低利用率の行列をアクセラレータからアンロードすることで、モデルを従来の4Bモデルと同等のメモリ使用量で実行できます。
- 広範な学習データ:約11兆個のトークンを含むデータセットで学習されており、ウェブドキュメント、コード、数学、画像、オーディオなど、様々なソースのデータが含まれています。
📦 インストール
Transformersライブラリをインストールします。
$ pip install -U transformers
💻 使用例
基本的な使用法
pipeline
APIを使用して推論を行います。
from transformers import pipeline
import torch
pipe = pipeline(
"image-text-to-text",
model="google/gemma-3n-e4b-it",
device="cuda",
torch_dtype=torch.bfloat16,
)
高度な使用法
単一のGPUでモデルを実行します。
from transformers import AutoProcessor, Gemma3nForConditionalGeneration
from PIL import Image
import requests
import torch
model_id = "google/gemma-3n-e4b-it"
model = Gemma3nForConditionalGeneration.from_pretrained(model_id, device_map="auto", torch_dtype=torch.bfloat16,).eval()
processor = AutoProcessor.from_pretrained(model_id)
messages = [
{
"role": "system",
"content": [{"type": "text", "text": "You are a helpful assistant."}]
},
{
"role": "user",
"content": [
{"type": "image", "image": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/bee.jpg"},
{"type": "text", "text": "Describe this image in detail."}
]
}
]
inputs = processor.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
with torch.inference_mode():
generation = model.generate(**inputs, max_new_tokens=100, do_sample=False)
generation = generation[0][input_len:]
decoded = processor.decode(generation, skip_special_tokens=True)
print(decoded)
# **Overall Impression:** The image is a close-up shot of a vibrant garden scene,
# focusing on a cluster of pink cosmos flowers and a busy bumblebee.
# It has a slightly soft, natural feel, likely captured in daylight.
📚 ドキュメント
モデル情報
概要
GemmaはGoogleが開発した軽量で最先端のオープンソースモデルファミリーで、Geminiモデルと同じ研究と技術に基づいて構築されています。Gemma 3nモデルは低リソースデバイスでの効率的な実行を目的として設計されており、マルチモーダル入力を処理し、テキスト出力を生成することができます。また、事前学習と指令微調整のバリエーションの重みは公開されています。これらのモデルは140種類以上の言語のデータセットで学習されています。
Gemma 3nモデルは選択的パラメータ活性化技術を使用してリソース要件を削減し、2Bと4Bの有効パラメータ規模で動作することを可能にしています。これは、実際に含まれるパラメータの総数よりも少ないです。Gemma 3nの効率的なパラメータ管理技術の詳細については、Gemma 3nページを参照してください。
入力と出力
タイプ | 詳細 |
---|---|
入力 | - テキスト文字列(質問、プロンプト、要約するドキュメントなど) - 256x256、512x512、または768x768の解像度に正規化された画像(各画像は256個のトークンにエンコードされます) - 単チャンネルのオーディオデータ(1秒あたり6.25個のトークンにエンコードされます) - 総入力コンテキストは32K個のトークン |
出力 | - 入力に対する生成テキスト応答(質問の答え、画像内容の分析、ドキュメントの要約など) - 総出力長は最大32K個のトークンで、リクエスト入力トークンを差し引いたもの |
モデルデータ
学習データセット
これらのモデルは約11兆個のトークンを含むデータセットで学習されており、知識の截止日は2024年6月です。主な構成要素は以下の通りです。
- ウェブドキュメント:多様なウェブテキストの集合で、モデルが幅広い言語スタイル、トピック、語彙に触れることができます。
- コード:モデルがプログラミング言語の構文とパターンを学習し、コード生成やコード関連の問題の理解能力を向上させます。
- 数学:モデルが論理的な推論、記号表現、数学的なクエリの解決を学習するのに役立ちます。
- 画像:幅広い画像データにより、モデルが画像分析やビジュアルデータの抽出タスクを実行できるようになります。
- オーディオ:多様な音声サンプルにより、モデルが音声認識、テキストの文字起こし、オーディオデータ内の情報の識別を行うことができます。
データ前処理
学習データには以下の重要なデータクリーニングとフィルタリング方法が適用されています。
- CSAMフィルタリング:データ準備プロセスの複数の段階で厳格なCSAM(児童性虐待材料)フィルタリングを適用し、有害で違法なコンテンツを排除します。
- 敏感データフィルタリング:自動化技術を使用して、学習データセットから特定の個人情報やその他の敏感なデータをフィルタリングします。
- その他の方法:当社のポリシーに基づいて、コンテンツの品質と安全性のフィルタリングを行います。
実装情報
ハードウェア
Gemmaはテンソル処理ユニット(TPU)ハードウェア(TPUv4p、TPUv5p、TPUv5e)を使用して学習されています。TPUは機械学習で一般的な行列演算用に設計されており、以下のような利点があります。
- 性能:生成モデルの学習における大量の計算を処理でき、CPUよりも大幅に学習を高速化します。
- メモリ:通常、大量の高帯域幅メモリを備えており、学習中に大型のモデルとバッチサイズを処理でき、モデルの品質向上に役立ちます。
- 拡張性:TPU Pod(大型のTPUクラスター)は、大型の基礎モデルの増大する複雑さを処理するための拡張可能なソリューションを提供します。
- コスト効率:多くの場合、CPUベースのインフラストラクチャと比較して、TPUは大型モデルの学習によりコスト効率の高いソリューションを提供できます。
ソフトウェア
学習にはJAXとML Pathwaysが使用されています。JAXにより、研究者は最新世代のハードウェア(TPUを含む)を利用して、より高速で効率的な大型モデルの学習が可能になります。ML Pathwaysは、Googleが複数のタスクにまたがって汎化できる人工知能システムを構築する最新の取り組みであり、基礎モデルに特に適しています。
評価
ベンチマークテスト結果
これらのモデルは、全精度(float32)で多数の異なるデータセットと指標に対して評価され、コンテンツ生成の様々な側面を網羅しています。評価結果のうち、ITとマークされたものは指令微調整モデルに関するもので、PTとマークされたものは事前学習モデルに関するものです。
推論と事実性
ベンチマーク | 指標 | n-shot | E2B PT | E4B PT |
---|---|---|---|---|
HellaSwag | 正解率 | 10-shot | 72.2 | 78.6 |
BoolQ | 正解率 | 0-shot | 76.4 | 81.6 |
PIQA | 正解率 | 0-shot | 78.9 | 81.0 |
SocialIQA | 正解率 | 0-shot | 48.8 | 50.0 |
TriviaQA | 正解率 | 5-shot | 60.8 | 70.2 |
Natural Questions | 正解率 | 5-shot | 15.5 | 20.9 |
ARC-c | 正解率 | 25-shot | 51.7 | 61.6 |
ARC-e | 正解率 | 0-shot | 75.8 | 81.6 |
WinoGrande | 正解率 | 5-shot | 66.8 | 71.7 |
BIG-Bench Hard | 正解率 | few-shot | 44.3 | 52.9 |
DROP | トークンF1スコア | 1-shot | 53.9 | 60.8 |
多言語
ベンチマーク | 指標 | n-shot | E2B IT | E4B IT |
---|---|---|---|---|
MGSM | 正解率 | 0-shot | 53.1 | 60.7 |
WMT24++ (ChrF) | 文字レベルのFスコア | 0-shot | 42.7 | 50.1 |
Include | 正解率 | 0-shot | 38.6 | 57.2 |
MMLU (ProX) | 正解率 | 0-shot | 8.1 | 19.9 |
OpenAI MMLU | 正解率 | 0-shot | 22.3 | 35.6 |
Global-MMLU | 正解率 | 0-shot | 55.1 | 60.3 |
ECLeKTic | ECLeKTicスコア | 0-shot | 2.5 | 1.9 |
STEMとコード
ベンチマーク | 指標 | n-shot | E2B IT | E4B IT |
---|---|---|---|---|
GPQA Diamond | 緩い正解率/正解率 | 0-shot | 24.8 | 23.7 |
LiveCodeBench v5 | pass@1 | 0-shot | 18.6 | 25.7 |
Codegolf v2.2 | pass@1 | 0-shot | 11.0 | 16.8 |
AIME 2025 | 正解率 | 0-shot | 6.7 | 11.6 |
その他のベンチマーク
ベンチマーク | 指標 | n-shot | E2B IT | E4B IT |
---|---|---|---|---|
MMLU | 正解率 | 0-shot | 60.1 | 64.9 |
MBPP | pass@1 | 3-shot | 56.6 | 63.6 |
HumanEval | pass@1 | 0-shot | 66.5 | 75.0 |
LiveCodeBench | pass@1 | 0-shot | 13.2 | 13.2 |
HiddenMath | 正解率 | 0-shot | 27.7 | 37.7 |
Global-MMLU-Lite | 正解率 | 0-shot | 59.0 | 64.5 |
MMLU (Pro) | 正解率 | 0-shot | 40.5 | 50.6 |
倫理とセキュリティ
評価方法
評価方法には、構造化された評価と内部のレッドチームテストに関連するコンテンツポリシーが含まれています。レッドチームテストは複数の異なるチームによって行われ、各チームには異なる目標と人間による評価指標があります。これらのモデルは、倫理とセキュリティに関連する複数の異なるカテゴリに対して評価されており、以下のものが含まれます。
- 児童安全:テキストからテキスト、画像からテキストのプロンプトを評価し、児童性虐待や搾取を含む児童安全ポリシーを対象としています。
- コンテンツセキュリティ:テキストからテキスト、画像からテキストのプロンプトを評価し、嫌がらせ、暴力、血腥なコンテンツ、ハットスピーチを含むセキュリティポリシーを対象としています。
- 表現上の危害:テキストからテキスト、画像からテキストのプロンプトを評価し、偏見、ステレオタイプ、有害な関連付け、または不正確な情報を含むセキュリティポリシーを対象としています。
開発段階の評価に加えて、「保証評価」も行われます。これは、モデル開発チームとは独立して行われる内部評価であり、責任管理の決定に使用されます。評価結果の高レベルの発見はモデルチームにフィードバックされますが、プロンプトセットは公開されず、過学習を防ぎ、結果の決定への参考価値を維持します。顕著な保証評価結果は、リリースレビューの一部として責任とセキュリティ委員会に報告されます。
評価結果
すべてのセキュリティテスト領域において、以前のGemmaモデルと比較して、このモデルは児童安全、コンテンツセキュリティ、表現上の危害などのカテゴリで安全レベルを示しています。すべてのテストはセキュリティフィルターを使用せずに行われ、モデルの能力と動作を評価しています。テキストからテキスト、画像からテキスト、オーディオからテキスト、およびすべてのモデルサイズについて、モデルはポリシー違反を最小限に抑え、高い深刻度の違反に関しては以前のGemmaモデルと比較して著しい改善を示しています。評価の1つの制限は、主に英語のプロンプトが含まれていることです。
使用と制限
想定される用途
オープン生成モデルは、さまざまな業界や分野で幅広い用途があります。以下の潜在的な用途のリストは網羅的ではなく、モデル作成者がモデルの学習と開発過程で考慮した可能性のあるユースケースのコンテキスト情報を提供することを目的としています。
- コンテンツ作成と通信
- テキスト生成:詩、脚本、コード、マーケティングコピー、電子メール草稿などの創造的なテキスト形式を生成します。
- チャットボットと対話型AI:カスタマーサービス、バーチャルアシスタント、またはインタラクティブなアプリケーションの対話インターフェースを提供します。
- テキスト要約:テキストコーパス、研究論文、またはレポートの簡潔な要約を生成します。
- 画像データ抽出:視覚データを抽出、解釈、要約してテキスト通信に使用します。
- オーディオデータ抽出:口頭の発話を文字起こし、音声を他の言語のテキストに翻訳し、音声ベースのデータを分析します。
- 研究と教育
- 自然言語処理(NLP)と生成モデルの研究:これらのモデルは、研究者が生成モデルとNLP技術を試すための基礎として使用できます。
制限
ユーザーは、これらのモデルには一定の制限があることに注意する必要があります。評価は主に英語のプロンプトを使用して行われたため、他の言語での性能は異なる場合があります。また、モデルの知識截止日は2024年6月であり、最新の情報を提供できない可能性があります。
🔧 技術詳細
アーキテクチャの革新
Gemma 3nモデルは有効パラメータに基づく2種類のサイズがあり、MatFormerアーキテクチャを採用しており、E4Bモデル内にサブモデルをネストすることができます。低利用率の行列をアクセラレータからアンロードすることで、モデルを従来の4Bモデルと同等のメモリ使用量で実行できます。
学習ハードウェア
学習にはテンソル処理ユニット(TPU)ハードウェア(TPUv4p、TPUv5p、TPUv5e)が使用されています。TPUは高性能、大容量メモリ、拡張性、コスト効率に優れています。
学習ソフトウェア
学習にはJAXとML Pathwaysが使用されています。JAXにより、研究者は最新世代のハードウェアを利用して、より高速で効率的な大型モデルの学習が可能になります。ML Pathwaysは、基礎モデルに特に適しています。
📄 ライセンス
Hugging Face上でGemmaにアクセスするには、Googleの使用許諾を確認して同意する必要があります。そのためには、Hugging Faceにログインし、以下のボタンをクリックしてください。リクエストはすぐに処理されます。
引用
@article{gemma_3n_2025,
title={Gemma 3n},
url={https://ai.google.dev/gemma/docs/gemma-3n},
publisher={Google DeepMind},
author={Gemma Team},
year={2025}
}
モデルリソース








