HuggingFace镜像/gemma-4-26B-A4B-it-qat-q4_0-gguf
模型介绍文件和版本分析
下载使用量0

Hugging Face | GitHub | 发布博客 | 文档
许可证: Apache 2.0 | 作者: Google DeepMind

[!Note] 本模型卡片适用于通过量化感知训练(Quantization-Aware Training, QAT)优化的新版Gemma 4系列模型。这种优化能够在保持与bfloat16相近质量的同时,显著降低加载模型所需的内存。 目前提供四种QAT checkpoint版本:

  • 未量化QAT checkpoint(Q4_0):从QAT流程中提取的半精度权重,非常适合自定义下游编译和研究。适用于Gemma 4 E2B、E4B、12B、26B A4B、31B及其drafter模型。
  • GGUF(Q4_0):随时可部署的格式,具有广泛的生态系统兼容性。适用于Gemma 4 E2B、E4B、12B、26B A4B和31B。
  • 移动端优化(wNa8o8):专为移动硬件效率设计的自定义模式。它具有针对性的2位解码层、优化的KV缓存和静态激活,以最大限度节省VRAM。适用于Gemma 4 E2B和E4B。
  • 压缩张量(w4a16):以compressed-tensors格式序列化的QAT checkpoint,可与vLLM配合实现原生、优化的推理。适用于Gemma 4 E2B、E4B、12B和31B。

Gemma是由Google DeepMind构建的一系列开源模型。Gemma 4模型具备多模态能力,可处理文本和图像输入(E2B、E4B和12B型号支持音频)并生成文本输出。此次发布包括预训练和指令调优两种变体的开源权重模型。Gemma 4拥有高达256K tokens的上下文窗口,并保持对140多种语言的多语言支持。

Gemma 4同时采用密集型(Dense)和混合专家(Mixture-of-Experts, MoE)架构,非常适合文本生成、编码和推理等任务。该模型系列提供五种不同尺寸:E2B、E4B、12B、26B A4B 和 31B。其多样化的尺寸使其能够部署在从高端手机到笔记本电脑再到服务器的各种环境中,让最先进的AI技术得以普及。

Gemma 4带来了关键的能力与架构革新:

  • 推理能力——该系列所有模型都被设计为高性能推理器,具备可配置的思维模式。

  • 扩展的多模态——处理文本、支持可变宽高比和分辨率的图像(所有模型),以及视频和音频(E2B、E4B和12B模型原生支持)。

  • 多样化且高效的架构——提供不同尺寸的密集型和混合专家(MoE)变体,支持可扩展部署。

  • 针对设备端优化——小型模型经过专门设计,可在笔记本电脑和移动设备上高效本地执行。

  • 增大的上下文窗口——小型模型具备128K上下文窗口,中型模型则支持256K。

  • 增强的编码与智能体能力——在编码基准测试中取得显著进步,同时原生支持函数调用,为高性能自主智能体提供动力。

  • 原生系统提示支持——Gemma 4引入对system角色的原生支持,实现更结构化和可控的对话。

模型概述

Gemma 4 系列模型旨在为各尺寸级别提供前沿性能,其目标部署场景涵盖从移动和边缘设备(E2B、E4B)到消费级 GPU 和工作站(12B、26B A4B、31B)。它们非常适用于推理、智能体工作流、编码以及多模态理解任务。

这些模型采用混合注意力机制,将局部滑动窗口注意力与全局全注意力交织在一起,并确保最后一层始终为全局注意力。这种混合设计在提供轻量级模型所具备的处理速度和低内存占用的同时,不会牺牲复杂长上下文任务所需的深度感知能力。为了优化长上下文的内存使用,全局层采用统一的键(Keys)和值(Values),并应用比例旋转位置编码(Proportional RoPE,p-RoPE)。

密集型模型

属性E2BE4B12B Unified31B Dense
总参数2.3B 有效
(含嵌入层 5.1B)
4.5B 有效
(含嵌入层 8B)
11.95B30.7B
层数35424860
滑动窗口512 tokens512 tokens1024 tokens1024 tokens
上下文长度128K tokens128K tokens256K tokens256K tokens
词汇表大小262K262K262K262K
支持的模态文本、图像、音频文本、图像、音频文本、图像、音频文本、图像
视觉编码器参数~150M~150M-~550M
音频编码器参数~300M~300M-无音频

