作为 Gemma 开放模型家族的最新成员,Gemma 3 是谷歌在人工智能领域的又一次飞跃。Gemmaverse 在第一年取得了令人瞩目的成绩–下载量超过 1 亿次,社区创建的变体超过 60,000 个。有了 Gemma 3,开发人员可以使用轻量级的人工智能模型,这些模型可以在从智能手机到高端工作站的各种设备上高效运行。
Gemma 3 建立在与谷歌强大的 Gemini 2.0 模型相同的技术基础上,旨在实现快速、便携和负责任的人工智能开发。此外,Gemma 3 还有各种尺寸(1B、4B、12B 和 27B),用户可以根据具体的硬件和性能需求选择最佳型号。很吸引人吧?本文将深入探讨 Gemma 3 的功能和实现、针对人工智能安全的 ShieldGemma 2 的介绍,以及开发人员如何将这些工具集成到他们的工作流程中。
什么是Gemma 3?
Gemma 3 是谷歌在开放式人工智能领域的最新飞跃。Gemma 3 被归类为密集模型。它有四种不同的大小–1B、4B、12B 和 27B 参数,包括基础(预训练)和指令调整变体。主要亮点包括
- 上下文窗口:
- 1B 模型:32K tokens
- 4B、12B 和 27B 模型:128K tokens
- 多模态:
- 1B 变体:纯文本
- 4B、12B、27B 变体:可使用 SigLIP 图像编码器处理图像和文本
- 多语言支持:
- 1B 仅支持英语
- 较大型号支持 140 多种语言
- 集成:
- 模型托管在 Hub 上,并与 Hugging Face 无缝集成,使实验和部署变得简单。
开放式模型的飞跃
Gemma 3 模型非常适合各种文本生成和图像理解任务,包括问题解答、总结和推理。Gemma 3 建立在与 Gemini 2.0 模型相同的研究基础之上,是我们迄今为止最先进、最便携、最负责任的开放式模型集。它有多种大小(1B、4B、12B 和 27B)可供选择,开发人员可以根据自己的硬件和性能要求灵活选择最佳方案。无论是在智能手机、笔记本电脑等设备上部署模型,Gemma 3 都能直接在设备上快速运行。
Source: Hugging Face
尖端功能
Gemma 3 不仅仅是大小的问题,它还拥有众多功能,可帮助开发人员构建下一代人工智能应用程序:
- 无与伦比的性能:Gemma 3 以其大小提供了最先进的性能。在初步评估中,它的性能超过了 Llama-405B 、DeepSeek-V3 和 o3-mini 等模型,让您只需使用单个 GPU 或 TPU 主机即可创建引人入胜的用户体验。
- 多语言能力:Gemma 3 开箱即支持超过 35 种语言,预训练支持 140 多种语言,可帮助您构建面向全球受众的应用程序。
- 高级推理和多模态:无缝分析图像、文本和短视频。该模型通过量身定制的 SigLIP 编码器引入视觉理解,从而支持广泛的交互式应用。
- 扩展的上下文窗口:128K tokens 的海量上下文窗口可让您的应用程序一次性处理和理解大量数据。
- 创新的函数调用:内置的函数调用和结构化输出支持可让开发人员轻松实现复杂工作流程的自动化。
- 通过量化提高效率:官方量化版本(在 Hugging Face 上提供)可在不牺牲准确性的情况下减少模型大小和计算需求。
Gemma 3的技术改进
Gemma 3 在前代产品成功的基础上,重点增强了三个核心功能:更长的上下文长度、多模态和多语言性。让我们深入了解一下是什么让 Gemma 3 成为一个技术奇迹。
更长的语境长度
- 无需从头开始重新训练即可扩展:最初使用 32K 序列对模型进行预训练。对于 4B、12B 和 27B 变体,在预训练后,上下文长度会有效地扩展到 128K tokens,从而节省大量的计算量。
- 增强的位置嵌入:RoPE(旋转位置嵌入)的基频从 Gemma 2 中的 10K 提升到 Gemma 3 中的 1M,然后再扩展 8 倍,这使得模型即使在扩展上下文的情况下也能保持高性能。
- 优化的 KV 缓存管理:通过在全局层(比例为 5:1)之间交错多个局部注意力层(具有 1024 个 tokens 的滑动窗口),Gemma 3 显著降低了推理过程中的 KV 缓存内存开销,从仅全局设置中的 60% 左右降低到 15% 以下。
KV Caching | Source – Link
多模态
- 视觉编码器集成:Gemma 3 利用 SigLIP 图像编码器处理图像。为了保持一致性,所有图像都被调整为固定的 896×896 分辨率。为了处理非方形宽高比和高分辨率输入,一种自适应的“平移和扫描”算法会即时裁剪和调整图像大小,确保保留关键的视觉细节。
- 不同的注意机制:文本 token 使用单向(因果)注意,而图像 token 则接受双向注意。这使得该模型能够在保持高效文本处理的同时,建立对视觉输入的完整、无限制的理解。
Source – Link
多语言
- 扩展数据和token符改进:与 Gemma 2 相比,Gemma 3 的训练数据集现在包含双倍数量的多语言内容。Gemma 3 使用相同的 SentencePiece token 符号生成器(具有 262K 条目),但现在对中文、日文和韩文进行了更高保真编码,使模型能够支持 140 多种语言的大型变体。
Source – Link
架构增强:Gemma 3的新功能
Gemma 3 在架构上进行了重大更新,解决了一些关键难题,尤其是在处理长语境和多模态输入时。以下是新功能
- 优化的注意力机制:为了支持 128K tokens 的扩展上下文长度(1B 模型为 32K tokens),Gemma 3 重新设计了转换器架构。通过将局部注意层与全局注意层的比例提高到 5:1,该设计确保只有全局层能处理长距离依赖关系,而局部层则在较短的跨度(1024 tokens)内运行。这一变化大大降低了推理过程中的 KV 缓存内存开销–在新设计中,“仅全局”配置的开销从原来的 60% 增加到现在的不到 15%。
- 增强的位置编码:Gemma 3 升级了全局自注意层的 RoPE(旋转位置嵌入),将基频从 10K 提高到 100 万,同时将局部层的基频保持在 10K。这一调整可在不影响性能的情况下更好地扩展长上下文场景。
Source – Link
- 改进的规范技术:新架构超越了 Gemma 2 中使用的软封顶方法,采用 QK 规范来稳定注意力分数。此外,它还将分组查询注意力(GQA)与后规范和前规范 RMSNorm 相结合,以确保训练过程中的一致性和效率。
- 注意力分数 QK-Norm:稳定模型的注意力权重,减少之前迭代中出现的不一致性。
- 分组查询注意力 (GQA):该技术与后规范和前规范 RMSNorm 相结合,可提高训练效率和输出可靠性。
- 视觉模态集成:Gemma 3 将基于 SigLIP 的视觉编码器纳入多模态领域。该编码器将图像处理为软 token 序列,而平移和扫描(P&S)方法则通过自适应裁剪和调整非标准长宽比来优化图像输入,确保视觉细节保持完整。
输出
这些架构上的变化不仅提升了性能,还显著提高了效率,使 Gemma 3 能够处理更长的上下文并无缝集成图像数据,同时减少内存开销。
成功的基准测试
最近在 Chatbot Arena 上进行的性能比较将 Gemma 3 27B IT 定位为最优秀的竞争者之一。正如下面的排行榜图片所示,Gemma 3 27B IT 以 1338 分的成绩脱颖而出,与其他领先模型竞争激烈,在某些情况下甚至超过了它们。例如
- Early Grok-3 的总分是1402 分,但 Gemma 3 在指令跟踪和多圈互动等具有挑战性的类别中的表现仍然非常出色。
- Gemini-2.0 Flash Thinking 和 Gemini-2.0 Pro 变体的得分在 1380-1400 之间,而 Gemma 3 在多个测试维度上表现均衡。
- ChatGPT-4o 和 DeepSeek R1 的分数很有竞争力,但 Gemma 3 即使在较小的模型尺寸下也能保持一致性,充分展示了其效率和多功能性。
下面是 Chatbot Arena 排行榜上的一些示例图片,展示了各种测试场景下的排名和 Chatbot Arena 得分:
Source: Chatbot Arena – Rank
Source: Chatbot Arena – Score
要深入了解性能指标并以交互方式查看排行榜,请查看 Hugging Face 上的 Chatbot Arena 排行榜。
性能指标细分
除了令人印象深刻的 Elo 总分外,Gemma 3-27B-IT 在 Chatbot Arena 的各个子类别中也表现出色。下面的柱状图说明了该模型在“硬提示”、“数学”、“编码”、“创意写作”等指标上的表现。值得注意的是,Gemma 3-27B-IT 在“创意写作”(1348)和“多轮对话”(1336)方面表现出色,这反映了它能够保持连贯、语境丰富的对话。
Gemma 3 27B-IT 不仅在面对面的 Chatbot Arena 评估中名列前茅,而且在其他比较排行榜的创意写作任务中也大放异彩。根据创意写作的最新 EQ-Bench 结果,Gemma 3 27B-IT 目前在排行榜上排名第二。虽然由于 OpenRouter 性能较慢,评估仅基于一次迭代,但早期结果非常令人鼓舞。该团队正计划很快对 12B 变体进行基准测试,早期的预期表明它在其他创意领域的表现也很有希望。
Source – Link
LMSYS Elo分数与参数大小的关系
Source – Link
在上图中,每个点代表一个模型的参数数(X 轴)和相应的 Elo 分数(Y 轴)。请注意 Gemma 3-27B IT 如何触及“Pareto Sweet Spot”,与 Qwen 2.5-72B、DeepSeek R1 和 DeepSeek V3 等其他模型相比,它以相对较小的模型尺寸提供了较高的 Elo 性能。
除了这些正面对决,Gemma 3 还在各种标准化基准测试中表现出色。下表比较了 Gemma 3 与早期 Gemma 版本和 Gemini 型号在 MMLU-Pro、LiveCodeBench、Bird-SQL 等任务上的性能。
多个基准测试的性能
Source – Link
在该表中,您可以看到 Gemma 3 在 MATH 和 FACTS Grounding 等任务中的突出表现,同时在 Bird-SQL 和 GPQA Diamond 上也表现出了竞争力。虽然 SimpleQA 分数看起来不高,但 Gemma 3 的整体表现突出了其在语言理解、代码生成和事实基础方面的均衡性。
Source – Link
这些视觉效果凸显了 Gemma 3 平衡性能和效率的能力,尤其是 27B 变体,它提供了最先进的功能,却不像某些竞争型号那样需要大量计算。
推荐阅读:Gemma 3 vs DeepSeek-R1:谷歌新的 27B 模型是 671B 巨头的有力竞争者吗?
负责任的人工智能开发方法
随着人工智能能力的增强,确保安全和道德部署的责任也随之而来。Gemma 3 经过了严格的测试,以保持谷歌的高安全标准:
- 根据模型能力进行全面风险评估。
- 根据谷歌的安全政策进行微调和基准评估。
- 对 STEM 相关内容进行专门评估,以评估与潜在有害应用中的误用相关的风险。
谷歌旨在为开放模型设定新的行业标准。
严格的安全协议
创新与责任并存。Gemma 3 的开发遵循严格的安全协议,包括广泛的数据管理、微调和稳健的基准评估。以 STEM 功能为重点的特别评估证实,其被滥用的风险很低。此外,在 Gemma 3 基础上推出的 4B 图像安全检查器ShieldGemma 2 可确保内置安全措施对潜在的不安全内容进行分类并减轻其影响。
与您最喜爱的工具无缝集成
Gemma 3 可毫不费力地融入您现有的工作流程:
- 开发人员友好的生态系统:支持 Hugging Face Transformers、Ollama、JAX、Keras、PyTorch 等工具,这意味着您可以轻松地进行实验和集成。
- 针对多种平台进行了优化:无论您是使用英伟达™(NVIDIA®)GPU、谷歌云 TPU、AMD GPU(通过 ROCm 堆栈)还是本地环境,Gemma 3 都能最大限度地提高性能。
- 灵活的部署选项:从 Vertex AI 和 Cloud Run 到谷歌 GenAI API 和本地设置,Gemma 3 的部署既灵活又简单。
探索Gemmaverse
除了模型本身,还有 Gemmaverse,一个由社区创建的模型和工具组成的繁荣生态系统,不断推动人工智能创新的发展。从新加坡 AI 公司的 SEA-LION v3 打破语言障碍,到 INSAIT 公司的 BgGPT 支持多种语言,Gemmaverse 是合作进步的见证。此外,Gemma 3 学术计划还为研究人员提供谷歌云积分,以推动进一步的突破。
开始使用Gemma 3
准备好探索 Gemma 3 的全部潜力了吗?以下是您的入门方法:
- 即时探索:直接在浏览器中通过 Google AI Studio 试用 Gemma 3 的全部精度,无需任何设置。
- API 访问:从 Google AI Studio 获取 API 密钥,使用 Google GenAI SDK 将 Gemma 3 集成到您的应用程序中。
- 下载和定制:通过 Hugging Face、Ollama 或 Kaggle 等平台访问模型,并根据项目需要对其进行微调。
Gemma 3 是我们实现高质量人工智能民主化的一个重要里程碑。它融合了性能、效率和安全性,必将激发新一轮的创新浪潮。无论您是经验丰富的开发人员,还是刚刚开始人工智能之旅,Gemma 3 都能为您提供构建未来智能应用程序所需的工具。
如何使用Ollama在本地运行Gemma 3?
使用 Ollama,您可以在本地机器上充分利用 Gemma 3 的强大功能。请按照以下步骤操作
- 安装 Ollama:从官方网站下载并安装 Ollama。
拉取 Gemma 3 模型:安装 Ollama 后,使用命令行界面拉取所需的 Gemma 3 变体。例如:Ollama pull gemma3:4b - 运行模型:
执行:llama run gemma3:4b
命令,在本地启动模型。 - 然后,你可以直接从终端或通过 Ollama 提供的任何本地接口与 Gemma 3 交互。
- 自定义与实验:调整设置或与您喜欢的工具集成,以获得无缝本地部署体验。
如何在系统上或通过Colab+Hugging Face运行Gemma 3?
对于喜欢更灵活设置或希望利用 GPU 加速的用户,您可以在自己的系统上运行 Gemma 3,或在 Hugging Face 的支持下使用 Google Colab:
1. 设置环境
- 本地系统:确保已安装 Python 和必要的库。
- Google Colab:打开一个新笔记本,在运行时设置中启用 GPU 加速。
2. 安装依赖项
使用 pip 安装 Hugging Face Transformers 库和其他依赖项:
!pip install git+https://github.com/huggingface/transformers@v4.49.0-Gemma-3Copy Code
3. 从Hugging Face加载Gemma 3
在脚本或 Colab 笔记本中,用以下代码片段加载模型和token符:
import torch from transformers import AutoProcessor, Gemma3ForConditionalGeneration from IPython.display import Markdown, display # load LLM artifacts processor = AutoProcessor.from_pretrained("unsloth/gemma-3-4b-it") model = Gemma3ForConditionalGeneration.from_pretrained( "unsloth/gemma-3-4b-it", device_map="auto", torch_dtype=torch.bfloat16, )Copy Code
4. 运行和实验
加载模型后,开始生成文本或处理图像。您可以对参数进行微调,与应用程序集成,或尝试使用不同的输入模式。
# download img !curl "https://vitapet.com/media/emhk5nz5/cat-playing-vs-fighting-1240x640.jpg" -o cats.jpg # prompt LLM and get response messages = [ { "role": "user", "content": [ {"type": "image", "url": "./cats.jpg"}, {"type": "text", "text": """Extract the key details in this images, also guess what might be the reason for this action?"""} ] } ] 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] generation = model.generate(**inputs, max_new_tokens=1024, do_sample=False) generation = generation[0][input_len:] decoded = processor.decode(generation, skip_special_tokens=True) display(Markdown(decoded))Copy Code
输出
Here's a breakdown of the key details in the image and a guess at the reason for the action:Key Details:Two Kittens: The image features two young kittens.Orange Kitten: One kitten is mid-air, leaping dramatically with its paws outstretched. It's a warm orange color with tabby markings.Brown Kitten: The other kitten is on the ground, moving quickly and looking slightly startled. It has a brown and white tabby pattern.White Background: The kittens are set against a plain white background, which isolates them and makes them the focus.Action: The orange kitten is in the middle of a jump, seemingly reacting to the movement of the brown kitten.Possible Reason for the Action:It's highly likely that these kittens are engaged in playful wrestling or chasing. Kittens, especially young ones, often engage in this type of behavior as a way to:Exercise: It's a great way for them to burn energy.Socialize: They're learning about boundaries and play interactions.Bond: Play is a key part of kitten bonding.Explore: They're investigating each other and their environment.It's a common and adorable kitten behavior!Would you like me to describe any specific aspect of the image in more detail?
示例 2
# download img !curl "https://static.standard.co.uk/2025/03/08/17/40/Screenshot-(34).png" -o sidemen.png # prompt LLM and get response messages = [ { "role": "user", "content": [ {"type": "image", "url": "./sidemen.png"}, {"type": "text", "text": """What is going on in this image?"""} ] } ] 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] generation = model.generate(**inputs, max_new_tokens=1024, do_sample=False) generation = generation[0][input_len:] decoded = processor.decode(generation, skip_special_tokens=True) display(Markdown(decoded))Copy Code
输出
Here's a breakdown of what's happening in the image:The Scene:The image captures a moment of intense celebration. A group of men, all wearing red shirts with "FASTABLES" printed on them, are holding a large trophy aloft. They are surrounded by a shower of golden confetti.Key Details:The Trophy: The trophy is the focal point, suggesting a significant victory.Celebration: The players are shouting, jumping, and clearly overjoyed. Their expressions show immense excitement and pride.Confetti: The confetti indicates a momentous occasion and a celebratory atmosphere.Background: In the blurred background, you can see other people (likely spectators) and what appears to be event staff.Text: There's a small text overlay at the bottom: "TO DONATE PLEASE VISIT WWW.SIDEMENFC.COM". This suggests the team is associated with a charity or non-profit organization.Likely Context:Based on the team's shirts and the celebratory atmosphere, this image likely depicts a soccer (football) team winning a championship or major tournament.Team:The team is SideMen FC.Do you want me to elaborate on any specific aspect of the image, such as the team's history or the significance of the trophy?
5. 利用Hugging Face资源:
从庞大的 Hugging Face 社区、文档和示例笔记本中获益,进一步定制和优化 Gemma 3 的使用。
以下是 Notebook 中的完整代码:Gemma-Code
优化Gemma 3的推论
使用 Gemma 3-27B-IT 时,必须配置正确的采样参数,以获得最佳结果。根据 Gemma 团队的见解,最佳设置包括
- Temperature:1.0
- Top-k:64
- Top-p:0.95
此外,要小心双 BOS(序列开头)标记,它可能会意外降低输出质量。有关更详细的解释和社区讨论,请查看 danielhanchen在 Reddit 上发布的这篇有用的帖子。
通过微调这些参数并谨慎处理标记化,您可以在各种任务(从创意写作到复杂的编码挑战)中释放 Gemma 3 的全部潜能。
一些重要链接
- GGUFs – 适用于 Gemma 3 的优化 GGUF 模型文件。
- Transformers – Hugging Face 官方 Transformers 集成。
- MLX (coming soon) – 即将推出对 Apple MLX 的本地支持。
- Blogpost – Gemma 3 的概述和见解。
- Transformers Release – Transformers 库的最新更新。
- Tech Report – Gemma 3 的深入技术细节。
版本说明
Evals:
- MMLU-Pro:Gemma 3-27B-IT 得分 67.5,接近 Gemini 1.5 Pro 的 75.8。
- Chatbot Arena:Gemma 3-27B-IT 的 Elo 得分为 1338,超过了 LLaMA 3 405B (1257) 和 Qwen2.5-70B (1257) 等大型模型。
- 比较性能:Gemma 3-4B-IT 与 Gemma 2-27B-IT 相比具有竞争力。
多模态:
- 视觉理解:利用定制的 SigLIP 视觉编码器,将图像处理为软token序列。
- 平移和扫描 (P&S):采用自适应窗口算法,将非方形图像分割为 896×896 裁剪,提高了高分辨率图像的性能。
长语境:
- 扩展token支持:模型支持多达 128K tokens(1B 版本支持 32K)。
- 优化注意力:局部注意层与全局注意层的比例为 5:1,以缓解 KV 缓存内存爆炸的问题。
- 注意力跨度:本地层处理 1024 tokens 跨度,而全局层则管理扩展上下文。
内存效率:
- 减少开销:5:1 的关注比例将 KV 缓存内存开销从 60%(仅全局)降低到 15%以下。
- 量化:使用量化感知训练(QAT)以 int4、int4(每块)和交换 fp8 格式提供模型,显著降低了内存占用。
训练和蒸馏
- 广泛的预训练:27B 模型在 14T tokens 上进行了预训练,并扩充了多语言数据集。
- 知识蒸馏:采用每个 token 256 个对数的策略,并根据教师概率进行加权。
- 强化后培训:重点提高数学、推理和多语言能力,表现优于 Gemma 2。
视觉编码器性能:
- 更高分辨率优势:在 DocVQA(59.8 对 31.9)等任务中,以 896×896 分辨率运行的编码器优于以较低分辨率(如 256×256)运行的编码器。
- 性能提升:平移和扫描可提高文本识别任务的性能(例如,4B 模型在 DocVQA 上提高了 8.2 分)。
长语境缩放:
- 高效扩展:在 32K 序列上对模型进行预训练,然后使用 RoPE 以 8 倍的系数重新缩放,将其缩放至 128K tokens。
- 上下文限制:虽然超过 128K tokens 后性能会迅速下降,但模型在此范围内的泛化效果非常好。
小结
Gemma 3 代表着开放式人工智能技术的一次革命性飞跃,它突破了轻量级、可访问模型的极限。通过整合创新技术,如增强型多模态处理与定制的 SigLIP 视觉编码器、扩展至 128K tokens的上下文长度,以及独特的 5:1 本地与全局注意力比例,Gemma 3 不仅实现了最先进的性能,还显著提高了内存效率。
其先进的训练和提炼方法缩小了与大型闭源模型的性能差距,使开发人员和研究人员都能获得高质量的人工智能。这一版本为人工智能的民主化树立了新的标杆,为用户提供了一个适用于各种应用的多功能、高效的工具。
评论留言