Imagine you are creating a skill where a user can ask Alexa for a recommendation for a pet based on a size preference. The dialog may look something like:

USER: ask pet match to find me a big dog.
ALEXA: The Great Dane is an example of a big dog.

In this case, your skill would accept the word big as a slot value. Other values may include: small and medium. Your skill captures the word “big” as the slot value and passes it on to your AWS Lambda function, so your skill can respond with “The Great Dane is an example of a big dog.”

A Bad Example

Now, what would happen if the user said, “ask pet match to find me a large dog.” As humans, we know that large means almost the same thing as big. Your current skill, however, cannot differentiate between these inputs.

In this lesson, you will learn how to address problems like the one above by creating synonyms for your slot values. Synonyms allow a user to speak in a way that makes sense for them, while providing a means for your skill to correctly interpret the user’s input.

This course assumes you are comfortable making Alexa Skills with the Alexa Developer Console and AWS Lambda. If you’re not, start with our Learn Alexa course and come back when you’re ready!


In the video on the right, you can see the user struggling to get the desired response from the skill, despite using a legitimate synonym, large, instead of the expected value big.

Take this course for free

Mini Info Outline Icon
By signing up for Codecademy, you agree to Codecademy's Terms of Service & Privacy Policy.

Or sign up using:

Already have an account?