Udostępnij za pośrednictwem


DocumentAnalysisClient class

Klient do interakcji z funkcjami analizy usługi Form Recognizer.

Przykłady:

Usługa Form Recognizer i klienci obsługują dwa sposoby uwierzytelniania:

Azure Active Directory

import { DocumentAnalysisClient } 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 DocumentAnalysisClient(endpoint, credential);

Klucz interfejsu API (klucz subskrypcji)

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

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

const client = new DocumentAnalysisClient(endpoint, credential);

Konstruktory

DocumentAnalysisClient(string, KeyCredential, DocumentAnalysisClientOptions)

Tworzenie DocumentAnalysisClient wystąpienia na podstawie punktu końcowego zasobu i statycznego klucza interfejsu API (KeyCredential),

Przykład:

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

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

const client = new DocumentAnalysisClient(endpoint, credential);
DocumentAnalysisClient(string, TokenCredential, DocumentAnalysisClientOptions)

DocumentAnalysisClient Utwórz wystąpienie na podstawie punktu końcowego zasobu i tożsamości TokenCredentialplatformy Azure.

Zobacz pakiet, @azure/identity aby uzyskać więcej informacji na temat uwierzytelniania za pomocą usługi Azure Active Directory.

Przykład:

import { DocumentAnalysisClient } 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 DocumentAnalysisClient(endpoint, credential);

Metody

beginAnalyzeDocument(string, FormRecognizerRequestBody, AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu podanego przez jego unikatowy identyfikator.

Ta operacja obsługuje niestandardowe, a także wstępnie utworzone modele. Aby na przykład użyć wstępnie utworzonego modelu faktury, podaj identyfikator modelu "wstępnie utworzoną fakturę" lub użyj prostszego wstępnie utworzonego modelu układu, podaj identyfikator modelu "wstępnie utworzony układ".

Pola utworzone w obiekcie AnalyzeResult zależą od modelu używanego do analizy, a wartości w dowolnych wyodrębnionych dokumentach zależą od typów dokumentów w modelu (jeśli istnieje) i odpowiadających im schematów pól.

Przykłady

Ta metoda obsługuje treść żądania przesyłanego strumieniowo (FormRecognizerRequestBody), takie jak obiekty Node.JS ReadableStream , przeglądarki Blobi ArrayBuffers. Zawartość treści zostanie przekazana do usługi na potrzeby analizy.

import * as fs from "fs";

const file = fs.createReadStream("path/to/receipt.pdf");

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model, but you could use a custom model ID/name instead.
const poller = await client.beginAnalyzeDocument("prebuilt-receipt", file);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)
  entities, // extracted entities in the input's content, which are categorized (ex. "Location" or "Organization")
  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// The fields correspond to the model's document types and their field schemas. Refer to the Form Recognizer
// documentation for information about the document types and field schemas within a model, or use the `getModel`
// operation to view this information programmatically.
console.log("The type of this receipt is:", receipt?.["ReceiptType"]?.value);
beginAnalyzeDocument<Result>(DocumentModel<Result>, FormRecognizerRequestBody, AnalyzeDocumentOptions<Result>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu, który ma znany, silnie typizowane schematy dokumentów ( DocumentModel).

Pola utworzone w elemecie AnalyzeResult zależą od modelu używanego do analizy. W języku TypeScript typ wyniku dla tego przeciążenia metody jest wnioskowany z typu danych wejściowych DocumentModel.

Przykłady

Ta metoda obsługuje treść żądania przesyłanego strumieniowo (FormRecognizerRequestBody), takie jak obiekty Node.JS ReadableStream , przeglądarki Blobi ArrayBuffers. Zawartość treści zostanie przekazana do usługi na potrzeby analizy.

Jeśli podane dane wejściowe są ciągiem, będzie on traktowany jako adres URL lokalizacji dokumentu do przeanalizowania. Aby uzyskać więcej informacji, zobacz metodę beginAnalyzeDocumentFromUrl . Użycie tej metody jest preferowane w przypadku korzystania z adresów URL, a obsługa adresów URL jest dostępna tylko w tej metodzie w celu zapewnienia zgodności z poprzednimi wersjami.

import * as fs from "fs";

// See the `prebuilt` folder in the SDK samples (http://aka.ms/azsdk/formrecognizer/js/samples) for examples of
// DocumentModels for known prebuilts.
import { PrebuiltReceiptModel } from "./prebuilt-receipt.ts";

const file = fs.createReadStream("path/to/receipt.pdf");

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model.
const poller = await client.beginAnalyzeDocument(PrebuiltReceiptModel, file);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)

  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// Since we used the strongly-typed PrebuiltReceiptModel object instead of the "prebuilt-receipt" model ID
