预配的吞吐量

预配的吞吐量是一项固定费用月度订阅或按周服务,用于为 Vertex AI 上的受支持的生成式 AI 模型预留吞吐量。如需预留吞吐量,您必须指定模型以及模型运行的可用位置

本页面介绍了何时使用预分配吞吐量、其工作原理以及如何订阅。

支持的模型

下表显示了支持预配吞吐量的模型、每个生成式 AI 扩缩单元 (GSU) 的吞吐量以及每个模型的消耗率

Google 模型

下表显示了支持预配吞吐量的 Google 模型的吞吐量、购买增量和消耗率。Google 模型以每秒字符数为单位进行衡量,即每秒所有请求中的提示输入和生成的文本输出字符总数。

模型 每个 GSU 的吞吐量 (chars/sec) 最小 GSU 购买增量 消耗率
Gemini 1.5 Flash 小于或等于 128,000 个上下文窗口
54,000

大于 128,000 个上下文窗口
27,000
1 小于或等于 128,000 个上下文窗口
1 个输入字符 = 1 个字符
1 个输出字符 = 4 个字符
1 个图片 = 1,067 个字符
1 个视频/秒 = 1,067 个字符
1 个音频/秒 = 107 个字符
超过 128,000 个上下文窗口
1 个输入字符 = 2 个字符
1 个输出字符 = 8 个字符
1 张图片 = 2,134 个字符
1 个视频/秒 = 2,134 个字符
1 个音频/秒 = 214 个字符
Gemini 1.5 Pro 800 1 小于或等于 128,000 个上下文窗口
1 个输入字符 = 1 个字符
1 个输出字符 = 3 个字符
1 张图片 = 1,052 个字符
1 个视频/秒 = 1,052 个字符
1 个音频/秒 = 100 个字符
大于 128,000 个上下文窗口
1 个输入字符 = 2 个字符
1 个输出字符 = 6 个字符
1 张图片 = 2,104 个字符
1 个视频/秒 = 2,104 个字符
1 个音频/秒 = 200 个字符
Gemini 1.0 Pro 8000 1 1 个输入字符 = 1 个字符
1 个输出字符 = 3 个字符
1 张图片 = 20,000 个字符
1 个视频/秒 = 16,000 个字符
Imagen 3 0.025
吞吐量以图像/秒(而非字符/秒)为单位进行衡量。
1 只有输出图片会计入预配吞吐量配额。
Imagen 3 Fast 0.05
吞吐量以图像/秒(而非字符/秒)为单位进行衡量。
1 只有输出图片会计入预配吞吐量配额。
Imagen 2 0.05
吞吐量以图像/秒(而非字符/秒)为单位进行衡量。
1 只有输出图片会计入预配吞吐量配额。
Imagen 2 Edit 0.05
吞吐量以图像/秒(而非字符/秒)为单位进行衡量。
1 只有输出图片会计入预配吞吐量配额。
MedLM medium 2000 1 1 个输入字符 = 1 个字符
1 个输出字符 = 2 个字符
MedLM 大型 200 1 1 个输入字符 = 1 个字符
1 个输出字符 = 3 个字符
MedLM large 1.5 200 1 1 个输入字符 = 1 个字符
1 个输出字符 = 3 个字符

如需详细了解受支持的位置,请参阅可用位置

您可以随时升级到新模型。如需了解型号的可用性和停用日期,请参阅 Google 型号

预览版功能

预配吞吐量的预览版功能需要获得访问权限批准。如需申请访问权限,请填写并提交预配吞吐量访问控制表单

预览版为 Google 模型提供了以下功能:

  • 预配吞吐量既适用于基本模型,也适用于这些基本模型的监督式微调版本。

  • 监督式微调模型端点及其对应的基准模型会计入同一预配吞吐量配额。

    例如,为特定项目购买的 gemini-1.5-pro-002 预配吞吐量会优先处理使用该项目中创建的经过监督微调的 gemini-1.5-pro-002 版本发出的请求。使用适当的标头来控制流量行为。

  • 您可以按周购买预配型吞吐量,而不是按月订阅,并且可以选择在下单后的两周内提供开始日期。