E2B 和 E4B 中的“E”代表“有效”(effective)参数。较小的模型集成了每层嵌入(Per-Layer Embeddings, PLE),以在设备端部署中最大化参数效率。PLE 并非通过增加模型的层数或参数,而是为每个解码器层的每个 token 提供其自身的小型嵌入。这些嵌入表虽然较大,但仅用于快速查找,因此有效参数数量远小于总参数数量。

Gemma 4 12B Unified 中的“Unified”指其无编码器(encoder-free)架构。其他 Gemma 4 模型使用专用编码器在将多模态数据传递给 LLM 之前对其进行处理。Gemma 4 12B 则完全取消了这些编码器,通过轻量级线性层将原始图像块和音频波形直接投影到 LLM 的嵌入空间。这种统一方法意味着所有模态直接流入单个仅解码器(decoder-only) transformer,减少了多模态延迟,并允许在一次训练过程中对整个模型进行微调。

混合专家(MoE)模型

属性26B A4B MoE
总参数25.2B
激活参数3.8B
层数30
滑动窗口1024 tokens
上下文长度256K tokens
词汇表大小262K
专家数量8 个激活 / 128 个总数以及 1 个共享
支持的模态文本、图像
视觉编码器参数~550M

26B A4B 中的“A”代表“激活参数”,与模型包含的总参数数量相对。通过在推理过程中仅激活 4B 的参数子集,混合专家模型的运行速度比其 26B 总参数所暗示的要快得多。这使其成为快速推理的绝佳选择,与密集型 31B 模型相比,它的运行速度几乎与 4B 参数模型相当。

基准测试结果

这些模型在大量不同的数据集和指标上进行了评估,以涵盖文本生成的各个方面。表格中标记的评估结果针对的是指令微调模型。

Gemma 4 31BGemma 4 26B A4BGemma 4 12B UnifiedGemma 4 E4BGemma 4 E2BGemma 3 27B (no think)
MMLU Pro85.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 v680.0%77.1%72.0%52.0%44.0%29.1%
Codeforces ELO215017181659940633110
GPQA Diamond84.3%82.3%78.8%58.6%43.4%42.4%
Tau2(3 项平均值)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 Extra Hard74.4%64.8%53.0%33.1%21.9%19.3%
MMMLU88.4%86.3%83.4%76.6%67.4%70.7%
视觉
MMMU Pro76.9%73.8%69.1%52.6%44.2%49.7%
OmniDocBench 1.5(平均编辑距离,越低越好)0.1310.1490.1640.1810.2900.365
MATH-Vision85.6%82.4%79.7%59.5%52.4%46.0%
MedXPertQA MM61.3%58.1%48.7%28.7%23.5%-
音频
CoVoST--38.5*35.5433.47-
FLEURS(越低越好)--0.069*0.080.09-
长上下文
MRCR v2 8 needle 128k(平均值)66.4%44.1%43.4%25.4%19.1%13.5%

*不包括中文。

核心能力

Gemma 4 模型可处理文本、视觉和音频等广泛任务。主要能力包括:

  • 思维能力——内置推理模式,让模型在回答前进行逐步思考。
  • 长上下文——上下文窗口最高可达 128K tokens(E2B/E4B)和 256K tokens(12B、26B A4B/31B)。
  • 图像理解——目标检测、文档/PDF 解析、屏幕和 UI 理解、图表解读、光学字符识别(包括多语言)、手写识别和指向功能。可处理不同宽高比和分辨率的图像。
  • 视频理解——通过处理帧序列分析视频。
  • 交错多模态输入——在单个提示词中自由混合文本和图像,顺序不限。
  • 函数调用——原生支持结构化工具使用,支持智能体工作流。
  • 编码能力——代码生成、补全和纠错。
  • 多语言支持——开箱即支持 35 种以上语言,预训练涵盖 140 多种语言。
  • 音频功能(仅 E2B、E4B 和 12B 型号支持)——多语言自动语音识别(ASR)和语音到翻译文本的转换。

