Azure Document Intelligence:Studio与Base64调用分析结果不一致咨询
Base64编码是否会影响分析结果?
Base64只是二进制文件的文本编码方式,不会改变原始PDF的内容,因此本身不会大幅影响分析结果。结果不一致的核心原因几乎都是API调用的配置与Studio中的测试配置不匹配。
使API调用结果与Studio一致的步骤:
对齐分析模型与参数:
确认Studio中使用的模型类型(比如预构建的Read、布局分析、表单识别模型)及版本,在API调用中明确指定相同的modelId和版本参数。例如Studio用的是prebuilt-read最新版,API请求中要确保包含"modelId": "prebuilt-read"(如果是指定版本,需加上版本号如prebuilt-read-3.2)。同时检查是否启用了Studio中的额外功能(如表格提取、手写识别、语言指定),在API请求的features或locale参数中同步设置。检查请求格式与头信息:
确保请求的Content-Type头为application/json(因为你是用JSON格式传base64),同时对比Studio实际发送的请求参数(Studio通常提供“查看API请求”的入口),确认是否遗漏了pages(指定分析页码)、stringIndexType等参数,这些细节都会影响返回结果。验证Base64编码的完整性:
将你的Base64字符串解码回PDF文件,检查是否与原文件完全一致(比如是否存在编码截断、字符转义错误)。如果解码后的文件损坏,服务自然无法返回正确结果。对比请求体细节:
把Studio生成的请求体和你自己的请求体做逐字段对比,确保base64Source之外的所有配置项(如features、locale、pages)完全一致。例如Studio中如果指定了只分析第1-3页,API请求中也要加上"pages": ["1-3"]。
内容的提问来源于stack exchange,提问作者Harbinger