Google 旧版模型

请参阅支持预配吞吐量的旧版模型

合作伙伴模型

下表显示了支持预配吞吐量的合作伙伴模型的吞吐量、购买增量和消耗率。Claude 模型以每秒词元数为单位进行衡量,每秒词元数定义为所有请求中每秒的输入和输出词元的总数。

模型 每个 GSU 的吞吐量(词元数/秒) 最小 GSU 购买量 GSU 购买增量 消耗率
Anthropic 的 Claude 3.5 Sonnet v2 350 25 1 1 个输入词元 = 1 个词元
1 个输出词元 = 5 个词元
Anthropic 的 Claude 3.5 Haiku 2000 10 1 1 个输入词元 = 1 个词元
1 个输出词元 = 5 个词元
Anthropic 的 Claude 3 Opus 70 35 1 1 个输入词元 = 1 个词元
1 个输出词元 = 5 个词元
Anthropic 的 Claude 3 Haiku 4,200 5 1 1 个输入词元 = 1 个词元
1 个输出词元 = 5 个词元
Anthropic 的 Claude 3.5 Sonnet 350 25 1 1 个输入词元 = 1 个词元
1 个输出词元 = 5 个词元
Anthropic 的 Claude 3 Sonnet 350 25 1 1 个输入词元 = 1 个词元
1 个输出词元 = 5 个词元

如需详细了解受支持的位置,请参阅可用位置

何时使用预配吞吐量

如果您的用例符合以下任何注意事项,请考虑使用预分配吞吐量:

  • 您的关键工作负载始终需要高吞吐量。吞吐量测量取决于模型。
  • 您要构建实时生成式 AI 生产应用,例如聊天机器人和代理。
  • 您的吞吐量必须超过每秒 2 万个字符。
  • 您希望为应用用户提供一致且可预测的体验。
  • 您希望通过支付每月固定价格来控制超额费用,从而实现确定性的生成式 AI 费用。
  • 您希望通过支付每月或每周固定价格来控制超额费用,从而实现确定性的生成式 AI 费用。

预配的吞吐量是使用生成式 AI 模型的两种方式之一。第二种方式是按用量付费,也称为按需付费。

预配的吞吐量如何衡量

本部分介绍了生成式 AI 扩缩单元 (GSU) 和消耗率的概念。预配吞吐量是使用 GSU 和消耗率进行计算和定价的。

生成式 AI 扩缩单元 (GSU) 是提示和响应的吞吐量衡量单位。此数量指定了为模型预留多少吞吐量。

为了在各个模型中生成标准单位,所有输入和输出都使用模型专属的比例(称为消耗率)转换为每秒输入字符数(吞吐量)。

不同模型使用不同的吞吐量。如需了解每种模型的最低 GSU 购买金额和增量,请参阅本文档中的支持的模型和消耗率部分。

以下等式演示了如何计算吞吐量:

inputs_per_query = inputs_across_modalities_converted_using_burndown_rates
outputs_per_query = outputs_across_modalities_converted_using_burndown_rates

throughput_per_second = (inputs_per_query + outputs_per_query) * queries_per_second

计算出的每秒吞吐量决定了您的用例需要多少 GSU。

估算预配的吞吐量需求的示例