快速开始

您可以使用最新版本的 Transformers 来运行所有 Gemma 4 模型。首先,在您的环境中安装必要的依赖项:

pip install -U transformers torch accelerate

安装完成后,您可以使用以下代码加载模型:

from transformers import AutoProcessor, AutoModelForMultimodalLM

MODEL_ID = "google/gemma-4-12B-it"

# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
    MODEL_ID,
    dtype="auto",
    device_map="auto"
)

模型加载完成后,即可开始生成输出:

# Prompt
messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "Write a short joke about saving RAM."},
]

# Process input
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]

# Generate output
outputs = model.generate(**inputs, max_new_tokens=1024)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)

# Parse output
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"

# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
    MODEL_ID, 
    dtype="auto", 
    device_map="auto"
)

模型加载完成后,您可以通过在提示词中直接引用音频 URL 来开始生成输出:

# Prompt - add audio after text
messages = [
    {
        "role": "user",
        "content": [
            {"type": "text", "text": "Transcribe the following speech segment in its original language. Follow these specific instructions for formatting the answer:\n* Only output the transcription, with no newlines.\n* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three."},
            {"type": "audio", "audio": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/journal1.wav"},
        ]
    }
]

# Process input
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]

# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)

# Parse output
processor.parse_response(response)
图像处理代码

确保安装以下软件包:

pip install -U transformers torch torchvision accelerate

然后您可以使用以下代码加载模型:

from transformers import AutoProcessor, AutoModelForMultimodalLM

MODEL_ID = "google/gemma-4-12B-it"

# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
    MODEL_ID, 
    dtype="auto", 
    device_map="auto"
)

模型加载完成后,您可以在提示词中直接引用图片 URL 来开始生成输出:

# Prompt - add image before text
messages = [
    {
        "role": "user", "content": [
            {"type": "image", "url": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/GoldenGate.png"},
            {"type": "text", "text": "What is shown in this image?"}
        ]
    }
]

# Process input
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]

# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)

# Parse output
processor.parse_response(response)
视频处理代码

请确保安装以下软件包:

pip install -U transformers torch torchvision librosa accelerate

然后您可以使用以下代码加载模型:

from transformers import AutoProcessor, AutoModelForMultimodalLM

MODEL_ID = "google/gemma-4-12B-it"

# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
    MODEL_ID, 
    dtype="auto", 
    device_map="auto"
)

模型加载完成后,您可以在提示词中直接引用视频 URL 来开始生成输出:

# Prompt - add video before text
messages = [
    {
        'role': 'user',
        'content': [
            {"type": "video", "video": "https://github.com/bebechien/gemma/raw/refs/heads/main/videos/ForBiggerBlazes.mp4"},
            {'type': 'text', 'text': 'Describe this video.'}
        ]
    }
]

# Process input
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]

# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)

# Parse output
processor.parse_response(response)

最佳实践

为获得最佳性能,请使用以下配置和最佳实践:

1. 采样参数

在所有使用场景中采用以下标准化采样配置:

  • temperature=1.0
  • top_p=0.95
  • top_k=64

2. 思维模式配置

与 Gemma 3 相比,这些模型使用标准的 system、assistant 和 user 角色。为妥善管理思维过程,请使用以下控制令牌:

  • 触发思维:在系统提示的开头包含 <|think|> 令牌即可启用思维功能。若要禁用思维,移除该令牌即可。
  • 标准生成:启用思维后,模型将先输出内部推理过程,然后使用以下结构输出最终答案:
    <|channel>thought\n[内部推理内容]<channel|>
  • 禁用思维时的行为:对于除 E2B 和 E4B 变体之外的所有模型,若禁用思维,模型仍会生成标签,但思维块为空:
    <|channel>thought\n<channel|>[最终答案]

[!Note] 请注意,许多库(如 Transformers 和 llama.cpp)会为您处理聊天模板的复杂细节。

