当我遇到人脸 API 超出速率限制(除了使用之外)时该怎么办Task.Delay(1000)
?
我有大约 50 条记录,并在 2 秒内检测/识别/验证。为了identifyasync
,我将置信度阈值设置为 0.0f,返回的最大候选数为 50。我尝试使用Task.Delay(1000)
并减少了候选人的数量,但这无助于解决我的问题。
请给我关于如何解决这个问题的建议,因为我是新手。
我写了一个库速率限制器 https://github.com/David-Desmaisons/RateLimiter来处理这种限制。它是可组合的、异步的和可取消的。
看来Face API的配额限制为每秒10次调用,所以你可以这样写:
var timeconstraint = TimeLimiter.GetFromMaxCountByInterval(10, TimeSpan.FromSeconds(1));
for(int i=0; i<1000; i++)
{
await timeconstraint.Perform(DoFaceAPIRequest);
}
private Task DoFaceAPIRequest()
{
//send request to Face API
}
它也可以作为努吉特包 https://www.nuget.org/packages/RateLimiter/.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)