速率限制说明
1、什么是速率限制?
单位时间段内,用户访问API服务的次数/消耗tokens数的上限。
2024年1月17日之前,千帆ModelBuilder速率限制指标是QPS。
2024年1月17日之后,千帆ModelBuilder速率限制指标扩充到以下两种:QPS和TPM,不同类型的模型服务速率限制指标不同,详见模块3。
1.1、概念解释:
2、为什么要升级速率限制?
速率限制是 API 的常见做法,限制主要原因如下:
- 有助于防止 API 的滥用或误用。例如,防止用户恶意发送大量请求导致服务过载或中断。
- 提高每个用户访问API的公平性。防止因个人或者组织发送过多请求,导致其他人或组织出现调用失败或速度变慢的问题。
- 提升用户使用千帆ModelBuilder服务时的流畅度。
3、各预置服务速率限制指标
服务名称 | 原始速率限制指标 | 是否升级 | 升级后的速率限制指标 | 升级预计时间 | 备注 |
ERNIE Lite | QPS | 是 | RPM、TPM | 已完成升级 | QPS和RPM、TPM数值转换关系: · RPM:原QPS数*60(次) · TPM:原QPS数*60*1000(tokens) 假设 预置服务原QPS=5: · RPM=5*60=300(次) · TPM=5*60*1000=300,000(tokens) |
ERNIE 3.5 | QPS | 是 | RPM、TPM | 已完成升级 | |
ERNIE 4.0 | QPS | 是 | RPM、TPM | 已完成升级 | |
ERNIE Speed | QPS | 是 | RPM、TPM | 已完成升级 | |
其他模型服务 | QPS | 是 | 待定 | 待定 | - - - |
每项定制服务(除文心大模型家族)开通付费时默认QPS为1,1QPS经过测试验证,预计可支持4000日活,能够满足一般测试需求。
如有QPS扩充需要,您可通过购买托管资源进行扩展,详细操作可参考资源租赁使用说明。
具体数值查看路径:通过千帆ModelBuilder控制台点击【模型推理】-进入【预置服务】页面-通过预置服务列表TPM列查看。
文心大模型服务
千帆ModelBuilder为个人认证用户和企业认证用户,进行了不同的默认速率开通配置。
ERNIE Speed 系列
本系列默认开通速率如下:
服务名称 | 原始速率限制指标 | 升级后的速率限制指标 | 操作 | |||
RPM | TPM | RPM | TPM | |||
ERNIE-Speed-8K(调用免费) | 个人认证用户 | 10K | 800K | 500 | 200K | 购买配额、API文档 |
企业认证用户 | 10K | 800K | 5K | 400K | ||
ERNIE-Speed-128K(调用免费) | 个人认证用户 | 5K | 400K | 500 | 200K | 购买配额、API文档 |
企业认证用户 | 5K | 400K | 5K | 400K | ||
ERNIE-Speed-Pro-128K | 个人认证用户 | 10K | 800K | 10K | 800K | API文档 |
企业认证用户 | 10K | 800K | 15K | 1200K |
如您当前为个人认证用户,可变更为企业认证,享受企业级的默认开通速率。
ERNIE Lite 系列
本系列默认开通速率如下:
服务名称 | 原始速率限制指标 | 升级后的速率限制指标 | 操作 | |||
RPM | TPM | RPM | TPM | |||
ERNIE-Lite-8K(调用免费) | 个人认证用户 | 10K | 800K | 500 | 200K | 购买配额、API文档 |
企业认证用户 | 10K | 800K | 5K | 400K | ||
ERNIE-Lite-Pro-128K | 个人认证用户 | 10K | 800K | 10K | 800K | API文档 |
企业认证用户 | 10K | 800K | 15K | 1200K |
如您当前为个人认证用户,可变更为企业认证,享受企业级的默认开通速率。
其他文心系列大模型
当前部分文心系列模型开通服务默认速率如下图所示,详细可于在线服务查看:
服务名称 | RPM | TPM | 操作 |
---|---|---|---|
ERNIE-4.0-8K | 购买配额、 API文档 | ||
ERNIE-4.0-8K-Latest | 120 | 120K | 购买配额、 API文档 |
ERNIE-4.0-8K-Preview | 300 | 300K | 购买配额、 API文档 |
ERNIE-4.0-8K-0613 | 300 | 300K | API文档 |
ERNIE-4.0-Turbo-8K | 购买配额、 API文档 | ||
ERNIE-3.5-128K | 购买配额、 API文档 | ||
ERNIE-3.5-8K | 10K | 800K | 购买配额、 API文档 |
ERNIE-3.5-8K-Preview | 300 | 300K | 购买配额、 API文档 |
ERNIE-3.5-8K-0613 | 300 | 300K | 购买配额、 API文档 |
ERNIE Speed-AppBuilder | 120 | 120K | 购买配额 |
ERNIE-Character-8K | 60 | 60K | 购买配额、API文档 |
ERNIE-Lite-8K-0922 | 300 | 300K | API文档 |
ERNIE-Lite-AppBuilder-8K | 60 | 60K | - |
ERNIE-Tiny-8K | API文档 | ||
ERNIE-Novel-8K | 60 | 60K | API文档 |
ERNIE-Character-Fiction-8K | 60 | 60K | -- |
ERNIE-4.0-Turbo-8K-Preview | 60 | 60K | 购买配额 API文档 |
ERNIE-4.0-Turbo-8K-0628 | 60 | 60K | 购买配额 API文档 |
ERNIE-3.5-8K-0701 | 120 | 120K | 购买配额 API文档 |
Qianfan-Dynamic-8k | 60 | 60K | API文档 |
注意:2024年5月21日起,部分ERNIE系列预置服务调用免费,详细可查看平台公告。
Tip:
Embedding系列模型公有云在线调用服务开通时默认为 20QPS,ERNIE-Functions-8K为1QPS。 |
4、如何提升速率限制
如果用户使用的服务RPM和TPM速率限制较低,无法满足业务要求,可以通过购买TPM实现扩容。
-
购买TPM:用户可以通过预付费或者后付费的方式购买一段时间内一定数量的TPM配额(RPM同倍率变大),成功购买TPM配额以后,不再额外收取tokens调用收费。
- 规格:1个规格的TPM配额包括10,000 TPM + 33 RPM。如果用户买了10个规格,则对应的TPM=100,000 ,RPM=330;
-
TPM配额到期后处理策略:
- 购买TPM配额时,如果系统检测到当前服务没有开通按量后付费,则自动开通按量后付费。TPM配额到期后,为了保证服务的连续性,将自动切换至按量后付费(期间手动关闭按量后付费则无法自动切换)。
5、Q&A
1、TPM超限会如何?
以ERNIE 3.5为例进行说明
- 默认RPM=300,如果客户在1分钟之内发送310个请求,只会有300个请求成功,剩余10个请求直接失败。请求失败错误码为336501,错误描述为Rate limit reached for RPM。
- 默认TPM=300,000,如果客户在1分钟内消耗的token数量超过300,000 ,则超过300,000tokens以后的请求都会失败。请求失败错误码为336502,错误描述为Rate limit reached for TPM。
2、服务成功处理1个请求后,当前限流周期内剩余可发送的请求数和服务可消耗的tokens数是多少?
我们在接口返回的Header中新增了2个参数:
- X-Ratelimit-Remaining-Requests:达到RPM速率限制前,剩余可发送的请求数配额,如果配额用完,将会在0-60s后刷新
- X-Ratelimit-Remaining-Tokens:达到TPM速率限制前,剩余可消耗的tokens数配额,如果配额用完,将会在0-60s后刷新
举例说明:ERNIE-Bot-Turbo预置服服务TPM=300,000 ,RPM=300,如下图所示:
发送一个请求后,Header参数中X-Ratelimit-Remaining-Requests=299,X-Ratelimit-Remaining-Tokens=299,999 ,即当前限流周期内,还可以处理299个请求和299,999个tokens,如下图所示:
再次发送6个请求,X-Ratelimit-Remaining-Requests=293,X-Ratelimit-Remaining-Tokens=299,672,如下图所示:
3、RPM数值为300,可以1秒直接发送300个请求么?
不可以,建议用户均匀地发送API请求,短时间内发送大量请求,也会导致请求失败:
- 1s内请求量>RPM/60*1,超额部分请求会触发api网关的拦截,请求失败,错误码18,提示QPS超限。
- 10s内请求量>RPM/60*10,超额部分请求会进入到排队队列,排队请求会按照一定周期重试,直到请求成功,或者连续重试3次都失败则返回请求失败,错误码336501。
4、千帆ModelBuilder有没有具体调用频率限制策略和遇到限制时的一些处理方法?
千帆ModelBuilder为不同的服务设定了不同的调用频率限制策略,以保障服务稳定性和为开发者提供最佳性能和较优的开发体验。千帆ModelBuilder提供错误缓解方案展示具体调用频率限制策略和遇到限制时的应对措施。