通过 token 配额控制费用
本文档介绍了如何定义和管理生成式 AI 功能消耗的输入和输出令牌数量的每日限额。BigQuery 生成式 AI 函数使用大型语言模型 (LLM) 在 SQL 查询中执行高级分析。由于 LLM 使用量通常按处理的令牌数计费,因此 BigQuery 提供令牌配额,以帮助您管理和控制与使用这些函数相关的费用。
令牌配额适用于专为使用 Gemini LLM 的生成式 AI 推理任务而设计的 BigQuery SQL 函数,例如 AI.CLASSIFY 和 AI.GENERATE_TEXT 函数。令牌配额不适用于嵌入生成和语义搜索功能(例如 AI.EMBED),这些功能具有不同的结算结构。
配额详细信息
BigQuery 根据 LLM 令牌使用情况提供以下每日配额。令牌用量直接影响您在使用 Gemini 模型的 BigQuery 生成式 AI 功能方面的 Vertex AI 账单。这些配额会在所有区域内进行全球跟踪。
这些 token 配额用于控制 LLM 为生成式 AI 函数处理的输入和输出 token 数量:
- 输入 token:发送给模型以供处理的 token。这包括提示文本中的令牌以及作为输入提供给模型的任何其他数据。
- 输出 token:模型在回答中生成的 token。这包括生成文本中的 token(候选 token)以及在内部推理步骤中生成的 token(思考 token)。
| 配额名称 | 指标 | 范围 | 默认值 |
|---|---|---|---|
GenAiInputTokensPerDay |
LLM 使用的输入 token | 每天每个项目 | 200,000,000,000 |
GenAiInputTokensPerUserPerDay |
LLM 使用的输入 token | 每位用户每天 | 400 亿 |
GenAiOutputTokensPerDay |
LLM 使用的输出 token 和思考 token | 每天每个项目 | 20,000,000,000 |
GenAiOutputTokensPerUserPerDay |
LLM 使用的输出 token 和思考 token | 每位用户每天 | 4,000,000,000 |
这些配额以数百万个令牌为增量进行跟踪。虽然您可以设置精确的限制,但由于 token 报告和汇总的性质,小于数百万 token 的值可能无法得到完全准确的反映。
缓存的令牌不会计入配额。
管理配额
根据您的资源用量,您可能需要查看或上下调整令牌配额值。您可以使用 Google Cloud 控制台执行以下任务:
在 Google Cloud 控制台中,前往 IAM 和管理 > 配额和系统限制页面。
输入
Service: BigQuery API过滤配额。在配额列表中搜索特定配额(例如,搜索
GenAiInputTokensPerDay)。点击修改。
在配额更改窗格中,输入新值以增加或减少配额。
点击提交请求。
配额超限处置方式
BigQuery 会在查询执行的多个阶段监控令牌消耗情况:
- 执行前检查:在执行包含生成式 AI 函数的查询之前,BigQuery 会检查可用的令牌配额。如果相关配额(例如项目每日输入令牌)已用尽,系统会拒绝查询并返回
QuotaExceeded错误。 - 执行期间:如果查询正在运行并消耗 token,导致任何配置的配额(每个项目或每个用户的输入或输出)用尽,则该查询中的新 LLM 调用会被拒绝。
- 任何依赖于 LLM 调用的剩余行都会遇到配额耗尽错误。
- 如果
max_error_ratio实参用于AI.IF等函数中,查询的结果取决于该实参。如果错误率保持在允许的限值内,则可能会返回部分结果。否则,整个查询都会失败。 - 在每日配额重置之前,后续尝试使用生成式 AI 函数的查询将失败,并显示
QuotaExceeded错误。
重要注意事项
- 全球配额:所定义的配额是全球配额。系统会汇总项目运行的所有区域的 token 使用量,从而提供统一的费用控制机制。这样可以避免因在不同区域使用而产生意外费用。
- 预配吞吐量:如果您使用的是具有预配吞吐量的 Gemini Enterprise Agent Platform 模型,则费用不会根据令牌使用量计算。您应将这些 BigQuery 令牌配额设置为较高的值,以免不必要地阻止查询。
后续步骤
- 详细了解如何优化 AI 函数费用。
- 阅读 BigQuery 中的生成式 AI 概览。