DocumentModelAdministrationClient class

Um cliente para interagir com as funcionalidades de gestão de modelos do serviço Reconhecedor de Formulários, como criar, ler, listar, eliminar e copiar modelos.

Exemplos:

Azure Active Directory

import { DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
import { DefaultAzureCredential } from "@azure/identity";

const endpoint = "https://<resource name>.cognitiveservices.azure.com";
const credential = new DefaultAzureCredential();

const client = new DocumentModelAdministrationClient(endpoint, credential);

Chave de API (Chave de Subscrição)

import { DocumentModelAdministrationClient, AzureKeyCredential } from "@azure/ai-form-recognizer";

const endpoint = "https://<resource name>.cognitiveservices.azure.com";
const credential = new AzureKeyCredential("<api key>");

const client = new DocumentModelAdministrationClient(endpoint, credential);

Construtores

DocumentModelAdministrationClient(string, KeyCredential, DocumentModelAdministrationClientOptions)

Criar uma instância DocumentModelAdministrationClient a partir de um ponto final de recurso e de uma chave de API estática (KeyCredential),

Exemplo:

import { DocumentModelAdministrationClient, AzureKeyCredential } from "@azure/ai-form-recognizer";

const endpoint = "https://<resource name>.cognitiveservices.azure.com";
const credential = new AzureKeyCredential("<api key>");

const client = new DocumentModelAdministrationClient(endpoint, credential);
DocumentModelAdministrationClient(string, TokenCredential, DocumentModelAdministrationClientOptions)

Crie uma instância DocumentModelAdministrationClient a partir de um ponto final de recurso e de uma Identidade TokenCredentialdo Azure.

Veja o pacote para obter mais informações sobre a autenticação com o @azure/identity Azure Active Directory.

Exemplo:

import { DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
import { DefaultAzureCredential } from "@azure/identity";

const endpoint = "https://<resource name>.cognitiveservices.azure.com";
const credential = new DefaultAzureCredential();

const client = new DocumentModelAdministrationClient(endpoint, credential);

Métodos

beginBuildDocumentClassifier(string, DocumentClassifierDocumentTypeSources, BeginBuildDocumentClassifierOptions)

Crie um novo classificador de documentos com o ID e os tipos de documentos do classificador especificados.

O ID do classificador tem de ser exclusivo entre os classificadores no recurso.

Os tipos de documento são fornecidos como um objeto que mapeia o nome do tipo de documento para o conjunto de dados de preparação desse tipo de documento. São suportados dois métodos de introdução de dados de preparação:

  • azureBlobSource, que prepara um classificador com os dados no contentor de Armazenamento de Blobs do Azure especificado.
  • azureBlobFileListSource, que é semelhante, azureBlobSource mas permite um controlo mais detalhado sobre os ficheiros incluídos no conjunto de dados de preparação através de uma lista de ficheiros formatados em JSONL.

O serviço Reconhecedor de Formulários lê o conjunto de dados de preparação a partir de um contentor do Armazenamento do Azure, fornecido como um URL para o contentor com um token de SAS que permite ao back-end do serviço comunicar com o contentor. No mínimo, são necessárias as permissões "ler" e "lista". Além disso, os dados no contentor especificado têm de ser organizados de acordo com uma convenção específica, que está documentada na documentação do serviço para criar classificadores de documentos personalizados.

Exemplo

const classifierId = "aNewClassifier";
const containerUrl1 = "<training data container SAS URL 1>";
const containerUrl2 = "<training data container SAS URL 2>";

const poller = await client.beginBuildDocumentClassifier(
  classifierId,
  {
    // The document types. Each entry in this object should map a document type name to a
    // `ClassifierDocumentTypeDetails` object
    "formX": {
      azureBlobSource: {
        containerUrl: containerUrl1,
      }
    },
    "formY": {
      azureBlobFileListSource: {
        containerUrl: containerUrl2,
        fileList: "path/to/fileList.jsonl"
      }
    },
  },
  {
    // Optionally, a text description may be attached to the classifier
    description: "This is an example classifier!"
  }
);

// Classifier building, like model creation operations, returns a poller that eventually produces a
// DocumentClassifierDetails object
const classifierDetails = await poller.pollUntilDone();

const {
  classifierId, // identical to the classifierId given when creating the classifier
  description, // identical to the description given when creating the classifier (if any)
  createdOn, // the Date (timestamp) that the classifier was created
  docTypes // information about the document types in the classifier and their details
} = classifierDetails;
beginBuildDocumentModel(string, DocumentModelSource, DocumentModelBuildMode, BeginBuildDocumentModelOptions)

Crie um novo modelo com um determinado ID a partir de uma origem de conteúdo de modelo.

O ID do Modelo pode consistir em qualquer texto, desde que não comece com "pré-criado" (como estes modelos se referem a modelos de Reconhecedor de Formulários pré-criados que são comuns a todos os recursos) e desde que ainda não exista no recurso.

A origem de conteúdo descreve o mecanismo que o serviço irá utilizar para ler os dados de preparação de entrada. Veja o <xref:DocumentModelContentSource> tipo para obter mais informações.

Exemplo

const modelId = "aNewModel";

const poller = await client.beginBuildDocumentModel(modelId, { containerUrl: "<SAS-encoded blob container URL>" }, {
  // Optionally, a text description may be attached to the model
  description: "This is an example model!"
});

// Model building, like all other model creation operations, returns a poller that eventually produces a ModelDetails
// object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the model
  description, // identical to the description given when creating the model
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types in the model and their field schemas
} = modelDetails;
beginBuildDocumentModel(string, string, DocumentModelBuildMode, BeginBuildDocumentModelOptions)

Crie um novo modelo com um determinado ID a partir de um conjunto de documentos de entrada e campos etiquetados.

O ID do Modelo pode consistir em qualquer texto, desde que não comece com "pré-criado" (como estes modelos se referem a modelos de Reconhecedor de Formulários pré-criados que são comuns a todos os recursos) e desde que ainda não exista no recurso.

O serviço Reconhecedor de Formulários lê o conjunto de dados de preparação a partir de um contentor do Armazenamento do Azure, fornecido como um URL para o contentor com um token de SAS que permite ao back-end do serviço comunicar com o contentor. No mínimo, são necessárias as permissões "ler" e "lista". Além disso, os dados no contentor especificado têm de ser organizados de acordo com uma convenção específica, que está documentada na documentação do serviço para criar modelos personalizados.

Exemplo

const modelId = "aNewModel";
const containerUrl = "<training data container SAS URL>";

const poller = await client.beginBuildDocumentModel(modelId, containerUrl, {
  // Optionally, a text description may be attached to the model
  description: "This is an example model!"
});

// Model building, like all other model creation operations, returns a poller that eventually produces a ModelDetails
// object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the model
  description, // identical to the description given when creating the model
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types in the model and their field schemas
} = modelDetails;
beginComposeDocumentModel(string, Iterable<string>, BeginComposeDocumentModelOptions)

