使用Azure Form Recognizer预构建发票模型单次请求分析多文档
DocumentAnalysisClient批量分析文档的问题
1. 单次调用处理多文档的实现方式
DocumentAnalysisClient.StartAnalyzeDocumentFromUriAsync这个方法本身只支持传入单个文档URI,目前官方没有提供单次调用就能分析多个文档的接口。如果要批量处理多份文档,只能通过遍历文档列表,逐个发起请求的方式来实现。
要是想提升批量处理的效率,可以试试这两个办法:
- 用异步并行处理(比如C#里的
Task.WhenAll),同时发起多个异步请求,不用等一个请求完全结束再发下一个 - 确保每个文档的URI是可公开访问的,或者是带有效权限的SAS链接,保证服务能正常拉取文档
2. 逐个请求的速率限制
速率限制和你用的Azure AI Document Intelligence定价层直接相关:
- 免费层(F0):每秒最多允许5个请求(RPS),每月最多1000个处理事务
- 标准层(S0):每秒最多允许100个请求(RPS),每月的事务额度更高(具体数值以Azure门户显示的当前配额为准)
需要注意的是,如果请求超过了速率限制,服务会返回429错误,这时候建议加个重试逻辑(比如指数退避)来应对限流。另外不管用哪种分析模型(通用文档、发票、表格等),配额都是按事务数来统计的。
内容的提问来源于stack exchange,提问作者Mohammad Yasir Arafat
相关产品推荐
相关产品推荐

