DocumentAnalysisClient Classe
- java.
lang. Object - com.
azure. ai. formrecognizer. documentanalysis. DocumentAnalysisClient
- com.
public final class DocumentAnalysisClient
Essa classe fornece um cliente síncrono para se conectar ao Reconhecimento de Formulários Serviço Cognitivo do Azure.
Esse cliente fornece métodos síncronos para executar:
- Análise de Documento Personalizada: classificação, extração e análise de dados de formulários e documentos específicos para dados comerciais distintos e casos de uso. Use o modelo treinado personalizado passando sua modelId para o com.azure.ai.formrecognizer.documentanalysis.DocumentAnalysisClient#beginAnalyzeDocument(String, BinaryData) método .
- Análise Geral de Documentos: extraia texto, tabelas, estrutura e pares chave-valor. Use o modelo de documento geral fornecido pelo serviço Reconhecimento de Formulários passando modelId="rebuilt-document" para o com.azure.ai.formrecognizer.documentanalysis.DocumentAnalysisClient#beginAnalyzeDocument(String, BinaryData) método .
- Análise de Modelo Predefinida: analisar recibos, cartões de visita, faturas, IDs, W2's e outros documentos com supported prebuilt models. Use the prebuilt receipt model provided by passing modelId="prebuilt-receipt" into the com.azure.ai.formrecognizer.documentanalysis.DocumentAnalysisClient#beginAnalyzeDocument(String, BinaryData) method.
- Análise de Layout: extraia texto, marcas de seleção e estruturas de tabelas, juntamente com suas coordenadas de caixa delimitadora, de formulários e documentos. Use o modelo de análise de layout fornecido pelo serviço passando modelId="prebuilt-layout" para o com.azure.ai.formrecognizer.documentanalysis.DocumentAnalysisClient#beginAnalyzeDocument(String, BinaryData) método .
- Sondagem e retornos de chamada: inclui mecanismos para sondar o serviço para marcar o status de uma operação de análise ou registrar retornos de chamada para receber notificações quando a análise for concluída.
Esse cliente também fornece métodos diferentes com base em entradas de uma URL e entradas de um fluxo.
Nota: Esse cliente só dá V2022_08_31 suporte e é mais recente. Para usar uma versão FormRecognizerClient de serviço mais antiga e FormTrainingClient.
Os clientes de serviço são o ponto de interação para os desenvolvedores usarem o Reconhecimento de Formulários do Azure. DocumentAnalysisClient é o cliente de serviço síncrono e DocumentAnalysisAsyncClient é o cliente de serviço assíncrono. Os exemplos mostrados neste documento usam um objeto de credencial chamado DefaultAzureCredential para autenticação, que é apropriado para a maioria dos cenários, incluindo ambientes locais de desenvolvimento e produção. Além disso, recomendamos usar a identidade gerenciada para autenticação em ambientes de produção. Você pode encontrar mais informações sobre diferentes maneiras de autenticação e seus tipos de credencial correspondentes na documentação da Identidade do Azure".
Exemplo: Construir um DocumentAnalysisAsyncClient com DefaultAzureCredential
O exemplo de código a seguir demonstra a criação de um DocumentAnalysisClient, usando o 'DefaultAzureCredentialBuilder' para configurá-lo.
DocumentAnalysisClient documentAnalysisClient = new DocumentAnalysisClientBuilder()
.endpoint("{endpoint}")
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
Além disso, consulte o exemplo de código abaixo a ser usado AzureKeyCredential para a criação do cliente.
DocumentAnalysisClient documentAnalysisClient = new DocumentAnalysisClientBuilder()
.credential(new AzureKeyCredential("{key}"))
.endpoint("{endpoint}")
.buildClient();
Resumo do método
Modificador e tipo | Método e descrição |
---|---|
Sync |
beginAnalyzeDocument(String modelId, BinaryData document)
Analisa dados de documentos usando o OCR (reconhecimento óptico de caracteres) usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado. |
Sync |
beginAnalyzeDocument(String modelId, BinaryData document, AnalyzeDocumentOptions analyzeDocumentOptions, Context context)
Analisa dados de documentos com OCR (reconhecimento óptico de caracteres) e valores semânticos de um determinado documento usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado. |
Sync |
beginAnalyzeDocumentFromUrl(String modelId, String documentUrl)
Analisa dados de documentos com OCR (reconhecimento óptico de caracteres) e valores semânticos de um determinado documento usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado. |
Sync |
beginAnalyzeDocumentFromUrl(String modelId, String documentUrl, AnalyzeDocumentOptions analyzeDocumentOptions, Context context)
Analisa dados de documentos com OCR (reconhecimento óptico de caracteres) e valores semânticos de um determinado documento usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado. |
Sync |
beginClassifyDocument(String classifierId, BinaryData document)
Classifique um determinado documento usando um classificador de documento. |
Sync |
beginClassifyDocument(String classifierId, BinaryData document, Context context)
Classifique um determinado documento usando um classificador de documento. |
Sync |
beginClassifyDocumentFromUrl(String classifierId, String documentUrl)
Classifique um determinado documento usando um classificador de documento. |
Sync |
beginClassifyDocumentFromUrl(String classifierId, String documentUrl, Context context)
Classifique um determinado documento usando um classificador de documento. |
Métodos herdados de java.lang.Object
Detalhes do método
beginAnalyzeDocument
public SyncPoller
Analisa dados de documentos usando o OCR (reconhecimento óptico de caracteres) usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado.
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte de cancelamento.
Exemplo de código
File document = new File("{local/file_path/fileName.jpg}");
String modelId = "{custom_trained_model_id}";
byte[] fileContent = Files.readAllBytes(document.toPath());
documentAnalysisClient.beginAnalyzeDocument(modelId, BinaryData.fromBytes(fileContent))
.getFinalResult()
.getDocuments().stream()
.map(AnalyzedDocument::getFields)
.forEach(documentFieldMap -> documentFieldMap.forEach((key, documentField) -> {
System.out.printf("Field text: %s%n", key);
System.out.printf("Field value data content: %s%n", documentField.getContent());
System.out.printf("Confidence score: %.2f%n", documentField.getConfidence());
}));
}
Parameters:
Returns:
beginAnalyzeDocument
public SyncPoller
Analisa dados de documentos com OCR (reconhecimento óptico de caracteres) e valores semânticos de um determinado documento usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado.
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte de cancelamento.
Exemplo de código
Analise um documento com opções configuráveis.
File document = new File("{local/file_path/fileName.jpg}");
String modelId = "{custom_trained_model_id}";
byte[] fileContent = Files.readAllBytes(document.toPath());
documentAnalysisClient.beginAnalyzeDocument(modelId, BinaryData.fromBytes(fileContent),
new AnalyzeDocumentOptions().setPages(Arrays.asList("1", "3")), Context.NONE)
.getFinalResult()
.getDocuments().stream()
.map(AnalyzedDocument::getFields)
.forEach(documentFieldMap -> documentFieldMap.forEach((key, documentField) -> {
System.out.printf("Field text: %s%n", key);
System.out.printf("Field value data content: %s%n", documentField.getContent());
System.out.printf("Confidence score: %.2f%n", documentField.getConfidence());
}));
Parameters:
Returns:
beginAnalyzeDocumentFromUrl
public SyncPoller
Analisa dados de documentos com OCR (reconhecimento óptico de caracteres) e valores semânticos de um determinado documento usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado.
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte ao cancelamento
Exemplo de código
Analise um documento usando a URL do documento.
String documentUrl = "{document_url}";
String modelId = "{custom_trained_model_id}";
documentAnalysisClient.beginAnalyzeDocumentFromUrl(modelId, documentUrl).getFinalResult()
.getDocuments().stream()
.map(AnalyzedDocument::getFields)
.forEach(documentFieldMap -> documentFieldMap.forEach((key, documentField) -> {
System.out.printf("Field text: %s%n", key);
System.out.printf("Field value data content: %s%n", documentField.getContent());
System.out.printf("Confidence score: %.2f%n", documentField.getConfidence());
}));
Parameters:
Returns:
beginAnalyzeDocumentFromUrl
public SyncPoller
Analisa dados de documentos com OCR (reconhecimento óptico de caracteres) e valores semânticos de um determinado documento usando qualquer um dos modelos predefinidos ou um modelo de análise personalizado.
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte ao cancelamento
Exemplo de código
Analise um documento usando a URL do documento com opções configuráveis.
String documentUrl = "{document_url}";
String modelId = "{custom_trained_model_id}";
documentAnalysisClient.beginAnalyzeDocumentFromUrl(modelId, documentUrl).getFinalResult()
.getDocuments().stream()
.map(AnalyzedDocument::getFields)
.forEach(documentFieldMap -> documentFieldMap.forEach((key, documentField) -> {
System.out.printf("Field text: %s%n", key);
System.out.printf("Field value data content: %s%n", documentField.getContent());
System.out.printf("Confidence score: %.2f%n", documentField.getConfidence());
}));
Parameters:
Returns:
beginClassifyDocument
public SyncPoller
Classifique um determinado documento usando um classificador de documento. Para obter mais informações sobre como criar um modelo de classificador personalizado, consulte
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte de cancelamento.
Exemplo de código
File document = new File("{local/file_path/fileName.jpg}");
String classifierId = "{custom_trained_classifier_id}";
byte[] fileContent = Files.readAllBytes(document.toPath());
documentAnalysisClient.beginClassifyDocument(classifierId, BinaryData.fromBytes(fileContent))
.getFinalResult()
.getDocuments()
.forEach(analyzedDocument -> System.out.printf("Doc Type: %s%n", analyzedDocument.getDocType()));
Parameters:
Returns:
beginClassifyDocument
public SyncPoller
Classifique um determinado documento usando um classificador de documento. Para obter mais informações sobre como criar um modelo de classificador personalizado, consulte
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte de cancelamento.
Exemplo de código
File document = new File("{local/file_path/fileName.jpg}");
String classifierId = "{custom_trained_classifier_id}";
byte[] fileContent = Files.readAllBytes(document.toPath());
documentAnalysisClient.beginClassifyDocument(classifierId, BinaryData.fromBytes(fileContent), Context.NONE)
.getFinalResult()
.getDocuments()
.forEach(analyzedDocument -> System.out.printf("Doc Type: %s%n", analyzedDocument.getDocType()));
Parameters:
Returns:
beginClassifyDocumentFromUrl
public SyncPoller
Classifique um determinado documento usando um classificador de documento. Para obter mais informações sobre como criar um modelo de classificador personalizado, consulte
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte ao cancelamento
Exemplo de código
Analise um documento usando a URL do documento com opções configuráveis.
String documentUrl = "{file_source_url}";
String classifierId = "{custom_trained_classifier_id}";
documentAnalysisClient.beginClassifyDocumentFromUrl(classifierId, documentUrl)
.getFinalResult()
.getDocuments()
.forEach(analyzedDocument -> System.out.printf("Doc Type: %s%n", analyzedDocument.getDocType()));
Parameters:
Returns:
beginClassifyDocumentFromUrl
public SyncPoller
Classifique um determinado documento usando um classificador de documento. Para obter mais informações sobre como criar um modelo de classificador personalizado, consulte
O serviço não dá suporte ao cancelamento da operação de execução prolongada e retorna com uma mensagem de erro indicando ausência de suporte ao cancelamento
Exemplo de código
Analise um documento usando a URL do documento com opções configuráveis.
String documentUrl = "{file_source_url}";
String classifierId = "{custom_trained_classifier_id}";
documentAnalysisClient.beginClassifyDocumentFromUrl(classifierId, documentUrl, Context.NONE)
.getFinalResult()
.getDocuments()
.forEach(analyzedDocument -> System.out.printf("Doc Type: %s%n", analyzedDocument.getDocType()));
Parameters:
Returns:
Aplica-se a
Azure SDK for Java