Limits for your LUIS model and keys
Important
LUIS will be retired on October 1st 2025 and starting April 1st 2023 you will not be able to create new LUIS resources. We recommend migrating your LUIS applications to conversational language understanding to benefit from continued product support and multilingual capabilities.
LUIS has several limit areas. The first is the model limit, which controls intents, entities, and features in LUIS. The second area is quota limits based on resource type. A third area of limits is the keyboard combination for controlling the LUIS website. A fourth area is the world region mapping between the LUIS authoring website and the LUIS endpoint APIs.
Model limits
If your app exceeds the LUIS model limits, consider using a LUIS dispatch app or using a LUIS container.
Area | Limit |
---|---|
App name | *Default character max |
Applications | 500 applications per Azure authoring resource |
Batch testing | 10 datasets, 1000 utterances per dataset |
Explicit list | 50 per application |
External entities | no limits |
Intents | 500 per application: 499 custom intents, and the required None intent. Dispatch-based application has corresponding 500 dispatch sources. |
List entities | Parent: 50, child: 20,000 items. Canonical name is *default character max. Synonym values have no length restriction. |
machine-learning entities + roles: composite, simple, entity role |
A limit of either 100 parent entities or 330 entities, whichever limit the user hits first. A role counts as an entity for the purpose of this limit. An example is a composite with a simple entity, which has 2 roles is: 1 composite + 1 simple + 2 roles = 4 of the 330 entities. Subentities can be nested up to 5 levels, with a maximum of 20 children per level. |
Model as a feature | Maximum number of models that can be used as a feature to a specific model to be 10 models. The maximum number of phrase lists used as a feature for a specific model to be 10 phrase lists. |
Preview - Dynamic list entities | 2 lists of ~1k per query prediction endpoint request |
Patterns | 500 patterns per application. Maximum length of pattern is 400 characters. 3 Pattern.any entities per pattern Maximum of 2 nested optional texts in pattern |
Pattern.any | 100 per application, 3 pattern.any entities per pattern |
Phrase list | 500 phrase lists. 10 global phrase lists due to the model as a feature limit. Non-interchangeable phrase list has max of 5,000 phrases. Interchangeable phrase list has max of 50,000 phrases. Maximum number of total phrases per application of 500,000 phrases. |
Prebuilt entities | no limit |
Regular expression entities | 20 entities 500 character max. per regular expression entity pattern |
Roles | 300 roles per application. 10 roles per entity |
Utterance | 500 characters If you have text longer than this character limit, you need to segment the utterance prior to input to LUIS and you will receive individual intent responses per segment. There are obvious breaks you can work with, such as punctuation marks and long pauses in speech. |
Utterance examples | 15,000 per application - there is no limit on the number of utterances per intent If you need to train the application with more examples, use a dispatch model approach. You train individual LUIS apps (known as child apps to the parent dispatch app) with one or more intents and then train a dispatch app that samples from each child LUIS app's utterances to direct the prediction request to the correct child app. |
Versions | 100 versions per application |
Version name | 128 characters |
*Default character max is 50 characters.
Name uniqueness
Object names must be unique when compared to other objects of the same level.
Objects | Restrictions |
---|---|
Intent, entity | All intent and entity names must be unique in a version of an app. |
ML entity components | All machine-learning entity components (child entities) must be unique, within that entity for components at the same level. |
Features | All named features, such as phrase lists, must be unique within a version of an app. |
Entity roles | All roles on an entity or entity component must be unique when they are at the same entity level (parent, child, grandchild, etc.). |
Object naming
Do not use the following characters in the following names.
Object | Exclude characters |
---|---|
Intent, entity, and role names | : , $ , & , % , * , ( , ) , + , ? , ~ |
Version name | \ , / , : , ? , & , = , * , + , ( , ) , % , @ , $ , ~ , ! , # |
Resource usage and limits
Language Understand has separate resources, one type for authoring, and one type for querying the prediction endpoint. To learn more about the differences between key types, see Authoring and query prediction endpoint keys in LUIS.
Authoring resource limits
Use the kind, LUIS.Authoring
, when filtering resources in the Azure portal. LUIS limits 500 applications per Azure authoring resource.
Authoring resource | Authoring TPS |
---|---|
F0 - Free tier | 1 million/month, 5/second |
- TPS = Transactions per second
Query prediction resource limits
Use the kind, LUIS
, when filtering resources in the Azure portal.The LUIS query prediction endpoint resource, used on the runtime, is only valid for endpoint queries.
Query Prediction resource | Query TPS |
---|---|
F0 - Free tier | 10 thousand/month, 5/second |
S0 - Standard tier | 50/second |
Sentiment analysis
Sentiment analysis integration, which provides sentiment information, is provided without requiring another Azure resource.
Keyboard controls
Keyboard input | Description |
---|---|
Control+E | switches between tokens and entities on utterances list |
Website sign-in time period
Your sign-in access is for 60 minutes. After this time period, you will get this error. You need to sign in again.