translate.service.thread.apiPercentageIntercept
# 大模型允许使用的最大并发数百分比。# 如果使用翻译接口时,需要通过大模型翻译,而当前大模型的实际并发数超过设置的最大并发数 (translate.service.set.threadNumber) 百分之多少时,就不在去使用大模型了,而是直接返回一个翻译服务忙碌的失败提示,避免产生任务堆积# 此参数是针对采用大模型翻译来的## 比如:# 设置了大模型的最大请求并发数为200 ( translate.service.set.threadNumber=200 )# 此处设置了 60 (translate.service.thread.apiPercentageIntercept=60) ,那便是以 200 的 60% 为一个临界点,也就是 120 个并发是一个临界点,进行后续判定# 那么当使用 translate.json 进行翻译时,在命中缓处理后,还有要进行翻译的文本需要通过大模型进行翻译,如果当前大模型请求的线程池的实际使用并发数(当前已经跟大模型发起翻译请求,还没得到响应,正在等待大模型响应的这种请求的数量)超过120时,这次翻译请求就会直接终止(不会使用大模型), translate.json 接口将返回一个失败响应: {result:0,info:"当前翻译服务忙碌,请稍后再试"} 从而避免大模型请求线程池产生翻译任务堆积,使翻译接口的响应时间产生延长,影响用户体验# # 如果不设置,默认是0,为不启用。 # 如果设置,建议不超过 90,比如设置 70 ~ 90 因为:# 当请求translate.json 接口时,接口本身会先进行一些预处理,比如分词、文件缓存、内存缓存、等预处理,预处理完毕后,如果还有未处理、未命中缓存等,需要进行翻译的文本,才会去进行调用大模型来翻译。 而从 translate.json 接口接受请求到预处理完毕发起大模型请求时,可能已经过了20ms,而这个具体判定是否超过设定的大模型并发百分比是否允许请求大模型,则是在预处理完毕,发起大模型请求之前,并不是在translate.json接口触发时就立即判定的,会有很短暂的时间差。#translate.service.thread.apiPercentageIntercept=80