// string, the fields of the receipt are strongly-typed and have camelCase names (as opposed to PascalCase).
console.log("The type of this receipt is:", receipt.receiptType?.value);
beginAnalyzeDocumentFromUrl(string, string, AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu podanego przez jego unikatowy identyfikator.

Ta operacja obsługuje niestandardowe, a także wstępnie utworzone modele. Aby na przykład użyć wstępnie utworzonego modelu faktury, podaj identyfikator modelu "wstępnie utworzoną fakturę" lub użyj prostszego wstępnie utworzonego modelu układu, podaj identyfikator modelu "wstępnie utworzony układ".

Pola utworzone w obiekcie AnalyzeResult zależą od modelu używanego do analizy, a wartości w dowolnych wyodrębnionych dokumentach zależą od typów dokumentów w modelu (jeśli istnieje) i odpowiadających im schematów pól.

Przykłady

Ta metoda obsługuje wyodrębnianie danych z pliku pod danym adresem URL. Usługa Form Recognizer podejmie próbę pobrania pliku przy użyciu przesłanego adresu URL, więc adres URL musi być dostępny z publicznego Internetu. Na przykład token SYGNATURy dostępu współdzielonego może służyć do udzielania dostępu do odczytu do obiektu blob w usłudze Azure Storage, a usługa będzie używać zakodowanego w sygnaturze dostępu współdzielonego adresu URL w celu zażądania pliku.

// the URL must be publicly accessible
const url = "<receipt document url>";

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model, but you could use a custom model ID/name instead.
const poller = await client.beginAnalyzeDocument("prebuilt-receipt", url);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)

  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// The fields correspond to the model's document types and their field schemas. Refer to the Form Recognizer
// documentation for information about the document types and field schemas within a model, or use the `getModel`
// operation to view this information programmatically.
console.log("The type of this receipt is:", receipt?.["ReceiptType"]?.value);
beginAnalyzeDocumentFromUrl<Result>(DocumentModel<Result>, string, AnalyzeDocumentOptions<Result>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu, który ma znany, silnie typizowane schematy dokumentów ( DocumentModel).

Pola utworzone w elemecie AnalyzeResult zależą od modelu używanego do analizy. W języku TypeScript typ wyniku dla tego przeciążenia metody jest wnioskowany z typu danych wejściowych DocumentModel.

Przykłady

Ta metoda obsługuje wyodrębnianie danych z pliku pod danym adresem URL. Usługa Form Recognizer podejmie próbę pobrania pliku przy użyciu przesłanego adresu URL, więc adres URL musi być dostępny z publicznego Internetu. Na przykład token SYGNATURy dostępu współdzielonego może służyć do udzielania dostępu do odczytu do obiektu blob w usłudze Azure Storage, a usługa będzie używać zakodowanego w sygnaturze dostępu współdzielonego adresu URL w celu zażądania pliku.

// See the `prebuilt` folder in the SDK samples (http://aka.ms/azsdk/formrecognizer/js/samples) for examples of
// DocumentModels for known prebuilts.
import { PrebuiltReceiptModel } from "./prebuilt-receipt.ts";

// the URL must be publicly accessible
const url = "<receipt document url>";

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model.
const poller = await client.beginAnalyzeDocument(PrebuiltReceiptModel, url);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)

  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// Since we used the strongly-typed PrebuiltReceiptModel object instead of the "prebuilt-receipt" model ID
