Skip to content

Commit 4715d08

Browse files
authored
Merge pull request #220659 from laujan/48607-update-training-size-limits
update service limits
2 parents 2779786 + 79355ab commit 4715d08

File tree

2 files changed

+125
-47
lines changed

2 files changed

+125
-47
lines changed

articles/applied-ai-services/form-recognizer/concept-custom-template.md

Lines changed: 43 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,29 @@ manager: nitinme
77
ms.service: applied-ai-services
88
ms.subservice: forms-recognizer
99
ms.topic: conceptual
10-
ms.date: 12/02/2022
10+
ms.date: 12/07/2022
1111
ms.author: lajanuar
12-
monikerRange: 'form-recog-3.0.0'
1312
recommendations: false
1413
---
1514

1615
# Custom template document model
1716

18-
**This article applies to:** ![Form Recognizer v3.0 checkmark](media/yes-icon.png) **Form Recognizer v3.0**.
17+
::: moniker range="form-recog-3.0.0"
18+
[!INCLUDE [applies to v3.0](includes/applies-to-v3-0.md)]
19+
::: moniker-end
20+
21+
::: moniker range="form-recog-2.1.0"
22+
[!INCLUDE [applies to v2.1](includes/applies-to-v2-1.md)]
23+
::: moniker-end
1924

2025
Custom template (formerly custom form) is an easy-to-train document model that accurately extracts labeled key-value pairs, selection marks, tables, regions, and signatures from documents. Template models use layout cues to extract values from documents and are suitable to extract fields from highly structured documents with defined visual templates.
2126

27+
::: moniker range="form-recog-3.0.0"
28+
2229
Custom template models share the same labeling format and strategy as custom neural models, with support for more field types and languages.
2330

31+
::: moniker-end
32+
2433
## Model capabilities
2534

2635
Custom template models support key-value pairs, selection marks, tables, signature fields, and selected regions.
@@ -29,11 +38,7 @@ Custom template models support key-value pairs, selection marks, tables, signatu
2938
|:--:|:--:|:--:|:--:|:--:|
3039
| Supported| Supported | Supported | Supported| Supported |
3140

