gemma
Google DeepMind 出品的高质量开源大语言模型工具库,支持 JAX GPU/TPU 多硬
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Google DeepMind 出品的高质量开源大语言模型工具库,支持 JAX GPU/TPU 多硬
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下:你是一家 AI 创业公司的算法工程师,手头只有一块消费级 RTX 4090,却想快速尝鲜 Google 最前沿的大语言模型技术——以前这几乎是奢望。Google 闭源模型的 API 调用费用让个人开发者和小型团队望而却步,而从头训练一个模型更是痴人说梦。
2024 年 2 月,Google DeepMind 发布了 Gemma(源自梵语「女神」一词),彻底打破了这个困局。Gemma 是一系列轻量级开源大语言模型,最小的 2B 参数版本可以在单张消费级 GPU 上运行,而最大的 72B 版本则在多项基准测试中追平甚至超越了 GPT-3.5。这不仅是技术的突破,更是一种生态战略的转变——Google 正在用开源的方式争夺 AI 开发者生态。
在 Gemma 之前,Google 在开源大模型领域的存在感几乎为零。OpenAI 的 GPT 系列、Mistral AI 的模型在各社区大放异彩,而 Google 的 PaLM、Gemini 一直以闭源 API 的形式服务少数大客户。DeepMind 的这篇论文首次披露了 Gemini 的技术精华,并将其压缩为更小的开源版本向社区开放。
Gemma 的命名本身就蕴含深意:Gemma 源自梵语,代表「女神」,同时也是 Google 内部的模型开发代号。核心团队由 Transformer 架构的提出者 Ashish Vaswani 所在团队的部分成员、以及 DeepMind 多位资深研究员组成,可以说汇聚了 Google 在大模型领域最顶尖的工程力量。
如果说 PyTorch 是深度学习的「通用操作系统」,那么 Gemma 就是 Google 专门为运行 Gemma 模型的「驱动程序 + 工具箱」。它帮你把模型下载、权重加载、推理采样、微调训练这些复杂的底层操作,全部封装成几行代码就能调用的简单接口。
打个比方:你要组装一台高性能 PC,自己去买 CPU、主板、内存、显卡,理解每个部件的兼容性,再手动接线——这就是没有 Gemma 时的状态。有了 Gemma,就相当于有人把主板、显卡驱动、散热系统全部预装好,你只需要插上电、按下开机键。
Gemma 库远不止下载模型权重这么简单。它提供了一整套完整的工具链:
1. 统一的推理 API(gm.text.ChatSampler / Gemma4_E4B 等)
Gemma 实现了统一的 ChatSampler 接口,支持多轮对话、多模态(图像+文本)输入。你只需要传入 prompt 和图片,就能让模型回答「两张图片你更喜欢哪张」这样的复杂问题。相同 API 同时支持 Gemma 2/3/3n/4 全系列,一个接口打天下。
2. 灵活的微调支持
examples/ 目录提供了 7 种微调脚本,覆盖分类任务(classification)、序列到序列(seq2seq)、DPO(Direct Preference Optimization)、NPO(Negative Preference Optimization)、LoRA 低秩微调等主流技术。特别是 LoRA 支持,让你在消费级显卡上也能微调大模型。
3. 多硬件后端(JAX)
Gemma 底层基于 Google 自研的 JAX 框架,可以无缝运行在 CPU、GPU 和 TPU 上。对于有多张 H100 的实验室,可以利用 JAX 的自动并行化能力进行分布式推理。
4. 工具调用(Tool Use)
gemma/gm/tools/ 目录提供了 MCP(Model Context Protocol)集成,让 Gemma 可以调用外部工具、访问实时信息,这是构建 AI Agent 的关键技术。
Gemma 是一个纯 Python 库,没有 Web UI,上手需要一定的 Python 基础和对 LLM 的基本理解。好消息是:Gemma 的文档质量堪称业界标杆,ReadTheDocs 上的文档结构清晰、示例丰富,提供了 10 个 Google Colab 笔记本,涵盖从基础采样、微调、LoRA、多模态到量化的全流程。
部署上,通过 pip install gemma 一行命令即可安装。最大难点在于 JAX 的 GPU/TPU 安装——需要根据你的 NVIDIA 驱动版本选择对应的 CUDA + cuDNN 组合,但官方文档有详细指引。
硬件需求:2B 参数模型推荐 8GB+ VRAM(RTX 3080 级别),7B 参数模型推荐 24GB+ VRAM(如 RTX 4090 或 A100)。
局限一:必须用 JAX
Gemma 选择了 JAX 作为底层框架,而非更主流的 PyTorch。对习惯了 PyTorch 的开发者来说,JAX 的函数式编程风格有一定学习曲线。虽然社区也有 PyTorch 实现,但官方支持只有 JAX。
局限二:模型下载受限
Gemma 模型权重通过 Kaggle 渠道分发,需要注册 Kaggle 账号并接受使用条款,这对部分开发者来说增加了额外门槛。
局限三:性能调优依赖经验
虽然代码封装良好,但 JAX 的 GPU 性能调优(XLA 编译、并行策略)仍需要一定经验,新手可能会遇到显存溢出或推理速度不达预期的问题。
Gemma 的出现,让开源大模型生态从「Meta 的 Llama 独大」变成了 Llama + Mistral + Gemma 的三足鼎立格局。与 Llama 相比,Gemma 的优势在于有 Google DeepMind 这样的顶级团队背书、严格的技术审计,以及与 Google 云服务的深度集成。
从技术演进看,Gemma 正在快速迭代:从 2024 年 2 月的 Gemma 1,到 2024 年 8 月的 Gemma 2(引入Gemma2-27B),再到 2025 年 1 月的 Gemma 3(多模态),直至最新的 Gemma 4,迭代速度惊人。这意味着现在入局的开发者,将持续获得 Google 的技术更新和模型升级。
对于中国开发者而言,Gemma 的开源也带来了一个现实问题:Kaggle 下载渠道在国内访问受限。但好消息是,通过镜像站或 Hugging Face 社区,用户仍可获取相关资源。