派生字段和签名检测
借助公开预览版的派生字段功能,Document AI 客户可以配置一个字段,使其通过基于文档上下文的智能推理或生成来填充,而不是通过直接提取文本来填充。
此版本还新增了一项功能,用于检测文档中是否存在签名。您可以使用新的 signature
实体类型为此类实体指定架构。签名实体是使用文档中的视觉提示派生的。
自定义提取器中的派生字段
自定义提取器支持以下模型中的派生字段:
pretrained-foundation-model-v1.4-2025-02-05
作为正式版 (GA)pretrained-foundation-model-v1.5-2025-05-05
作为预览版pretrained-foundation-model-v1.5-pro-2025-06-20
作为预览版
在文档架构中创建或修改标签时,您可以在控制台界面中启用这些功能。
派生字段是一项强大的功能,可让您提取未明确写入文档中的信息。这样,您就可以配置一个字段,使其通过基于文档整体上下文的智能推理或生成来填充。这不仅限于基本的文本提取,还支持高级用例,例如:
- 根据地址推断国家/地区。
- 计算表格中的项目总数。
- 检测身份证件是否为“真实身份证件”。
架构创建示例
以下示例展示了如何使用美国驾照为此类使用情形创建派生字段的架构,以及预期输出。
创建架构元素时,请选择
Derived
方法。添加描述性标签,以提升效果。
在为文档添加标签时,签名等派生字段不需要设置边界框。对于值,选择检测到的。
对于签名以外的派生字段,您可以输入任意值作为标签的一部分,以定义可能的输出。
预期输出结果如下所示,其中签名存在情况会返回为“Detected”或“”,派生字段会以文本形式返回,作为标签的说明提示请求。
提取与派生概览
在处理器架构中定义实体时,您可以选择一种方法来填充其值。
提取:这是默认方法。当实体的价值应直接从文档文本中提取时,此功能会发挥作用。系统会识别文本,并填充
textAnchor
和pageAnchor
等字段以显示其位置。派生:当需要从文档内容推断实体的值时,使用此方法。由于文本中未直接提供该值,因此系统不会填充
textAnchor
和pageAnchor
字段。
使用情形示例:查找币种代码
假设您需要确定文档中交易的币种代码(例如 USD、CAD、EUR)。
何时使用
Extract
:如果文档始终包含明确的币种符号或代码(例如“USD”或“€”),请使用Extract
方法查找并提取该确切文本。何时使用
Derived
:如果文档使用“$”(可能指美元、加元、澳元等)等不明确的符号,或者根本没有符号,请使用Derived
方法。该模型会分析文档的上下文(例如账单邮寄地址或公司所在地),以推断出正确的 ISO 4217 货币代码。
配置最佳实践
为了通过派生字段获得最佳效果,我们强烈建议您在标记期间为架构中的相应属性编写清晰的说明性 description
。这有助于引导模型完成推导任务。
在币种代码示例中,您可以创建一个名为 currency_code
的字段,并提供以下说明:“使用文档中存在的上下文信号(例如币种符号和地址)查找文档中金额值的 ISO 4217 币种代码。”
限制
派生字段是按网页生成的。这意味着,需要来自多个页面的信息的用例未得到完全支持。例如,如果您将派生字段配置为总结文档,系统会为每个单独的页面生成单独的摘要,而不是为整个文档生成一个连贯的摘要。此限制适用于任何必须使用跨网页信息来推导值的字段。
自定义提取器中的签名检测
Document AI 的自定义提取器支持在自定义提取器模型 pretrained-foundation-model-v1.4-2025-02-05
和 pretrained-foundation-model-v1.5-2025-05-05
中检测签名。在文档架构中创建或修改标签时,您可以在控制台界面中启用此功能。
签名检测功能可让您确定文档中是否存在签名。此功能通过分析视觉提示(而非提取文本)来验证是否存在签名。
签名检测功能的运作方式
如需启用此功能,您可以在定义处理器架构时使用 signature
数据类型。处理器的行为取决于是否在文档中检测到签名。
如果找到签名,提取器会在其响应中返回签名实体。对于名为 has_signed
的字段,响应对象具有以下结构:
"has_signed": {
"mention_text": "Detected",
"confidence": <confidence_score_between 0 to 1>,
"normalized_value": {
"text": "Detected",
"signature_value": true
}
}
如果未找到签名,则不会在处理器的响应中返回相应实体。
配置并设置密钥要求
如需设置签名检测,请执行以下操作:
- 定义架构:在处理器架构中,为要检测的签名添加新实体。
- 设置数据类型:为此新实体选择“签名”作为数据类型。
- 将方法设置为派生:具有
signature
数据类型的实体只能使用Derived
方法。由于模型会直观地推断签名是否存在,因此不会提取文本值。因此,对于签名实体,系统不会填充textAnchor
和pageAnchor
等字段。
用例示例
假设您正在处理合同,需要验证合同是否已签署。
您可以创建一个名为 is_contract_signed
的架构字段,并将其数据类型设置为 signature
。处理已签署的合同时,响应会包含 is_contract_signed
实体,以确认签名的存在。如果不存在签名,则响应中不会包含此实体。这样,您就可以快速标记未签名的文档以供审核。
后续步骤
了解如何增量训练专用处理器。