This content applies to: v4.0 (GA) v3.1 (GA) v3.0 (GA) v2.1 (GA)
Azure AI Document Intelligence is a cloud-based service that uses machine-learning models to extract key/value pairs, text, and tables from your documents. The returned result is a structured JSON output. Document Intelligence use cases include automated data processing, enhanced data-driven strategies, and enriched document search capabilities.
Overview
Are Azure AI Document Intelligence and Azure AI Form Recognizer the same service?
Yes.
Azure AI Document Intelligence and Azure AI Form Recognizer are the same service. The service was renamed from Azure AI Form Recognizer to Azure AI Document Intelligence in July 2023. The service provides the same capabilities and features as before the renaming.
Pricing changes: There are no changes to pricing. The names Cognitive Services and Applied AI Services continue to be used in Azure billing, cost analysis, price lists, and price APIs.
Breaking changes: There are no breaking changes to APIs or client libraries.
Does Document Intelligence integrate with other Microsoft services?
Yes.
Document Intelligence integrates with the following services:
AI capabilities
Can I use Document Intelligence with generative AI for document processing?
Yes.
You can also use a document generative AI solution to chat with your documents (RAG), generate captivating content from those documents, and access Azure OpenAI Service models on your data.
With Azure AI Document Intelligence and Azure OpenAI combined, you can build an enterprise application to seamlessly interact with your documents using natural language. You can easily find answers, gain valuable insights, and generate new and engaging content from existing documents.
You can find more details on the retrieval augmented generation pattern here.
Can Document Intelligence help with semantic chunking within documents for retrieval-augmented generation?
Yes.
Document Intelligence can provide the building blocks to enable semantic chunking. Semantic chunking is a key step in retrieval-augmented generation (RAG) to ensure context dense chunks and relevance improvement.
Document Intelligence provides a layout model that provides a visual decomposition of the document into lines, paragraphs, sections, headers, and footers.
You can then choose to retrieve the results in markdown format, to further chunk the document on section or paragraph boundaries.
For more information, see overview of RAG in Document Intelligence
Document Intelligence Studio
Do I need specific permissions to access Document Intelligence Studio?
Yes.
You need an active Azure account and subscription with at least a Reader role to access Document Intelligence Studio.
For document analysis and prebuilt models, here are the role requirements for user scenarios:
Basic
- Cognitive Services User: You need this role for a Document Intelligence or Azure Cognitive Services multiple-service resource to use Document Intelligence Studio.
Advanced
- Contributor: You need this role to create a resource group or a Document Intelligence resource.
For custom model projects, here are the role requirements for user scenarios:
Basic
Cognitive Services User: You need this role for a Document Intelligence or Cognitive Services multiple-service resource to train a custom model or analyze with trained models.
Storage Blob Data Contributor: You need this role for a storage account to create project and label data.
Advanced
Storage Account Contributor: You need this role for the storage account to set up cross-origin resource sharing (CORS) settings. It's a one-time effort if you reuse the same storage account.
Contributor: You need this role to create a resource group and resources. Contributor or Storage Account Contributor role doesn't give you access to use your Document Intelligence resource or storage account if local (key-based) authentication is disabled. You still need the basic roles (Cognitive Services User and Storage Data Blob Contributor) to use the functions on Document Intelligence Studio.
For more information, see Microsoft Entra built-in roles and the sections about Azure role assignments in the Document Intelligence Studio quickstart.
Can I process documents with more than two pages in Document Intelligence Studio?
Yes, for paid-tier resources.
No, for free-tier resources.
For free-tier (F0) resources, only the first two pages are analyzed whether you're using Document Intelligence Studio, the REST API, or client libraries.
If you want to analyze all pages in a document, change to a paid (S0) resource. In Document Intelligence Studio, select the Settings (gear) button, select the Resources tab, and check the price tier to use for analyzing your documents.
Can I change directories or subscriptions in Document Intelligence Studio?
Yes.
To change a directory in Document Intelligence Studio, select the Settings (gear) button. Under Directory, select the directory from the list, and then select Switch Directory. Sign in again after you switch the directory.
To change a subscription or resource, go to the Resource tab under Settings.
Can I use Document Intelligence Studio with a resource that is configured with a firewall or virtual network?
Yes.
If your Document Intelligence resource is configured with a firewall or virtual network, you need to add the dedicated IP address 20.3.165.95 to the firewall allowlist for your Document Intelligence resource. Some functions in custom projects (for example, autolabel, project management and human in the loop) don't work if the public network access is disabled.
When I upload a file in Document Intelligence Studio by "Fetch from URL" function, can I use a URL from my blob storage?
Yes.
If your Azure blob storage URL includes a SAS token, and is accessible from public networks. You can't use the Fetch function for storage accounts where the key access is disabled or behind a firewall/VNet.
Can I reuse or customize the labeling experience from Document Intelligence Studio and build it into my own application?
Yes.
The labeling experience from Document Intelligence Studio is open sourced in the Toolkit repo.
Are there separate URL endpoints for Document Intelligence sovereign cloud regions?
Yes.
Document Intelligence Studio has separate URL endpoints for sovereign cloud regions:
URL for the Azure US Government cloud (Azure Fairfax): Document Intelligence Studio US Government.
URL Microsoft Azure operated by 21Vianet (Azure China): Document Intelligence Studio China.
App development
Can I develop applications using Azure AI Document Intelligence using the latest development options?
Yes.
Document Intelligence offers the latest development options within the following platforms:
[REST API](/rest/api/aiservices/document-models/analyze-document?view=rest-aiservices-2023-07-31 &preserve-view=true&tabs=HTTP)
Can I migrate my application to the latest version of Document Intelligence?
Yes.
The following table provides links to detailed instructions for migrating to the newest version of Document Intelligence:
Language/API | Migration guide |
---|---|
REST API | v3 |
C#/.NET | 4.0.0 |
Java | 4.0.0 |
JavaScript | 4.0.0 |
Python | 3.2.0 |
Can I specify a range of pages to be analyzed in a document?
Yes.
Use the pages
parameter (supported in v2.1, v3.0, and later versions of the REST API) and specify pages for multiple-page PDF and TIFF documents. Accepted input includes the following ranges:
- Single pages. For example, if you specify
1, 2
, pages 1 and 2 are processed. - Finite ranges. For example, if you specify
2-5
, pages 2 to 5 are processed. - Open-ended ranges. For example, if you specify
5-
, all the pages from page 5 are processed. If you specify-10
, pages 1 to 10 are processed.
You can mix these parameters together, and ranges can overlap. For example, if you specify -5, 1, 3, 5-10
, pages 1 to 10 are processed.
The service accepts the request if it can process at least one page of the document. For example, using 5-100
on a five-page document is a valid input that means page 5 is processed.
If you don't provide a page range, the entire document is processed.
Do you recommend using Document Intelligence Studio rather than the FOTT Sample Labeling tool for my project?
Yes.
We recommend Document Intelligence Studio most of the time because it can reduce your time for configuring Document Intelligence resources and storage services.
Only consider using the Form Testing Tool (FOTT) for the following scenarios:
Your data must remain within a single machine. Use the FOTT Sample Labeling tool and a Document Intelligence container.
Your project is highly dependent on Document Intelligence V2.1 and you want to keep using the v2.1 APIs.
Are there best practices to mitigate throttling?
Yes.
Document Intelligence uses autoscaling to provide the required computational resources on demand, while keeping customer costs low. To mitigate throttling during autoscaling, we recommend the following approach:
Implement retry logic in your application.
If you find that you're being throttled on the number of
POST
requests, consider adding a delay between the requests.Increase the workload gradually. Avoid sharp changes.
Create a support request to increase transactions per second (TPS) limit.
Learn more about Document Intelligence service quotas and limits.
Custom models
Can I improve an estimated accuracy score for a custom model?
Yes.
Variances in the visual structure of your documents can influence the accuracy of a model. Here are some tips:
Include all variations of a document in the training dataset. Variations include different formats; for example, digital versus scanned PDFs.
Separate visually distinct document types and train different models.
Make sure that you don't have extraneous labels.
For signature and region labeling, don't include the surrounding text.
For more information, see Accuracy and confidence scores.
Can I retrain a custom model?
No.
Document Intelligence doesn't have an explicit retrain operation. Each train operation generates a new model.
If you find that your model needs to retrain, you can add more samples to your training dataset and train a new model.
You can also create a new model to compose with your original model as follows:
Create a dataset for your new template.
Label and train a new model.
Validate that the new model performs well for your specific document types.
Compose your new model with the existing model into a single endpoint. Document Intelligence can then determine the best model for each document to be analyzed.
For more information, see composed models.
Can I move my trained models from one environment (like beta) to another (like production)?
Yes.
You can use the Copy API to copy custom models from one Document Intelligence account into others that exist in any supported geographical region. For detailed instructions, see Disaster recovery.
The copy operation is limited to copying models within the specific cloud environment where you trained the model. For instance, copying models from the public cloud to the Azure Government cloud isn't supported.
Am I charged when training a custom models?
Yes.
For v4.0 11-30-2024 (GA)
custom neural models can be trained for free for a maximum of 10 hours. Whether you're training a single model for the 10 hours, or training multiple models for the total of 10 hours, you aren't charged for the first 10 hours. After using up the free 10 hours, you're automatically charged by the extra training hour. For details on the prices, refer to the pricing page. This new paid training feature enables training models for an extended duration to process larger documents. For more information on this paid training feature, check custom neural model billing section.
For v3.0 2022-08-31
or v3.1 2023-07-31
, custom neural models can be trained for free for a maximum of 20 training sessions, with each session capped at 30 minutes of training duration. Once you use up all of the 20 training sessions, you can submit Azure support ticket to increase the training session limit. To increase the limit, two training sessions are considered as one training hour, and you're charged per two sessions / one training hour. For details on the prices, refer to the [pricing page]. For more information on ways to increase the limit, check custom neural model billing section. For v3.0
and v3.1
, paid training feature is unavailable. Paid training feature for custom neural model is only available on v4.0
.
Storage account
Is there an expiry time for the shared access signature (SAS) token that I for my storage account authentication?
Yes.
When you create a shared access signature (SAS), the default duration is 48 hours. After 48 hours, you need to create a new token.
Consider setting a longer duration period for the time that you're using your storage account with Document Intelligence.
Can Document Intelligence access data in my storage account if it is behind a virtual network or firewall?
No, not directly.
Document Intelligence can't access your storage account if it's protected by a virtual network or firewall.
However, private Azure storage account access and authentication support managed identities for Azure resources. When you use a managed identity, the Document Intelligence service can access your storage account by using an assigned credential.
If you intend to analyze your private storage account data by using FOTT, you must deploy the tool behind the virtual network or firewall.
Learn how to create and use a managed identity for your Document Intelligence resource.
Containers
Is there a difference between disconnected and connected containers?
Yes.
Although the model capabilities are the same for connected and disconnected containers, the billing and connectivity methods differ:
Connected containers send billing information to Azure by using a Document Intelligence resource on your Azure account. With connected containers, internet connectivity is required to send billing information to Azure. Document Intelligence connected containers send billing information to Azure by using a Document Intelligence resource on your Azure account. Connected containers don't send customer data, such as the image or text that's being analyzed, to Microsoft. For an example of the information that connected containers send to Microsoft for billing, see the Azure AI container FAQ.
Disconnected containers enable you to use APIs that are disconnected from the internet. Billing information isn't sent via the internet. Instead, Charges are based on a purchased commitment tier. Currently, disconnected container usage is available for Document Intelligence custom and invoice models.
Can I use local storage for the Document Intelligence Sample Labeling Tool (FOTT) container?
Yes.
FOTT has a version that uses local storage. The version needs to be installed on a Windows machine. You can install it from this location.
On the project page, specify the label folder URI as /shared or /shared/sub-dir if your labeling files are in a subdirectory. All other Document Intelligence Sample Labeling Tool behavior is the same as the hosted service.
Is there a best practice for scaling up?
Yes.
For asynchronous calls, you can run multiple containers with shared storage. The container that's processing the POST
analyze call stores the output in the storage. Then, any other container can fetch the results from the storage and serve the GET
calls. The request ID isn't tied to a container.
For synchronous calls, you can run multiple containers, but only one container serves a request. Because it's a blocking call, any container from the pool can serve the request and send the response. Here, only one container is tied to a request at a time, and no polling is required.
Can I set up containers with shared storage?
Yes.
The containers use the Mounts: Shared
property while starting up for specifying the shared storage to store the processing files. To see the use of this property, refer to the containers documentation.
Security and privacy
Does Document Intelligence store my data?
Yes, briefly.
For all features, Document Intelligence temporarily stores data and results in Azure Storage in the same region as the request. Your data is then deleted within 24 hours from the time that you submit an analyze request.
Learn more about data, privacy, and security for Document Intelligence.
For trained custom models, the interim outputs after analysis and labeling are stored in the same Azure Storage location where you store your training data. The trained custom models are stored in Azure Storage in the same region, and are logically isolated with your Azure subscription and API credentials.
More help and support
Are there other resources available to provide solutions to Azure AI Document Intelligence questions?
Yes.
Microsoft Q & A is the home for technical questions and answers at Microsoft. You can filter queries that are specific to Document Intelligence.
Can I provide direct feedback if the service doesn't recognize specific text, or recognizes it incorrectly, when I'm labeling documents?
Yes.
We continually update and improve the Document Intelligence models. You can email the Document Intelligence team. If possible, share a sample document with the issue highlighted.