3. 多轮对话

  • 历史记录中不含思维内容:在多轮对话中,历史模型输出应仅包含最终响应。上一轮模型的思维内容不得添加到下一轮用户输入开始之前。

4. 模态顺序

为使多模态输入获得最佳性能,请按以下顺序排列内容:

  • 图像内容置于文本之前。
  • 音频内容置于文本之后。

5. 可变图像分辨率

除了可变宽高比外,Gemma 4 还通过可配置的视觉令牌预算支持可变图像分辨率,该预算控制用于表示图像的令牌数量。较高的令牌预算能保留更多视觉细节,但会增加计算成本;而较低的预算则可加快推理速度,适用于不需要细粒度理解的任务。

  • 支持的令牌预算为:70、140、280、560 和 1120。
    • 对于分类、 captioning 或视频理解等任务,若更快的推理速度和处理大量帧比细粒度细节更重要,可使用较低预算。
    • 对于 OCR、文档解析或读取小文本等任务,可使用较高预算。

6. 音频

音频处理请使用以下提示结构:

  • 音频语音识别(ASR)
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.
  • 自动语音翻译(AST)
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}.

7. 音频和视频长度

所有模型均支持图像输入,并能将视频作为帧进行处理,而 E2B、E4B 和 12B 模型还支持音频输入。音频支持的最大长度为 30 秒。若按每秒一帧的速度处理图像,视频支持的最大时长为 60 秒。

模型数据

用于模型训练的数据及其处理方式。

训练数据集

我们的预训练数据集是一个大规模、多样化的数据集集合,涵盖广泛的领域和模态,包括网络文档、代码、图像、音频,数据截止日期为 2025 年 1 月。以下是关键组成部分:

  • 网络文档:多样化的网络文本集合确保模型能够接触到广泛的语言风格、主题和词汇。训练数据集包含超过 140 种语言的内容。
  • 代码:让模型接触代码有助于其学习编程语言的语法和模式,从而提高生成代码和理解代码相关问题的能力。
  • 数学:对数学文本的训练帮助模型学习逻辑推理、符号表示以及解答数学查询。
  • 图像:广泛的图像范围使模型能够执行图像分析和视觉数据提取任务。

这些多样化数据源的组合对于训练一个能够处理各种不同任务和数据格式的强大多模态模型至关重要。

数据预处理

以下是应用于训练数据的关键数据清理和过滤方法:

  • CSAM 过滤:在数据准备过程的多个阶段应用了严格的 CSAM(儿童性虐待材料)过滤,以确保排除有害和非法内容。
  • 敏感数据过滤:为了使 Gemma 预训练模型安全可靠,我们使用自动化技术从训练集中过滤掉某些个人信息和其他敏感数据。
  • 其他方法:根据我们的政策对内容质量和安全性进行过滤。

伦理与安全

随着开源模型成为企业基础设施的核心,溯源性和安全性变得至关重要。Gemma 4 由 Google DeepMind 开发,其安全性评估与我们的专有 Gemini 模型同样严格。

评估方法

Gemma 4 模型是与内部安全和负责任 AI 团队合作开发的。我们进行了一系列自动化和人工评估,以帮助提升模型安全性。这些评估符合Google 人工智能原则及相关安全政策,旨在防止我们的生成式 AI 模型生成有害内容,包括:

  • 与儿童性虐待材料和剥削相关的内容
  • 危险内容(例如,宣扬自杀,或指导可能造成现实世界伤害的活动)
  • 露骨色情内容
  • 仇恨言论(例如,对受保护群体成员进行非人化描述)
  • 骚扰行为(例如,煽动针对他人的暴力)

评估结果

在所有安全测试领域,我们看到与之前的 Gemma 模型相比,Gemma 4 在所有内容安全类别上都有重大改进。总体而言,Gemma 4 模型在提升安全性方面显著优于 Gemma 3 和 3n 模型,同时保持较低的不当拒绝率。所有测试均在不使用安全过滤器的情况下进行,以评估模型的能力和行为。无论是文本到文本还是图像到文本任务,在所有模型尺寸上,该模型产生的政策违规内容极少,并且与之前的 Gemma 模型相比表现出显著改进。

