你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

DocumentModelAdministrationAsyncClient 类

  • java.lang.Object
    • com.azure.ai.formrecognizer.documentanalysis.administration.DocumentModelAdministrationAsyncClient

public final class DocumentModelAdministrationAsyncClient

此类提供一个异步客户端,用于连接到 表单识别器 Azure 认知服务。

此客户端提供用于执行以下操作的异步方法:

  1. 生成自定义模型:通过使用 beginBuidlDocumentModel 方法生成自定义模型,从特定文档中提取数据,以便向 Azure 存储 Blob 容器提供容器 SAS URL。
  2. 组合自定义模型:使用 beginComposeDocumentModel 方法从现有模型集合的文档类型创建新模型。
  3. 复制自定义模型:使用 beginCopyDocumentModelTo 方法将自定义表单识别器模型复制到目标表单识别器资源。
  4. 自定义模型管理:获取详细信息,分别使用 和 方法getDocumentModel(String modelId)listDocumentModels()deleteDocumentModel(String modelId)删除和列出自定义模型。
  5. 操作管理:分别使用 和 方法getOperation(String operationId)获取表单识别器帐户的详细信息和listOperations()列表操作。
  6. 轮询和回调:它包括轮询服务以检查分析操作的状态或注册回调以在分析完成时接收通知的机制。

注意: 此客户端仅支持 V2022_08_31 和 更新版本。 若要使用较旧的服务版本, FormRecognizerClientFormTrainingClient

服务客户端是开发人员使用 Azure 表单识别器的交互点。 DocumentModelAdministrationClient 是同步服务客户端, DocumentModelAdministrationAsyncClient 是异步服务客户端。 本文档中显示的示例使用名为 DefaultAzureCredential 的凭据对象进行身份验证,该对象适用于大多数方案,包括本地开发和生产环境。 此外,我们建议使用 托管标识 在生产环境中进行身份验证。 可以在 Azure 标识文档中找到有关不同身份验证方式及其相应凭据类型的详细信息。

示例:使用 DefaultAzureCredential 构造DocumentModelAdministrationAsyncClient

下面的代码示例演示如何 DocumentModelAdministrationAsyncClient使用“DefaultAzureCredentialBuilder”对其进行配置来创建 。

DocumentModelAdministrationAsyncClient client = new DocumentModelAdministrationClientBuilder()
     .endpoint("{endpoint}")
     .credential(new DefaultAzureCredentialBuilder().build())
     .buildAsyncClient();

此外,请参阅下面的代码示例,以用于 AzureKeyCredential 创建客户端。

DocumentModelAdministrationAsyncClient documentModelAdministrationAsyncClient =
     new DocumentModelAdministrationClientBuilder()
         .credential(new AzureKeyCredential("{key}"))
         .endpoint("{endpoint}")
         .buildAsyncClient();

方法摘要

修饰符和类型 方法和描述
PollerFlux<OperationResult,DocumentClassifierDetails> beginBuildDocumentClassifier(Map<String,ClassifierDocumentTypeDetails> documentTypes)

生成自定义分类器文档模型。

PollerFlux<OperationResult,DocumentClassifierDetails> beginBuildDocumentClassifier(Map<String,ClassifierDocumentTypeDetails> documentTypes, BuildDocumentClassifierOptions buildDocumentClassifierOptions)

生成自定义文档分析模型。

PollerFlux<OperationResult,DocumentModelDetails> beginBuildDocumentModel(ContentSource contentSource, DocumentModelBuildMode buildMode)

生成自定义文档分析模型。

PollerFlux<OperationResult,DocumentModelDetails> beginBuildDocumentModel(ContentSource contentSource, DocumentModelBuildMode buildMode, BuildDocumentModelOptions buildDocumentModelOptions)

生成自定义文档分析模型。

PollerFlux<OperationResult,DocumentModelDetails> beginBuildDocumentModel(String blobContainerUrl, DocumentModelBuildMode buildMode)

生成自定义文档分析模型。

PollerFlux<OperationResult,DocumentModelDetails> beginBuildDocumentModel(String blobContainerUrl, DocumentModelBuildMode buildMode, String prefix, BuildDocumentModelOptions buildDocumentModelOptions)

生成自定义文档分析模型。

PollerFlux<OperationResult,DocumentModelDetails> beginComposeDocumentModel(List<String> componentModelIds)

从帐户中提供的现有模型列表创建组合模型。

PollerFlux<OperationResult,DocumentModelDetails> beginComposeDocumentModel(List<String> componentModelIds, ComposeDocumentModelOptions composeDocumentModelOptions)

从帐户中提供的现有模型列表创建组合模型。

PollerFlux<OperationResult,DocumentModelDetails> beginCopyDocumentModelTo(String sourceModelId, DocumentModelCopyAuthorization target)

