Freigeben über


DocumentModelAdministrationAsyncClient Klasse

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

public final class DocumentModelAdministrationAsyncClient

Diese Klasse stellt einen asynchronen Client zum Herstellen einer Verbindung mit dem Formularerkennung Azure Cognitive Service bereit.

Dieser Client stellt asynchrone Methoden bereit, um Folgendes auszuführen:

  1. Erstellen eines benutzerdefinierten Modells: Extrahieren Sie Daten aus Ihren spezifischen Dokumenten, indem Sie benutzerdefinierte Modelle mithilfe der beginBuidlDocumentModel -Methode erstellen, um eine SAS-URL für Ihren Azure Storage-Blobcontainer bereitzustellen.
  2. Zusammengesetzte benutzerdefinierte Modelle: Erstellt mithilfe der beginComposeDocumentModel -Methode ein neues Modell aus Dokumenttypen der Auflistung vorhandener Modelle.
  3. Kopieren eines benutzerdefinierten Modells: Kopieren Sie mithilfe der beginCopyDocumentModelTo -Methode ein benutzerdefiniertes Formularerkennung-Modell in eine Zielressource Formularerkennung.
  4. Benutzerdefinierte Modellverwaltung: Erhalten Sie detaillierte Informationen, löschen und listen Sie benutzerdefinierte Modelle mithilfe von Methoden getDocumentModel(String modelId)bzw listDocumentModels()deleteDocumentModel(String modelId) . auf.
  5. Betriebsverwaltung: Abrufen von detaillierten Informationen und Listenvorgängen für das Formularerkennung-Konto mithilfe von Methoden getOperation(String operationId) bzwlistOperations().
  6. Abrufe und Rückrufe: Es enthält Mechanismen zum Abrufen des Diensts, um die status eines Analysevorgangs zu überprüfen oder Rückrufe zu registrieren, um Benachrichtigungen zu erhalten, wenn die Analyse abgeschlossen ist.

Hinweis: Dieser Client unterstützt V2022_08_31 nur und neuer. Um eine ältere Dienstversion zu verwenden, FormRecognizerClient und FormTrainingClient.

Dienstclients sind der Interaktionspunkt für Entwickler, um Azure Formularerkennung zu verwenden. DocumentModelAdministrationClient ist der synchrone Dienstclient und DocumentModelAdministrationAsyncClient der asynchrone Dienstclient. Die in diesem Dokument gezeigten Beispiele verwenden ein Anmeldeinformationsobjekt namens DefaultAzureCredential für die Authentifizierung, das für die meisten Szenarien geeignet ist, einschließlich lokaler Entwicklungs- und Produktionsumgebungen. Darüber hinaus wird die Verwendung einer verwalteten Identität für die Authentifizierung in Produktionsumgebungen empfohlen. Weitere Informationen zu verschiedenen Authentifizierungsmethoden und den entsprechenden Anmeldeinformationstypen finden Sie in der Dokumentation zu Azure Identity."

Beispiel: Erstellen eines DocumentModelAdministrationAsyncClient mit DefaultAzureCredential

Im folgenden Codebeispiel wird die Erstellung eines DocumentModelAdministrationAsyncClientveranschaulicht, wobei "DefaultAzureCredentialBuilder" zum Konfigurieren verwendet wird.

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

Weitere Informationen finden Sie weiter unten im Codebeispiel zur Verwendung AzureKeyCredential für die Clienterstellung.

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

Methodenzusammenfassung

Modifizierer und Typ Methode und Beschreibung
PollerFlux<OperationResult,DocumentClassifierDetails> beginBuildDocumentClassifier(Map<String,ClassifierDocumentTypeDetails> documentTypes)

Erstellt ein benutzerdefiniertes Klassifiziererdokumentmodell.

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

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell.

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

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell.

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

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell.

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

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell.

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

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell.

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

Erstellen Sie ein zusammengesetztes Modell aus der bereitgestellten Liste der vorhandenen Modelle im Konto.

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

Erstellen Sie ein zusammengesetztes Modell aus der bereitgestellten Liste der vorhandenen Modelle im Konto.

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

Kopieren Sie ein benutzerdefiniertes Modell, das in dieser Ressource (der Quelle) gespeichert ist, in das vom Benutzer angegebene Ziel Formularerkennung Ressource.

Mono<Void> deleteDocumentClassifier(String classifierId)

