Configuring your application

Configuring your application is done by creating sample utterances annotated in the Speechly Annotation Language (SAL).

Speechly is a tool for building complex voice user interfaces. In order to build a voice based user interface, your application needs to understand what is being said. Instead of hardcoding commands and responses to these commands, Speechly is given example utterances, which are annotated using our unique Speechly Annotation Language (SAL).

A figure explaining one utterance with its intent and entities tagged by using Speechly Annotation Language
An utterance annotated using the Speechly Annotation Language.

Intents and entities

For each example utterance, an intent and one or more entities need to be annotated.

Whether a user says, “One pizza Margherita, please” or “I’d like to have one pizza Margherita,” the intent there is the same – to get some pizza – but the way it is said differs quite a lot. That’s why we have to provide our model with examples of how the intent of ordering pizza may be expressed.

Entities can be thought of as modifiers for the intent. The utterances, “One pizza Margherita, please” and “I’d like to have one pizza Diavola,” express the same intent – that of ordering pizza – but they have one significant difference: the particular pizza the customer wants. So, the actual pizza (i.e., “pizza Margherita” and “pizza Diavola”) can be thought of modifying the order intent.

Because of the machine learning algorithms we employ, you don’t have to write every single possible utterance to your examples. That’s precisely why they are called examples. On the other hand, the more examples the model is provided with, the better it works. It’s impossible to say the exact number of example utterances a model should be given, but on a general note, the bigger the sample size, the better. Collecting real-life data from users and updating the model periodically is also recommended.

Your model can have as many intents and entities as needed.

Allowed characters

Intent and entity names can only contain letters (a-z) in lower and upper case, numbers, and characters - and _.

Annotating in the Speechly Dashboard

Screenshot from the Speechly Dashboard SLU Examples configuration view
The SLU Examples configuration view.

Annotation is a major part of your application, and you should spend some time building and developing your examples. When you add a new intent or entity, make sure to add it to the correct list on the right-hand-side in the SLU example editor. This helps you spot typos in your configuration.

The Speechly Annotation Language is pretty expressive, and we only covered the bare minimum here. Please head on to Speechly Annotation Language (SAL) to learn more!


Profile image for karoliina-louhema

Last updated by karoliina-louhema on September 17, 2020 at 13:46 +0300

Found an error on our documentation? Please file an issue or make a pull request