Announcement: The Alexa Skills Community Is Moving To Stack Overflow

For improved usability and experience, Alexa skills related forum support will be transitioned to Stack Overflow. Effective January 10, 2024, the Amazon Developer Forums will no longer be available. For continued Alexa skills support you can reach out to us on Stack Overflow or via Contact Us.


Steve Quadry avatar image
Steve Quadry asked

Alexa Inconsistencies

Hello, I am about to loose it with the Alexa Skill i have created. I am using a lambda function. The Skill utterance basically takes this format: DoSomethingIntent {DoSomethingVerb} {check shopping list |selectwordsOnly} and DoSomethingIntent {DoSomethingVerb} the {check shopping list |selectwordsOnly} The {DoSomethingVerb} is a custom slot. The {check shopping list |selectwordsOnly} is a literal that takes at most three words. There are replicated utterances for 3 and below. The problem is many times with the given invocation i use, the skill works perfectly! and all of a sudden nothing works!!!! like literally it doesn't recognize the invocation name! What could be the problem.
alexa skills kitdebugging
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

jjaquinta avatar image
jjaquinta answered
I'm not sure I'm following your description. Pasting in the utterance file would help. (Or a link to a pastebin of it.) In general, Alexa performs poorly when you have two slots in one utterance without any static text between them. That could be an issue.
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Galactoise avatar image
Galactoise answered
Are you trying to use anything (invocation or value for one of the slots) that isn't either a real English word, or a very commonly used proper noun? The reason I ask is that from what we can tell, the way the speech matching works is not linear - it doesn't say "Step 1: invocation matches. Step 2: First slot matches. Step 3: final slot matches.". Instead, it seems to be calculating the entire utterance's compatibility (from "Alexa..." all the way to your last word) against everything you have enabled - your skill, other skills, built-in/first-party functionality. It's possible that the positives you're getting are just barely above the requisite confidence level cutoff, and the false negatives are just below it. If you had an ambiguously phonetic invocation name, this would often result in the utterance string in the unknown request card in your alexa app to show an invocation name that isn't yours. We had that problem quite a bit with InsultiBot - when it matched properly, the card would show it as something like "Ask InsultiBot for a compliment", but if it failed to match on a very similar voice input, the card might show something like "Ask in salt a bought for a couple mint". It wasn't that the voice input was THAT different, it was just that Alexa was determining that the user wasn't asking InsultiBot a question since it wasn't close enough, and therefore didn't show the response as being in any way tied to InsultiBot's utterances. We were able to greatly increase our hit rate by changing our invocation word and updating the sample values for our slots. If you paste your utterances and invocation name, as jjaquinta mentioned, it would be easier for us to help.
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.