本文档介绍了如何管理 Document AI Warehouse 中的文档架构,包括创建、提取、列出、更新和删除操作。
什么是文档架构
每个文档都属于某种文档类型,并由架构指定。
文档架构定义了 Document AI Warehouse 中文档类型(例如,发票或工资单)的结构,管理员可以在其中指定不同数据类型(文本 | 数值 | 日期 | 枚举)的属性。
属性用于表示提取的数据、分类标记或 AI 或人工用户附加到文档的其他业务标记,例如 Invoice_Amount(数值)、Due_Date(日期)或 Supplier_Name(文本)。
属性特性: 每个属性都可以声明为
可过滤 - 可用于过滤搜索结果
可搜索 - 已编入索引,因此可以在搜索查询中找到
必需 -
required用于确保文档中存在该属性 (我们建议将大多数属性保存为required = false,除非该属性是必需的)。
可扩展架构: 在某些情况下,具有“编辑权限”的最终用户需要向文档添加 / 删除新的架构属性。“MAP 属性”支持此操作,该属性是键值对列表。
MAP 属性中的每个键值对都可以是(文本 | 数值 | 日期 | 枚举)的数据类型。
例如,发票可能包含一个 MAP 属性“Invoice_Entities”,其中包含以下键值对:
Invoice_Amount(数值)1000
Due_Date(日期)2021 年 12 月 24 日
Supplier_Name(文本)ABC Corp
架构的不可变性: 请注意,架构或架构属性可以添加,但目前无法修改或删除,因此请谨慎定义架构。
准备工作
在开始之前,请确保您已完成 快速入门页面。
创建架构
创建文档架构。
REST
curl --location --request POST --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas \
--header "Content-Type: application/json" \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--data '{
"display_name": "Test Doc Schema",
"property_definitions": [
{
"name": "plaintiff",
"display_name": "Plaintiff",
"is_searchable": true,
"is_repeatable": true,
"text_type_options": {}
}
]
}'Python
如需了解详情,请参阅 Document AI Warehouse Python API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Java
如需了解详情,请参阅 Document AI Warehouse Java API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Node.js
如需了解详情,请参阅 Document AI Warehouse Node.js API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
获取架构
获取文档架构的详细信息。
REST
curl --request GET --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas/{document_schema_id} \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8"Python
如需了解详情,请参阅 Document AI Warehouse Python API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Java
如需了解详情,请参阅 Document AI Warehouse Java API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Node.js
如需了解详情,请参阅 Document AI Warehouse Node.js API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
列出架构
列出文档架构。
REST
curl --request GET --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8"Python
如需了解详情,请参阅 Document AI Warehouse Python API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Java
如需了解详情,请参阅 Document AI Warehouse Java API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
删除架构
删除文档架构。
REST
curl --request DELETE --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas/{document_schema_id} \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8"Python
如需了解详情,请参阅 Document AI Warehouse Python API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Java
如需了解详情,请参阅 Document AI Warehouse Java API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Node.js
如需了解详情,请参阅 Document AI Warehouse Node.js API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
更新架构
更新文档架构。目前,更新逻辑仅支持添加新的属性定义。新的文档架构应包含现有架构中的所有属性定义。
支持:
- 对于现有属性,用户可以更改以下元数据设置:
is_repeatable、is_metadata、is_required。 - 对于现有 ENUM 属性,用户可以添加新的 ENUM 可能值或删除现有 ENUM 可能值。他们可以更新
EnumTypeOptions.validation_check_disabled标志以停用验证检查。验证检查用于确保在调用CreateDocumentAPI 时,文档中指定的 ENUM 值在属性定义中定义的可能 ENUM 值范围内。 - 支持添加新的属性定义。
- 对于现有属性,用户可以更改以下元数据设置:
不支持:
- 对于现有架构,不允许更新
display_name和document_is_folder。 - 对于现有属性,不允许更新
name、display_name和value_type_options。
- 对于现有架构,不允许更新
REST
curl --request PATCH --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas/{document_schema_id} \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8" \
--data '{
"document_schema": {
"display_name": "Test Doc Schema",
"property_definitions": [
{
"name": "plaintiff",
"display_name": "Plaintiff",
"is_repeatable": true,
"text_type_options": {}
}
]
}
}'Python
如需了解详情,请参阅 Document AI Warehouse Python API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Java
如需了解详情,请参阅 Document AI Warehouse Java API 参考文档。
如需向 Document AI Warehouse 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
后续步骤
- 继续前往管理文档 ,了解如何管理文档。