Löscht den angegebenen Dokumentklassifizierer.

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

Löscht den angegebenen Dokumentklassifizierer.

Mono<Void> deleteDocumentModel(String modelId)

Löscht das angegebene benutzerdefinierte Dokumentanalysemodell.

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

Löscht das angegebene benutzerdefinierte Dokumentanalysemodell.

Mono<DocumentModelCopyAuthorization> getCopyAuthorization()

Generieren Sie die Autorisierung zum Kopieren eines benutzerdefinierten Dokumentanalysemodells in die Zielressource Formularerkennung.

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

Generieren Sie die Autorisierung zum Kopieren eines benutzerdefinierten Dokumentanalysemodells in die Zielressource Formularerkennung.

DocumentAnalysisAsyncClient getDocumentAnalysisAsyncClient()

Erstellt ein neues DocumentAnalysisAsyncClient-Objekt.

Mono<DocumentClassifierDetails> getDocumentClassifier(String classifierId)

Rufen Sie detaillierte Informationen für einen Dokumentklassifizierer anhand seiner ID ab.

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

Rufen Sie detaillierte Informationen für eine angegebene Modell-ID mit http-Antwort ab.

Mono<DocumentModelDetails> getDocumentModel(String modelId)

Rufen Sie ausführliche Informationen für eine angegebene Modell-ID ab.

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

Rufen Sie detaillierte Informationen für eine angegebene Modell-ID mit http-Antwort ab.

Mono<OperationDetails> getOperation(String operationId)

Rufen Sie detaillierte Vorgangsinformationen für die angegebene ID ab.

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

Rufen Sie detaillierte Vorgangsinformationen für die angegebene ID mit http-Antwort ab.

Mono<ResourceDetails> getResourceDetails()

Rufen Sie Informationen zur aktuellen Formularerkennung-Ressource ab.

Mono<Response<ResourceDetails>> getResourceDetailsWithResponse()

Rufen Sie die Informationen zur aktuellen Formularerkennung-Ressource mit einer HTTP-Antwort ab.

PagedFlux<DocumentClassifierDetails> listDocumentClassifiers()

Listen Sie Informationen für die einzelnen Dokumentklassifizierungen für das Formularerkennung Konto auf, die erfolgreich erstellt wurden.

PagedFlux<DocumentModelSummary> listDocumentModels()

Listen Sie Informationen für jedes Modell im Formularerkennung Konto auf, das erfolgreich erstellt wurde.

PagedFlux<OperationSummary> listOperations()

Listen Sie Informationen zu jedem Modellvorgang im Formularerkennung Konto in den letzten 24 Stunden auf.

Geerbte Methoden von java.lang.Object

Details zur Methode

beginBuildDocumentClassifier

public PollerFlux beginBuildDocumentClassifier(Map documentTypes)

Erstellt ein benutzerdefiniertes Klassifiziererdokumentmodell.

Klassifizierermodelle können mehrere Dokumente oder mehrere Instanzen eines einzelnen Dokuments identifizieren. Dazu benötigen Sie mindestens fünf Dokumente für jede Klasse und zwei Klassen von Dokumenten.

Der Dienst unterstützt den Abbruch des zeitintensiven Vorgangs nicht und gibt eine Fehlermeldung zurück, die darauf hinweist, dass keine Abbruchunterstützung vorhanden ist.

Codebeispiel

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 - Liste der Zu klassifizierenden Dokumenttypen.

Returns:

Eine PollerFlux<T,U> , die den Erstellungsmodellvorgang abruft, bis er abgeschlossen ist, fehlgeschlagen ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt den trainierten DocumentClassifierDetailszurück.

beginBuildDocumentClassifier

public PollerFlux beginBuildDocumentClassifier(Map documentTypes, BuildDocumentClassifierOptions buildDocumentClassifierOptions)

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell. Modelle werden mithilfe von Dokumenten erstellt, die den folgenden Inhaltstyp aufweisen: "application/pdf", "image/jpeg", "image/png", "image/tiff", image/bmp. Andere Inhaltstypen werden ignoriert.

Der Dienst unterstützt den Abbruch des zeitintensiven Vorgangs nicht und gibt eine Fehlermeldung zurück, die darauf hinweist, dass keine Abbruchunterstützung vorhanden ist.