将源) (存储在此资源中的自定义模型复制到用户指定的目标表单识别器资源。

Mono<Void> deleteDocumentClassifier(String classifierId)

删除指定的文档分类器。

Mono<Response<Void>> deleteDocumentClassifierWithResponse(String classifierId)

删除指定的文档分类器。

Mono<Void> deleteDocumentModel(String modelId)

删除指定的自定义文档分析模型。

Mono<Response<Void>> deleteDocumentModelWithResponse(String modelId)

删除指定的自定义文档分析模型。

Mono<DocumentModelCopyAuthorization> getCopyAuthorization()

生成用于将自定义文档分析模型复制到目标表单识别器资源的授权。

Mono<Response<DocumentModelCopyAuthorization>> getCopyAuthorizationWithResponse(CopyAuthorizationOptions copyAuthorizationOptions)

生成用于将自定义文档分析模型复制到目标表单识别器资源的授权。

DocumentAnalysisAsyncClient getDocumentAnalysisAsyncClient()

创建一个新的 DocumentAnalysisAsyncClient 对象。

Mono<DocumentClassifierDetails> getDocumentClassifier(String classifierId)

按 ID 获取文档分类器的详细信息。

Mono<Response<DocumentClassifierDetails>> getDocumentClassifierWithResponse(String classifierId)

使用 Http 响应获取指定模型 ID 的详细信息。

Mono<DocumentModelDetails> getDocumentModel(String modelId)

获取指定模型 ID 的详细信息。

Mono<Response<DocumentModelDetails>> getDocumentModelWithResponse(String modelId)

使用 Http 响应获取指定模型 ID 的详细信息。

Mono<OperationDetails> getOperation(String operationId)

获取指定 ID 的详细操作信息。

Mono<Response<OperationDetails>> getOperationWithResponse(String operationId)

使用 Http 响应获取指定 ID 的详细操作信息。

Mono<ResourceDetails> getResourceDetails()

获取有关当前表单识别器资源的信息。

Mono<Response<ResourceDetails>> getResourceDetailsWithResponse()

使用 Http 响应获取有关当前表单识别器资源的信息。

PagedFlux<DocumentClassifierDetails> listDocumentClassifiers()

列出已成功生成的 表单识别器 帐户上每个文档分类器的信息。

PagedFlux<DocumentModelSummary> listDocumentModels()

列出已成功生成的表单识别器帐户上每个模型的信息。

PagedFlux<OperationSummary> listOperations()

列出过去 24 小时内表单识别器帐户上每个模型操作的信息。

方法继承自 java.lang.Object

方法详细信息

beginBuildDocumentClassifier

public PollerFlux beginBuildDocumentClassifier(Map documentTypes)

生成自定义分类器文档模型。

分类器模型可以识别多个文档或单个文档的多个实例。 为此,每个类至少需要五个文档和两个文档类。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示缺少取消支持。

代码示例

String blobContainerUrl1040D = "{SAS_URL_of_your_container_in_blob_storage}";
 String blobContainerUrl1040A = "{SAS_URL_of_your_container_in_blob_storage}";
 HashMap<String, ClassifierDocumentTypeDetails> documentTypesDetailsMap = new HashMap<>();
 documentTypesDetailsMap.put("1040-D", new ClassifierDocumentTypeDetails(new BlobContentSource(blobContainerUrl1040D)
 ));
 documentTypesDetailsMap.put("1040-A", new ClassifierDocumentTypeDetails(new BlobContentSource(blobContainerUrl1040A)
 ));

 documentModelAdministrationAsyncClient.beginBuildDocumentClassifier(documentTypesDetailsMap)
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(classifierDetails -> {
         System.out.printf("Classifier ID: %s%n", classifierDetails.getClassifierId());
         System.out.printf("Classifier description: %s%n", classifierDetails.getDescription());
         System.out.printf("Classifier created on: %s%n", classifierDetails.getCreatedOn());
         System.out.printf("Classifier expires on: %s%n", classifierDetails.getExpiresOn());
         classifierDetails.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             if (documentTypeDetails.getContentSource() instanceof BlobContentSource) {
                 System.out.printf("Blob Source container Url: %s", ((BlobContentSource) documentTypeDetails
                     .getContentSource()).getContainerUrl());
             }
         });
     });

Parameters:

documentTypes - 要对其分类的文档类型的列表。

Returns:

一个 PollerFlux<T,U> ,它轮询生成模型操作,直到它已完成、失败或已取消。 完成的操作返回已训练的 DocumentClassifierDetails

beginBuildDocumentClassifier

public PollerFlux beginBuildDocumentClassifier(Map documentTypes, BuildDocumentClassifierOptions buildDocumentClassifierOptions)

生成自定义文档分析模型。 模型是使用以下内容类型的文档构建的:“application/pdf”、“image/jpeg”、“image/png”、“image/tiff”、“image/bmp”。 忽略其他类型的内容。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示缺少取消支持。

