本文档介绍了如何管理 Document AI Warehouse 中的文档架构,包括创建、提取、列出、更新和删除操作。
什么是文档架构
每个文档都属于某种文档类型,并由架构指定。
文档架构用于定义 Document AI Warehouse 中文档类型(例如,账单或工资单)的结构,管理员可以在其中指定不同数据类型(文本 | 数值 | 日期 | 枚举)的属性。
属性用于表示提取的数据、分类标记或 AI 或人工用户附加到文档的其他业务标记,例如 Invoice_Amount(数值)、Due_Date(日期)或 Supplier_Name(文本)。
媒体资源属性:每项媒体资源都可以声明为
可过滤 - 可用于过滤搜索结果
可搜索 - 已编入索引,因此可在搜索查询中找到
必需 -
required用于确保属性存在于文档中(我们建议将大多数属性保存为required = false,除非该属性是必需属性)。
可扩展的架构:在某些情况下,具有“编辑”权限的最终用户需要向文档添加 / 删除新的架构属性。这是通过“MAP 属性”(即键值对列表)实现的。
MAP 属性中的每个键值对都可以是以下数据类型:(文本 | 数字 | 日期 | 枚举)。
例如,发票可能包含一个映射属性“Invoice_Entities”,其中包含以下键值对:
Invoice_Amount(数值)1000
Due_Date(日期)12/24/2021
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 时,文档中指定的枚举值在属性定义中定义的可能枚举值范围内。 - 支持添加新的媒体资源定义。
- 对于现有房源,用户可以更改以下元数据设置:
不支持的转换类型:
- 对于现有架构,不允许更新
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 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
后续步骤
- 请继续参阅管理文档,了解如何管理文档。