// string, the fields of the receipt are strongly-typed and have camelCase names (as opposed to PascalCase).
console.log("The type of this receipt is:", receipt.receiptType?.value);
beginClassifyDocument(string, FormRecognizerRequestBody, ClassifyDocumentOptions)

Klasyfikowanie dokumentu przy użyciu klasyfikatora niestandardowego podanego przez jego identyfikator.

Ta metoda tworzy długotrwałą operację (poller), która ostatecznie spowoduje wygenerowanie elementu AnalyzeResult. Jest to ten sam typ co beginAnalyzeDocument i beginAnalyzeDocumentFromUrl, ale wynik będzie zawierać tylko niewielki podzbiór jego pól. documents Zostanie wypełnione tylko pole i pages pole, a zostaną zwrócone tylko minimalne informacje o stronie. Pole documents będzie zawierać informacje o wszystkich zidentyfikowanych dokumentach i informacjach docType , które zostały sklasyfikowane jako.

Przykład

Ta metoda obsługuje treść żądania przesyłanego strumieniowo (FormRecognizerRequestBody), takie jak obiekty Node.JS ReadableStream , przeglądarki Blobi ArrayBuffers. Zawartość treści zostanie przekazana do usługi na potrzeby analizy.

import * as fs from "fs";

const file = fs.createReadStream("path/to/file.pdf");

const poller = await client.beginClassifyDocument("<classifier ID>", file);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain only basic information for classifiers
  documents // extracted documents and their types
} = await poller.pollUntilDone();

// We'll print the documents and their types
for (const { docType } of documents) {
  console.log("The type of this document is:", docType);
}
beginClassifyDocumentFromUrl(string, string, ClassifyDocumentOptions)

Klasyfikowanie dokumentu z adresu URL przy użyciu klasyfikatora niestandardowego podanego przez jego identyfikator.

Ta metoda tworzy długotrwałą operację (poller), która ostatecznie spowoduje wygenerowanie elementu AnalyzeResult. Jest to ten sam typ co beginAnalyzeDocument i beginAnalyzeDocumentFromUrl, ale wynik będzie zawierać tylko niewielki podzbiór jego pól. documents Zostanie wypełnione tylko pole i pages pole, a zostaną zwrócone tylko minimalne informacje o stronie. Pole documents będzie zawierać informacje o wszystkich zidentyfikowanych dokumentach i informacjach docType , które zostały sklasyfikowane jako.

Przykład

Ta metoda obsługuje wyodrębnianie danych z pliku pod danym adresem URL. Usługa Form Recognizer podejmie próbę pobrania pliku przy użyciu przesłanego adresu URL, więc adres URL musi być dostępny z publicznego Internetu. Na przykład token SYGNATURy dostępu współdzielonego może służyć do udzielania dostępu do odczytu do obiektu blob w usłudze Azure Storage, a usługa będzie używać zakodowanego w sygnaturze dostępu współdzielonego adresu URL w celu zażądania pliku.

// the URL must be publicly accessible
const url = "<file url>";

const poller = await client.beginClassifyDocument("<classifier ID>", url);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain only basic information for classifiers
  documents // extracted documents and their types
} = await poller.pollUntilDone();

// We'll print the documents and their types
for (const { docType } of documents) {
  console.log("The type of this document is:", docType);
}

Szczegóły konstruktora

DocumentAnalysisClient(string, KeyCredential, DocumentAnalysisClientOptions)

Tworzenie DocumentAnalysisClient wystąpienia na podstawie punktu końcowego zasobu i statycznego klucza interfejsu API (KeyCredential),

Przykład:

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

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

const client = new DocumentAnalysisClient(endpoint, credential);
new DocumentAnalysisClient(endpoint: string, credential: KeyCredential, options?: DocumentAnalysisClientOptions)

