本模型卡适用于 Gemma 4 12B 统一模型,它是 Gemma 4 开源模型家族的一员。该模型具备与 Gemma 4 E2B 和 E4B 相同的多模态功能(文本、音频、图像和视频输入),可将原生音频和视觉理解能力直接带入本地环境,无需单独的编码器。这种统一的多模态方法使模型无需编码器,其部署规模非常适合消费级设备和简化的本地执行。
Gemma 是由 Google DeepMind 构建的一系列开源模型。Gemma 4 模型是多模态的,可处理文本和图像输入(E2B、E4B 和 12B 模型还支持音频),并生成文本输出。此版本包含预训练和指令微调两种变体的开放权重模型。Gemma 4 的上下文窗口高达 256K 个词元,并支持超过 140 种语言的多语言能力。
Gemma 4 同时采用了稠密型和混合专家(MoE)架构,非常适合文本生成、编码和推理等任务。该系列模型提供五种不同的规模:E2B、E4B、12B、26B A4B 和 31B。其多样化的规模使其能够部署从高端手机到笔记本电脑和服务器的各种环境,从而普及对最先进 AI 的访问。
Gemma 4 引入了关键的能力和架构进步:
system 角色的原生支持,实现了更结构化和可控的对话。Gemma 4 模型旨在为每种规模提供前沿性能,针对从移动和边缘设备(E2B, E4B)到消费级 GPU 和工作站(12B, 26B A4B, 31B)的部署场景。它们非常适合推理、代理工作流、编码和多模态理解。
这些模型采用混合注意力机制,将局部滑动窗口注意力与全局注意力交错在一起,确保最后一层始终是全局的。这种混合设计提供了轻量级模型的处理速度和低内存占用,同时不牺牲复杂长上下文任务所需的深度感知。为了优化长上下文的内存,全局层采用了统一的键值对,并应用了比例 RoPE(p-RoPE)。
| 属性 | E2B | E4B | 12B 统一模型 | 31B 稠密模型 |
|---|---|---|---|---|
| 总参数量 | 23亿 有效参数 (含嵌入为 51亿) | 45亿 有效参数 (含嵌入为 80亿) | 119.5亿 | 307亿 |
| 层数 | 35 | 42 | 48 | 60 |
| 滑动窗口 | 512 词元 | 512 词元 | 1024 词元 | 1024 词元 |
| 上下文长度 | 128K 词元 | 128K 词元 | 256K 词元 | 256K 词元 |
| 词表大小 | 262K | 262K | 262K | 262K |
| 支持的模态 | 文本, 图像, 音频 | 文本, 图像, 音频 | 文本, 图像, 音频 | 文本, 图像 |
| 视觉编码器参数量 | ~1.5亿 | ~1.5亿 | - | ~5.5亿 |
| 音频编码器参数量 | ~3亿 | ~3亿 | - | 不支持音频 |
E2B 和 E4B 中的“E”代表“有效”参数。这些较小的模型采用了每层嵌入(PLE)技术,以最大化设备端部署的参数效率。PLE 不向模型添加更多层或参数,而是为每个解码器层的每个词元提供其自身的小型嵌入。这些嵌入表很大,但仅用于快速查找,这就是有效参数数量远小于总数量的原因。
Gemma 4 12B 统一模型中的“统一”指的是其无需编码器的架构。其他 Gemma 4 模型在将多模态数据传递给 LLM 之前,会使用专门的编码器进行处理。Gemma 4 12B 完全消除了这些编码器,通过轻量级线性层将原始图像块和音频波形直接映射到 LLM 的嵌入空间。这种统一的方法意味着所有模态都直接流入一个仅解码器的变换器,从而减少多模态延迟,并允许整个模型在一次传递中进行微调。
| 属性 | 26B A4B MoE |
|---|---|
| 总参数量 | 252亿 |
| 激活参数量 | 38亿 |
| 层数 | 30 |
| 滑动窗口 | 1024 词元 |
| 上下文长度 | 256K 词元 |
| 词表大小 | 262K |
| 专家数量 | 8 激活 / 128 总数,以及 1 个共享专家 |
| 支持的模态 | 文本, 图像 |
| 视觉编码器参数量 | ~5.5亿 |
26B A4B 中的“A”代表“激活参数”,与模型包含的总参数数量形成对比。通过在推理期间仅激活 40 亿参数的子集,混合专家模型的运行速度远快于其 260 亿总参数所暗示的速度。与稠密的 310 亿模型相比,这使其成为快速推理的绝佳选择,因为它的运行速度几乎与 40 亿参数的模型一样快。
这些模型针对大量不同的数据集和指标进行了评估,以涵盖文本生成的不同方面。表中标记的评估结果针对的是指令微调模型。
| Gemma 4 31B | Gemma 4 26B A4B | Gemma 4 12B 统一模型 | Gemma 4 E4B | Gemma 4 E2B | Gemma 3 27B (非思维模式) | |
|---|---|---|---|---|---|---|
| MMLU Pro | 85.2% | 82.6% | 77.2% | 69.4% | 60.0% | 67.6% |
| AIME 2026 不使用工具 | 89.2% | 88.3% | 77.5% | 42.5% | 37.5% | 20.8% |
| LiveCodeBench v6 | 80.0% | 77.1% | 72.0% | 52.0% | 44.0% | 29.1% |
| Codeforces ELO | 2150 | 1718 | 1659 | 940 | 633 | 110 |
| GPQA Diamond | 84.3% | 82.3% | 78.8% | 58.6% | 43.4% | 42.4% |
| Tau2 (三项平均) | 76.9% | 68.2% | 69.0% | 42.2% | 24.5% | 16.2% |
| HLE 不使用工具 | 19.5% | 8.7% | 5.2% | - | - | - |
| HLE 使用搜索 | 26.5% | 17.2% | - | - | - | - |
| BigBench 额外困难 | 74.4% | 64.8% | 53.0% | 33.1% | 21.9% | 19.3% |
| MMMLU | 88.4% | 86.3% | 83.4% | 76.6% | 67.4% | 70.7% |
| 视觉 | ||||||
| MMMU Pro | 76.9% | 73.8% | 69.1% | 52.6% | 44.2% | 49.7% |
| OmniDocBench 1.5 (平均编辑距离, 越低越好) | 0.131 | 0.149 | 0.164 | 0.181 | 0.290 | 0.365 |
| MATH-Vision | 85.6% | 82.4% | 79.7% | 59.5% | 52.4% | 46.0% |
| MedXPertQA MM | 61.3% | 58.1% | 48.7% | 28.7% | 23.5% | - |
| 音频 | ||||||
| CoVoST | - | - | 38.5* | 35.54 | 33.47 | - |
| FLEURS (越低越好) | - | - | 0.069* | 0.08 | 0.09 | - |
| 长上下文 | ||||||
| MRCR v2 8-针 128k (平均) | 66.4% | 44.1% | 43.4% | 25.4% | 19.1% | 13.5% |
* 排除中文语言。
Gemma 4 模型处理跨文本、视觉和音频的广泛任务。关键能力包括:
您可以使用最新版本的 Transformers 来使用所有 Gemma 4 模型。首先,在您的环境中安装必要的依赖项:
pip install -U transformers torch accelerate
安装完所有依赖后,您可以使用以下代码加载模型:
from transformers import AutoProcessor, AutoModelForMultimodalLM MODEL_ID = "google/gemma-4-12B-it" # Load modelprocessor = AutoProcessor.from_pretrained(MODEL_ID)model = AutoModelForMultimodalLM.from_pretrained( MODEL_ID, dtype="auto", device_map="auto")
模型加载后,您可以开始生成输出:
# 提示词messages = [ {"role": "system", "content": "你是一个乐于助人的助手。"}, {"role": "user", "content": "写一个关于节省内存的简短笑话。"},] # 处理输入inputs = processor.apply_chat_template( messages, tokenize=True, return_dict=True, return_tensors="pt", add_generation_prompt=True, enable_thinking=False).to(model.device)input_len = inputs["input_ids"].shape[-1] # 生成输出outputs = model.generate(**inputs, max_new_tokens=1024)response = processor.decode(outputs[0][input_len:], skip_special_tokens=False) # 解析输出processor.parse_response(response)
要启用推理,请设置 enable_thinking=True,parse_response 函数将负责解析思维输出。
下面,您还将找到处理音频(仅限 E2B、E4B、12B)、图像和视频以及文本的代码片段:
pip install -U transformers torch torchvision librosa accelerate
然后您可以使用以下代码加载模型:
from transformers import AutoProcessor, AutoModelForMultimodalLM MODEL_ID = "google/gemma-4-12B-it" # 加载模型processor = AutoProcessor.from_pretrained(MODEL_ID)model = AutoModelForMultimodalLM.from_pretrained( MODEL_ID, dtype="auto", device_map="auto")
模型加载后,您可以通过在提示中直接引用音频 URL 来开始生成输出:
# 提示 - 在文本后添加音频messages = [ { "role": "user", "content": [ {"type": "text", "text": "用其原始语言转录以下语音片段。请遵循以下关于格式化答案的具体说明:\n* 仅输出转录文本,不要换行。\n* 转录数字时,请写出数字,例如,写 1.7 而不是 one point seven,写 3 而不是 three。"}, {"type": "audio", "audio": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/Demos/sample-data/journal1.wav"}, ] }] # 处理输入inputs = processor.apply_chat_template( messages, tokenize=True, return_dict=True, return_tensors="pt", add_generation_prompt=True,).to(model.device)input_len = inputs["input_ids"].shape[-1] # 生成输出outputs = model.generate(**inputs, max_new_tokens=512)response = processor.decode(outputs[0][input_len:], skip_special_tokens=False) # 解析输出processor.parse_response(response)
请确保安装以下包:
pip install -U transformers torch torchvision accelerate
然后您可以使用以下代码加载模型:
from transformers import AutoProcessor, AutoModelForMultimodalLM MODEL_ID = "google/gemma-4-12B-it" # 加载模型processor = AutoProcessor.from_pretrained(MODEL_ID)model = AutoModelForMultimodalLM.from_pretrained( MODEL_ID, dtype="auto", device_map="auto")
模型加载后,您可以通过在提示中直接引用图像 URL 来开始生成输出:
# 提示 - 在文本前添加图像messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/Demos/sample-data/GoldenGate.png"}, {"type": "text", "text": "这张图片展示了什么?"} ] }] # 处理输入inputs = processor.apply_chat_template( messages, tokenize=True, return_dict=True, return_tensors="pt", add_generation_prompt=True,).to(model.device)input_len = inputs["input_ids"].shape[-1] # 生成输出outputs = model.generate(**inputs, max_new_tokens=512)response = processor.decode(outputs[0][input_len:], skip_special_tokens=False) # 解析输出processor.parse_response(response)
请确保安装以下包:
pip install -U transformers torch torchvision librosa accelerate
然后您可以使用以下代码加载模型:
from transformers import AutoProcessor, AutoModelForMultimodalLM MODEL_ID = "google/gemma-4-12B-it" # 加载模型processor = AutoProcessor.from_pretrained(MODEL_ID)model = AutoModelForMultimodalLM.from_pretrained( MODEL_ID, dtype="auto", device_map="auto")
模型加载后,您可以通过在提示中直接引用视频 URL 来开始生成输出:
# 提示 - 在文本前添加视频messages = [ { 'role': 'user', 'content': [ {"type": "video", "video": "https://github.com/bebechien/gemma/raw/refs/heads/main/videos/ForBiggerBlazes.mp4"}, {'type': 'text', 'text': '描述这个视频。'} ] }] # 处理输入inputs = processor.apply_chat_template( messages, tokenize=True, return_dict=True, return_tensors="pt", add_generation_prompt=True,).to(model.device)input_len = inputs["input_ids"].shape[-1] # 生成输出outputs = model.generate(**inputs, max_new_tokens=512)response = processor.decode(outputs[0][input_len:], skip_special_tokens=False) # 解析输出processor.parse_response(response)
为了获得最佳性能,请使用以下配置和最佳实践:
在所有用例中使用以下标准化采样配置:
与 Gemma 3 相比,这些模型使用标准的 system, assistant, 和 user 角色。为了正确管理思维过程,请使用以下控制词元:
注意:请注意,像 Transformers 和 llama.cpp 这样的许多库会为您处理聊天模板的复杂性。
历史记录中不含思维内容:在多轮对话中,历史模型输出应仅包含最终回复。上一轮模型的思考内容不得在下一轮用户开始前被添加。
为了在多模态输入中获得最佳性能,请将:
除了可变的宽高比外,Gemma 4 还通过可配置的视觉词元预算支持可变图像分辨率,该预算控制用于表示图像的词元数量。较高的词元预算以额外的计算为代价保留更多视觉细节,而较低的预算则允许对不需要细粒度理解的任务进行更快的推理。
对于音频处理,请使用以下提示结构:
Transcribe the following speech segment in {LANGUAGE} into {LANGUAGE} text. Follow these specific instructions for formatting the answer:* Only output the transcription, with no newlines.* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three.
Transcribe the following speech segment in {SOURCE_LANGUAGE}, then translate it into {TARGET_LANGUAGE}.When formatting the answer, first output the transcription in {SOURCE_LANGUAGE}, then one newline, then output the string '{TARGET_LANGUAGE}: ', then the translation in {TARGET_LANGUAGE}.
所有模型都支持图像输入,并可以将视频作为帧进行处理,而 E2B、E4B 和 12B 模型还支持音频输入。音频最长支持 30 秒。假设图像以每秒一帧的速度处理,视频最长支持 60 秒。
用于模型训练的数据以及数据的处理方式。
我们的预训练数据集是一个大规模、多样化的数据集合,涵盖了广泛的领域和模态,包括网络文档、代码、图像、音频,截止日期为 2025 年 1 月。以下是关键组成部分:
这些不同数据源的组合对于训练一个能够处理各种不同任务和数据格式的强大多模态模型至关重要。
以下是应用于训练数据的关键数据清洗和过滤方法:
随着开放模型成为企业基础设施的核心,来源和安全性至关重要。Gemma 4 由 Google DeepMind 开发,经历了与我们专有的 Gemini 模型同样严格的安全评估。
Gemma 4 模型是与内部安全和负责任的 AI 团队合作开发的。进行了广泛的自动化和人工评估,以帮助提高模型安全性。这些评估符合谷歌的 AI 原则以及安全政策,旨在防止我们的生成式 AI 模型生成有害内容,包括:
在所有安全测试领域,与之前的 Gemma 模型相比,我们在所有类别的内容安全方面都看到了重大改进。总体而言,Gemma 4 模型在提高安全性方面显著优于 Gemma 3 和 3n 模型,同时保持较低的无正当理由拒绝率。所有测试均在无安全过滤器的情况下进行,以评估模型的能力和行为。对于文本到文本和图像到文本,以及所有模型大小,模型产生的违反政策行为极少,并且与之前的 Gemma 模型相比,显示出显著的性能改进。
这些模型具有用户应注意的某些限制。
多模态模型(能够处理视觉、语言和/或音频)在各行各业和领域都有广泛的应用。以下潜在用途列表并不详尽。此列表的目的是提供关于模型创建者在模型训练和开发过程中考虑的可能用例的上下文信息。
视觉语言模型(VLM)的发展引发了一些伦理问题。在创建一个开放模型时,我们仔细考虑了以下几点:
在发布时,与类似规模的模型相比,该模型系列提供了高性能的开放视觉语言模型实现,从头开始设计用于负责任的 AI 开发。