Limits
Rate limits
For security reasons, you are limited to a maximum of requests when using Mix services. This is to prevent Distributed Denial of Service (DDOS) attacks. When the limit is reached, a rate limit error is returned.
The following table describes the default rate limits for Mix services.
Service | Limits |
---|---|
Authorization | 50 requests/minute per IP address |
ASR runtime | 2 requests/second per IP address 2 requests/second per App ID |
ASR training | 2 requests/second per IP address 2 requests/second per App ID |
NLU runtime | 2 requests/second per IP address 2 requests/second per App ID |
DLG runtime | 3 requests/second per App ID |
TTS runtime | 2 requests/second per IP address 2 requests/second per App ID |
Event logs | 10 requests/second per consumer group |
gRPC rate limit error
When a rate limit is exceeded, the rate limiting service returns the gRPC status code UNAVAILABLE
as well as the following header in the gRPC metadata:
x-envoy-ratelimited: true
Recover from rate-limit errors
Nuance recommends using the exponential backoff strategy to recover from rate-limit errors, where your application retries the requests and increases the wait time between retries exponentially.
For example:
- Wait 1 second and retry
- Wait 2 seconds and retry
- Wait 4 seconds and retry
- Wait 8 seconds and retry
- Wait 16 seconds and retry
Data limits
The following table describes the current data limits for Mix projects:
Data | Limit |
---|---|
Number of samples sentences in your model1 | 60,000 |
Characters per sample | 500 |
Number of literals per entity1 | 55,000 |
Number of bytes per entity literal value | 256 (see Entity literal values) |
Number of entity literals per model1 | 100,000 |
1. Please contact Nuance if you need to increase limit values for an application.
The limits are assessed when you build a project. Therefore, for all data except characters per sample, even if you reach one or more of these limits, you can continue to add them, work in your model, train the model, import data from the Discover tab, and make new configurations. However, you will not be able to build the model if it has exceeded one or more of these limits.
For characters per sample, you will not be able to add the sample if you exceed the character count limit. In addition, if you import a TRSX file that includes a sample that exceeds the character count, the sample will not be imported.
Entity literal values
An entity literal value can include a maximum of 256 bytes. For languages such as English, where a single byte is required to encode one character, this means that the value can include a maximum of 256 characters. For other languages, such as Japanese and Korean, two or more bytes are required to encode some characters; in these cases, the maximum number of characters available will be lower.
Importing data into your project
Importing data into your project, whether by importing a prebuilt domain or uploading a TRSX domain file, is an additive operation: any new data will be added, and each duplicate sample that exists in both your current project and in the imported prebuilt domain will be counted.
Depending on your project and the size of the data you are importing, it's good practice to check the Details tab, under the Content section, to keep track of values for your project.