有关构建自己的管理数据集的信息,请参阅 此处

代码示例

String blobContainerUrl1040D = "{SAS_URL_of_your_container_in_blob_storage}";
 String blobContainerUrl1040A = "{SAS_URL_of_your_container_in_blob_storage}";
 HashMap<String, ClassifierDocumentTypeDetails> documentTypesDetailsMap = new HashMap<>();
 documentTypesDetailsMap.put("1040-D", new ClassifierDocumentTypeDetails(new BlobContentSource(blobContainerUrl1040D)
 ));
 documentTypesDetailsMap.put("1040-A", new ClassifierDocumentTypeDetails(new BlobContentSource(blobContainerUrl1040A)
 ));

 documentModelAdministrationAsyncClient.beginBuildDocumentClassifier(documentTypesDetailsMap,
         new BuildDocumentClassifierOptions()
             .setClassifierId("classifierId")
             .setDescription("classifier desc"))
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(classifierDetails -> {
         System.out.printf("Classifier ID: %s%n", classifierDetails.getClassifierId());
         System.out.printf("Classifier description: %s%n", classifierDetails.getDescription());
         System.out.printf("Classifier created on: %s%n", classifierDetails.getCreatedOn());
         System.out.printf("Classifier expires on: %s%n", classifierDetails.getExpiresOn());
         classifierDetails.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             if (documentTypeDetails.getContentSource() instanceof BlobContentSource) {
                 System.out.printf("Blob Source container Url: %s", ((BlobContentSource) documentTypeDetails
                     .getContentSource()).getContainerUrl());
             }
         });
     });

Parameters:

documentTypes - 要对其分类的文档类型的列表。
buildDocumentClassifierOptions - 生成自定义分类器文档模型时要传递的可配置 BuildDocumentClassifierOptions 的 。

Returns:

一个 SyncPoller<T,U> ,它轮询生成模型操作,直到它已完成、失败或已取消。 完成的操作返回生成的 DocumentClassifierDetails

beginBuildDocumentModel

public PollerFlux beginBuildDocumentModel(ContentSource contentSource, DocumentModelBuildMode buildMode)

生成自定义文档分析模型。 模型是使用以下内容类型的文档构建的:“application/pdf”、“image/jpeg”、“image/png”、“image/tiff”、“image/bmp”。 忽略其他类型的内容。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示缺少取消支持。

有关构建自己的管理数据集的信息,请参阅 此处

代码示例

String blobContainerUrl = "{SAS-URL-of-your-container-in-blob-storage}";
 String fileList = "";
 documentModelAdministrationAsyncClient.beginBuildDocumentModel(
     new BlobFileListContentSource(blobContainerUrl, fileList),
         DocumentModelBuildMode.TEMPLATE)
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(documentModel -> {
         System.out.printf("Model ID: %s%n", documentModel.getModelId());
         System.out.printf("Model Created on: %s%n", documentModel.getCreatedOn());
         documentModel.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
                 System.out.printf("Field: %s", field);
                 System.out.printf("Field type: %s", documentFieldSchema.getType());
                 System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
             });
         });
     });

Parameters:

contentSource - 用于生成模型的定型数据源。 它可以是 Azure 存储 Blob 容器提供的,以及其各自的前缀或指向容器中指定用于训练的文档集的 JSONL 文件的路径。 有关设置训练数据集的详细信息,请参阅 此处
buildMode - 创建模型的首选方法。 若要更快地训练模型,请使用 TEMPLATE。 有关自定义文档的生成模式的详细信息,请参阅 此处

Returns:

PollerFlux<T,U> 询生成模型操作,直到其完成、失败或已取消。 完成的操作返回经过训练的 DocumentModelDetails

beginBuildDocumentModel

public PollerFlux beginBuildDocumentModel(ContentSource contentSource, DocumentModelBuildMode buildMode, BuildDocumentModelOptions buildDocumentModelOptions)

生成自定义文档分析模型。 模型是使用以下内容类型的文档构建的:“application/pdf”、“image/jpeg”、“image/png”、“image/tiff”、“image/bmp”。 忽略其他类型的内容。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示没有取消支持。

有关构建自己的管理数据集的信息,请参阅 此处

代码示例

