Google 推出 Gemma 3n 并提供详细开发者指南,帮助开发者快速集成和优化该模型。
首个 Gemma 模型于去年年初发布,此后不断发展壮大,形成了蓬勃发展的 Gemmaverse,累计下载量已超过 1.6 亿次。这个生态系统不仅包括由十余个专用模型组成的 Gemma 家族,覆盖从安全防护到医疗应用等各种场景,更令人振奋的是,社区还在此基础上创造了无数创新成果。从使用 Gemma 构建企业级计算机视觉能力的 Roboflow,到开发高性能日语 Gemma 变体的东京科学大学,你们的工作为我们指明了前进的方向。
在这股强劲势头的基础上,我们很高兴宣布 Gemma 3n 正式全面发布。上个月的预览版只让大家初步领略了它的能力,而今天,面向移动设备优先设计的这套架构将释放全部潜力。Gemma 3n 专为参与塑造 Gemma 的开发者社区而设计,并获得了 Hugging Face Transformers、llama.cpp、Google AI Edge、Ollama、MLX 等众多常用工具的支持,让你能够轻松针对具体的端侧应用进行 fine-tune 和部署。本文将从开发者视角深入介绍 Gemma 3n:探索其背后的部分创新技术,分享最新的 benchmark 结果,并展示如何立即开始构建应用。
Gemma 3n 是端侧 AI 的一次重大飞跃,为边缘设备带来了强大的多模态能力,其性能达到了去年只有基于云端的前沿模型才能实现的水平。
YouTube 视频链接(仅在禁用 JS 时可见)
原生多模态设计: Gemma 3n 原生支持图像、音频、视频和文本输入,并生成文本输出。
针对端侧优化: Gemma 3n 在设计时将效率放在首位,并根据有效参数量提供两种规格:E2B 和 E4B。虽然二者的原始参数量分别为 5B 和 8B,但得益于架构创新,它们运行时的内存占用可与传统的 2B 和 4B 模型相当,最低仅需 2GB(E2B)和 3GB(E4B)内存。
突破性架构: Gemma 3n 的核心引入了多项全新组件,包括提供灵活算力配置的 MatFormer 架构、提升内存效率的 Per-Layer Embeddings(PLE)、提高架构效率的 LAuReL 和 AltUp,以及针对端侧使用场景优化的新型音频编码器和基于 MobileNet-V5 的视觉编码器。
质量全面提升: Gemma 3n 在多语言、数学、编程和推理等方面都实现了质量提升。它支持 140 种语言的文本理解,以及 35 种语言的多模态理解。E4B 版本的 LMArena 得分超过 1300,成为首个达到这一 benchmark、参数量却低于 100 亿的模型。
要实现端侧性能的这一跨越,就必须从根本上重新思考模型设计。Gemma 3n 独特的移动优先架构构成了这一切的基础,而它的起点正是 MatFormer。
Gemma 3n 的核心是 MatFormer(🪆Matryoshka Transformer)架构,这是一种为弹性推理打造的全新嵌套式 Transformer。你可以把它想象成俄罗斯套娃:一个较大的模型内部包含了多个更小但功能完整的自身版本。这种方法把 Matryoshka Representation Learning 的概念从 embedding 扩展到了 Transformer 的全部组件。
在对有效参数量为 4B 的 E4B 模型进行 MatFormer 训练时,模型内部一个有效参数量为 2B 的 E2B 子模型也会同步得到优化,如上图所示。目前,这为开发者提供了两项强大的能力及对应的使用方式:
1:预提取模型: 你可以直接下载并使用能力最强的主 E4B 模型,也可以使用我们已经为你提取好的独立 E2B 子模型,后者的推理速度最高可提升至 2 倍。
2:使用 Mix-n-Match 自定义模型尺寸: 如果需要根据特定硬件限制进行更精细的控制,可以使用我们称为 Mix-n-Match 的方法,在 E2B 与 E4B 之间创建一系列自定义尺寸的模型。这项技术允许你精确裁剪 E4B 模型的参数,主要方式是逐层调整前馈网络的隐藏维度(从 8192 调整到 16384),并选择性跳过部分层。我们还将发布 MatFormer Lab,这款工具会展示如何获取这些最优模型;这些模型是通过在 MMLU 等 benchmark 上评估不同配置筛选出来的。
展望未来,MatFormer 架构还为弹性执行铺平了道路。虽然今天发布的实现中尚未包含这项能力,但它可以让单个已部署的 E4B 模型在运行过程中动态切换 E4B 与 E2B 推理路径,根据当前任务和设备负载,实时优化性能与内存使用。
Gemma 3n 模型引入了 Per-Layer Embeddings(PLE)。这项创新专为端侧部署量身打造,可以显著提升模型质量,同时不会增加设备加速器(GPU/TPU)所需的高速内存占用。
虽然 Gemma 3n E2B 和 E4B 模型的总参数量分别为 5B 和 8B,但借助 PLE,其中很大一部分参数——即与各层关联的 embedding——可以在 CPU 上高效加载和计算。这意味着只有核心 Transformer 权重需要常驻通常更受限制的加速器内存(VRAM),E2B 约为 2B,E4B 约为 4B。
对于许多高级端侧多模态应用来说,处理音频和视频流产生的序列等长输入至关重要。Gemma 3n 引入了 KV Cache Sharing,这项功能旨在显著缩短流式响应应用的首个 token 生成时间。
KV Cache Sharing 优化了模型处理初始输入阶段的方式,这一阶段通常称为“prefill”。局部注意力与全局注意力中间层的 key 和 value 会直接与所有上层共享。与 Gemma 3 4B 相比,这让 prefill 性能获得了显著的 2 倍提升。这意味着模型能够以前所未有的速度摄取并理解较长的 prompt 序列。
Gemma 3n 使用了一款基于 Universal Speech Model(USM)的先进音频编码器。该编码器每处理 160ms 音频便生成一个 token,每秒约生成 6 个 token。这些 token 随后会作为输入集成至语言模型中,从而提供细粒度的声音上下文表示。
这项集成式音频能力为端侧开发解锁了多项关键功能,包括:
Automatic Speech Recognition(ASR): 直接在设备上实现高质量的语音转文本。
Automatic Speech Translation(AST): 将一种语言的语音翻译为另一种语言的文本。
我们观察到,Gemma 3n 在英语与西班牙语、法语、意大利语和葡萄牙语之间的 AST 翻译上表现尤为出色,为面向这些语言开发应用的开发者带来了巨大潜力。对于语音翻译等任务,使用 Chain-of-Thought prompting 可以显著改善结果。下面是一个示例:
<bos><start_of_turn>user
Transcribe the following speech segment in Spanish, then translate it into English:
<start_of_audio><end_of_turn>
<start_of_turn>model
发布时,Gemma 3n 编码器的实现能够处理最长 30 秒的音频片段。不过,这并非其根本限制。底层音频编码器是一款流式编码器,在经过额外的长音频训练后,能够处理任意长度的音频。后续实现将进一步解锁低延迟、长时间流式处理应用。
除了集成式音频能力,Gemma 3n 还配备了全新且高效的视觉编码器 MobileNet-V5-300M,可在边缘设备的多模态任务上提供先进性能。
MobileNet-V5 专为在资源受限硬件上兼顾灵活性与强大性能而设计,为开发者提供了以下能力:
多种输入分辨率: 原生支持 256×256、512×512 和 768×768 像素的分辨率,让你能够根据具体应用在性能与细节之间取得平衡。
广泛的视觉理解能力: 通过大规模多模态数据集进行联合训练,能够出色完成各种图像和视频理解任务。
高吞吐量: 在 Google Pixel 上最高可以每秒处理 60 帧,从而支持实时端侧视频分析和交互式体验。
这一性能水平得益于多项架构创新,包括:
以先进的 MobileNet-V4 模块为基础,其中包括 Universal Inverted Bottlenecks 和 Mobile MQA。
架构规模得到显著扩展,采用混合式深层金字塔模型,规模是最大 MobileNet-V4 变体的 10 倍。
引入全新的 Multi-Scale Fusion VLM adapter,提升 token 质量,从而获得更高的准确率和效率。
得益于全新的架构设计与先进的蒸馏技术,MobileNet-V5-300M 的表现大幅超越 Gemma 3 中的 SoViT baseline(使用 SigLip 训练,未采用蒸馏)。在 Google Pixel Edge TPU 上,它经过量化后可实现 13 倍加速(未量化时为 6.5 倍),所需参数减少 46%,内存占用缩小至四分之一,同时在视觉语言任务上提供显著更高的准确率。
我们非常期待分享这款模型背后的更多工作。敬请关注即将发布的 MobileNet-V5 技术报告,其中将深入介绍模型架构、数据规模扩展策略以及先进的蒸馏技术。
让 Gemma 3n 从发布第一天起就触手可及,始终是我们的优先事项。我们很自豪能够与众多出色的开源开发者合作,确保 Gemma 3n 广泛支持各种热门工具与平台,其中包括来自 AMD、Axolotl、Docker、Hugging Face、llama.cpp、LMStudio、MLX、NVIDIA、Ollama、RedHat、SGLang、Unsloth 和 vLLM 背后团队的贡献。
但这个生态系统仅仅是一个开始。这项技术真正的力量,取决于你将用它构建什么。正因如此,我们正式推出 Gemma 3n Impact Challenge。你的任务是:利用 Gemma 3n 独特的端侧、离线和多模态能力,打造一款让世界变得更美好的产品。挑战赛设置了 15 万美元奖金,我们期待看到一个引人入胜的视频故事,以及能够展现真实世界影响力、令人惊叹的 demo。加入这项挑战,与我们共同建设更美好的未来。
准备好探索 Gemma 3n 的潜力了吗?可以通过以下方式开始:
直接体验: 使用 Google AI Studio,只需点击几下即可试用 Gemma 3n。Gemma 模型也可以直接从 AI Studio 部署至 Cloud Run。
下载模型: 在 Hugging Face 和 Kaggle 上获取模型权重。
学习并集成: 阅读我们的完整文档,快速将 Gemma 集成到你的项目中,或者从推理与 fine-tuning 指南开始。
使用你喜爱的端侧 AI 工具进行构建: Google AI Edge Gallery/LiteRT-LLM、Ollama、MLX、llama.cpp、Docker、transformers.js 等。
使用你喜爱的开发工具: 使用你偏好的工具和框架,包括 Hugging Face Transformers 与 TRL、NVIDIA NeMo Framework、Unsloth 和 LMStudio。
按照自己的方式部署: Gemma 3n 提供多种部署选项,包括 Google GenAI API、Vertex AI、SGLang、vLLM 和 NVIDIA API Catalog。