Parametry

endpoint

string

adres URL punktu końcowego wystąpienia usług Azure Cognitive Services

credential
KeyCredential

KluczUtwornia zawierający klucz subskrypcji wystąpienia usług Cognitive Services

options
DocumentAnalysisClientOptions

opcjonalne ustawienia konfigurowania wszystkich metod w kliencie

DocumentAnalysisClient(string, TokenCredential, DocumentAnalysisClientOptions)

DocumentAnalysisClient Utwórz wystąpienie na podstawie punktu końcowego zasobu i tożsamości TokenCredentialplatformy Azure.

Zobacz pakiet, @azure/identity aby uzyskać więcej informacji na temat uwierzytelniania za pomocą usługi Azure Active Directory.

Przykład:

import { DocumentAnalysisClient } 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 DocumentAnalysisClient(endpoint, credential);
new DocumentAnalysisClient(endpoint: string, credential: TokenCredential, options?: DocumentAnalysisClientOptions)

Parametry

endpoint

string

adres URL punktu końcowego wystąpienia usług Azure Cognitive Services

credential
TokenCredential

wystąpienie TokenCredential z @azure/identity pakietu

options
DocumentAnalysisClientOptions

opcjonalne ustawienia konfigurowania wszystkich metod w kliencie

Szczegóły metody

beginAnalyzeDocument(string, FormRecognizerRequestBody, AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu podanego przez jego unikatowy identyfikator.

Ta operacja obsługuje niestandardowe, a także wstępnie utworzone modele. Aby na przykład użyć wstępnie utworzonego modelu faktury, podaj identyfikator modelu "wstępnie utworzoną fakturę" lub użyj prostszego wstępnie utworzonego modelu układu, podaj identyfikator modelu "wstępnie utworzony układ".

Pola utworzone w obiekcie AnalyzeResult zależą od modelu używanego do analizy, a wartości w dowolnych wyodrębnionych dokumentach zależą od typów dokumentów w modelu (jeśli istnieje) i odpowiadających im schematów pól.

Przykłady

Ta metoda obsługuje treść żądania przesyłanego strumieniowo (FormRecognizerRequestBody), takie jak obiekty Node.JS ReadableStream , przeglądarki Blobi ArrayBuffers. Zawartość treści zostanie przekazana do usługi na potrzeby analizy.

import * as fs from "fs";

const file = fs.createReadStream("path/to/receipt.pdf");

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model, but you could use a custom model ID/name instead.
const poller = await client.beginAnalyzeDocument("prebuilt-receipt", file);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)
  entities, // extracted entities in the input's content, which are categorized (ex. "Location" or "Organization")
  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// The fields correspond to the model's document types and their field schemas. Refer to the Form Recognizer
// documentation for information about the document types and field schemas within a model, or use the `getModel`
// operation to view this information programmatically.
console.log("The type of this receipt is:", receipt?.["ReceiptType"]?.value);
function beginAnalyzeDocument(modelId: string, document: FormRecognizerRequestBody, options?: AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>): Promise<AnalysisPoller<AnalyzeResult<AnalyzedDocument>>>

Parametry

modelId

string

unikatowy identyfikator (nazwa) modelu w ramach zasobu tego klienta

document
FormRecognizerRequestBody

element FormRecognizerRequestBody , który zostanie przekazany wraz z żądaniem

options

AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>

opcjonalne ustawienia operacji analizy i narzędzia poller

Zwraca

długotrwała operacja (poller), która ostatecznie przyniesie AnalyzeResult

