An mNLU model is identified by a UUID and is used to annotate a piece of text or whole documents. Annotations include intents and entity mentions.
Input text can be supplied in the form of:
mNLU annotates input texts with 2 types of annotations:
When working with longer input texts, the distinction between intents and entities become less apparent. This is because oftentimes an intent like "Politics" that defines the meaning for a whole short text phrase may define the meaning for just a section of a large text body, like for a paragraph or caption. Because of this, mNLU treats both intents and entities as special cases of more general annotations.
The GET and POST /annotate endpoints are synchronous.
The REST client receives final annotations in their HTTP response.
The size of inputs is restricted by the API to prevent long HTTP responses.
Intents and entities can be created and manipulated via API. For each intent, a set of positive textual examples is passed in and can be edited via API.
For each entity, a set of entity examples can be provided in two forms.
Training is launched automatically after training examples got updated by the API. The mNLU model ID remains constant across updates and trainings. The underlying physical annotator models that back the mNLU model get swapped for their newer versions as their respective trainings complete.
The mNLU API does not expose details about the underlying models but does provide the status of the mNLU model
which is either ready, training, empty, or error.
On training errors, the last functional version of the model remains active.