azure-ai-formrecognizer
Microsoft Azure Form Recognizer Client Library for Python
What it is and what it does
Azure Form Recognizer is a Python client library for Microsoft's Document Intelligence cloud service, which uses machine learning to extract structured data from documents. It provides both prebuilt models for common document types (receipts, invoices, business cards, ID documents, tax forms) and the ability to train custom models on your own data. The library handles layout extraction (words, selection marks, tables), key-value pair analysis, document classification, and optional add-ons like barcode/QR code detection and formula extraction.
The package wraps Azure's REST API and requires an active Azure subscription with a Form Recognizer resource. It supports multiple service API versions (2.0, 2.1, 2022-08-31, 2023-07-31), with version 3.3.3 defaulting to 2023-07-31. Authentication is handled via API key or Azure Active Directory credentials. The library is production-stable, actively maintained, and has no reported security vulnerabilities.
Use it for:
- Extract structured data from receipts and invoices for expense tracking or accounting automation.
- Build a custom model to extract specific fields from domain-specific documents (contracts, medical forms, etc.).
- Classify incoming documents by type before routing them to appropriate processing pipelines.
- Extract text and layout information from scanned or PDF documents for downstream NLP or indexing.
- Detect and extract barcodes or QR codes embedded in documents as part of a larger workflow.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Extracts text, structure, and key-value pairs from documents using Azure's cloud-based machine learning models, supporting both prebuilt document types and custom trained models.
Yes, if you have an Azure subscription and need to extract structured data from documents at scale. The library is production-stable, actively maintained, has no known vulnerabilities, and integrates cleanly with the broader Azure SDK ecosystem. Install only if you are committed to using Azure's Document Intelligence service; it is not a standalone solution and requires cloud resources and API credentials.
Install
azure-ai-formrecognizer on PyPI
pip
pip install azure-ai-formrecognizeruv
uv add azure-ai-formrecognizerpoetry
poetry add azure-ai-formrecognizerInstalling azure-ai-formrecognizer
Before you install
Low friction installation with a pure Python wheel. Actively maintained as of 2026-08-14 with no known vulnerabilities. Depends on azure-core, msrest, azure-common, and typing-extensions—all standard Azure SDK components.
License in practice
MIT License permits commercial and private use with minimal restrictions, making it suitable for most production scenarios.
Quickstart
pip install azure-ai-formrecognizer
from azure.core.credentials import AzureKeyCredential
from azure.ai.formrecognizer import DocumentAnalysisClient
endpoint = "https://<resource>.cognitiveservices.azure.com/"
credential = AzureKeyCredential("<api_key>")
client = DocumentAnalysisClient(endpoint, credential)
result = client.begin_analyze_document_from_url("prebuilt-receipt", url).result()
Requires an Azure subscription and a Form Recognizer or Cognitive Services resource with endpoint and API key.
Verify before relying
- Whether prebuilt models cover all document types your use case requires (receipts, invoices, business cards, ID documents, W-2 tax forms mentioned but completeness unclear).
- Performance characteristics and latency for large-batch document processing.
- Exact pricing and cost implications of using different API versions (2023-07-31 default vs. older versions).
Package facts
| License | MIT License (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — azure-core, msrest, azure-common, typing-extensions |
| Maintenance | actively maintained — 857 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,897,067/month — #3,451 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: azure_ai_formrecognizer-3.3.3-py3-none-any.whl
Keywords: azure, form recognizer, cognitive services, document analyzer, document analysis, applied ai, azure sdk
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
azure-ai-documentintelligencePython client for Azure AI Document…
permissive · top 5,000 on PyPI
azure-ai-textanalyticsProvides Python bindings to Azure's cloud-based…
permissive · top 15,000 on PyPI
azure-ai-translation-documentTranslates documents stored in Azure Blob…
permissive · top 15,000 on PyPI
azure-ai-contentsafetyDetects harmful content in text and images by…
permissive · top 5,000 on PyPI
azure-search-documentsClient library for querying, indexing, and…
unclear · top 5,000 on PyPI
azure-ai-language-questionansweringPython client library for Azure's Question…
permissive · top 15,000 on PyPI
azure-ai-vision-imageanalysisCalls Azure's Computer Vision service to…
permissive · top 15,000 on PyPI
azure-ai-contentunderstandingExtracts structured content from documents,…
unclear · top 5,000 on PyPI
azure-ai-translation-textProvides a Python client for Azure's neural…
unclear · top 15,000 on PyPI
azure-ai-language-conversationsA Python client library for Azure…
permissive · top 15,000 on PyPI