Informationen zum Erstellen eines eigenen Verwaltungsdatensatzes finden Sie hier .

Codebeispiel

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 - Liste der Zu klassifizierenden Dokumenttypen.
buildDocumentClassifierOptions - Die konfigurierbare BuildDocumentClassifierOptions , die beim Erstellen eines benutzerdefinierten Klassifiziererdokumentmodells übergeben werden kann.

Returns:

Eine SyncPoller<T,U> , die den Erstellungsmodellvorgang abruft, bis er abgeschlossen ist, fehlgeschlagen ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt die erstellte DocumentClassifierDetailszurück.

beginBuildDocumentModel

public PollerFlux beginBuildDocumentModel(ContentSource contentSource, DocumentModelBuildMode buildMode)

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell. Modelle werden mithilfe von Dokumenten erstellt, die den folgenden Inhaltstyp aufweisen: "application/pdf", "image/jpeg", "image/png", "image/tiff", image/bmp. Andere Inhaltstypen werden ignoriert.

Der Dienst unterstützt den Abbruch des zeitintensiven Vorgangs nicht und gibt eine Fehlermeldung zurück, die darauf hinweist, dass keine Abbruchunterstützung vorhanden ist.

Informationen zum Erstellen eines eigenen Verwaltungsdatensatzes finden Sie hier .

Codebeispiel

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 - Trainingsdatenquelle, die zum Erstellen des Modells verwendet werden soll. Es kann sich um einen Azure Storage-Blobcontainer mit dem entsprechenden Präfix oder um Den Pfad zu einer JSONL-Datei innerhalb des Containers handeln, der den Satz von Dokumenten für das Training angibt. Weitere Informationen zum Einrichten eines Trainingsdatasets finden Sie hier.
buildMode - die bevorzugte Technik zum Erstellen von Modellen. Verwenden Sie TEMPLATEzum schnelleren Trainieren von Modellen . Weitere Informationen zum Erstellungsmodus für benutzerdefinierte Dokumente finden Sie hier .

Returns:

Eine PollerFlux<T,U> , die den Vorgang zum Erstellen des Modells abfragt, bis er abgeschlossen ist, ein Fehler aufgetreten ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt das trainierte DocumentModelDetailszurück.

beginBuildDocumentModel

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

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell. Modelle werden mithilfe von Dokumenten erstellt, die den folgenden Inhaltstyp aufweisen: "application/pdf", "image/jpeg", "image/png", "image/tiff", image/bmp. Andere Inhaltstypen werden ignoriert.

Der Dienst unterstützt das Abbruchen des vorgangs mit langer Ausführung nicht und gibt eine Fehlermeldung zurück, die angibt, dass keine Abbruchunterstützung vorhanden ist.

Informationen zum Erstellen eines eigenen Verwaltungsdatensatzes finden Sie hier .

Codebeispiel

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 - Trainingsdatenquelle, die zum Erstellen des Modells verwendet werden soll. Es kann sich um einen Azure Storage-Blobcontainer mit dem entsprechenden Präfix oder um Den Pfad zu einer JSONL-Datei innerhalb des Containers handeln, der den Satz von Dokumenten für das Training angibt. Weitere Informationen zum Einrichten eines Trainingsdatasets finden Sie hier.
buildMode - die bevorzugte Technik zum Erstellen von Modellen. Verwenden Sie TEMPLATEzum schnelleren Trainieren von Modellen . Weitere Informationen zum Erstellungsmodus für benutzerdefinierte Dokumente finden Sie hier .
buildDocumentModelOptions - Die konfigurierbare BuildDocumentModelOptions , die beim Erstellen eines benutzerdefinierten Dokumentanalysemodells übergeben werden soll.

Returns:

Eine PollerFlux<T,U> , die den Vorgang zum Erstellen des Modells abfragt, bis er abgeschlossen ist, ein Fehler aufgetreten ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt das trainierte DocumentModelDetailszurück.

beginBuildDocumentModel

public PollerFlux beginBuildDocumentModel(String blobContainerUrl, DocumentModelBuildMode buildMode)

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell. Modelle werden mithilfe von Dokumenten erstellt, die den folgenden Inhaltstyp aufweisen: "application/pdf", "image/jpeg", "image/png", "image/tiff", image/bmp. Andere Inhaltstypen werden ignoriert.

