Hugging Face |
GitHub |
发布博客 |
文档
许可证: Apache 2.0 | 作者: Google DeepMind
DiffusionGemma 是由 Google DeepMind 构建的生成式模型。它基于 260 亿参数的 A4B 混合专家(Mixture-of-Experts, MoE)Gemma 4 架构,采用离散扩散(discrete diffusion)技术生成 tokens。这款开源权重模型具备多模态能力,可处理文本、图像和视频输入并生成文本输出。
DiffusionGemma 以 MoE 为基础构建,旨在提升生成速度(每秒 tokens 数),同时确保能在各种硬件环境中部署。它在 Gemma 4 的架构和能力基础上进行了拓展,引入了多项核心特性:
system 角色,实现更结构化和可控的对话。DiffusionGemma 旨在减少标准因果语言模型的序列瓶颈。它采用了专为推理速度优化的编码器-解码器架构。
编码器以预填充方式运行,处理初始提示并生成 KV 缓存。解码器随后利用双向注意力处理输入块(即“画布”)的 tokens,并通过交叉注意力访问缓存的上下文。
在推理过程中,DiffusionGemma 利用多画布采样。该模型不再逐一生成 token,而是使用扩散采样器迭代去噪一整个 token 块。一旦画布完全去噪,它会被编码器处理并附加到 KV 缓存中,之后模型生成下一个画布。这种块自回归方法有助于实现更高速度的文本生成。
| 总参数 | 25.2B |
|---|---|
| 活跃参数 | 3.8B |
| 层数 | 30 |
| 滑动窗口 | 1024 tokens |
| 上下文长度 | 最多 256K tokens |
| 画布长度 | 256 |
| 词汇表大小 | 262K |
| 专家数量 | 8 个活跃 / 128 个总数及 1 个共享 |
| 支持的模态 | 文本、图像 |
| 视觉编码器参数 | ~550M |
这些模型在大量不同的数据集和指标上进行了评估,以涵盖文本生成的各个方面。表格中标注的评估结果针对指令微调模型,并使用推荐的熵界 (EB) 采样器(参见下文最佳实践)。
| 基准测试 | DiffusionGemma 26B A4B | Gemma 4 26B A4B |
|---|---|---|
| MMLU Pro | 77.6% | 82.6% |
| AIME 2026 无工具 | 69.1% | 88.3% |
| LiveCodeBench v6 | 69.1% | 77.1% |
| Codeforces ELO | 1429 | 1718 |
| GPQA Diamond | 73.2% | 82.3% |
| Tau2(3 项平均值) | 56.2% | 68.2% |
| HLE 无工具 | 11.0% | 8.7% |
| HLE 带搜索 | 11.9% | 17.2% |
| BigBench Extra Hard | 47.6% | 64.8% |
| MMMLU | 81.5% | 86.3% |
| 视觉 | ||
| MMMU Pro | 54.3% | 73.8% |
| OmniDocBench 1.5(平均编辑距离,越低越好) | 0.319 | 0.149 |
| MATH-Vision | 70.5% | 82.4% |
| MedXPertQA MM | 49.0% | 58.1% |
| 长上下文 | ||
| MRCR v2 8 needle 128k(平均值) | 32.0% | 44.1% |
DiffusionGemma 可处理文本和视觉领域的广泛任务。主要能力包括:
您可以使用最新版本的 Transformers 来使用所有 Gemma 4 模型。首先,请在您的环境中安装必要的依赖项:
pip install -U transformers torch accelerate
安装完成后,您可以使用以下代码加载模型:
from transformers import DiffusionGemmaForBlockDiffusion, AutoProcessor
MODEL_ID = "google/diffusiongemma-26B-A4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = DiffusionGemmaForBlockDiffusion.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto",
)模型加载完成后,即可开始生成输出:
# Prompt
message = [
{"role": "user", "content": "Why is the sky blue?"}
]
# Process input
input_ids = processor.apply_chat_template(
message,
tokenize=True,
add_generation_prompt=True,
return_dict=True,
return_tensors="pt"
).to(model.device)
output = model.generate(**input_ids, max_new_tokens=512)
# Parse output
text = processor.decode(output[0], skip_special_tokens=False)为获得最佳性能,请使用以下配置和最佳实践:
在所有使用场景中采用以下标准化采样配置:
与Gemma 4模型类似,我们使用标准的system、assistant和user角色。为妥善管理思考过程,请使用以下控制令牌:
<|think|>令牌来启用思考。要禁用思考,请移除该令牌(注意仍可能会输出空的思考通道)。<|channel>thought\n[内部推理]<channel|>.<|channel>thought\n<channel|>[最终答案].[!Note] 请注意,许多库(如transformers)会为您处理聊天模板的复杂性。
除了可变宽高比外,DiffusionGemma 还通过可配置的视觉令牌预算支持可变图像分辨率,该预算控制用于表示图像的令牌数量。较高的令牌预算会保留更多视觉细节,但需要更多计算资源;而较低的预算则能加快推理速度,适用于不需要细粒度理解的任务。
所有模型均支持图像输入,并能将视频作为帧进行处理。假设以每秒一帧的速度处理图像,视频支持的最大时长为 60 秒。
我们的预训练数据集是一个大规模、多样化的数据集集合,涵盖广泛的领域和模态,包括网络文档、代码、图像、音频,数据截止日期为 2025 年 1 月。以下是关键组成部分:
这些多样化数据源的组合对于训练一个能够处理各种不同任务和数据格式的强大多模态模型至关重要。
以下是应用于训练数据的关键数据清洗和过滤方法:
DiffusionGemma 的开发与内部安全和负责任 AI 团队合作进行。我们开展了一系列自动化和人工评估,以帮助提升模型安全性。这些评估符合Google 的 AI 原则及安全政策,旨在防止我们的生成式 AI 模型生成有害内容,包括:
在所有安全测试领域,我们看到与前几代 Gemma 模型相比,各内容安全类别的表现均有显著提升。总体而言,DiffusionGemma 与 Gemma 4 模型一样,在提升安全性方面显著优于 Gemma 3 和 3n 模型,同时保持较低的不当拒绝率。所有测试均有意在不启用安全过滤器的情况下进行,以评估模型的原始能力和基线行为。无论是文本到文本还是图像到文本任务,在所有模型尺寸上,该模型的政策违规率都极低,且相比之前的 Gemma 模型有显著改进。
这些模型存在一些用户需要注意的局限性。
多模态模型(能够处理视觉、语言和/或音频)在各个行业和领域都有广泛的应用。以下潜在用途列表并不全面。此列表旨在提供模型创建者在模型训练和开发过程中考虑的可能用例的背景信息。
在开发开放式视觉语言模型的过程中,我们审慎考虑了以下问题:
已识别的风险及缓解措施:
在发布时,这是一款低延迟、高性能的开源视觉语言模型,为开发者和对扩散语言模型研究感兴趣的人士提供了一个极具吸引力的选择。与同等规模的模型相比,该模型从设计之初就致力于负责任的AI开发。