使用与局限性

这些模型存在一些用户应注意的局限性。

预期用途

多模态模型(能够处理视觉、语言和/或音频)在各个行业和领域都有广泛的应用。以下潜在用途列表并非详尽无遗。此列表旨在提供模型创建者在模型训练和开发过程中考虑的可能用例的背景信息。

  • 内容创作与通信
    • 文本生成:这些模型可用于生成创意文本格式,如诗歌、剧本、代码、营销文案和电子邮件草稿。
    • 聊天机器人与对话式 AI:为客户服务、虚拟助手或交互式应用程序提供对话界面支持。
    • 文本摘要:生成文本语料库、研究论文或报告的简明摘要。
    • 图像数据提取:这些模型可用于提取、解释和总结视觉数据,以用于文本通信。
    • 音频处理与交互:E2B、E4B 和 12B 模型能够分析和解释音频输入,支持语音驱动的交互和转录。
  • 研究与教育
    • 自然语言处理(NLP)和视觉语言模型(VLM)研究:这些模型可作为研究人员实验 VLM 和 NLP 技术、开发算法并推动该领域发展的基础。
    • 语言学习工具:支持交互式语言学习体验,辅助语法纠正或提供写作练习。
    • 知识探索:通过生成摘要或回答特定主题的问题,协助研究人员探索大量文本。

局限性

  • 训练数据
    • 训练数据的质量和多样性对模型能力有显著影响。训练数据中的偏差或缺口可能导致模型响应存在局限。
    • 训练数据集的范围决定了模型能够有效处理的主题领域。
  • 上下文与任务复杂度
    • 模型在能够通过清晰提示和指令构建的任务上表现良好。开放式或高度复杂的任务可能具有挑战性。
    • 模型的性能可能受提供的上下文量影响(通常上下文越长,输出效果越好,但存在一定限度)。
  • 语言歧义与细微差别
    • 自然语言本质上具有复杂性。模型可能难以理解微妙的语气、讽刺或比喻性语言。
  • 事实准确性
    • 模型基于从训练数据集中学到的信息生成响应,但它们并非知识库。模型可能会生成不正确或过时的事实陈述。
  • 常识
    • 模型依赖语言中的统计模式。在某些情况下,它们可能缺乏应用常识推理的能力。

伦理考量与风险

视觉语言模型(VLM)的发展引发了若干伦理问题。在创建开放模型时,我们仔细考虑了以下方面:

  • 偏差与公平性
    • 基于大规模真实世界文本和图像数据训练的VLM可能会反映训练材料中蕴含的社会文化偏差。Gemma 4模型经过了仔细审查、输入数据预处理和训练后评估(如本卡片所述),以帮助降低这些偏差带来的风险。
  • 错误信息与滥用
    • VLM可能被滥用于生成虚假、误导或有害的文本。
    • 提供了模型负责任使用的指南,请参阅Responsible Generative AI Toolkit。
  • 透明度与问责制
    • 本模型卡片总结了模型架构、能力、局限性和评估流程的详细信息。
    • 负责任开发的开放模型通过向整个AI生态系统的开发者和研究人员开放VLM技术,提供了分享创新的机会。

已识别的风险及缓解措施:

  • 有害内容生成:内容安全机制和指南至关重要。鼓励开发者保持谨慎,并根据其特定产品政策和应用场景实施适当的内容安全防护措施。
  • 恶意目的滥用:技术限制以及对开发者和终端用户的教育有助于减轻VLM的恶意应用风险。提供了教育资源和用户报告滥用的机制。
  • 隐私侵犯:模型训练数据经过筛选,已移除某些个人信息和其他敏感数据。鼓励开发者采用隐私保护技术,遵守隐私法规。
  • 偏差的延续:建议在模型训练、微调及其他使用场景中进行持续监控(使用评估指标、人工审核)并探索去偏差技术。

优势

在发布时,与同等规模的模型相比,该系列模型提供了高性能的开放式视觉语言模型实现,这些实现是从底层为负责任的AI开发而设计的。