String blobContainerUrl = "{SAS-URL-of-your-container-in-blob-storage}";
 String fileList = "";
 String modelId = "model-id";
 Map<String, String> attrs = new HashMap<String, String>();
 attrs.put("createdBy", "sample");
 String prefix = "Invoice";

 documentModelAdministrationAsyncClient.beginBuildDocumentModel(
         new BlobFileListContentSource(blobContainerUrl, fileList),
         DocumentModelBuildMode.TEMPLATE,
     new BuildDocumentModelOptions()
         .setModelId(modelId)
         .setDescription("model desc")
         .setTags(attrs))
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(documentModel -> {
         System.out.printf("Model ID: %s%n", documentModel.getModelId());
         System.out.printf("Model Description: %s%n", documentModel.getDescription());
         System.out.printf("Model Created on: %s%n", documentModel.getCreatedOn());
         System.out.printf("Model assigned tags: %s%n", documentModel.getTags());
         documentModel.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
                 System.out.printf("Field: %s", field);
                 System.out.printf("Field type: %s", documentFieldSchema.getType());
                 System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
             });
         });
     });

Parameters:

contentSource - 用于生成模型的定型数据源。 它可以是 Azure 存储 Blob 容器提供的,以及其各自的前缀或指向容器中指定用于训练的文档集的 JSONL 文件的路径。 有关设置训练数据集的详细信息,请参阅 此处
buildMode - 创建模型的首选方法。 若要更快地训练模型,请使用 TEMPLATE。 有关自定义文档的生成模式的详细信息,请参阅 此处
buildDocumentModelOptions - 生成自定义文档分析模型时要传递的可配置 BuildDocumentModelOptions 的 。

Returns:

PollerFlux<T,U> 询生成模型操作,直到其完成、失败或已取消。 完成的操作返回经过训练的 DocumentModelDetails

beginBuildDocumentModel

public PollerFlux beginBuildDocumentModel(String blobContainerUrl, DocumentModelBuildMode buildMode)

生成自定义文档分析模型。 模型是使用以下内容类型的文档构建的:“application/pdf”、“image/jpeg”、“image/png”、“image/tiff”、“image/bmp”。 忽略其他类型的内容。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示没有取消支持。

有关构建自己的管理数据集的信息,请参阅 此处

代码示例

String blobContainerUrl = "{SAS-URL-of-your-container-in-blob-storage}";
 documentModelAdministrationAsyncClient.beginBuildDocumentModel(blobContainerUrl,
         DocumentModelBuildMode.TEMPLATE
     )
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(documentModel -> {
         System.out.printf("Model ID: %s%n", documentModel.getModelId());
         System.out.printf("Model Created on: %s%n", documentModel.getCreatedOn());
         documentModel.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
                 System.out.printf("Field: %s", field);
                 System.out.printf("Field type: %s", documentFieldSchema.getType());
                 System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
             });
         });
     });

Parameters:

blobContainerUrl - Azure 存储 Blob 容器的 SAS URI。 如果容器 (是公共的,或者配置了托管标识,则可以使用没有 SAS) 的容器 URI。 有关设置训练数据集的详细信息,请参阅 此处
buildMode - 创建模型的首选方法。 若要更快地训练模型,请使用 TEMPLATE。 有关自定义文档的生成模式的详细信息,请参阅 此处

Returns:

PollerFlux<T,U> 询生成模型操作,直到其完成、失败或已取消。 完成的操作返回经过训练的 DocumentModelDetails

beginBuildDocumentModel

public PollerFlux beginBuildDocumentModel(String blobContainerUrl, DocumentModelBuildMode buildMode, String prefix, BuildDocumentModelOptions buildDocumentModelOptions)

生成自定义文档分析模型。 模型是使用以下内容类型的文档构建的:“application/pdf”、“image/jpeg”、“image/png”、“image/tiff”、“image/bmp”。 忽略其他类型的内容。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示没有取消支持。

有关构建自己的管理数据集的信息,请参阅 此处

代码示例

String blobContainerUrl = "{SAS-URL-of-your-container-in-blob-storage}";
 String modelId = "model-id";
 Map<String, String> attrs = new HashMap<String, String>();
 attrs.put("createdBy", "sample");
 String prefix = "Invoice";

 documentModelAdministrationAsyncClient.beginBuildDocumentModel(blobContainerUrl,
         DocumentModelBuildMode.TEMPLATE,
         prefix,
         new BuildDocumentModelOptions()
             .setModelId(modelId)
             .setDescription("model desc")
             .setTags(attrs))
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(documentModel -> {
         System.out.printf("Model ID: %s%n", documentModel.getModelId());
         System.out.printf("Model Description: %s%n", documentModel.getDescription());
         System.out.printf("Model Created on: %s%n", documentModel.getCreatedOn());
         System.out.printf("Model assigned tags: %s%n", documentModel.getTags());
         documentModel.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
                 System.out.printf("Field: %s", field);
                 System.out.printf("Field type: %s", documentFieldSchema.getType());
                 System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
             });
         });
     });

Parameters:

blobContainerUrl - Azure 存储 Blob 容器的 SAS URI。 如果容器 (是公共的,或者配置了托管标识,则可以使用没有 SAS) 的容器 URI。 有关设置训练数据集的详细信息,请参阅 此处
buildMode - 创建模型的首选方法。 若要更快地训练模型,请使用 TEMPLATE。 有关自定义文档的生成模式的详细信息,请参阅 此处
prefix - 区分大小写的前缀 blob 名称前缀,用于筛选文档以供训练。
buildDocumentModelOptions - 生成自定义文档分析模型时要传递的可配置 BuildDocumentModelOptions 的 。

