Able to create custom dynamic slot type similar to Alexa's built in slot type
When speaking with Alexa and specifying a clients name for search in our system. Alexa is able to pick up common English names like “Smith”, “John”....etc.
Though as soon as you say something different like “Aitken”, “Hannam”, “Arundel”… It has a close to 0% chance of translating speech to the correct text spelling.
If I load these unique names as slot values in the static interaction model json, it would work very well. However this model has a limit file size of 1.5MB. We have hundreds or millions of variations if we combine all the firms using our software. So likely this is not a good solution anyhow.
The closest I've seen is the built-in slot types like AMAZON.Actors, AMAZON.Artists, AMAZON.FirstNames...etc.
These models were pre-built and does not affect the file size. However we developers have no access to create our own.
On top of that, it would be nice to have a dynamic mapping to the custom slot type. For example let's say we were able to create a slot type called [ClientNames]. We have 6,000 firms using our software, preferrably it would be better to create 6,000 [ClientNames] types. One for each firm, as the NLP processing would be more accurate and relevant to this client.
So when a user speaks an utterance like 'Find client {clientName}'. Since our handler code knows the logged on user let's say with firmId of "100". We can pass it the slot type of [ClientNames:100] type. This will return names matching that specific slot type fot that firm.
I'd imagine this feature would be very useful for a wide variety of search features for developers. As most searches are very domain specific, like looking up street names, businesses, specific fashion items, accessories range....and so on.
Ideally it would be nice to have a built in slot type that doesn't affect JSON file limit, and a dynamic slot mapping feature where you can map the intent request to the right slot type.
Eg, If I had slots like;
ClientNamesFirm100
ClientNamesFirm200
ClientNamesFirm300
On request, we can intercept the slot entry and map it to the relevant slot type to be translated into text.
I've posted a bunch of comments relating to this feature here; https://forums.developer.amazon.com/questions/205839/dynamic-entities-not-working-consistently.html. Scroll down to see replies.
Any help or advice would be appreciated.
Thank you.
Quang