如需估算预配置吞吐量需求,请使用 Google Cloud 控制台中的估算工具。以下示例说明了估算模型预配吞吐量的过程。估算计算中不考虑该区域。

  1. 收集要求。

    1. 在此示例中,您的要求是确保您可以使用 gemini-1.5-flash 发送 2 张图片和 2,000 个字符,并以每秒 10 个查询的速度接收 300 个字符的输出。

      此步骤意味着您了解自己的用例,因为您已经确定了输入和输出的大小、每秒查询次数 (QPS) 以及模型。

    2. 如需估算吞吐量,请指定模型。在此示例中,您的模型为 gemini-1.5-flash

    3. 指定输入类型,并确定消耗率。使用消耗率表格根据输入类型确定消耗率。

      gemini-1.5-flash 模型的图片消耗率为 1,067 个字符。

  2. 计算吞吐量。

    1. 将图片数量乘以特定模型的输入类型的消耗率。

      2 张图片 * 每张图片 1,067 个输入字符 = 2,134 个输入字符

    2. 您的输出字符总数为 300。返回到消耗率表格,查找特定模型的输出字符消耗率(每输出字符四个字符)(gemini-1.5-flash)。

      300 个输出字符 * 每个输出字符 4 个字符 = 1,200 个转换后的输入字符

    3. 将总计相加。

      2,000 个输入字符 + 2,134 个转换后的图片输入字符 + 1,200 个转换后的输出字符 = 每次查询的 5,334 个转换后的输入字符

    4. 将每次查询的字符数乘以预期的每秒查询数,即可得出每秒的总吞吐量。

      每次查询转换的输入字符数 5,334 个 * 10 QPS = 每秒总共转换的输入字符数 53,340 个

  3. 计算 GSU。

    1. GSU 是指每秒总吞吐量除以消耗量表格中的每 GSU 吞吐量。

      每秒总转换输入字符数 53,340 ÷ 每 GSU 54,000 个传输量 = 0.988 GSU

    2. gemini-1.5-flash 的最小 GSU 购买增量为 1,符合您的要求。

订阅前要考虑的事项

如需帮助您确定是否要订阅预配置吞吐量,请查看以下有关订阅的详细信息列表:

  • 您无法取消订单。

    预配吞吐量购买交易属于承诺,这意味着您无法取消订单。不过,您可以增加购买的 GSU 数量。如果您无意中购买了承诺,或者配置出现问题,请与您的 Google Cloud 客户代表联系以获取帮助。

  • 您可以自动续订订阅

    提交订单时,您可以选择在订阅期结束时自动续订订阅,也可以让订阅到期。您可以取消自动续订流程。如要取消订阅,请在下一个订阅期开始前 30 天取消自动续订。

    您可以将包月订阅配置为每月自动续订。 每周方案不支持自动续订。

    如果您在完成此流程时需要帮助,请与您的 Google Cloud 账号代表联系

  • 您可以更改模型版本或区域,但需事先通知我们。

    在您选择项目、区域、模型和版本后,预配置吞吐量便会启用。您可以在同一模型发布商或区域内更改模型版本,但需要提前 10 个工作日通知,请与您的 Google Cloud 账号代表联系以获取帮助。例如,您可以在 Google 的各个模型之间切换。您可以切换合作伙伴 A 的模型。您可以切换合作伙伴 B 的模型。您无法在 Google、合作伙伴 A 和合作伙伴 B 的模型之间切换。

  • 从随用随付方案切换到预配吞吐量方案时不会有停机时间。

    在为预分配吞吐量订单切换模型时,不会有停机时间。不过,需要提前预留时间来获取吞吐量。

  • 默认情况下,超额费用以随用随付形式结算。

    如果您的吞吐量超出预订吞吐量订单金额,超出部分将按随用随付方式处理和结算。您可以按请求控制超额费用。如需了解详情,请参阅使用 REST API

  • 请求会按优先级处理。

    系统会先对来自预配吞吐量的客户的请求进行优先处理和服务,然后再处理按需请求。

  • 您必须承诺使用最低使用量以及付款。

    最低使用量取决于您选择的生成式 AI 模型。超出购买的吞吐率的任何使用都不能保证,并且我们会在合理工作的基础上提供服务。

  • 吞吐量不会累积

    任何未使用的吞吐量都不会累积或结转到下个月。

  • 预配吞吐量以每秒字符数或词元数为计量单位。

    预配吞吐量以每秒字符数或词元数为单位进行衡量,而不是以每分钟查询次数 (QPM) 为单位进行衡量。因此,测量预分配吞吐量取决于用例的查询大小和 QPM。

  • 预配的吞吐量会检查您的配额。

    每当您在配额期限内发出请求时,系统都会检查您的预配吞吐量配额。对于 gemini-1.5-flash-002gemini-1.5-pro-002 模型,配额期限为 30 秒。这意味着,在某些情况下,您可能会暂时遇到优先级流量超出每秒配额的情况,但在 30 秒内,您应该不会超出配额。其他模型的配额期限为 1 分钟。

  • 监督式微调模型端点及其对应的基准模型会计入同一预配吞吐量配额。这是预览版功能。填写并提交预配吞吐量访问控制表单

    例如,为特定项目的 gemini-1.5-pro-002 购买的预配吞吐量会优先处理通过在该项目中创建的经过监督的微调版 gemini-1.5-pro-002 发出的请求。使用适当的标头来控制流量行为。