Returns:

PollerFlux<T,U> 询生成模型操作,直到其完成、失败或已取消。 完成的操作返回经过训练的 DocumentModelDetails

beginComposeDocumentModel

public PollerFlux beginComposeDocumentModel(List componentModelIds)

从帐户中提供的现有模型列表创建组合模型。

如果列表包含无效的、不存在的模型 ID 或重复的 ID,则此操作将失败。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示没有取消支持。

代码示例

String modelId1 = "{model_Id_1}";
 String modelId2 = "{model_Id_2}";
 documentModelAdministrationAsyncClient.beginComposeDocumentModel(Arrays.asList(modelId1, modelId2)
     )
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(documentModel -> {
         System.out.printf("Model ID: %s%n", documentModel.getModelId());
         System.out.printf("Model Created on: %s%n", documentModel.getCreatedOn());
         documentModel.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
                 System.out.printf("Field: %s", field);
                 System.out.printf("Field type: %s", documentFieldSchema.getType());
                 System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
             });
         });
     });

Parameters:

componentModelIds - 要撰写的组件模型列表。

Returns:

一个 PollerFlux<T,U> ,它轮询创建组合模型操作,直到它完成、失败或已取消。 完成的操作返回创建的 DocumentModelDetails

beginComposeDocumentModel

public PollerFlux beginComposeDocumentModel(List componentModelIds, ComposeDocumentModelOptions composeDocumentModelOptions)

从帐户中提供的现有模型列表创建组合模型。

如果列表包含无效的、不存在的模型 ID 或重复的 ID,则此操作将失败。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示没有取消支持。

代码示例

String modelId1 = "{model_Id_1}";
 String modelId2 = "{model_Id_2}";
 String modelId = "my-composed-model";
 Map<String, String> attrs = new HashMap<String, String>();
 attrs.put("createdBy", "sample");

 documentModelAdministrationAsyncClient.beginComposeDocumentModel(Arrays.asList(modelId1, modelId2),
         new ComposeDocumentModelOptions()
             .setModelId(modelId)
             .setDescription("model-desc")
             .setTags(attrs))
     // if polling operation completed, retrieve the final result.
     .flatMap(AsyncPollResponse::getFinalResult)
     .subscribe(documentModel -> {
         System.out.printf("Model ID: %s%n", documentModel.getModelId());
         System.out.printf("Model Description: %s%n", documentModel.getDescription());
         System.out.printf("Model Created on: %s%n", documentModel.getCreatedOn());
         System.out.printf("Model assigned tags: %s%n", documentModel.getTags());
         documentModel.getDocumentTypes().forEach((key, documentTypeDetails) -> {
             documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
                 System.out.printf("Field: %s", field);
                 System.out.printf("Field type: %s", documentFieldSchema.getType());
                 System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
             });
         });
     });

Parameters:

componentModelIds - 要撰写的组件模型列表。
composeDocumentModelOptions - 创建组合模型时要传递的可配置 ComposeDocumentModelOptions 的 。

Returns:

一个 PollerFlux<T,U> ,它轮询创建组合模型操作,直到它完成、失败或已取消。 完成的操作返回复制的模型 DocumentModelDetails

beginCopyDocumentModelTo

public PollerFlux beginCopyDocumentModelTo(String sourceModelId, DocumentModelCopyAuthorization target)