Cria um único modelo composto a partir de vários submodelos pré-existentes.

O modelo composto resultante combina os tipos de documento dos respetivos modelos de componentes e insere um passo de classificação no pipeline de extração para determinar qual dos respetivos submodelos de componentes é mais adequado para a entrada especificada.

Exemplo

const modelId = "aNewComposedModel";
const subModelIds = [
  "documentType1Model",
  "documentType2Model",
  "documentType3Model"
];

// The resulting composed model can classify and extract data from documents
// conforming to any of the above document types
const poller = await client.beginComposeDocumentModel(modelId, subModelIds, {
  description: "This is a composed model that can handle several document types."
});

// Model composition, like all other model creation operations, returns a poller that eventually produces a
// ModelDetails object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the model
  description, // identical to the description given when creating the model
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types of the composed submodels
} = modelDetails;
beginCopyModelTo(string, CopyAuthorization, BeginCopyModelOptions)

Copia um modelo com o ID especificado para o ID de recurso e modelo codificado por uma determinada autorização de cópia.

Veja CopyAuthorization e getCopyAuthorization.

Exemplo

// We need a client for the source model's resource
const sourceEndpoint = "https://<source resource name>.cognitiveservices.azure.com";
const sourceCredential = new AzureKeyCredential("<source api key>");
const sourceClient = new DocumentModelAdministrationClient(sourceEndpoint, sourceCredential);

// We create the copy authorization using a client authenticated with the destination resource. Note that these two
// resources can be the same (you can copy a model to a new ID in the same resource).
const copyAuthorization = await client.getCopyAuthorization("<destination model ID>");

// Finally, use the _source_ client to copy the model and await the copy operation
const poller = await sourceClient.beginCopyModelTo("<source model ID>");

// Model copying, like all other model creation operations, returns a poller that eventually produces a ModelDetails
// object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the copy authorization
  description, // identical to the description given when creating the copy authorization
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types of the model (identical to the original, source model)
} = modelDetails;
deleteDocumentClassifier(string, OperationOptions)

Elimina um classificador com o ID especificado do recurso do cliente, se existir. Não é possível reverter esta operação.

Exemplo

await client.deleteDocumentClassifier("<classifier ID to delete>"));
deleteDocumentModel(string, DeleteDocumentModelOptions)

Elimina um modelo com o ID especificado do recurso do cliente, se existir. Não é possível reverter esta operação.

Exemplo

await client.deleteDocumentModel("<model ID to delete>"));
getCopyAuthorization(string, GetCopyAuthorizationOptions)

Cria uma autorização para copiar um modelo para o recurso, utilizado com o beginCopyModelTo método .

O CopyAuthorization concede a outro recurso do serviço cognitivo o direito de criar um modelo no recurso deste cliente com o ID do modelo e a descrição opcional que estão codificadas na autorização.

Exemplo