beginAnalyzeDocument<Result>(DocumentModel<Result>, FormRecognizerRequestBody, AnalyzeDocumentOptions<Result>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu, który ma znany, silnie typizowane schematy dokumentów ( DocumentModel).

Pola utworzone w elemecie AnalyzeResult zależą od modelu używanego do analizy. W języku TypeScript typ wyniku dla tego przeciążenia metody jest wnioskowany z typu danych wejściowych DocumentModel.

Przykłady

Ta metoda obsługuje treść żądania przesyłanego strumieniowo (FormRecognizerRequestBody), takie jak obiekty Node.JS ReadableStream , przeglądarki Blobi ArrayBuffers. Zawartość treści zostanie przekazana do usługi na potrzeby analizy.

Jeśli podane dane wejściowe są ciągiem, będzie on traktowany jako adres URL lokalizacji dokumentu do przeanalizowania. Aby uzyskać więcej informacji, zobacz metodę beginAnalyzeDocumentFromUrl . Użycie tej metody jest preferowane w przypadku korzystania z adresów URL, a obsługa adresów URL jest dostępna tylko w tej metodzie w celu zapewnienia zgodności z poprzednimi wersjami.

import * as fs from "fs";

// See the `prebuilt` folder in the SDK samples (http://aka.ms/azsdk/formrecognizer/js/samples) for examples of
// DocumentModels for known prebuilts.
import { PrebuiltReceiptModel } from "./prebuilt-receipt.ts";

const file = fs.createReadStream("path/to/receipt.pdf");

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model.
const poller = await client.beginAnalyzeDocument(PrebuiltReceiptModel, file);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)

  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// Since we used the strongly-typed PrebuiltReceiptModel object instead of the "prebuilt-receipt" model ID
// string, the fields of the receipt are strongly-typed and have camelCase names (as opposed to PascalCase).
console.log("The type of this receipt is:", receipt.receiptType?.value);
function beginAnalyzeDocument<Result>(model: DocumentModel<Result>, document: FormRecognizerRequestBody, options?: AnalyzeDocumentOptions<Result>): Promise<AnalysisPoller<Result>>

Parametry

model

DocumentModel<Result>

Model DocumentModel reprezentujący model do użycia do analizy i oczekiwanego typu danych wyjściowych

document
FormRecognizerRequestBody

element FormRecognizerRequestBody , który zostanie przekazany wraz z żądaniem

options

AnalyzeDocumentOptions<Result>

opcjonalne ustawienia operacji analizy i narzędzia poller

Zwraca

Promise<AnalysisPoller<Result>>

długotrwała operacja (poller), która ostatecznie utworzy element AnalyzeResult z dokumentami, które mają typ wyniku skojarzony z modelem wejściowym

beginAnalyzeDocumentFromUrl(string, string, AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu podanego przez jego unikatowy identyfikator.

Ta operacja obsługuje niestandardowe, a także wstępnie utworzone modele. Aby na przykład użyć wstępnie utworzonego modelu faktury, podaj identyfikator modelu "wstępnie utworzoną fakturę" lub użyj prostszego wstępnie utworzonego modelu układu, podaj identyfikator modelu "wstępnie utworzony układ".

Pola utworzone w obiekcie AnalyzeResult zależą od modelu używanego do analizy, a wartości w dowolnych wyodrębnionych dokumentach zależą od typów dokumentów w modelu (jeśli istnieje) i odpowiadających im schematów pól.

Przykłady

Ta metoda obsługuje wyodrębnianie danych z pliku pod danym adresem URL. Usługa Form Recognizer podejmie próbę pobrania pliku przy użyciu przesłanego adresu URL, więc adres URL musi być dostępny z publicznego Internetu. Na przykład token SYGNATURy dostępu współdzielonego może służyć do udzielania dostępu do odczytu do obiektu blob w usłudze Azure Storage, a usługa będzie używać zakodowanego w sygnaturze dostępu współdzielonego adresu URL w celu zażądania pliku.

// the URL must be publicly accessible
const url = "<receipt document url>";

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model, but you could use a custom model ID/name instead.
const poller = await client.beginAnalyzeDocument("prebuilt-receipt", url);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)

  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// The fields correspond to the model's document types and their field schemas. Refer to the Form Recognizer