购买预配吞吐量

本部分介绍了您必须拥有的权限才能下达或查看预分配吞吐量订单,以及下达和查看订单的说明。

权限

如需订阅预配置吞吐量,您必须拥有以下权限之一,以便列出和下达新的订单。

  • aiplatform.googleapis.com/provisionedThroughputAdmin:特定于预配吞吐量。
  • aiplatform.googleapis.com/admin:为 Vertex AI 中的每个资源授予管理权限。

此角色仅允许您列出自己的订单:

  • aiplatform.googleapis.com/viewer

下达预配的吞吐量订单

在下单使用 Imagen 模型之前,请提交请求授予权限表单,以便获得权限。

在下单使用 MedLM-large-1.5 之前,请与您的 Google Cloud 客户代表联系,申请访问权限。如果您预计 QPM 将超过 3 万,则为了最大限度地提高预配吞吐量订单,请使用以下信息申请提高默认的 Vertex AI 系统配额:

  • 服务:Vertex AI API。
  • 名称Online prediction requests per minute per region
  • 服务类型:配额。
  • 维度:您订购预配吞吐量的区域。
  • :这是您选择的在线预测流量限制。

如需购买预配吞吐量,请按以下步骤操作:

控制台

  1. 在 Google Cloud 控制台中,前往“预配吞吐量”页面。

    前往“预配的吞吐量”

  2. 如需开始新订单,请点击创建
  3. 输入订单名称
  4. 选择模型
  5. 选择地区
  6. 输入您必须购买的生成式 AI 扩缩单元 (GSU) 的数量。如果您必须估算 GSU 数量,请点击估算工具
    1. 选择模型
    2. 输入每秒查询次数
    3. 输入每次查询的输入字符数
    4. 输入每次查询的输入图片数
    5. 输入每次查询的视频秒数
    6. 输入每次查询的音频秒数
    7. 输入每次查询的输出字符数
    8. 如果您想使用在估算工具中输入的值,请点击使用计算值
  7. 选择期限

    如果您选择一周,则可以选择在下单后的两周内提供开始日期和时间。如果您未提供开始日期和时间,我们会在确认有空余容量后尽快处理订单。我们会尽力处理请求的开始日期和时间,但在订单状态设为已批准之前,我们不能保证订单一定会在这些日期之前完成。

    如果您请求的开始日期与当前日期过于接近,您的订单可能会在您请求的开始日期之后获得批准并激活,这意味着您的结束日期仍为激活日期后的第 7 天。

  8. 选择续订选项。
  9. 点击继续
  10. 摘要部分,查看订单的价格和吞吐量估算值。阅读表单中列出的条款及链接。
  11. 如需完成订单,请点击确认

检查订单状态

提交预配置吞吐量订单后,订单状态可能会显示为以下某项:

  • 待审核:您已下单。由于批准取决于预留订单的空闲容量,因此您的订单正在等待审核和批准。如需详细了解待处理订单的状态,请与您的 Google Cloud 客户代表联系
  • 已批准:Google 已批准您的订单。
  • 有效:Google 已激活您的订单,并且结算已开始。
  • 已过期:您的订单已过期。

查看预配吞吐量订单

