请求频率限制
Lazu 用三层限制保护后端:
- 账号层级 RPM/TPM:账号会根据消费进入
Tier0..Tier3,层级越高限制越高。 - 未验证账号防滥用限制:没有成功充值过的账号会被限制在很低的请求速率。
- 单 key RPM/TPM:你可以给单个 API Key 设置更严格的限制,用于产品或 workload 隔离。
单 key 限制只能变得更严格,不能突破账号层级上限。
默认限制
| 层级 | 条件 | RPM | TPM |
|---|---|---|---|
| Unverified | 尚未成功充值 | 5 | 5,000 |
| Tier 0 | 已验证,30 天消费低于 $10 | 60 | 100,000 |
| Tier 1 | 30 天消费大于等于 $10 | 120 | 300,000 |
| Tier 2 | 30 天消费大于等于 $100 | 300 | 1,000,000 |
| Tier 3 | 30 天消费大于等于 $1,000 | 600 | 2,000,000 |
- RPM = 每分钟请求数,使用滚动 60 秒窗口。
- TPM = 每分钟 token 数。预检会统计 prompt/input tokens;当请求显式包含
max_tokens、max_completion_tokens或max_output_tokens时,也会把输出 token 预留量计入预检。
单 key 限制
单 key RPM/TPM 在控制台的 API Key 设置中配置:
0表示该维度没有 key 级限制,但账号层级限制仍然生效。- 最终生效值是 key 限制和账号层级限制中更严格的那个。
- key 可带产品标签和 JSON metadata,方便运维归因和审计。
- 策略变更会写入审计日志,不存储明文 key。
层级如何计算
- 新账号充值前是
Unverified,首次成功充值后进入Tier0。 - 层级每天 04:30(Asia/Shanghai)按 30 天滚动消费自动更新。
- 单次充值也会立即按 lifetime top-up total 升级,不必等待定时任务。
触发限制时
HTTP 429 响应通常是:
{
"error": {
"message": "Request rate limit exceeded (60/min)",
"type": "rate_limit_exceeded",
"code": "request_rate_limit_exceeded"
}
}常见 code:
request_rate_limit_exceeded:触发账号层级或请求速率限制。token_rate_limit_exceeded:触发单个 API Key 的 RPM/TPM 限制。total_request_rate_limit_exceeded:旧版总请求保护。
响应会包含 Retry-After,客户端应等待对应秒数后重试,并使用指数退避。
Stream 请求
stream: true 的响应在 RPM 上按一次请求计算。TPM 预检规则和普通请求一致:
prompt/input tokens 加上显式的最大输出 token 预留量。
上游 provider 限制
Lazu 不会消除上游 provider 自己的限制。OpenAI、Anthropic 等 provider
仍可能返回上游 429 或 503。可用时,Lazu 会尝试同 lane 的备用 channel。
需要更高限制
持续高吞吐场景(例如 1,000+ RPM 或数百万 TPM)请通过 lazu.ai 联系支持。