// The copyAuthorization data structure stored below grants any cognitive services resource the right to copy a
// model into the client's resource with the given destination model ID.
const copyAuthorization = await client.getCopyAuthorization("<destination model ID>");
getDocumentClassifier(string, OperationOptions)

Obtém informações sobre um classificador (DocumentClassifierDetails) por ID.

Exemplo

const classifierId = "<classifier ID";

const {
  classifierId, // identical to the ID given when calling `getDocumentClassifier`
  description, // a textual description of the classifier, if provided during classifier creation
  createdOn, // the Date (timestamp) that the classifier was created
  // information about the document types in the classifier and their corresponding traning data
  docTypes
} = await client.getDocumentClassifier(classifierId);

// The `docTypes` property is a map of document type names to information about the training data
// for that document type.
for (const [docTypeName, classifierDocTypeDetails] of Object.entries(docTypes)) {
 console.log(`- '${docTypeName}': `, classifierDocTypeDetails);
}
getDocumentModel(string, GetModelOptions)

Obtém informações sobre um modelo (DocumentModelDetails) por ID.

Este método pode obter informações sobre modelos personalizados e pré-criados.

Alteração Interruptiva

Nas versões anteriores do Reconhecedor de Formulários API REST e SDK, o getModel método poderia devolver qualquer modelo, mesmo um que não tenha sido criado devido a erros. Nas novas versões do serviço, getDocumentModellistDocumentModelsproduz modelos criados com êxito (ou seja, modelos "prontos" para utilização). Os modelos com falhas são agora obtidos através das APIs de "operações", veja getOperation e listOperations.

Exemplo

// The ID of the prebuilt business card model
const modelId = "prebuilt-businessCard";

const {
  modelId, // identical to the modelId given when calling `getDocumentModel`
  description, // a textual description of the model, if provided during model creation
  createdOn, // the Date (timestamp) that the model was created
  // information about the document types in the model and their field schemas
  docTypes: {
    // the document type of the prebuilt business card model
    "prebuilt:businesscard": {
      // an optional, textual description of this document type
      description,
      // the schema of the fields in this document type, see the FieldSchema type
      fieldSchema,
      // the service's confidences in the fields (an object with field names as properties and numeric confidence
      // values)
      fieldConfidence
    }
  }
} = await client.getDocumentModel(modelId);
getOperation(string, GetOperationOptions)

Obtém informações sobre uma operação (OperationDetails) pelo respetivo ID.

As operações representam tarefas que não são de análise, como criar, compor ou copiar um modelo.

getResourceDetails(GetResourceDetailsOptions)

Obtenha informações básicas sobre o recurso deste cliente.

Exemplo

const {
  // Information about the custom models in the current resource
  customDocumentModelDetails: {
    // The number of custom models in the current resource
    count,
    // The maximum number of models that the current resource can support
    limit
  }
} = await client.getResourceDetails();
listDocumentClassifiers(ListModelsOptions)

Liste detalhes sobre classificadores no recurso. Esta operação suporta paginação.

Exemplos

Iteração Assíncrona

for await (const details of client.listDocumentClassifiers()) {
  const {
    classifierId, // The classifier's unique ID
    description, // a textual description of the classifier, if provided during creation
    docTypes, // information about the document types in the classifier and their corresponding traning data
  } = details;
}

Por Página

// The listDocumentClassifiers method is paged, and you can iterate by page using the `byPage` method.
const pages = client.listDocumentClassifiers().byPage();

for await (const page of pages) {
  // Each page is an array of classifiers and can be iterated synchronously
  for (const details of page) {
    const {
      classifierId, // The classifier's unique ID
      description, // a textual description of the classifier, if provided during creation
      docTypes, // information about the document types in the classifier and their corresponding traning data
    } = details;
  }
}
listDocumentModels(ListModelsOptions)

Listar resumos de modelos no recurso. Serão incluídos modelos personalizados e pré-criados. Esta operação suporta paginação.

O resumo do modelo (DocumentModelSummary) inclui apenas as informações básicas sobre o modelo e não inclui informações sobre os tipos de documentos no modelo (como os esquemas de campo e os valores de confiança).

Para aceder às informações completas sobre o modelo, utilize getDocumentModel.

Alteração Interruptiva

Nas versões anteriores do Reconhecedor de Formulários API REST e SDK, o listModels método devolveria todos os modelos, mesmo aqueles que não foram criados devido a erros. Nas novas versões do serviço, listDocumentModelsgetDocumentModelproduz modelos criados com êxito (ou seja, modelos "prontos" para utilização). Os modelos com falhas são agora obtidos através das APIs de "operações", veja getOperation e listOperations.

Exemplos

Iteração Assíncrona

for await (const summary of client.listDocumentModels()) {
  const {
    modelId, // The model's unique ID
    description, // a textual description of the model, if provided during model creation
  } = summary;

  // You can get the full model info using `getDocumentModel`
  const model = await client.getDocumentModel(modelId);
}

Por Página

// The listDocumentModels method is paged, and you can iterate by page using the `byPage` method.
const pages = client.listDocumentModels().byPage();

