运行 Gemma 内容生成和推理

如果您想运行 Gemma 模型,需要做出两个关键决定:1) 您想运行哪个 Gemma 变体,以及 2) 您将使用哪个 AI 执行框架来运行它?做出这两个决定的一个关键问题与您和您的用户可用于运行模型的硬件有关。

本概览可帮助您做出这些决定,并开始使用 Gemma 模型。运行 Gemma 模型的一般步骤如下:

选择一个框架

Gemma 模型与各种生态系统工具兼容。选择合适的工具取决于您可用的硬件(Cloud GPU 与本地笔记本电脑)以及您的界面偏好(Python 代码与桌面应用)。

使用下表快速确定最适合您需求的工具:

如果您想... 推荐框架 适用场景
使用聊天界面在本地运行 - LM Studio
- Ollama
初学者,或希望在笔记本电脑上获得“类似 Gemini”体验的用户。
在 Edge 上高效运行 - LiteRT-LM
- llama.cpp
- MediaPipe LLM Inference API
- MLX
使用最少的资源进行高性能本地推理。
在 Python 中构建/训练 - 适用于 JAX 的 Gemma 库
- Hugging Face Transformers
- Keras
- Unsloth
构建自定义应用或微调模型的研究人员和开发者。
部署到生产环境 / 企业版 - Google Cloud Kubernetes Engine (GKE)
- Google Cloud Run
- Vertex AI
- vLLM
可扩缩的代管式云部署,具有企业级安全性和 MLOps 支持。

框架详情

以下是按部署环境分类的运行 Gemma 模型的指南。

1. 桌面和本地推理(高效)

借助这些工具,您可以通过使用优化格式(如 GGUF)或特定硬件加速器在消费类硬件(笔记本电脑、台式机)上运行 Gemma。

2. Python 开发(研究和微调)

AI 开发者构建应用、流水线或训练模型的标准框架。

3. 移动和边缘部署(设备端)

旨在直接在用户设备(Android、iOS、Web)上运行 LLM 而无需互联网连接的框架,通常利用 NPU(神经处理单元)。

4. 云端和生产环境部署

用于将应用扩缩到数千名用户或访问大量计算能力的代管式服务。

请确保您选择的框架支持您打算部署的 Gemma 模型格式,例如 Keras 内置格式、Safetensors 或 GGUF。

选择一个 Gemma 变体

Gemma 模型有多种变体和大小,包括 基础或 核心 Gemma 模型,以及更 专业的模型变体(例如 PaliGemmaDataGemma),以及 AI 开发者社区在 Kaggle 和 Hugging Face 等网站上创建的许多变体。如果您不确定 应该从哪个变体开始,请选择最新的 Gemma 核心指令调优 (IT) 模型,该模型具有 最少的参数。此类 Gemma 模型对计算资源的要求较低,并且无需额外开发即可响应各种提示。

选择 Gemma 变体时,请考虑以下因素:

  • Gemma 核心和其他变体系列,例如 PaliGemma、CodeGemma建议使用 Gemma(核心)。核心版本之外的 Gemma 变体与核心模型具有相同的架构,并且经过训练,可以在特定任务中表现更好。除非您的应用或目标与特定 Gemma 变体的专业化方向一致,否则最好从 Gemma 核心模型或基础模型开始。
  • 指令调优 (IT)、预训练 (PT)、微调 (FT)、混合 (mix)建议使用 IT。
    • 指令调优 (IT) Gemma 变体是指经过训练以响应人类语言中的各种指令或请求的模型。这些模型变体是最佳的入门选择,因为它们无需进一步的模型训练即可响应提示。
    • 预训练 (PT) Gemma 变体是指经过训练以对语言或其他数据进行推理,但未经过训练以遵循人类指令的模型。这些模型需要额外的训练或调优才能有效地执行任务,适用于想要研究或开发模型及其架构的功能的研究人员或开发者。
    • 微调 (FT) Gemma 变体可以被视为 IT 变体,但通常经过训练以执行特定任务,或在特定生成式 AI 基准测试中表现良好。PaliGemma 变体系列包含许多 FT 变体。
    • 混合 (mix) Gemma 变体是 PaliGemma 模型的版本,这些模型经过各种指令的指令调优,适合一般用途。
  • 参数建议使用最小的可用参数数量。一般来说,模型拥有的参数越多,功能就越强大。但是,运行较大的模型需要更大、更复杂的计算资源,并且通常会减慢 AI 应用的开发速度。除非您已经确定较小的 Gemma 模型无法满足您的需求,否则请选择参数数量较小的模型。
  • 量化级别 :建议使用半精度 (16 位),但调优除外。 量化是一个复杂的主题,归根结底就是数据的大小和精度,以及生成式 AI 模型用于计算和生成响应的内存量。在模型使用高精度数据(通常为 32 位浮点数据)进行训练后,可以修改 Gemma 等模型以使用较低精度的数据,例如 16 位、8 位或 4 位大小。这些量化的 Gemma 模型仍然可以表现良好,具体取决于任务的复杂性,同时使用更少的计算和内存资源。但是,用于调优量化模型的工具有限,并且可能在您选择的 AI 开发框架中不可用。通常,您必须以全精度微调 Gemma 等模型,然后量化生成的模型。

如需查看 Google 发布的主要 Gemma 模型的列表,请参阅 Gemma 模型使用入门、 Gemma 模型列表。

运行生成和推理请求

选择 AI 执行框架和 Gemma 变体后,您可以开始运行模型,并提示模型生成内容或完成任务。 如需详细了解如何使用特定框架运行 Gemma,请参阅 选择框架部分中链接的指南。

提示格式

所有指令调优的 Gemma 变体都有特定的提示格式要求。其中一些格式要求由您用于运行 Gemma 模型的框架自动处理,但是当您直接向分词器发送提示数据时,您必须添加特定标记,并且标记要求可能会因您使用的 Gemma 变体而异。如需了解 Gemma 变体提示格式和系统说明,请参阅以下指南: