Gemini API 常见问题解答

本文档提供了有关 Gemini API 的常见问题解答 (FAQ),分为以下类别:

模型对比

PaLM 和 Gemini 之间有什么区别?

Gemini 模型专为多模态应用而设计。Gemini 模型接受包含文本和图片等提示,然后返回文本响应。Gemini 还支持函数调用,让开发者可以传递函数的说明,然后模型会返回与说明最匹配的函数和参数。然后,开发者可以在外部 API 和服务中调用该函数。

PaLM 2 模型已正式发布 (GA)。PaLM 2 模型专为语言应用而设计,可在文本摘要和文本生成等应用场景中有良好表现。PaLM 2 还会为 Vertex AI 上的 MLOps 服务提供全面支持,例如模型监控(Gemini 不提供此功能)。

借助 Vertex AI Studio,您可以使用完整的数据控制功能自定义 Gemini 和 PaLM 2 模型,并利用 Google Cloud 的安全性、隐私权以及数据治理和合规性支持。Gemini 和 PaLM 2 的提示和调整数据绝不会用于训练或增强我们的基础模型。

为什么选择 PaLM 而不是 Gemini?

对于仅需要文本输入输出的应用场景(例如文本摘要、文本生成和问答),PaLM 2 模型可以提供足够高质量的回答。

Gemini 模型非常适合包含多模态输入、需要函数调用或需要复杂提示方法(例如思维链和复杂指令)的应用场景。

PaLM 2 即将被弃用吗?

没有弃用 PaLM 2 的计划。

对于视觉用例,Imagen on Vertex AI 和 Gemini API 有什么区别?

Imagen 是一种用于图片生成、修改、标注和问答应用场景的视觉模型。作为提示的一部分,Gemini 可以接受多张图片或一个视频,并提供有关您的输入的答案,其中 Imagen 只能接受一个输入图片。Gemini 不支持图片生成或图片修改。

对于编码用例,Vertex AI Codey API 与 Gemini API 之间有什么区别?

Codey API 专门针对代码生成、代码补全和代码聊天而构建。Codey API 由 Gemini 和 Google 开发的其他模型提供支持。您可以通过将 API 集成到 IDE、CI/CD 工作流、信息中心和其他应用中,在整个软件开发生命周期中使用这些 API。您还可以使用代码库自定义模型。不建议使用 Gemini 1.0 Pro Vision 来生成代码。

如何向 Gemini 1.0 Pro 或 Gemini 1.0 Pro Vision 模型发送提示

您可以使用多种不同的方法向 Gemini API 发送请求。例如,您可以使用 Google Cloud 控制台、编程语言 SDK 或 REST API 向 gemini-1.0-pro (Gemini 1.0 Pro) 或 gemini-1.0-pro-vision (Gemini 1.0 Pro Vision) 发送请求。

要开始使用,请参阅试用 Gemini API

Gemini 是否可以微调?

您可以微调 Gemini 1.0 Pro 稳定版的 002 版本 (gemini-1.0-pro-002)。如需了解详情,请参阅 Gemini 的模型调优概览

安全和数据使用情况

为什么我的响应遭到阻止?

Vertex AI 上的生成式 AI 使用安全过滤器来防止潜在的有害响应。您可以调整此安全过滤条件阈值。如需了解详情,请参阅 Responsible AI

如何使用我的输入数据?

Google 通过健全的数据治理实践(包括审核 Google Cloud 在其产品开发中使用的数据),确保 Google 团队遵循我们的 AI/机器学习隐私权承诺。如需了解详情,请参阅生成式 AI 和数据治理

我的数据会被缓存吗?

Google 可能缓存客户的 Gemini 模型的输入和输出,以加快对客户后续提示的回答速度。缓存的内容最多可存储 24 小时。默认情况下,系统会为每个 Google Cloud 项目启用数据缓存。Google Cloud 项目的相同缓存设置适用于所有区域。您可以使用以下 curl 命令来获取缓存状态、停用缓存或重新启用缓存。如需了解详情,请参阅“生成式 AI 和数据治理”页面上的预测。停用或重新启用缓存时,更改将应用于所有 Google Cloud 区域。如需详细了解如何使用 Identity and Access Management 授予启用或停用缓存所需的权限,请参阅使用 IAM 进行 Vertex AI 访问权限控制。展开以下部分,了解如何获取当前缓存设置、停用缓存以及启用缓存。

获取当前缓存设置

