文档指南速率限制与配额

速率限制与配额

RPM 与并发限制、Key 额度、账户余额与请求体积上限。

网关对每个请求做多层限制,从外到内依次是:速率(RPM/并发)→ Key 消费额度 → 账户余额 → 请求体积。理解每一层对应的错误,才能写出正确的重试逻辑。

RPM 与并发

按账号配置每分钟请求数(RPM)与并发会话数上限。超限返回 429:

  • rpm_exceeded:每分钟请求数超限,错误文案里会给出上限值。退避后重试即可。
  • concurrent_exceeded:同时进行中的请求数超限。等待在飞请求结束,或降低客户端并发。

注意:模型列表等元数据请求同样计入 RPM,不要在循环里高频刷新。

Key 消费额度

每把 Key 可设 USD 计的消费额度,并可选按天/周/月自动重置。额度用尽返回 402(key_quota_exhausted),等待重置或调高额度后恢复。适合给不同业务、不同环境分配独立预算。

账户余额

余额不足返回 402(balance_exhausted),充值后恢复。

计费是后付费的:一次请求的费用要等上游返回 token 数才能确定,因此余额可能出现小幅负值,会在下次充值时抵扣。建议开启余额预警,避免业务在低余额时中断。

请求体积

  • 413(body_too_large):请求体超过该入口的体积上限。对话入口允许内联图片等媒体,纯文本入口(如 embeddings)上限更小。压缩内联媒体,或改用适合大负载的接口。
  • 503(server_busy):网关在飞请求体总量达到上限——不是你这条请求太大,而是当下整体繁忙。稍后重试即可。

实践建议

  • 对 429/502/503 做指数退避重试,对 402 做告警而不是重试,见错误处理与重试
  • 监控 429 与 402 的出现频率:前者说明该降并发或提额,后者说明该充值或调预算。
  • 长任务与流式请求留足超时余量,避免客户端过早掐断(见流式响应)。
  • 按业务拆 Key 并分别设额度,一个业务超支不影响其他业务。