限流、超时与重试
生产客户端必须区分容量限制、账户策略、计费停止和请求错误。它们可能使用相同的 HTTP 状态,但处理方式不同。
限制维度
Token360 可以从多个维度实施限制:
- RPM:每分钟请求数。
- TPM:每分钟输入和输出 Token 吞吐量。
- 并发:当前正在处理的请求数。
- API Key 消费上限:Key 的终身、每日、每周或每月消费上限。
- 每日消费保护:账户级 UTC 自然日保护。
- 信用额度或钱包余额:新任务可用资金。
- 供应商容量:临时的上游饱和或限流。
实际数值取决于商业协议和控制台配置。不要套用其他账户或模型的限制。
处理 429
不能只看 HTTP 状态,还要检查错误体:
rate_limit_exceeded 或临时容量限制 | 使用指数退避与随机抖动重试;存在 Retry-After 时遵循它。 |
insufficient_quota 或没有可用余额 | 充值、提高已批准信用额度,或等待预算周期重置。重复重试没有作用。 |
| API Key 消费上限已用尽 | 在控制台检查该 Key 的上限与重置周期,不要静默切换到无限制 Key。 |
| 每日消费保护已触发 | 账户所有者需将上限提高到当日已用量以上,或明确关闭保护。 |
重试策略
同步推理可以从以下安全策略开始:
- 重试瞬时的
429、500、502、503和504。 - 使用指数退避与抖动,例如 1 秒、2 秒、4 秒再加随机值。
- 设置较小的最大尝试次数和总耗时预算。
- 参数、鉴权、权限、余额或不支持操作错误立即停止。
- 记录每次尝试的 request ID。
请根据应用的延迟要求和重复执行风险调整策略。
超时
分别设置连接超时和请求总超时。交互式 Chat、大型多模态输入和视频生成有不同的延迟特征。
- 流式请求的应用超时需要覆盖首个事件等待和事件之间的处理时间。
- 视频等异步操作应只限制提交请求,然后轮询资源,不要一直保持同一个连接。
- 客户端超时不能证明上游任务没有启动。
幂等与重复任务
创建或提交操作发生不确定超时时,不要直接盲目重试。先使用关联信息检查请求历史或资源列表。Webhook 接收端必须幂等,因为平台可能重试投递。
Batch JSONL 中每一行都应使用唯一 custom_id,以便不依赖输出顺序完成核对。
流式中断
如果 SSE 连接在正常终止事件前关闭:
- 将完成结果标记为不完整;
- 丢弃或明确标记部分输出;
- 仅在能够接受重复模型执行和费用时重试;
- 保留原始请求与关联 ID 以便排查。
何时联系支持
瞬时失败超过重试预算或影响多个请求时,请联系支持。提供 UTC 时间范围、公开模型名、端点、HTTP 状态、错误码、request ID 和 trace ID。除非支持明确要求使用安全传输,否则移除提示词、文件、Authorization 请求头和 API Key 密钥。
此页面对您有帮助吗?