错误缓解方案

错误缓解方案

千帆ModelBuilder为不同的服务设定了不同的调用频率限制策略,以保障服务稳定性和为开发者提供最佳性能和较优的开发体验。本文介绍了千帆ModelBuilder提供的具体调用频率限制策略,以及遇到限制时的一些处理方法。

开发者在调用API服务时,调用次数/消耗tokens数有一定的限制。调用频率限制介绍、限制策略等,请参考速率限制说明文档。

以ERNIE 3.5为例进行说明

  • 默认RPM=300,如果客户在1分钟之内发送310个请求,只会有300个请求成功,剩余10个请求直接失败。请求失败错误码为,错误描述为Rate limit reached for RPM。
  • 默认TPM=300,000,如果客户在1分钟内消耗的token数量超过300,000 ,则超过300,000tokens以后的请求都会失败。请求失败错误码为,错误描述为Rate limit reached for TPM。

示例如下:

为最大限度地减少服务出现问题后带来的影响,千帆ModelBuilder提供了多种机制,在调用错误时进行重试等,避免出现频率极高的错误,提升用户使用体验。

SDK 提供了多种方式,在遇到错误时自动进行重试,以及在重试间进行退避避免触发流控。

  • retry_count:重试次数。
  • backoff_factor:退避因子。
  • jitter:抖动系数,对退避时间做一个“抖动”,以具有一定的随机性。
  • max_wait_interval:最大重试间隔,以避免无限长的等待时间。
  • timeout:本次请求超时时间(秒)。

  • 方式一:通过环境变量设置

环境变量设置对整个程序生效。

说明 设置环境变量项 超时时间(秒) QIANFAN_LLM_API_RETRY_TIMEOUT 重试次数 QIANFAN_LLM_API_RETRY_COUNT 退避因子 QIANFAN_LLM_API_RETRY_BACKOFF_FACTOR 抖动系数 QIANFAN_LLM_API_RETRY_JITTER 最大重试间隔 QIANFAN_LLM_API_RETRY_MAX_WAIT_INTERVAL

以ERNIE-3.5-8K调用为例,如下。

  • 方式二:通过参数设置

参数设置仅对该请求生效。

说明 参数名称 类型 重试次数 retry_count int 超时时间(秒) request_timeout float 退避因子 backoff_factor float 抖动系数 retry_jitter float 自定义重试API错误码 retry_err_codes set[int] 最大重试间隔 retry_max_wait_interval float

以ERNIE-3.5-8K调用为例如下。

类别 维度 描述 请求频率类 QPS 限制 设置 QPS 限制,为正浮点数。注意:
(1)QPS限制和RPM不能同时设置,只能设置其中一个
(2)如果是ERNIE 系列模型,SDK 会自动从平台获取限流配置,且和用户自己指定的配置对比,SDK 会取两者中较小的值
(3)如果是第三方模文心一言 ERNIE Bot 教程型,则需要用户自行配置限流


RPM 限制 设置RPM 限制,会限制每分钟请求的次数,为正浮点数。注意:
(1)QPS限制和RPM不能同时设置,只能设置其中一个
(2)如果是ERNIE 系列模型,SDK 会自动从平台获取限流配置,且和用户自己指定的配置对比,SDK 会取两者中较小的值
(3)如果是第三方模型,则需要用户自行配置限流。


token/字符类 TPM 限制 设置TPM 限制,代表每分钟内可以消耗的 Token 总数,为正整数。注意:
(1)如果是ERNIE 系列模型,SDK 会自动从平台获取限流配置,且和用户自己指定的配置对比,SDK 会取两者中较小的值
(2)如果是第三方模型,则需要用户自行配置限流。


开发者可以通过以下2种方式配置限流,通过调整设定的限流值,避免出现频率极高的错误。

  • 方式一:通过系统环境变量配置

以ERNIE-3.5-8K为例说明

  • 方式二:通过参数配置

在创建相关请求对象时,传入相关参数进行配置限流,以ERNIE-3.5-8K为例说明。

如果用户使用的服务RPM和TPM速率限制较低,无法满足业务要求,可以通过购买TPM实现扩容。具体请查看如何提升速率限制。





版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/267872.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月12日 下午5:39
下一篇 2026年3月12日 下午5:39


相关推荐

关注全栈程序员社区公众号