32-
### Build mode
33-
34-
The build custom model operation has added support for the *template* and *neural* custom models. Previous versions of the REST API and SDKs only supported a single build mode that is now known as the *template* mode.
35-
36-
Template models only accept documents that have the same basic page structure—a uniform visual appearance—or the same relative positioning of elements within the document. For more information, *see* [Custom model build mode](concept-custom.md#build-mode)
41+
::: moniker range="form-recog-3.0.0"
3742

3843
## Tabular fields
3944

@@ -44,20 +49,23 @@ With the release of API versions **2022-06-30-preview** and later, custom templ
4449

4550
Tabular fields are also useful when extracting repeating information within a document that isn't recognized as a table. For example, a repeating section of work experiences in a resume can be labeled and extracted as a tabular field.
4651

52+
::: moniker-end
53+
4754
## Dealing with variations
4855

4956
Template models rely on a defined visual template, changes to the template will result in lower accuracy. In those instances, split your training dataset to include at least five samples of each template and train a model for each of the variations. You can then [compose](concept-composed-models.md) the models into a single endpoint. For subtle variations, like digital PDF documents and images, it's best to include at least five examples of each type in the same training dataset.
5057

5158
## Training a model
5259

53-
Template models are available generally [v3.0 API](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-2022-08-31/operations/BuildDocumentModel) and [v2.1 API](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-v2-1/operations/AnalyzeWithCustomForm). If you're starting with a new project or have an existing labeled dataset, work with the v3 API and Form Recognizer Studio to train a custom template model.
60+
::: moniker range="form-recog-3.0.0"
61+
62+
Custom template models are generally available with the [v3.0 API](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-2022-08-31/operations/BuildDocumentModel). If you're starting with a new project or have an existing labeled dataset, use the v3 API with Form Recognizer Studio to train a custom template model.
5463

5564
| Model | REST API | SDK | Label and Test Models|
5665
|--|--|--|--|
5766
| Custom template | [Form Recognizer 3.0 ](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-2022-08-31/operations/AnalyzeDocument)| [Form Recognizer SDK](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true)| [Form Recognizer Studio](https://formrecognizer.appliedai.azure.com/studio)|
58-
| Custom template | [Form Recognizer 2.1 ](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-v2-1/operations/AnalyzeWithCustomForm)| [Form Recognizer SDK](quickstarts/get-started-v2-1-sdk-rest-api.md?pivots=programming-language-python)| [Form Recognizer Sample labeling tool](https://fott-2-1.azurewebsites.net/)|
5967

60-
On the v3 API, the build operation to train model supports a new ```buildMode``` property, to train a custom template model, set the ```buildMode``` to ```template```.
68+
With the v3.0 API, the build operation to train model supports a new ```buildMode``` property, to train a custom template model, set the ```buildMode``` to ```template```.
6169

6270
```REST
6371
https://{endpoint}/formrecognizer/documentModels:build?api-version=2022-08-31
@@ -74,10 +82,34 @@ https://{endpoint}/formrecognizer/documentModels:build?api-version=2022-08-31
7482
}
7583
```
7684

85+
::: moniker-end
86+
87+
::: moniker range="form-recog-2.1.0"
88+
89+
Custom (template) models are generally available with the [v2.1 API](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-v2-1/operations/AnalyzeWithCustomForm).
90+
91+
| Model | REST API | SDK | Label and Test Models|
92+
|--|--|--|--|
93+
| Custom model (template) | [Form Recognizer 2.1 ](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-v2-1/operations/AnalyzeWithCustomForm)| [Form Recognizer SDK](quickstarts/get-started-v2-1-sdk-rest-api.md?pivots=programming-language-python)| [Form Recognizer Sample labeling tool](https://fott-2-1.azurewebsites.net/)|
94+
95+
::: moniker-end
96+
7797
## Next steps
7898

7999
Learn to create and compose custom models:
80100

101+
::: moniker range="form-recog-3.0.0"
102+
81103
> [!div class="nextstepaction"]
82104
> [**Build a custom model**](how-to-guides/build-a-custom-model.md)
83105
> [**Compose custom models**](how-to-guides/compose-custom-models.md)
106+
107+
::: moniker-end
108+
109+
::: moniker range="form-recog-2.1.0"
110+
111+
> [!div class="nextstepaction"]
112+
> [**Build a custom model**](concept-custom.md#build-a-custom-model)
113+
> [**Compose custom models**](concept-composed-models.md#development-options)
114+
115+
::: moniker-end

articles/applied-ai-services/form-recognizer/service-limits.md

Lines changed: 82 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,49 @@ manager: nitinme
88
ms.service: applied-ai-services
99
ms.subservice: forms-recognizer
1010
ms.topic: conceptual
11-
ms.date: 10/20/2022
11+
ms.date: 12/06/2022
1212
ms.author: lajanuar
13-
monikerRange: '>=form-recog-2.1.0'
1413
recommendations: false
1514
---
1615

1716
# Form Recognizer service quotas and limits
1817
<!-- markdownlint-disable MD033 -->
1918

20-
**Applies to:** ![Form Recognizer v2.1 checkmark](media/yes-icon.png) **Form Recognizer v3.0**. ![Form Recognizer v2.1 checkmark](media/yes-icon.png) **Form Recognizer v2.1**.
19+
::: moniker range="form-recog-3.0.0"
20+
[!INCLUDE [applies to v3.0](includes/applies-to-v3-0.md)]
21+
::: moniker-end
2122

22-
* This article contains a quick reference and the **detailed description** of Azure Form Recognizer service Quotas and Limits for all [pricing tiers](https://azure.microsoft.com/pricing/details/form-recognizer/). It also contains some best practices to avoid request throttling.
23+
::: moniker range="form-recog-2.1.0"
24+
[!INCLUDE [applies to v2.1](includes/applies-to-v2-1.md)]
25+
::: moniker-end
2326

24-
* For the usage with [Form Recognizer SDK](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true), [Form Recognizer REST API](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true), [Form Recognizer Studio](quickstarts/try-v3-form-recognizer-studio.md) and [Sample Labeling Tool](https://fott-2-1.azurewebsites.net/):
27+
This article contains both a quick reference and detailed description of Azure Form Recognizer service Quotas and Limits for all [pricing tiers](https://azure.microsoft.com/pricing/details/form-recognizer/). It also contains some best practices to avoid request throttling.
28+
29+
## Model usage
30+
31+
::: moniker range="form-recog-3.0.0"
32+
33+
> [!div class="checklist"]
34+
>
35+
> * [**Form Recognizer SDKs**](quickstarts/get-started-sdks-rest-api.md)
36+
> * [**Form Recognizer REST API**](quickstarts/get-started-sdks-rest-api.md)
37+
> * [**Form Recognizer Studio v3.0**](quickstarts/try-v3-form-recognizer-studio.md)
38+
::: moniker-end
39+
40+
::: moniker range="form-recog-2.1.0"
41+
42+
> [!div class="checklist"]
43+
>
44+
> * [**Form Recognizer SDKs**](quickstarts/get-started-sdks-rest-api.md)
45+
> * [**Form Recognizer REST API**](quickstarts/get-started-sdks-rest-api.md)
46+
> * [**Sample Labeling Tool v2.1**](https://fott-2-1.azurewebsites.net/)
47+
48+
::: moniker-end
2549

2650
|Quota|Free (F0)<sup>1</sup>|Standard (S0)|
2751
|--|--|--|
2852
| **Transactions Per Second limit** | 1 | 15 (default value) |
29-
| Adjustable | No | Yes<sup>2</sup> |
53+
| Adjustable | No | Yes <sup>2</sup> |
3054
| **Max document size** | 4 MB | 500 MB |
3155
| Adjustable | No | No |
3256
| **Max number of pages (Analysis)** | 2 | 2000 |
@@ -42,28 +66,41 @@ recommendations: false
4266

4367
::: moniker range="form-recog-3.0.0"
4468

45-
|Quota|Free (F0)<sup>1</sup>|Standard (S0)|
69+
## Custom model usage
70+
71+
> [!div class="checklist"]
72+
>
73+
> * [**Custom template model**](concept-custom-template.md)
74+
> * [**Custom neural model**](concept-custom-neural.md)
75+
> * [**Composed custom models**](concept-composed-models.md)
76+
77+
|Quota|Free (F0) <sup>1</sup>|Standard (S0)|
4678
|--|--|--|
4779
| **Compose Model limit** | 5 | 200 (default value) |
4880
| Adjustable | No | No |
49-
| **Training dataset size - Template** | 50 MB | 50 MB (default value) |
81+
| **Training dataset size * Neural** | 1 GB <sup>3</sup> | 1 GB (default value) |
5082
| Adjustable | No | No |
51-
| **Training dataset size - Neural** | 1 GB | 1 GB (default value) |
83+
| **Training dataset size * Template** | 50 MB <sup>4</sup> | 50 MB (default value) |
5284
| Adjustable | No | No |
53-
| **Max number of pages (Training) - Template** | 500 | 500 (default value) |
85+
| **Max number of pages (Training) * Template** | 500 | 500 (default value) |
5486
| Adjustable | No | No |
55-
| **Max number of pages (Training) - Neural** | 50,000 | 50,000 (default value) |
87+
| **Max number of pages (Training) * Neural** | 50,000 | 50,000 (default value) |
5688
| Adjustable | No | No |
5789
| **Custom neural model train** | 10 per month | 10 per month |
58-
| Adjustable | No |Yes<sup>3</sup>|
59-
60-
<sup>3</sup> Open a support request to increase the monthly training limit.
90+
| Adjustable | No |Yes <sup>3</sup>|
6191

6292
::: moniker-end
6393

6494
::: moniker range="form-recog-2.1.0"
6595

66-
| Quota | Free (F0)<sup>1</sup> | Standard (S0) |
96+
## Custom model limits
97+
98+
> [!div class="checklist"]
99+
>
100+
> * [**Custom template model**](concept-custom-template.md)
101+
> * [**Composed custom models**](concept-composed-models.md)
102+
103+
| Quota | Free (F0) <sup>1</sup> | Standard (S0) |
67104
|--|--|--|
68105
| **Compose Model limit** | 5 | 100 (default value) |
69106
| Adjustable | No | No |
@@ -74,19 +111,28 @@ recommendations: false
74111

75112
::: moniker-end
76113

77-
<sup>1</sup> For **Free (F0)** pricing tier see also monthly allowances at the [pricing page](https://azure.microsoft.com/pricing/details/form-recognizer/).</br>
78-
<sup>2</sup> See [best practices](#example-of-a-workload-pattern-best-practice), and [adjustment instructions](#create-and-submit-support-request).
114+
::: moniker range=">=form-recog-2.1.0"
115+
116+
> <sup>1</sup> For **Free (F0)** pricing tier see also monthly allowances at the [pricing page](https://azure.microsoft.com/pricing/details/form-recognizer/).</br>
117+
> <sup>2</sup> See [best practices](#example-of-a-workload-pattern-best-practice), and [adjustment instructions(#create-and-submit-support-request).</br>
118+
> <sup>3</sup> Open a support request to increase the monthly training limit.
119+
::: moniker-end
120+
::: moniker range="form-recog-3.0.0"
121+
> <sup>4</sup> This limit applies to all documents found in your training dataset folder prior to any labeling-related updates.
122+
::: moniker-end
79123

80124
## Detailed description, Quota adjustment, and best practices
81125

82-
Before requesting a quota increase (where applicable), ensure that it's necessary. Form Recognizer service uses autoscaling to bring the required computational resources in "on-demand" and at the same time to keep the customer costs low, deprovision unused resources by not maintaining an excessive amount of hardware capacity. If your application receives a Response Code 429 ("Too many requests") while your workload is within the defined limits, the most likely explanation is that the service is scaling up to your demand, but hasn't yet reached the required scale. Thus the service doesn't immediately have enough resources to serve the request. This state is transient and shouldn't last long. For more information, *see* [Quotas and Limits quick reference](#form-recognizer-service-quotas-and-limits))
126+
Before requesting a quota increase (where applicable), ensure that it's necessary. Form Recognizer service uses autoscaling to bring the required computational resources in "on-demand" and at the same time to keep the customer costs low, deprovision unused resources by not maintaining an excessive amount of hardware capacity.
127+
128+
If your application returns Response Code 429 (*Too many requests*) and your workload is within the defined limits: most likely, the service is scaling up to your demand, but hasn't yet reached the required scale. Thus the service doesn't immediately have enough resources to serve the request. This state is transient and shouldn't last long. For more information, *see* [Quotas and Limits quick reference](#form-recognizer-service-quotas-and-limits))
83129

84130
### General best practices to mitigate throttling during autoscaling
85131

86132
To minimize issues related to throttling (Response Code 429), we recommend using the following techniques:
87133

88-
- Implement retry logic in your application
89-
- Avoid sharp changes in the workload. Increase the workload gradually <br/>
134+
* Implement retry logic in your application
135+
* Avoid sharp changes in the workload. Increase the workload gradually <br/>
90136
*Example.* Your application is using Form Recognizer and your current workload is 10 TPS (transactions per second). The next second you increase the load to 40 TPS (that is four times more). The Service immediately starts scaling up to fulfill the new load, but likely it will not be able to do it within a second, so some of the requests will get Response Code 429.
91137

92138
The next sections describe specific cases of adjusting quotas.
@@ -100,7 +146,7 @@ Increasing the Concurrent Request limit does **not** directly affect your costs.
100146

101147
Existing value of Concurrent Request limit parameter is **not** visible via Azure portal, Command-Line tools, or API requests. To verify the existing value, create an Azure Support Request.
102148

103-
If you would like to increase your transactions per second, you can enable auto scaling on your resource. Follow this document to enable auto scaling on your resource - [enable auto scaling](../../cognitive-services/autoscale.md). You can also submit an increase TPS support request.
149+
If you would like to increase your transactions per second, you can enable auto scaling on your resource. Follow this document to enable auto scaling on your resource * [enable auto scaling](../../cognitive-services/autoscale.md). You can also submit an increase TPS support request.
104150

105151
#### Have the required information ready
106152

@@ -119,21 +165,21 @@ If you would like to increase your transactions per second, you can enable auto
119165

120166
Initiate the increase of transactions per second(TPS) limit for your resource by submitting the Support Request:
121167

122-
- Ensure you have the [required information](#have-the-required-information-ready)
123-
- Go to [Azure portal](https://portal.azure.com/)
124-
- Select the Form Recognizer Resource for which you would like to increase the TPS limit
125-
- Select *New support request* (*Support + troubleshooting* group)
126-
- A new window will appear with auto-populated information about your Azure Subscription and Azure Resource
127-
- Enter *Summary* (like "Increase Form Recognizer TPS limit")
128-
- In Problem type,* select "Quota or usage validation"
129-
- Select *Next: Solutions*
130-
- Proceed further with the request creation
131-
- Under the *Details* tab enters the following in the *Description* field:
132-
- a note, that the request is about **Form Recognizer** quota.
133-
- Provide a TPS expectation you would like to scale to meet.
134-
- Azure resource information you [collected](#have-the-required-information-ready).
135-
- Complete entering the required information and select *Create* button in *Review + create* tab
136-
- Note the support request number in Azure portal notifications. You'll be contacted shortly for further processing
168+
* Ensure you have the [required information](#have-the-required-information-ready)
169+
* Go to [Azure portal](https://portal.azure.com/)
170+
* Select the Form Recognizer Resource for which you would like to increase the TPS limit
171+
* Select *New support request* (*Support + troubleshooting* group)
172+
* A new window will appear with auto-populated information about your Azure Subscription and Azure Resource
173+
* Enter *Summary* (like "Increase Form Recognizer TPS limit")
174+
* In Problem type,* select "Quota or usage validation"
175+
* Select *Next: Solutions*
176+
* Proceed further with the request creation
177+
* Under the *Details* tab enters the following in the *Description* field:
178+
* a note, that the request is about **Form Recognizer** quota.
179+
* Provide a TPS expectation you would like to scale to meet.
180+
* Azure resource information you [collected](#have-the-required-information-ready).
181+
* Complete entering the required information and select *Create* button in *Review + create* tab
182+
* Note the support request number in Azure portal notifications. You'll be contacted shortly for further processing
137183

138184
## Example of a workload pattern best practice
139185

0 commit comments

Comments
 (0)