// documentation for information about the document types and field schemas within a model, or use the `getModel`
// operation to view this information programmatically.
console.log("The type of this receipt is:", receipt?.["ReceiptType"]?.value);
function beginAnalyzeDocumentFromUrl(modelId: string, documentUrl: string, options?: AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>): Promise<AnalysisPoller<AnalyzeResult<AnalyzedDocument>>>

Parametry

modelId

string

unikatowy identyfikator (nazwa) modelu w ramach zasobu tego klienta

documentUrl

string

adres URL (ciąg) do dokumentu wejściowego dostępnego z publicznego Internetu

options

AnalyzeDocumentOptions<AnalyzeResult<AnalyzedDocument>>

opcjonalne ustawienia operacji analizy i narzędzia poller

Zwraca

długotrwała operacja (poller), która ostatecznie przyniesie AnalyzeResult

beginAnalyzeDocumentFromUrl<Result>(DocumentModel<Result>, string, AnalyzeDocumentOptions<Result>)

Wyodrębnianie danych z danych wejściowych przy użyciu modelu, który ma znany, silnie typizowane schematy dokumentów ( DocumentModel).

Pola utworzone w elemecie AnalyzeResult zależą od modelu używanego do analizy. W języku TypeScript typ wyniku dla tego przeciążenia metody jest wnioskowany z typu danych wejściowych DocumentModel.

Przykłady

Ta metoda obsługuje wyodrębnianie danych z pliku pod danym adresem URL. Usługa Form Recognizer podejmie próbę pobrania pliku przy użyciu przesłanego adresu URL, więc adres URL musi być dostępny z publicznego Internetu. Na przykład token SYGNATURy dostępu współdzielonego może służyć do udzielania dostępu do odczytu do obiektu blob w usłudze Azure Storage, a usługa będzie używać zakodowanego w sygnaturze dostępu współdzielonego adresu URL w celu zażądania pliku.

// See the `prebuilt` folder in the SDK samples (http://aka.ms/azsdk/formrecognizer/js/samples) for examples of
// DocumentModels for known prebuilts.
import { PrebuiltReceiptModel } from "./prebuilt-receipt.ts";

// the URL must be publicly accessible
const url = "<receipt document url>";

// The model that is passed to the following function call determines the type of the eventual result. In the
// example, we will use the prebuilt receipt model.
const poller = await client.beginAnalyzeDocument(PrebuiltReceiptModel, url);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain lines and words
  tables, // extracted tables, organized into cells that contain their contents
  styles, // text styles (ex. handwriting) that were observed in the document
  keyValuePairs, // extracted pairs of elements  (directed associations from one element in the input to another)

  documents // extracted documents (instances of one of the model's document types and its field schema)
} = await poller.pollUntilDone();

// Extract the fields of the first document. These fields constitute a receipt, because we used the receipt model
const [{ fields: receipt }] = documents;

// Since we used the strongly-typed PrebuiltReceiptModel object instead of the "prebuilt-receipt" model ID
// string, the fields of the receipt are strongly-typed and have camelCase names (as opposed to PascalCase).
console.log("The type of this receipt is:", receipt.receiptType?.value);
function beginAnalyzeDocumentFromUrl<Result>(model: DocumentModel<Result>, documentUrl: string, options?: AnalyzeDocumentOptions<Result>): Promise<AnalysisPoller<Result>>

Parametry

model

DocumentModel<Result>

Model DocumentModel reprezentujący model do użycia do analizy i oczekiwanego typu danych wyjściowych

documentUrl

string

adres URL (ciąg) do dokumentu wejściowego dostępnego z publicznego Internetu

options

AnalyzeDocumentOptions<Result>

opcjonalne ustawienia operacji analizy i narzędzia poller

Zwraca

Promise<AnalysisPoller<Result>>

długotrwała operacja (poller), która ostatecznie przyniesie AnalyzeResult

beginClassifyDocument(string, FormRecognizerRequestBody, ClassifyDocumentOptions)

Klasyfikowanie dokumentu przy użyciu klasyfikatora niestandardowego podanego przez jego identyfikator.