Der Dienst unterstützt das Abbruchen des vorgangs mit langer Ausführung nicht und gibt eine Fehlermeldung zurück, die angibt, dass keine Abbruchunterstützung vorhanden ist.

Informationen zum Erstellen eines eigenen Verwaltungsdatensatzes finden Sie hier .

Codebeispiel

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 - SAS-URI eines Azure Storage-Blobcontainers. Ein Container-URI (ohne SAS) kann verwendet werden, wenn der Container öffentlich ist oder eine verwaltete Identität konfiguriert ist. Weitere Informationen zum Einrichten eines Trainingsdatasets finden Sie hier.
buildMode - die bevorzugte Technik zum Erstellen von Modellen. Verwenden Sie TEMPLATEzum schnelleren Trainieren von Modellen . Weitere Informationen zum Erstellungsmodus für benutzerdefinierte Dokumente finden Sie hier .

Returns:

Eine PollerFlux<T,U> , die den Vorgang zum Erstellen des Modells abfragt, bis er abgeschlossen ist, ein Fehler aufgetreten ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt das trainierte DocumentModelDetailszurück.

beginBuildDocumentModel

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

Erstellt ein benutzerdefiniertes Dokumentenanalysemodell. Modelle werden mithilfe von Dokumenten erstellt, die den folgenden Inhaltstyp aufweisen: "application/pdf", "image/jpeg", "image/png", "image/tiff", image/bmp. Andere Inhaltstypen werden ignoriert.

Der Dienst unterstützt das Abbruchen des vorgangs mit langer Ausführung nicht und gibt eine Fehlermeldung zurück, die angibt, dass keine Abbruchunterstützung vorhanden ist.

Informationen zum Erstellen eines eigenen Verwaltungsdatensatzes finden Sie hier .

Codebeispiel

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 - SAS-URI eines Azure Storage-Blobcontainers. Ein Container-URI (ohne SAS) kann verwendet werden, wenn der Container öffentlich ist oder eine verwaltete Identität konfiguriert ist. Weitere Informationen zum Einrichten eines Trainingsdatasets finden Sie hier.
buildMode - die bevorzugte Technik zum Erstellen von Modellen. Verwenden Sie TEMPLATEzum schnelleren Trainieren von Modellen . Weitere Informationen zum Erstellungsmodus für benutzerdefinierte Dokumente finden Sie hier .
prefix - Präfix blobname für das Filtern von Dokumenten für das Training: Beachten Sie die Groß-/Kleinschreibung des Präfixes.
buildDocumentModelOptions - Die konfigurierbare BuildDocumentModelOptions , die beim Erstellen eines benutzerdefinierten Dokumentanalysemodells übergeben werden soll.

Returns:

Eine PollerFlux<T,U> , die den Vorgang zum Erstellen des Modells abfragt, bis er abgeschlossen ist, ein Fehler aufgetreten ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt das trainierte DocumentModelDetailszurück.

beginComposeDocumentModel

public PollerFlux beginComposeDocumentModel(List componentModelIds)

Erstellen Sie ein zusammengesetztes Modell aus der bereitgestellten Liste der vorhandenen Modelle im Konto.

Dieser Vorgang schlägt fehl, wenn die Liste aus einer ungültigen, nicht vorhandenen Modell-ID oder aus doppelten IDs besteht.

Der Dienst unterstützt das Abbruchen des vorgangs mit langer Ausführung nicht und gibt eine Fehlermeldung zurück, die angibt, dass keine Abbruchunterstützung vorhanden ist.

Codebeispiel

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 - Die Liste der zu erstellenden Komponentenmodelle.

Returns:

Eine PollerFlux<T,U> , die den Vorgang zum Erstellen eines zusammengesetzten Modells abfragt, bis er abgeschlossen ist, ein Fehler aufgetreten ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt den erstellten DocumentModelDetailszurück.

beginComposeDocumentModel

public PollerFlux beginComposeDocumentModel(List componentModelIds, ComposeDocumentModelOptions composeDocumentModelOptions)

Erstellen Sie ein zusammengesetztes Modell aus der bereitgestellten Liste der vorhandenen Modelle im Konto.

Dieser Vorgang schlägt fehl, wenn die Liste aus einer ungültigen, nicht vorhandenen Modell-ID oder aus doppelten IDs besteht.

