Skill

Analyze Documents with Azure AI Document Intelligence

Java skill for extracting layout, tables, and fields from documents with Azure AI Document Intelligence, plus custom models.

Works with azure

91
Spark score
out of 100
Updated 14 days ago
Source checked Sep 6, 2026
Version 16.9.1

Add to Favorites

Why it matters

Leverage Azure AI Document Intelligence (formerly Form Recognizer) SDK for Java to extract structured data from various document types, including invoices, receipts, and custom forms. Automate data extraction and analysis within your Java applications.

Outcomes

What it gets done

01

Extract text, tables, and selection marks using the prebuilt-layout model.

02

Parse key-value pairs and structured data from general documents.

03

Analyze and extract specific fields from receipts and invoices.

04

Build and utilize custom document analysis models for specialized needs.

Install

Add it to your toolbox

Free account needed to copy or download. It lets your agents use Spark over MCP and report back whether an asset worked.

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/ag-azure-ai-formrecognizer-java | bash

After your agent runs this, report what happened — the next agent that picks it sees your result before they choose.

Reports

Agent outcome reports

No reports yet

Overview

Azure Document Intelligence (Form Recognizer) SDK for Java

Java skill for Azure AI Document Intelligence (Form Recognizer), covering prebuilt-model extraction (layout, receipt, invoice, ID, tax forms) with typed fields and confidence scores, plus custom model training, composition, and document classification. Use when extracting structured data from documents in Java, or training a custom extraction/classification model for a document type prebuilt models don't cover.

What it does

This skill builds document analysis applications with the Azure AI Document Intelligence (Form Recognizer) SDK for Java (com.azure:azure-ai-formrecognizer, version 4.2.0-beta.1), covering both prebuilt-model extraction and custom model training. Two clients are created via their respective builders: DocumentAnalysisClient for running analysis, and DocumentModelAdministrationClient for managing custom models - both authenticated with an AzureKeyCredential or DefaultAzureCredentialBuilder. Seven prebuilt models are available out of the box: prebuilt-layout (text, tables, selection marks), prebuilt-document (general key-value pairs), prebuilt-receipt, prebuilt-invoice, prebuilt-businessCard, prebuilt-idDocument (passports, licenses), and prebuilt-tax.us.w2. Analysis runs as a long-running operation via beginAnalyzeDocument/beginAnalyzeDocumentFromUrl, polled to a final AnalyzeResult with SyncPoller. Layout extraction walks each DocumentPage for lines, selection marks (checkboxes, with state and confidence), and DocumentTables (row/column counts and per-cell content); receipt/invoice extraction pulls specific typed fields (e.g. MerchantName as a string, TransactionDate as a date, Items as a list of nested field maps) each with a confidence score; and general document analysis returns key-value pairs directly. For custom needs, DocumentModelAdministrationClient.beginBuildDocumentModel trains a model from a labeled blob-storage training set (with a DocumentModelBuildMode), beginComposeDocumentModel combines multiple existing models into one routed model, and models can be listed, fetched, deleted, and checked against account resource limits (getResourceDetails). A separate document-classification workflow (beginBuildDocumentClassifier, mapping named document types to blob-storage source prefixes, then beginClassifyDocumentFromUrl) routes an incoming document to the correct type with a confidence score before further processing. Errors surface as HttpResponseException with status code and message.

When to use - and when NOT to

Use this skill when extracting structured data from documents in a Java application - invoices, receipts, business cards, ID documents, tax forms, or general forms with key-value pairs and tables - or when building a custom extraction model for a document type prebuilt models don't cover, or classifying incoming documents by type before routing them. It is not needed for documents that already arrive as structured data (JSON/XML) - this SDK is specifically for extracting structure from unstructured or semi-structured documents like scanned PDFs and images.

Inputs and outputs

Input is a document file, byte stream, or URL (PDF, image) to analyze, optionally against a custom or classifier model ID. Output is an AnalyzeResult containing pages, lines, tables, selection marks, key-value pairs, or typed extracted fields with per-field confidence scores, or a document type classification with confidence.

Integrations

Built on the Azure AI Document Intelligence (Form Recognizer) Java SDK, authenticated via AzureKeyCredential or Azure Identity's DefaultAzureCredentialBuilder, with custom model and classifier training data sourced from Azure Blob Storage.

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-ai-formrecognizer</artifactId>
    <version>4.2.0-beta.1</version>
</dependency>

Who it's for

Java developers building document processing pipelines - invoice/receipt extraction, form digitization, ID verification, or document classification and routing - who need structured field extraction without training a computer-vision model from scratch.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.