for await (const page of pages) {
  // Each page is an array of models and can be iterated synchronously
  for (const model of page) {
    const {
      modelId, // The model's unique ID
      description, // a textual description of the model, if provided during model creation
    } = summary;

    // You can get the full model info using `getDocumentModel`
    const model = await client.getDocumentModel(modelId);
  }
}
listOperations(ListOperationsOptions)

Listar operações de criação de modelos no recurso. Isto produzirá todas as operações, incluindo operações que não conseguiram criar modelos com êxito. Esta operação suporta paginação.

Exemplos

Iteração Assíncrona

for await (const operation of client.listOperations()) {
  const {
    operationId, // the operation's GUID
    status, // the operation status, one of "notStarted", "running", "succeeded", "failed", or "canceled"
    percentCompleted // the progress of the operation, from 0 to 100
  } = operation;
}

Por Página

// The listOperations method is paged, and you can iterate by page using the `byPage` method.
const pages = client.listOperations().byPage();

for await (const page of pages) {
  // Each page is an array of operation info objects and can be iterated synchronously
  for (const operation of page) {
    const {
      operationId, // the operation's GUID
      status, // the operation status, one of "notStarted", "running", "succeeded", "failed", or "canceled"
      percentCompleted // the progress of the operation, from 0 to 100
    } = operation;
  }
}

Detalhes do Construtor

DocumentModelAdministrationClient(string, KeyCredential, DocumentModelAdministrationClientOptions)

Criar uma instância DocumentModelAdministrationClient a partir de um ponto final de recurso e de uma chave de API estática (KeyCredential),

Exemplo:

import { DocumentModelAdministrationClient, AzureKeyCredential } from "@azure/ai-form-recognizer";

const endpoint = "https://<resource name>.cognitiveservices.azure.com";
const credential = new AzureKeyCredential("<api key>");

const client = new DocumentModelAdministrationClient(endpoint, credential);
new DocumentModelAdministrationClient(endpoint: string, credential: KeyCredential, options?: DocumentModelAdministrationClientOptions)

Parâmetros

endpoint

string

o URL de ponto final de uma instância dos Serviços Cognitivos do Azure

credential
KeyCredential

um KeyCredential que contém a chave de subscrição da instância dos Serviços Cognitivos

options
DocumentModelAdministrationClientOptions

definições opcionais para configurar todos os métodos no cliente

DocumentModelAdministrationClient(string, TokenCredential, DocumentModelAdministrationClientOptions)

Crie uma instância DocumentModelAdministrationClient a partir de um ponto final de recurso e de uma Identidade TokenCredentialdo Azure.

Veja o pacote para obter mais informações sobre a autenticação com o @azure/identity Azure Active Directory.

Exemplo:

import { DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
import { DefaultAzureCredential } from "@azure/identity";

const endpoint = "https://<resource name>.cognitiveservices.azure.com";
const credential = new DefaultAzureCredential();

const client = new DocumentModelAdministrationClient(endpoint, credential);
new DocumentModelAdministrationClient(endpoint: string, credential: TokenCredential, options?: DocumentModelAdministrationClientOptions)

Parâmetros

endpoint

string

o URL de ponto final de uma instância dos Serviços Cognitivos do Azure

credential
TokenCredential

uma instância tokenCredential do @azure/identity pacote

options
DocumentModelAdministrationClientOptions

definições opcionais para configurar todos os métodos no cliente

Detalhes de Método

beginBuildDocumentClassifier(string, DocumentClassifierDocumentTypeSources, BeginBuildDocumentClassifierOptions)

Crie um novo classificador de documentos com o ID e os tipos de documentos do classificador especificados.

O ID do classificador tem de ser exclusivo entre os classificadores no recurso.

Os tipos de documento são fornecidos como um objeto que mapeia o nome do tipo de documento para o conjunto de dados de preparação desse tipo de documento. São suportados dois métodos de introdução de dados de preparação:

  • azureBlobSource, que prepara um classificador com os dados no contentor de Armazenamento de Blobs do Azure especificado.
  • azureBlobFileListSource, que é semelhante, azureBlobSource mas permite um controlo mais detalhado sobre os ficheiros incluídos no conjunto de dados de preparação através de uma lista de ficheiros formatados em JSONL.

O serviço Reconhecedor de Formulários lê o conjunto de dados de preparação a partir de um contentor do Armazenamento do Azure, fornecido como um URL para o contentor com um token de SAS que permite ao back-end do serviço comunicar com o contentor. No mínimo, são necessárias as permissões "ler" e "lista". Além disso, os dados no contentor especificado têm de ser organizados de acordo com uma convenção específica, que está documentada na documentação do serviço para criar classificadores de documentos personalizados.

Exemplo

const classifierId = "aNewClassifier";
const containerUrl1 = "<training data container SAS URL 1>";
const containerUrl2 = "<training data container SAS URL 2>";

const poller = await client.beginBuildDocumentClassifier(
  classifierId,
  {
    // The document types. Each entry in this object should map a document type name to a
    // `ClassifierDocumentTypeDetails` object
    "formX": {
      azureBlobSource: {
        containerUrl: containerUrl1,
      }
    },
    "formY": {
      azureBlobFileListSource: {
        containerUrl: containerUrl2,
        fileList: "path/to/fileList.jsonl"
      }
    },
  },
  {
    // Optionally, a text description may be attached to the classifier
    description: "This is an example classifier!"
  }
);

// Classifier building, like model creation operations, returns a poller that eventually produces a
// DocumentClassifierDetails object
const classifierDetails = await poller.pollUntilDone();

const {
  classifierId, // identical to the classifierId given when creating the classifier
  description, // identical to the description given when creating the classifier (if any)
  createdOn, // the Date (timestamp) that the classifier was created
  docTypes // information about the document types in the classifier and their details
} = classifierDetails;
function beginBuildDocumentClassifier(classifierId: string, docTypeSources: DocumentClassifierDocumentTypeSources, options?: BeginBuildDocumentClassifierOptions): Promise<DocumentClassifierPoller>

Parâmetros

classifierId

string

o ID exclusivo do classificador a criar

docTypeSources
DocumentClassifierDocumentTypeSources

os tipos de documento a incluir no classificador e nas respetivas origens (um mapa de nomes de tipo de documento para ClassifierDocumentTypeDetails)

options
BeginBuildDocumentClassifierOptions

definições opcionais para a operação de compilação do classificador

Devoluções

uma operação de execução prolongada (poller) que irá eventualmente produzir os detalhes do classificador criado ou um erro

beginBuildDocumentModel(string, DocumentModelSource, DocumentModelBuildMode, BeginBuildDocumentModelOptions)

Crie um novo modelo com um determinado ID a partir de uma origem de conteúdo de modelo.

O ID do Modelo pode consistir em qualquer texto, desde que não comece com "pré-criado" (como estes modelos se referem a modelos de Reconhecedor de Formulários pré-criados que são comuns a todos os recursos) e desde que ainda não exista no recurso.

A origem de conteúdo descreve o mecanismo que o serviço irá utilizar para ler os dados de preparação de entrada. Veja o <xref:DocumentModelContentSource> tipo para obter mais informações.

Exemplo

const modelId = "aNewModel";

const poller = await client.beginBuildDocumentModel(modelId, { containerUrl: "<SAS-encoded blob container URL>" }, {
  // Optionally, a text description may be attached to the model
  description: "This is an example model!"
});

// Model building, like all other model creation operations, returns a poller that eventually produces a ModelDetails
// object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the model
  description, // identical to the description given when creating the model
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types in the model and their field schemas
} = modelDetails;
function beginBuildDocumentModel(modelId: string, contentSource: DocumentModelSource, buildMode: DocumentModelBuildMode, options?: BeginBuildDocumentModelOptions): Promise<DocumentModelPoller>

Parâmetros

modelId

string

o ID exclusivo do modelo a criar

contentSource
DocumentModelSource

uma origem de conteúdo que fornece os dados de preparação para este modelo

buildMode

DocumentModelBuildMode

o modo a utilizar ao criar o modelo (ver DocumentModelBuildMode)

options
BeginBuildDocumentModelOptions

definições opcionais para a operação de compilação do modelo

Devoluções

uma operação de execução prolongada (poller) que irá eventualmente produzir as informações do modelo criado ou um erro

beginBuildDocumentModel(string, string, DocumentModelBuildMode, BeginBuildDocumentModelOptions)

Crie um novo modelo com um determinado ID a partir de um conjunto de documentos de entrada e campos etiquetados.

O ID do Modelo pode consistir em qualquer texto, desde que não comece com "pré-criado" (como estes modelos se referem a modelos de Reconhecedor de Formulários pré-criados que são comuns a todos os recursos) e desde que ainda não exista no recurso.

O serviço Reconhecedor de Formulários lê o conjunto de dados de preparação a partir de um contentor do Armazenamento do Azure, fornecido como um URL para o contentor com um token de SAS que permite ao back-end do serviço comunicar com o contentor. No mínimo, são necessárias as permissões "ler" e "lista". Além disso, os dados no contentor especificado têm de ser organizados de acordo com uma convenção específica, que está documentada na documentação do serviço para criar modelos personalizados.

Exemplo

const modelId = "aNewModel";
const containerUrl = "<training data container SAS URL>";

const poller = await client.beginBuildDocumentModel(modelId, containerUrl, {
  // Optionally, a text description may be attached to the model
  description: "This is an example model!"
});

// Model building, like all other model creation operations, returns a poller that eventually produces a ModelDetails
// object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the model
  description, // identical to the description given when creating the model
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types in the model and their field schemas
} = modelDetails;
function beginBuildDocumentModel(modelId: string, containerUrl: string, buildMode: DocumentModelBuildMode, options?: BeginBuildDocumentModelOptions): Promise<DocumentModelPoller>

