gpt4 book ai didi

azure-cognitive-search - Azure 搜索重试策略

转载 作者:行者123 更新时间:2023-12-02 01:20:13 26 4
gpt4 key购买 nike

我们正在使用 azure 搜索,需要实现重试策略以及存储失败文档的 Id,如所述。

是否有关于如何在 Azure 搜索中实现 RetryPolicy 策略的文档/示例。

谢谢

最佳答案

这是我使用的:

 private async Task<DocumentIndexResult> IndexWithExponentialBackoffAsync(IndexBatch<IndexModel> indexBatch)
{
return await Policy
.Handle<IndexBatchException>()
.WaitAndRetryAsync(5, retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt)), (ex, span) =>
{
indexBatch = ((IndexBatchException)ex).FindFailedActionsToRetry(indexBatch, x => x.Id);
})
.ExecuteAsync(async () => await _searchClient.IndexAsync(indexBatch));
}

它使用 Polly library处理指数退避。在这种情况下,我使用模型 IndexModel有一个名为 Id 的 id 字段.
如果您想记录或存储失败尝试的 ID,您可以在 WaitAndRetryAsync 中执行此操作。功能如
((IndexBatchException)ex)ex.IndexingResults.Where(r => !r.Succeeded).Select(r => r.Key).<Do something here>

关于azure-cognitive-search - Azure 搜索重试策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40567172/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com