使用 token 配额控制费用

本文档介绍了如何定义和管理生成式 AI 函数消耗的输入和输出 token 数量的每日限额。

BigQuery 生成式 AI 函数使用大型语言模型 (LLM) 在 SQL 查询中执行高级分析。由于 LLM 用量通常按处理的 token 数量计费,因此 BigQuery 提供 token 配额,以帮助您管理和控制使用这些函数的相关费用。

token 配额适用于为使用 Gemini LLM 的所有生成式 AI 推理任务设计的 BigQuery SQL 函数,例如 AI.CLASSIFYAI.GENERATE 函数。

配额详细信息

BigQuery 根据 LLM token 用量提供以下每日配额。token 用量与使用 Gemini 模型的 BigQuery 生成式 AI 函数的 Vertex AI 结算直接相关。这些配额在全球范围内跟踪,不受区域限制。

这些 token 配额控制生成式 AI 函数的 LLM 处理的输入和输出 token 数量:

  • 输入 token:发送给模型进行处理的 token。这包括提示文本中的 token 以及作为输入提供给模型的任何其他数据。
  • 输出 token:模型在其响应中生成的 token。这包括生成的文本(候选 token)中的 token 以及在内部推理步骤中生成的 token(思考 token)。
配额名称 指标 范围 默认值
GenAiInputTokensPerDay LLM 使用的输入 token 每个项目每天 2000 亿
GenAiInputTokensPerUserPerDay LLM 使用的输入 token 每位用户每天 400 亿
GenAiOutputTokensPerDay LLM 使用的输出 token 和思考 token 每个项目每天 200 亿
GenAiOutputTokensPerUserPerDay LLM 使用的输出 token 和思考 token 每位用户每天 40 亿

这些配额以百万 token 为增量进行跟踪。虽然您可以设置精确的限制,但由于 token 报告和汇总的性质,小于几百万 token 的值可能无法准确反映。

缓存的 token 不计入配额。

管理配额

根据您的资源用量,您可能需要查看或上下调整 token 配额值。您可以使用 Google Cloud 控制台执行 以下任务:

  1. 在 Google Cloud 控制台中,依次前往 IAM 和管理 > 配额和系统 限制 页面。

    进入“配额和系统限制”

  2. 输入 Service: BigQuery API,过滤配额。

  3. 从配额列表中搜索特定配额(例如,搜索 GenAiInputTokensPerDay)。

  4. 点击修改

  5. 配额更改 窗格中输入新值,增加或减少配额。

    • 如果您的工作负载需要的容量超出默认限制,您 可以申请增加配额
    • 如果您想对用量设置更严格的限制以防止预算 超支,您可以创建配额替换值 来限制用量。
  6. 点击提交请求

配额超限处置行为

BigQuery 会在查询执行的多个阶段监控您的 token 消耗情况:

  • 执行前检查: BigQuery 会在执行包含生成式 AI 函数的查询之前检查可用的 token 配额。如果相关配额(例如,项目每日输入 token)已用尽,系统会拒绝该查询并返回 QuotaExceeded 错误。
  • 执行期间: 如果查询正在运行并消耗 token,导致任何配置的配额(每个项目或每位用户的输入或输出)用尽,系统会拒绝该查询中的新 LLM 调用。
    • 任何依赖于 LLM 调用的剩余行都会遇到配额用尽错误。
    • 如果查询在 AI.IF 等函数中使用 max_error_ratio 实参,则查询结果取决于该实参。如果错误率保持在允许的限制范围内,系统可能会返回部分结果。否则,整个查询都会失败。
    • 在每日配额重置之前,后续尝试使用生成式 AI 函数的查询都会失败,并返回 QuotaExceeded 错误。

重要注意事项

  • 全球配额: 定义的配额是全球配额。token 用量会在项目运行的所有区域进行汇总,从而提供统一的费用控制机制。这可以防止因不同区域的用量而产生意外费用。
  • 预配吞吐量: 如果您使用的是具有预配吞吐量的 Vertex AI 模型,则结算不是基于 token 用量。您应将这些 BigQuery token 配额设置为较高的值,以避免不必要地阻止查询。

后续步骤