Parâmetros

modelId

string

o ID exclusivo do modelo a criar

containerUrl

string

URL codificado por SAS para um contentor do Armazenamento do Azure que contém o conjunto de dados de preparação

buildMode

DocumentModelBuildMode

o modo a utilizar ao criar o modelo (ver DocumentModelBuildMode)

options
BeginBuildDocumentModelOptions

definições opcionais para a operação de compilação do modelo

Devoluções

uma operação de execução prolongada (poller) que irá eventualmente produzir as informações do modelo criado ou um erro

beginComposeDocumentModel(string, Iterable<string>, BeginComposeDocumentModelOptions)

Cria um único modelo composto a partir de vários submodelos pré-existentes.

O modelo composto resultante combina os tipos de documento dos respetivos modelos de componentes e insere um passo de classificação no pipeline de extração para determinar qual dos respetivos submodelos de componentes é mais adequado para a entrada especificada.

Exemplo

const modelId = "aNewComposedModel";
const subModelIds = [
  "documentType1Model",
  "documentType2Model",
  "documentType3Model"
];

// The resulting composed model can classify and extract data from documents
// conforming to any of the above document types
const poller = await client.beginComposeDocumentModel(modelId, subModelIds, {
  description: "This is a composed model that can handle several document types."
});

// Model composition, like all other model creation operations, returns a poller that eventually produces a
// ModelDetails object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the model
  description, // identical to the description given when creating the model
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types of the composed submodels
} = modelDetails;
function beginComposeDocumentModel(modelId: string, componentModelIds: Iterable<string>, options?: BeginComposeDocumentModelOptions): Promise<DocumentModelPoller>

Parâmetros

modelId

string

o ID exclusivo do modelo a criar

componentModelIds

Iterable<string>

iterável de cadeias que representam os IDs de modelo exclusivos dos modelos a compor

options
BeginComposeDocumentModelOptions

definições opcionais para a criação de modelos

Devoluções

uma operação de execução prolongada (poller) que irá eventualmente produzir as informações do modelo criado ou um erro

beginCopyModelTo(string, CopyAuthorization, BeginCopyModelOptions)

Copia um modelo com o ID especificado para o ID de recurso e modelo codificado por uma determinada autorização de cópia.

Veja CopyAuthorization e getCopyAuthorization.

Exemplo

// We need a client for the source model's resource
const sourceEndpoint = "https://<source resource name>.cognitiveservices.azure.com";
const sourceCredential = new AzureKeyCredential("<source api key>");
const sourceClient = new DocumentModelAdministrationClient(sourceEndpoint, sourceCredential);

// We create the copy authorization using a client authenticated with the destination resource. Note that these two
// resources can be the same (you can copy a model to a new ID in the same resource).
const copyAuthorization = await client.getCopyAuthorization("<destination model ID>");

// Finally, use the _source_ client to copy the model and await the copy operation
const poller = await sourceClient.beginCopyModelTo("<source model ID>");

// Model copying, like all other model creation operations, returns a poller that eventually produces a ModelDetails
// object
const modelDetails = await poller.pollUntilDone();

const {
  modelId, // identical to the modelId given when creating the copy authorization
  description, // identical to the description given when creating the copy authorization
  createdOn, // the Date (timestamp) that the model was created
  docTypes // information about the document types of the model (identical to the original, source model)
} = modelDetails;
function beginCopyModelTo(sourceModelId: string, authorization: CopyAuthorization, options?: BeginCopyModelOptions): Promise<DocumentModelPoller>

Parâmetros

sourceModelId

string

o ID exclusivo do modelo de origem que será copiado

authorization
CopyAuthorization

uma autorização para copiar o modelo, criada com getCopyAuthorization

options
BeginCopyModelOptions

definições opcionais para

Devoluções

uma operação de execução prolongada (poller) que irá eventualmente produzir as informações do modelo copiado ou um erro

deleteDocumentClassifier(string, OperationOptions)

Elimina um classificador com o ID especificado do recurso do cliente, se existir. Não é possível reverter esta operação.

Exemplo

await client.deleteDocumentClassifier("<classifier ID to delete>"));
function deleteDocumentClassifier(classifierId: string, options?: OperationOptions): Promise<void>

Parâmetros

classifierId

string

o ID exclusivo do classificador a eliminar do recurso

options
OperationOptions

definições opcionais para o pedido

Devoluções

Promise<void>

deleteDocumentModel(string, DeleteDocumentModelOptions)

Elimina um modelo com o ID especificado do recurso do cliente, se existir. Não é possível reverter esta operação.

Exemplo

await client.deleteDocumentModel("<model ID to delete>"));
function deleteDocumentModel(modelId: string, options?: DeleteDocumentModelOptions): Promise<void>

Parâmetros

modelId

string

o ID exclusivo do modelo a eliminar do recurso

options
DeleteDocumentModelOptions

definições opcionais para o pedido

Devoluções

Promise<void>