Ta metoda tworzy długotrwałą operację (poller), która ostatecznie spowoduje wygenerowanie elementu AnalyzeResult. Jest to ten sam typ co beginAnalyzeDocument i beginAnalyzeDocumentFromUrl, ale wynik będzie zawierać tylko niewielki podzbiór jego pól. documents Zostanie wypełnione tylko pole i pages pole, a zostaną zwrócone tylko minimalne informacje o stronie. Pole documents będzie zawierać informacje o wszystkich zidentyfikowanych dokumentach i informacjach docType , które zostały sklasyfikowane jako.

Przykład

Ta metoda obsługuje treść żądania przesyłanego strumieniowo (FormRecognizerRequestBody), takie jak obiekty Node.JS ReadableStream , przeglądarki Blobi ArrayBuffers. Zawartość treści zostanie przekazana do usługi na potrzeby analizy.

import * as fs from "fs";

const file = fs.createReadStream("path/to/file.pdf");

const poller = await client.beginClassifyDocument("<classifier ID>", file);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain only basic information for classifiers
  documents // extracted documents and their types
} = await poller.pollUntilDone();

// We'll print the documents and their types
for (const { docType } of documents) {
  console.log("The type of this document is:", docType);
}
function beginClassifyDocument(classifierId: string, document: FormRecognizerRequestBody, options?: ClassifyDocumentOptions): Promise<AnalysisPoller<AnalyzeResult<AnalyzedDocument>>>

Parametry

classifierId

string

identyfikator klasyfikatora niestandardowego do użycia do analizy

document
FormRecognizerRequestBody

dokument do klasyfikowania

options
ClassifyDocumentOptions

opcje operacji klasyfikacji

Zwraca

długotrwała operacja (poller), która ostatecznie przyniesie AnalyzeResult

beginClassifyDocumentFromUrl(string, string, ClassifyDocumentOptions)

Klasyfikowanie dokumentu z adresu URL przy użyciu klasyfikatora niestandardowego podanego przez jego identyfikator.

Ta metoda tworzy długotrwałą operację (poller), która ostatecznie spowoduje wygenerowanie elementu AnalyzeResult. Jest to ten sam typ co beginAnalyzeDocument i beginAnalyzeDocumentFromUrl, ale wynik będzie zawierać tylko niewielki podzbiór jego pól. documents Zostanie wypełnione tylko pole i pages pole, a zostaną zwrócone tylko minimalne informacje o stronie. Pole documents będzie zawierać informacje o wszystkich zidentyfikowanych dokumentach i informacjach docType , które zostały sklasyfikowane jako.

Przykład

Ta metoda obsługuje wyodrębnianie danych z pliku pod danym adresem URL. Usługa Form Recognizer podejmie próbę pobrania pliku przy użyciu przesłanego adresu URL, więc adres URL musi być dostępny z publicznego Internetu. Na przykład token SYGNATURy dostępu współdzielonego może służyć do udzielania dostępu do odczytu do obiektu blob w usłudze Azure Storage, a usługa będzie używać zakodowanego w sygnaturze dostępu współdzielonego adresu URL w celu zażądania pliku.

// the URL must be publicly accessible
const url = "<file url>";

const poller = await client.beginClassifyDocument("<classifier ID>", url);

// The result is a long-running operation (poller), which must itself be polled until the operation completes
const {
  pages, // pages extracted from the document, which contain only basic information for classifiers
  documents // extracted documents and their types
} = await poller.pollUntilDone();

// We'll print the documents and their types
for (const { docType } of documents) {
  console.log("The type of this document is:", docType);
}
function beginClassifyDocumentFromUrl(classifierId: string, documentUrl: string, options?: ClassifyDocumentOptions): Promise<AnalysisPoller<AnalyzeResult<AnalyzedDocument>>>

Parametry

classifierId

string

identyfikator klasyfikatora niestandardowego do użycia do analizy

documentUrl

string

adres URL dokumentu do klasyfikowania

Zwraca