Der Dienst unterstützt das Abbruchen des vorgangs mit langer Ausführung nicht und gibt eine Fehlermeldung zurück, die angibt, dass keine Abbruchunterstützung vorhanden ist.

Codebeispiel

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 - Die Liste der zu erstellenden Komponentenmodelle.
composeDocumentModelOptions - Die konfigurierbare ComposeDocumentModelOptions , die beim Erstellen eines zusammengesetzten Modells übergeben werden soll.

Returns:

Eine PollerFlux<T,U> , die den Vorgang zum Erstellen eines zusammengesetzten Modells abfragt, bis er abgeschlossen ist, ein Fehler aufgetreten ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt das kopierte Modell DocumentModelDetailszurück.

beginCopyDocumentModelTo

public PollerFlux beginCopyDocumentModelTo(String sourceModelId, DocumentModelCopyAuthorization target)

Kopieren Sie ein benutzerdefiniertes Modell, das in dieser Ressource (der Quelle) gespeichert ist, in das vom Benutzer angegebene Ziel Formularerkennung Ressource.

Dies sollte mit der Quellressource Formularerkennung aufgerufen werden (mit dem Modell, das kopiert werden soll). Der Zielparameter sollte aus der Ausgabe der Zielressource von getCopyAuthorization() -Methode angegeben werden.

Der Dienst unterstützt das Abbruchen des vorgangs mit langer Ausführung nicht und gibt eine Fehlermeldung zurück, die angibt, dass keine Abbruchunterstützung vorhanden ist.

Codebeispiel

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 - Modellbezeichner des Quellmodells, das in die Zielressource kopiert werden soll.
target - die Kopierautorisierung für die Zielressource Formularerkennung. Die Kopierautorisierung kann aus dem Aufruf der Zielressource generiert werden. getCopyAuthorization()

Returns:

Eine PollerFlux<T,U> , die den Kopiermodellvorgang abfragt, bis er abgeschlossen ist, ein Fehler aufgetreten ist oder abgebrochen wurde. Der abgeschlossene Vorgang gibt das kopierte Modell DocumentModelDetailszurück.

deleteDocumentClassifier

public Mono deleteDocumentClassifier(String classifierId)

Löscht den angegebenen Dokumentklassifizierer.

Codebeispiel

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

Parameters:

classifierId - Der eindeutige Dokumentklassifizierungsbezeichner.

Returns:

Ein leeres Mono.

deleteDocumentClassifierWithResponse

public Mono> deleteDocumentClassifierWithResponse(String classifierId)

Löscht den angegebenen Dokumentklassifizierer.

Codebeispiel

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 - Der eindeutige Dokumentklassifizierungsbezeichner.

Returns:

EineResponse<T>, die den status Code und HTTP-Headern enthält.

deleteDocumentModel

public Mono deleteDocumentModel(String modelId)

Löscht das angegebene benutzerdefinierte Dokumentanalysemodell.

Codebeispiel

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

Parameters:

modelId - Der eindeutige Modellbezeichner.

Returns:

Ein leeres Mono.

deleteDocumentModelWithResponse

public Mono> deleteDocumentModelWithResponse(String modelId)

Löscht das angegebene benutzerdefinierte Dokumentanalysemodell.

Codebeispiel

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 - Der eindeutige Modellbezeichner.

Returns:

Ein Response<T> mit dem status Code und HTTP-Headern.

getCopyAuthorization

public Mono getCopyAuthorization()

Generieren Sie die Autorisierung zum Kopieren eines benutzerdefinierten Dokumentanalysemodells in die Zielressource Formularerkennung.

Dies sollte von der Zielressource aufgerufen werden (in die das Modell kopiert wird), und die Ausgabe kann als Zielparameter an beginCopyDocumentModelTo(String sourceModelId, DocumentModelCopyAuthorization target)übergeben werden.

Returns:

Der , der DocumentModelCopyAuthorization zum Autorisieren des Kopiermodells zwischen Ressourcen verwendet werden kann.

getCopyAuthorizationWithResponse

public Mono> getCopyAuthorizationWithResponse(CopyAuthorizationOptions copyAuthorizationOptions)

Generieren Sie die Autorisierung zum Kopieren eines benutzerdefinierten Dokumentanalysemodells in die Zielressource Formularerkennung.

Dies sollte von der Zielressource aufgerufen werden (in die das Modell kopiert wird), und die Ausgabe kann als Zielparameter an beginCopyDocumentModelTo(String sourceModelId, DocumentModelCopyAuthorization target)übergeben werden.