getCopyAuthorization(string, GetCopyAuthorizationOptions)

Cria uma autorização para copiar um modelo para o recurso, utilizado com o beginCopyModelTo método .

O CopyAuthorization concede a outro recurso do serviço cognitivo o direito de criar um modelo no recurso deste cliente com o ID do modelo e a descrição opcional que estão codificadas na autorização.

Exemplo

// The copyAuthorization data structure stored below grants any cognitive services resource the right to copy a
// model into the client's resource with the given destination model ID.
const copyAuthorization = await client.getCopyAuthorization("<destination model ID>");
function getCopyAuthorization(destinationModelId: string, options?: GetCopyAuthorizationOptions): Promise<CopyAuthorization>

Parâmetros

destinationModelId

string

o ID exclusivo do modelo de destino (o ID para o quais copiar o modelo)

options
GetCopyAuthorizationOptions

definições opcionais para criar a autorização de cópia

Devoluções

uma autorização de cópia que codifica o modelId especificado e a descrição opcional

getDocumentClassifier(string, OperationOptions)

Obtém informações sobre um classificador (DocumentClassifierDetails) por ID.

Exemplo

const classifierId = "<classifier ID";

const {
  classifierId, // identical to the ID given when calling `getDocumentClassifier`
  description, // a textual description of the classifier, if provided during classifier creation
  createdOn, // the Date (timestamp) that the classifier was created
  // information about the document types in the classifier and their corresponding traning data
  docTypes
} = await client.getDocumentClassifier(classifierId);

// The `docTypes` property is a map of document type names to information about the training data
// for that document type.
for (const [docTypeName, classifierDocTypeDetails] of Object.entries(docTypes)) {
 console.log(`- '${docTypeName}': `, classifierDocTypeDetails);
}
function getDocumentClassifier(classifierId: string, options?: OperationOptions): Promise<DocumentClassifierDetails>

Parâmetros

classifierId

string

o ID exclusivo do classificador a consultar

options
OperationOptions

definições opcionais para o pedido

Devoluções

informações sobre o classificador com o ID especificado

getDocumentModel(string, GetModelOptions)

Obtém informações sobre um modelo (DocumentModelDetails) por ID.

Este método pode obter informações sobre modelos personalizados e pré-criados.

Alteração Interruptiva

Nas versões anteriores do Reconhecedor de Formulários API REST e SDK, o getModel método poderia devolver qualquer modelo, mesmo um que não tenha sido criado devido a erros. Nas novas versões do serviço, getDocumentModellistDocumentModelsproduz modelos criados com êxito (ou seja, modelos "prontos" para utilização). Os modelos com falhas são agora obtidos através das APIs de "operações", veja getOperation e listOperations.

Exemplo

// The ID of the prebuilt business card model
const modelId = "prebuilt-businessCard";

const {
  modelId, // identical to the modelId given when calling `getDocumentModel`
  description, // a textual description of the model, if provided during model creation
  createdOn, // the Date (timestamp) that the model was created
  // information about the document types in the model and their field schemas
  docTypes: {
    // the document type of the prebuilt business card model
    "prebuilt:businesscard": {
      // an optional, textual description of this document type
      description,
      // the schema of the fields in this document type, see the FieldSchema type
      fieldSchema,
      // the service's confidences in the fields (an object with field names as properties and numeric confidence
      // values)
      fieldConfidence
    }
  }
} = await client.getDocumentModel(modelId);
function getDocumentModel(modelId: string, options?: GetModelOptions): Promise<DocumentModelDetails>

Parâmetros

modelId

string

o ID exclusivo do modelo a consultar

options
GetModelOptions

definições opcionais para o pedido

Devoluções

informações sobre o modelo com o ID especificado

getOperation(string, GetOperationOptions)

Obtém informações sobre uma operação (OperationDetails) pelo respetivo ID.

As operações representam tarefas que não são de análise, como criar, compor ou copiar um modelo.

function getOperation(operationId: string, options?: GetOperationOptions): Promise<OperationDetails>

Parâmetros

operationId

string

o ID da operação a consultar

options
GetOperationOptions

definições opcionais para o pedido

Devoluções

Promise<OperationDetails>

informações sobre a operação com o ID especificado

Exemplo

// The ID of the operation, which should be a GUID
const operationId = "<operation GUID>";

const {
  operationId, // identical to the operationId given when calling `getOperation`
  kind, // the operation kind, one of "documentModelBuild", "documentModelCompose", or "documentModelCopyTo"
  status, // the status of the operation, one of "notStarted", "running", "failed", "succeeded", or "canceled"
  percentCompleted, // a number between 0 and 100 representing the progress of the operation
  createdOn, // a Date object that reflects the time when the operation was started
  lastUpdatedOn, // a Date object that reflects the time when the operation state was last modified
} = await client.getOperation(operationId);

getResourceDetails(GetResourceDetailsOptions)

Obtenha informações básicas sobre o recurso deste cliente.

Exemplo