运行以下命令以确定是否为项目启用或停用了缓存。如需运行此命令,用户必须获得以下角色之一:roles/aiplatform.viewerroles/aiplatform.userroles/aiplatform.admin

PROJECT_ID=PROJECT_ID
# Setup project_id
$ gcloud config set project PROJECT_ID

# GetCacheConfig
$ curl -X GET -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/cacheConfig

# Response if caching is enabled (caching is enabled by default).
{
  "name": "projects/PROJECT_ID/cacheConfig"
}

# Response if caching is disabled.
{
  "name": "projects/PROJECT_ID/cacheConfig"
  "disableCache": true
}
    

停用缓存

运行以下 curl 命令为 Google Cloud 项目停用缓存。如需运行此命令,用户必须获得 Vertex AI 管理员角色 roles/aiplatform.admin

PROJECT_ID=PROJECT_ID
# Setup project_id
$ gcloud config set project PROJECT_ID

# Setup project_id.
$ gcloud config set project ${PROJECT_ID}

# Opt-out of caching.
$ curl -X PATCH -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/cacheConfig -d '{
  "name": "projects/PROJECT_ID/cacheConfig",
  "disableCache": true
}'

# Response.
{
  "name": "projects/PROJECT_ID/locations/us-central1/projects/PROJECT_ID/cacheConfig/operations/${OPERATION_ID}",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.protobuf.Empty"
  }
}
    

启用缓存

如果您为 Google Cloud 项目停用了缓存,并希望重新启用,请运行以下 curl 命令。如需运行此命令,用户必须获得 Vertex AI 管理员角色 roles/aiplatform.admin

PROJECT_ID=PROJECT_ID
LOCATION_ID="us-central1"
# Setup project_id
$ gcloud config set project PROJECT_ID

# Setup project_id.
$ gcloud config set project ${PROJECT_ID}

# Opt in to caching.
$ curl -X PATCH     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/cacheConfig -d '{
  "name": "projects/PROJECT_ID/cacheConfig",
  "disableCache": false
}'

# Response.
{
  "name": "projects/PROJECT_ID/locations/us-central1/projects/PROJECT_ID/cacheConfig/operations/${OPERATION_NUMBER}",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.protobuf.Empty"
  }
}
    

迁移

如何将 Google AI Studio 上的 Gemini 迁移到 Vertex AI Studio?

迁移到 Google Cloud 的 Vertex AI 平台会提供一套 MLOps 工具,可简化 AI 模型的使用、部署和监控,以提高效率和可靠性。如需将工作迁移到 Vertex AI,请导入现有数据,将其上传到 Vertex AI Studio,并使用 Vertex AI Gemini API。如需了解详情,请参阅从 Google AI 上的 Gemini 迁移到 Vertex AI

如何从 PaLM 2 切换到 Vertex AI Gemini API 作为底层模型?

从 PaLM 模型切换到 Gemini 模型时,您无需对应用进行任何重大架构更改。从 API 的角度来看,从一个模型切换到另一个模型需要更改一行代码或更新 SDK。如需了解详情,请参阅从 PaLM API 迁移到 Vertex AI Gemini API

由于响应因模型而异,因此我们建议您执行提示测试来比较 PaLM 和 Gemini 模型的响应,以检查响应是否符合您的预期。

适用范围和定价

Gemini 可在哪些位置使用?

Gemini 1.0 Pro 和 Gemini 1.0 Pro Vision 可在亚洲、美国和欧洲区域使用。如需了解详情,请参阅 Vertex AI 上的生成式 AI 位置

Vertex AI Gemini API 是否有免费评估层级?

如需了解详情,请与您的 Google Cloud 代表联系

Vertex AI Gemini API 的价格是多少?

如需了解 Gemini 模型的价格信息,请参阅 Vertex AI 上的生成式 AI 价格中的多模态部分。

我如何获取 Gemini Ultra 的访问权限?

如需请求获取访问权限,请与您的 Google 客户代表联系。

配额

如何解决发出 API 请求时的配额 (429) 错误?

需求过多或请求超出了每个项目的配额。请检查您的请求速率是否小于项目的配额。如需查看项目配额,请转到 Google Cloud 控制台中的配额页面。如需了解详情,请参阅 Vertex AI 上的生成式 AI 配额和限制

如何增加我用于 Gemini 的项目配额?

您可以通过 Google Cloud 控制台申请增加配额。如需了解详情,请参阅 Vertex AI 上的生成式 AI 配额和限制