将源) (存储在此资源中的自定义模型复制到用户指定的目标表单识别器资源。

应将源表单识别器资源 (调用,该模型旨在) 复制。 目标参数应从目标资源的输出方法 getCopyAuthorization() 中提供。

该服务不支持取消长时间运行的操作,并返回一条错误消息,指示没有取消支持。

代码示例

String copyModelId = "copy-model";
 // Get authorization to copy the model to target resource
 documentModelAdministrationAsyncClient.getCopyAuthorization()
     // Start copy operation from the source client
     // The ID of the model that needs to be copied to the target resource
     .subscribe(copyAuthorization -> documentModelAdministrationAsyncClient.beginCopyDocumentModelTo(copyModelId,
             copyAuthorization)
         .filter(pollResponse -> pollResponse.getStatus().isComplete())
         .flatMap(AsyncPollResponse::getFinalResult)
         .subscribe(documentModel ->
             System.out.printf("Copied model has model ID: %s, was created on: %s.%n,",
                 documentModel.getModelId(),
                 documentModel.getCreatedOn())));

Parameters:

sourceModelId - 要复制到目标资源的源模型的模型标识符。
target - 对目标表单识别器资源的复制授权。 复制授权可以从目标资源的调用生成 getCopyAuthorization()

Returns:

PollerFlux<T,U> 询复制模型操作,直到其完成、失败或已取消。 完成的操作返回复制的模型 DocumentModelDetails

deleteDocumentClassifier

public Mono deleteDocumentClassifier(String classifierId)

删除指定的文档分类器。

代码示例

String classifierId = "{classifierId}";
 documentModelAdministrationAsyncClient.deleteDocumentClassifier(classifierId)
     .subscribe(ignored -> System.out.printf("Classifier ID: %s is deleted%n", classifierId));

Parameters:

classifierId - 唯一的文档分类器标识符。

Returns:

空的 Mono。

deleteDocumentClassifierWithResponse

public Mono<>> deleteDocumentClassifierWithResponse(String classifierId)

删除指定的文档分类器。

代码示例

String classifierId = "{classifierId}";
 documentModelAdministrationAsyncClient.deleteDocumentClassifierWithResponse(classifierId)
     .subscribe(response -> {
         System.out.printf("Response Status Code: %d.", response.getStatusCode());
         System.out.printf("Classifier ID: %s is deleted.%n", classifierId);
     });

Parameters:

classifierId - 唯一的文档分类器标识符。

Returns:

包含 Response<T> 状态代码和 HTTP 标头的 。

deleteDocumentModel

public Mono deleteDocumentModel(String modelId)

删除指定的自定义文档分析模型。

代码示例

String modelId = "{model_id}";
 documentModelAdministrationAsyncClient.deleteDocumentModel(modelId)
     .subscribe(ignored -> System.out.printf("Model ID: %s is deleted%n", modelId));

Parameters:

modelId - 唯一的模型标识符。

Returns:

空的 Mono。

deleteDocumentModelWithResponse

public Mono<>> deleteDocumentModelWithResponse(String modelId)

删除指定的自定义文档分析模型。

代码示例

String modelId = "{model_id}";
 documentModelAdministrationAsyncClient.deleteDocumentModelWithResponse(modelId)
     .subscribe(response -> {
         System.out.printf("Response Status Code: %d.", response.getStatusCode());
         System.out.printf("Model ID: %s is deleted.%n", modelId);
     });

Parameters:

modelId - 唯一的模型标识符。

Returns:

包含 Response<T> 状态代码和 HTTP 标头的 。

getCopyAuthorization

public Mono getCopyAuthorization()

生成用于将自定义文档分析模型复制到目标表单识别器资源的授权。

这应由目标资源 (调用,其中模型将复制到) ,输出可以作为目标参数传递到 beginCopyDocumentModelTo(String sourceModelId, DocumentModelCopyAuthorization target)

Returns:

DocumentModelCopyAuthorization可用于授权在资源之间复制模型的 。

getCopyAuthorizationWithResponse

public Mono<>> getCopyAuthorizationWithResponse(CopyAuthorizationOptions copyAuthorizationOptions)

生成用于将自定义文档分析模型复制到目标表单识别器资源的授权。

这应由目标资源 (调用,其中模型将复制到) ,输出可以作为目标参数传递到 beginCopyDocumentModelTo(String sourceModelId, DocumentModelCopyAuthorization target)

Parameters:

copyAuthorizationOptions - 复制模型时要传递的可配置的 CopyAuthorizationOptions代码示例 String modelId = “my-copied-model”;Map<String,String> attrs = new HashMap<String, String> () ;attrs.put (“createdBy”,“sample”) ;

documentModelAdministrationAsyncClient.getCopyAuthorizationWithResponse( new CopyAuthorizationOptions() .setModelId(modelId) .setDescription("model desc") .setTags(attrs)) .subscribe(copyAuthorization -> System.out.printf("Copy Authorization response status: %s, for model id: %s, access token: %s, " + "expiration time: %s, target resource ID; %s, target resource region: %s%n", copyAuthorization.getStatusCode(), copyAuthorization.getValue().getTargetModelId(), copyAuthorization.getValue().getAccessToken(), copyAuthorization.getValue().getExpiresOn(), copyAuthorization.getValue().getTargetResourceId(), copyAuthorization.getValue().getTargetResourceRegion() ));

Returns:

DocumentModelCopyAuthorization可用于授权在资源之间复制模型的 。

getDocumentAnalysisAsyncClient

public DocumentAnalysisAsyncClient getDocumentAnalysisAsyncClient()

创建一个新的 DocumentAnalysisAsyncClient 对象。 新的 DocumentTrainingAsyncClient 使用与 相同的请求策略管道 DocumentTrainingAsyncClient

Returns:

一个新 DocumentAnalysisAsyncClient 对象。

getDocumentClassifier

public Mono getDocumentClassifier(String classifierId)

按 ID 获取文档分类器的详细信息。

代码示例

String modelId = "{model_id}";
 documentModelAdministrationAsyncClient.getDocumentClassifier(modelId).subscribe(documentClassifier -> {
     System.out.printf("Classifier ID: %s%n", documentClassifier.getClassifierId());
     System.out.printf("Classifier Description: %s%n", documentClassifier.getDescription());
     System.out.printf("Classifier Created on: %s%n", documentClassifier.getCreatedOn());
     documentClassifier.getDocumentTypes().forEach((key, documentTypeDetails) -> {
         if (documentTypeDetails.getContentSource() instanceof BlobContentSource) {
             System.out.printf("Blob Source container Url: %s", ((BlobContentSource) documentTypeDetails
                 .getContentSource()).getContainerUrl());
         }
         if (documentTypeDetails.getContentSource() instanceof BlobFileListContentSource) {
             System.out.printf("Blob File List Source container Url: %s",
                 ((BlobFileListContentSource) documentTypeDetails
                 .getContentSource()).getContainerUrl());
         }
     });
 });

Parameters:

classifierId - 唯一的文档分类器标识符。

Returns:

指定文档分类器 ID 的详细信息。

getDocumentClassifierWithResponse

public Mono<>> getDocumentClassifierWithResponse(String classifierId)

使用 Http 响应获取指定模型 ID 的详细信息。

代码示例

String modelId = "{model_id}";
 documentModelAdministrationAsyncClient.getDocumentModelWithResponse(modelId).subscribe(response -> {
     System.out.printf("Response Status Code: %d.", response.getStatusCode());
     DocumentModelDetails documentModelDetails = response.getValue();
     System.out.printf("Model ID: %s%n", documentModelDetails.getModelId());
     System.out.printf("Model Description: %s%n", documentModelDetails.getDescription());
     System.out.printf("Model Created on: %s%n", documentModelDetails.getCreatedOn());
     documentModelDetails.getDocumentTypes().forEach((key, documentTypeDetails) -> {
         documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
             System.out.printf("Field: %s", field);
             System.out.printf("Field type: %s", documentFieldSchema.getType());
             System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
         });
     });
 });

Parameters:

classifierId - 唯一的文档分类器标识符。

Returns:

getDocumentModel

public Mono getDocumentModel(String modelId)

获取指定模型 ID 的详细信息。

代码示例

String modelId = "{model_id}";
 documentModelAdministrationAsyncClient.getDocumentModel(modelId).subscribe(documentModel -> {
     System.out.printf("Model ID: %s%n", documentModel.getModelId());
     System.out.printf("Model Description: %s%n", documentModel.getDescription());
     System.out.printf("Model Created on: %s%n", documentModel.getCreatedOn());
     documentModel.getDocumentTypes().forEach((key, documentTypeDetails) -> {
         documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
             System.out.printf("Field: %s", field);
             System.out.printf("Field type: %s", documentFieldSchema.getType());
             System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
         });
     });
 });

Parameters:

modelId - 唯一的模型标识符。

Returns:

指定模型的详细信息。

getDocumentModelWithResponse

public Mono<>> getDocumentModelWithResponse(String modelId)

使用 Http 响应获取指定模型 ID 的详细信息。

代码示例

String modelId = "{model_id}";
 documentModelAdministrationAsyncClient.getDocumentModelWithResponse(modelId).subscribe(response -> {
     System.out.printf("Response Status Code: %d.", response.getStatusCode());
     DocumentModelDetails documentModelDetails = response.getValue();
     System.out.printf("Model ID: %s%n", documentModelDetails.getModelId());
     System.out.printf("Model Description: %s%n", documentModelDetails.getDescription());
     System.out.printf("Model Created on: %s%n", documentModelDetails.getCreatedOn());
     documentModelDetails.getDocumentTypes().forEach((key, documentTypeDetails) -> {
         documentTypeDetails.getFieldSchema().forEach((field, documentFieldSchema) -> {
             System.out.printf("Field: %s", field);
             System.out.printf("Field type: %s", documentFieldSchema.getType());
             System.out.printf("Field confidence: %.2f", documentTypeDetails.getFieldConfidence().get(field));
         });
     });
 });

Parameters:

modelId - 唯一的模型标识符。

Returns:

包含 Response<T> 请求的 DocumentModelDetails

getOperation

public Mono getOperation(String operationId)

获取指定 ID 的详细操作信息。

如果使用的操作 ID 超过 24 小时,则此操作将失败。

代码示例

String operationId = "{operation_Id}";
 documentModelAdministrationAsyncClient.getOperation(operationId).subscribe(operationDetails -> {
     System.out.printf("Operation ID: %s%n", operationDetails.getOperationId());
     System.out.printf("Operation Kind: %s%n", operationDetails.getKind());
     System.out.printf("Operation Status: %s%n", operationDetails.getStatus());
     System.out.printf("Model ID created with this operation: %s%n",
         ((DocumentModelBuildOperationDetails) operationDetails).getResult().getModelId());
     if (OperationStatus.FAILED.equals(operationDetails.getStatus())) {
         System.out.printf("Operation fail error: %s%n", operationDetails.getError().getMessage());
     }
 });

Parameters:

operationId - 唯一的操作 ID。

Returns:

指定 ID 的详细操作信息。

getOperationWithResponse

public Mono<>> getOperationWithResponse(String operationId)

使用 Http 响应获取指定 ID 的详细操作信息。

如果使用的操作 ID 超过 24 小时,则此操作将失败。

代码示例

String operationId = "{operation_Id}";
 documentModelAdministrationAsyncClient.getOperationWithResponse(operationId).subscribe(response -> {
     System.out.printf("Response Status Code: %d.", response.getStatusCode());
     OperationDetails operationDetails = response.getValue();
     System.out.printf("Operation ID: %s%n", operationDetails.getOperationId());
     System.out.printf("Operation Kind: %s%n", operationDetails.getKind());
     System.out.printf("Operation Status: %s%n", operationDetails.getStatus());
     System.out.printf("Model ID created with this operation: %s%n",
         ((DocumentModelBuildOperationDetails) operationDetails).getResult().getModelId());
     if (OperationStatus.FAILED.equals(operationDetails.getStatus())) {
         System.out.printf("Operation fail error: %s%n", operationDetails.getError().getMessage());
     }
 });

Parameters:

operationId - 唯一的操作 ID。

Returns:

包含 Response<T> 请求的 OperationDetails

getResourceDetails

public Mono getResourceDetails()

获取有关当前表单识别器资源的信息。

代码示例

documentModelAdministrationAsyncClient.getResourceDetails()
     .subscribe(resourceInfo -> {
         System.out.printf("Max number of models that can be build for this account: %d%n",
             resourceInfo.getCustomDocumentModelLimit());
         System.out.printf("Current count of built document analysis models: %d%n",
             resourceInfo.getCustomDocumentModelCount());
     });

Returns:

请求的资源信息详细信息。

getResourceDetailsWithResponse

public Mono<>> getResourceDetailsWithResponse()

使用 Http 响应获取有关当前表单识别器资源的信息。

代码示例

documentModelAdministrationAsyncClient.getResourceDetailsWithResponse()
     .subscribe(response -> {
         System.out.printf("Response Status Code: %d.", response.getStatusCode());
         ResourceDetails resourceDetails = response.getValue();
         System.out.printf("Max number of models that can be build for this account: %d%n",
             resourceDetails.getCustomDocumentModelLimit());
         System.out.printf("Current count of built document analysis models: %d%n",
             resourceDetails.getCustomDocumentModelCount());
     });

Returns:

包含 Response<T> 请求的资源信息详细信息的 。

listDocumentClassifiers

public PagedFlux listDocumentClassifiers()

列出已成功生成的 表单识别器 帐户上每个文档分类器的信息。

代码示例

documentModelAdministrationAsyncClient.listDocumentClassifiers()
     .subscribe(documentModelInfo ->
         System.out.printf("Classifier ID: %s, Classifier description: %s, Created on: %s.%n",
             documentModelInfo.getClassifierId(),
             documentModelInfo.getDescription(),
             documentModelInfo.getCreatedOn()));

Returns:

PagedFlux<T>表单识别器DocumentClassifierDetails帐户上的 。

listDocumentModels

public PagedFlux listDocumentModels()

列出已成功生成的表单识别器帐户上每个模型的信息。

代码示例

documentModelAdministrationAsyncClient.listDocumentModels()
     .subscribe(documentModelInfo ->
         System.out.printf("Model ID: %s, Model description: %s, Created on: %s.%n",
             documentModelInfo.getModelId(),
             documentModelInfo.getDescription(),
             documentModelInfo.getCreatedOn()));

Returns:

listOperations

public PagedFlux listOperations()

列出过去 24 小时内表单识别器帐户上每个模型操作的信息。

代码示例

documentModelAdministrationAsyncClient.listOperations()
     .subscribe(modelOperationSummary -> {
         System.out.printf("Operation ID: %s%n", modelOperationSummary.getOperationId());
         System.out.printf("Operation Status: %s%n", modelOperationSummary.getStatus());
         System.out.printf("Operation Created on: %s%n", modelOperationSummary.getCreatedOn());
         System.out.printf("Operation Percent completed: %d%n", modelOperationSummary.getPercentCompleted());
         System.out.printf("Operation Kind: %s%n", modelOperationSummary.getKind());
         System.out.printf("Operation Last updated on: %s%n", modelOperationSummary.getLastUpdatedOn());
         System.out.printf("Operation resource location: %s%n", modelOperationSummary.getResourceLocation());
     });

Returns:

适用于