请按照以下步骤查看预分配吞吐量的订单:

控制台

  1. 在 Google Cloud 控制台中,前往“预配吞吐量”页面。

    前往“预配的吞吐量”

  2. 选择地区。 系统会显示您的订单列表。

使用预配吞吐量

本部分介绍了如何控制超额使用或绕过预配吞吐量,以及如何监控预配吞吐量的用量。

控制超额或绕过预配吞吐量

在超出所购吞吐量时,使用 REST API 控制超额或按请求绕过预分配吞吐量。

仔细阅读每种选项,确定您必须采取哪些措施才能满足您的使用场景。

默认行为

如果您超出所购买的吞吐量,超出部分将按需使用,并按随用随付费率结算。预配置吞吐量订单生效后,系统会自动执行默认行为。您无需更改代码即可开始使用订单。

以下 curl 示例演示了默认行为。

! curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  $URL \
  -d '{"contents": [{"role": "user", "parts": [{"text": "Hello."}]}]}'

仅使用预配吞吐量

如果您通过避免按需费用来管理成本,请仅使用预配吞吐量。超出预配置吞吐量订单金额的请求会返回错误 429

此 curl 示例演示了如何使用 REST API 仅使用预配吞吐量订阅,超额使用时会返回错误 429

X-Vertex-AI-LLM-Request-Type 标头设置为 dedicated

! curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -H "X-Vertex-AI-LLM-Request-Type: dedicated" \
  $URL \
  -d '{"contents": [{"role": "user", "parts": [{"text": "Hello."}]}]}'

仅使用随用随付

这也称为按需使用。请求会绕过预配吞吐量订单,并直接发送到按用量付费订单。这可能适用于正在开发的实验或应用。

此 curl 示例演示了如何使用 REST API 绕过预配吞吐量,仅使用按用量付费。

X-Vertex-AI-LLM-Request-Type 标头设置为 shared

! curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -H "X-Vertex-AI-LLM-Request-Type: shared" \
  $URL \
  -d '{"contents": [{"role": "user", "parts": [{"text": "Hello."}]}]}'

监控预配吞吐量

您可以通过监控指标,按请求监控预配的吞吐量用量。

响应标头

如果请求是使用预配置吞吐量处理的,响应中会包含以下 HTTP 标头。这行代码仅适用于 generateContent API 调用。

  {"X-Vertex-AI-LLM-Request-Type": "dedicated"}

指标

您可以使用一组基于 aiplatform.googleapis.com/PublisherModel 资源类型测量的指标来监控已预配的吞吐量。每个指标都可以按以下维度进行过滤:

  • typeinputoutput
  • request_typededicatedshared

如需过滤指标以查看预配吞吐量用量,请使用 dedicated 请求类型。指标的路径前缀为 aiplatform.googleapis.com/publisher/online_serving。例如,/consumed_throughput 指标的完整路径为 aiplatform.googleapis.com/publisher/online_serving/consumed_throughput

aiplatform.googleapis.com/PublisherModel 资源上提供以下 Cloud Monitoring 指标:

指标 显示名称 说明 过滤预配吞吐量用量
/characters 角色 输入和输出字符数分布。
/character_count 字符数 累计输入和输出字符数。
/consumed_throughput 字符吞吐量 消耗的吞吐量(考虑消耗速率),以字符数表示。
/model_invocation_count 模型调用次数 模型调用(预测请求)的数量。
/model_invocation_latencies 模型调用延迟时间 模型调用延迟时间(预测延迟时间)。
/first_token_latencies 第一个词元延迟时间 从收到请求到返回第一个词元所用的时间。
/tokens 令牌 输入和输出词元计数分布。
/token_count 词元数 累计输入和输出词元数。

排查预配吞吐量问题

如需更正预配的吞吐量产生的 429 错误,请执行以下操作:

  • 使用默认示例,该示例不会在预测请求中设置标头。任何超额费用按需处理,并且随用随付。
  • 增加预配的吞吐量订阅中的 GSU 数量。

后续步骤