const {
  // Information about the custom models in the current resource
  customDocumentModelDetails: {
    // The number of custom models in the current resource
    count,
    // The maximum number of models that the current resource can support
    limit
  }
} = await client.getResourceDetails();
function getResourceDetails(options?: GetResourceDetailsOptions): Promise<ResourceDetails>

Parâmetros

options
GetResourceDetailsOptions

definições opcionais para o pedido

Devoluções

Promise<ResourceDetails>

informações básicas sobre o recurso deste cliente

listDocumentClassifiers(ListModelsOptions)

Liste detalhes sobre classificadores no recurso. Esta operação suporta paginação.

Exemplos

Iteração Assíncrona

for await (const details of client.listDocumentClassifiers()) {
  const {
    classifierId, // The classifier's unique ID
    description, // a textual description of the classifier, if provided during creation
    docTypes, // information about the document types in the classifier and their corresponding traning data
  } = details;
}

Por Página

// The listDocumentClassifiers method is paged, and you can iterate by page using the `byPage` method.
const pages = client.listDocumentClassifiers().byPage();

for await (const page of pages) {
  // Each page is an array of classifiers and can be iterated synchronously
  for (const details of page) {
    const {
      classifierId, // The classifier's unique ID
      description, // a textual description of the classifier, if provided during creation
      docTypes, // information about the document types in the classifier and their corresponding traning data
    } = details;
  }
}
function listDocumentClassifiers(options?: ListModelsOptions): PagedAsyncIterableIterator<DocumentClassifierDetails, DocumentClassifierDetails[], PageSettings>

Parâmetros

options
ListModelsOptions

definições opcionais para os pedidos do classificador

Devoluções

um iterável assíncrono de detalhes do classificador que suporta a paginação

listDocumentModels(ListModelsOptions)

Listar resumos de modelos no recurso. Serão incluídos modelos personalizados e pré-criados. Esta operação suporta paginação.

O resumo do modelo (DocumentModelSummary) inclui apenas as informações básicas sobre o modelo e não inclui informações sobre os tipos de documentos no modelo (como os esquemas de campo e os valores de confiança).

Para aceder às informações completas sobre o modelo, utilize getDocumentModel.

Alteração Interruptiva

Nas versões anteriores do Reconhecedor de Formulários API REST e SDK, o listModels método devolveria todos os modelos, mesmo aqueles que não foram criados devido a erros. Nas novas versões do serviço, listDocumentModelsgetDocumentModelproduz modelos criados com êxito (ou seja, modelos "prontos" para utilização). Os modelos com falhas são agora obtidos através das APIs de "operações", veja getOperation e listOperations.

Exemplos

Iteração Assíncrona

for await (const summary of client.listDocumentModels()) {
  const {
    modelId, // The model's unique ID
    description, // a textual description of the model, if provided during model creation
  } = summary;

  // You can get the full model info using `getDocumentModel`
  const model = await client.getDocumentModel(modelId);
}

Por Página

// The listDocumentModels method is paged, and you can iterate by page using the `byPage` method.
const pages = client.listDocumentModels().byPage();

for await (const page of pages) {
  // Each page is an array of models and can be iterated synchronously
  for (const model of page) {
    const {
      modelId, // The model's unique ID
      description, // a textual description of the model, if provided during model creation
    } = summary;

    // You can get the full model info using `getDocumentModel`
    const model = await client.getDocumentModel(modelId);
  }
}
function listDocumentModels(options?: ListModelsOptions): PagedAsyncIterableIterator<DocumentModelSummary, DocumentModelSummary[], PageSettings>

Parâmetros

options
ListModelsOptions

definições opcionais para os pedidos de modelo

Devoluções

um iterável assíncrono de resumos de modelos que suporta paginação

listOperations(ListOperationsOptions)

Listar operações de criação de modelos no recurso. Isto produzirá todas as operações, incluindo operações que não conseguiram criar modelos com êxito. Esta operação suporta paginação.

Exemplos

Iteração Assíncrona

for await (const operation of client.listOperations()) {
  const {
    operationId, // the operation's GUID
    status, // the operation status, one of "notStarted", "running", "succeeded", "failed", or "canceled"
    percentCompleted // the progress of the operation, from 0 to 100
  } = operation;
}

Por Página

// The listOperations method is paged, and you can iterate by page using the `byPage` method.
const pages = client.listOperations().byPage();

for await (const page of pages) {
  // Each page is an array of operation info objects and can be iterated synchronously
  for (const operation of page) {
    const {
      operationId, // the operation's GUID
      status, // the operation status, one of "notStarted", "running", "succeeded", "failed", or "canceled"
      percentCompleted // the progress of the operation, from 0 to 100
    } = operation;
  }
}
function listOperations(options?: ListOperationsOptions): PagedAsyncIterableIterator<OperationSummary, OperationSummary[], PageSettings>

Parâmetros

options
ListOperationsOptions

definições opcionais para os pedidos de operação

Devoluções

um iterável assíncrono de objetos de informação de operação que suporta a paginação