Parameters:

copyAuthorizationOptions - Die konfigurierbare CopyAuthorizationOptions , die beim Kopieren eines Modells übergeben werden kann. Codebeispiel 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:

Der , der DocumentModelCopyAuthorization zum Autorisieren des Kopiermodells zwischen Ressourcen verwendet werden kann.

getDocumentAnalysisAsyncClient

public DocumentAnalysisAsyncClient getDocumentAnalysisAsyncClient()

Erstellt ein neues DocumentAnalysisAsyncClient-Objekt. Die neue DocumentTrainingAsyncClient verwendet dieselbe Anforderungsrichtlinienpipeline wie die DocumentTrainingAsyncClient.

Returns:

Ein neues DocumentAnalysisAsyncClient-Objekt.

getDocumentClassifier

public Mono getDocumentClassifier(String classifierId)

Rufen Sie detaillierte Informationen für einen Dokumentklassifizierer anhand seiner ID ab.

Codebeispiel

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 - Der eindeutige Dokumentklassifizierungsbezeichner.

Returns:

Die detaillierten Informationen für die angegebene Dokumentklassifizierer-ID.

getDocumentClassifierWithResponse

public Mono> getDocumentClassifierWithResponse(String classifierId)

Rufen Sie detaillierte Informationen für eine angegebene Modell-ID mit http-Antwort ab.

Codebeispiel

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 - Der eindeutige Dokumentklassifizierungsbezeichner.

Returns:

Ein Response<T> , der die angeforderte DocumentClassifierDetailsenthält.

getDocumentModel

public Mono getDocumentModel(String modelId)

Rufen Sie ausführliche Informationen für eine angegebene Modell-ID ab.

Codebeispiel

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 - Der eindeutige Modellbezeichner.

Returns:

Die detaillierten Informationen für das angegebene Modell.

getDocumentModelWithResponse

public Mono> getDocumentModelWithResponse(String modelId)

Rufen Sie detaillierte Informationen für eine angegebene Modell-ID mit http-Antwort ab.

Codebeispiel

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 - Der eindeutige Modellbezeichner.

Returns:

Ein Response<T> , der die angeforderte DocumentModelDetailsenthält.

getOperation

public Mono getOperation(String operationId)

Rufen Sie detaillierte Vorgangsinformationen für die angegebene ID ab.

Dieser Vorgang schlägt fehl, wenn die verwendete Vorgangs-ID nach 24 Stunden liegt.

Codebeispiel

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 - Eindeutige Vorgangs-ID.

Returns:

ausführliche Vorgangsinformationen für die angegebene ID.

getOperationWithResponse

public Mono> getOperationWithResponse(String operationId)

Rufen Sie detaillierte Vorgangsinformationen für die angegebene ID mit http-Antwort ab.

Dieser Vorgang schlägt fehl, wenn die verwendete Vorgangs-ID nach 24 Stunden liegt.

Codebeispiel

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 - Eindeutige Vorgangs-ID.

Returns:

Ein Response<T> , der die angeforderte OperationDetailsenthält.

getResourceDetails

public Mono getResourceDetails()

Rufen Sie Informationen zur aktuellen Formularerkennung-Ressource ab.

Codebeispiel

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:

Die angeforderten Ressourceninformationen.

getResourceDetailsWithResponse

public Mono> getResourceDetailsWithResponse()

Rufen Sie die Informationen zur aktuellen Formularerkennung-Ressource mit einer HTTP-Antwort ab.

Codebeispiel

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:

Eine Response<T> , die die angeforderten Ressourceninformationen enthält.

listDocumentClassifiers

public PagedFlux listDocumentClassifiers()

Listen Sie Informationen für die einzelnen Dokumentklassifizierungen für das Formularerkennung Konto auf, die erfolgreich erstellt wurden.

Codebeispiel

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>auf DocumentClassifierDetails dem konto Formularerkennung.

listDocumentModels

public PagedFlux listDocumentModels()

Listen Sie Informationen für jedes Modell im Formularerkennung Konto auf, das erfolgreich erstellt wurde.

Codebeispiel

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()

Listen Sie Informationen zu jedem Modellvorgang im Formularerkennung Konto in den letzten 24 Stunden auf.

Codebeispiel

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:

Gilt für: