调用频率限制

文档状态已发布功能状态已上线最后更新:2026-09-19

一句话

按每分钟限制两件事:**请求次数(RPM)**和 token 消耗量(TPM)。超了返回 429,下一分钟自动恢复。

一、你的额度是多少——自己查

GET https://intertoken.ai/v1/api/v1/rate-limits/me
{ "rpm": 60, "tpm": 100000 }
字段含义
rpm每分钟允许的最大请求数
tpm每分钟允许消耗的最大 token 数(输入 + 输出都算)

响应头同时带 x-ratelimit-limit-requests / x-ratelimit-limit-tokens。

系统默认档 60 RPM / 100,000 TPM,但请以接口实际返回为准。

这两个数字是「档位参考值」,不是「一定会被执行到的值」——实际生效的额度可能比这里写的更松(平台可以在运行时调整默认档),也可能更严(你自己主动调低过,或平台把默认档配得更低)。因此:

  • 不要照本文写死的数字给自己的客户端做限速;
  • 不要写「第 N 次请求必须被拦」这类断言——如果没复现出来,不代表限流失效,可能只是实际额度比这里写的更宽松。

想知道此刻真正对你生效的值,请调用 GET /api/v1/rate-limits/me——它返回的永远是当前实际生效值。

唯一无条件可以依赖的两件事:超限时你会收到 429,且带 Retry-After;按 Retry-After 退避后重试是被鼓励的,不会因此被封禁。

二、你可以自己调——在所属档位内

PUT https://intertoken.ai/v1/api/v1/rate-limits/me      {"rpm": 30, "tpm": 50000}
DELETE https://intertoken.ai/v1/api/v1/rate-limits/me   恢复系统默认

能调的范围 = 你所属档位的上限(有生效中的套餐则为付费档,否则为免费档)。

  • 想调低(自我保护、防止意外烧量):档位内随便调
  • 想调高:只能调到档位上限;超了返回 422,错误信息会直接告诉你该档位上限是多少
  • 想要更高的档位:请联系我们

调低之后随时可以调回来,不会「一旦调低就再也升不上去」——可调范围看的是你所属档位的上限,不是你当前的生效值。

三、按什么聚合

按账户,不是按 Key。 名下所有 Key 共享同一套额度,多申请几个 Key 不会增加总额度。

四、时间窗口

按自然分钟计算,不是滚动窗口。每分钟第 0 秒计数清零。

  • 在 10:00:59 用完额度,等 1 秒到 10:01:00 就完全恢复
  • 反过来,如果在分钟边界前后密集发送,可能在很短时间内消耗两个窗口的额度

建议把请求均匀分散,避免集中在整分钟发送。

五、超限时的响应

HTTP 429
Retry-After: 60

{
  "error": {
    "type": "rate_limit_error",
    "code": "rate_limit_exceeded",
    "message": "RPM limit 60 exceeded; retry after 60s"
  }
}

message 会写明是哪个限额超了、当前额度是多少。

处理方式:读取 Retry-After,退避后重试。你不会因为收到 429 后重试而被封禁——429 是正常的背压信号,合规重试是被鼓励的。

六、两个容易踩的点

6.1 TPM 是事后结算的

token 数只有请求返回后才知道,所以判定逻辑是:这一分钟已消耗的 token 超了额度,就拦住下一个请求。 单个超大请求本身不会被提前拦下,但它会让你这一分钟剩下的请求全部收到 429。发送很长上下文时,建议主动控制并发。

6.2 两个限额的边界判定不一样

判定方式
RPM第 60 次请求能通过,第 61 次才拦(超过才拦)
TPM已消耗达到上限就拦(含等于)

由于实际阈值可能与档位参考值不同,「第 61 次一定被拦」不是可以断言的具体行为,可以依赖的只是这两条比较关系本身。

七、关于 IP 封禁

平台不会仅因为调用频率高、并发多或客户端配置错误而封禁 IP。早期曾有过基于 IP 的自动封禁机制,因为容易误伤合规客户(正常重试的客户端被判成异常、企业出口 NAT 下一个人配错连累同出口的所有调用)而下线。

你不会因为重试、并发或误配被拉黑,最坏情况就是收到 429。

八、服务降级时

限流组件本身出现故障时,平台选择放行而不是拒绝——宁可短时间内不限流,也不让你的业务因平台内部故障而中断。

九、常见问题

问答
多发几个 Key 额度会变多吗?不会,按账户聚合
429 之后要等多久?最多 60 秒,以响应头 Retry-After 为准
调用响应里能看到实时用量吗?暂不返回,如有需要欢迎反馈
我的额度被调整过吗?调用 GET /api/v1/rate-limits/me,它返回的就是此刻的生效值
怎么提额?档位内可自助 PUT 调整;升档位请联系我们
调用频率限制 · TokenPortal