I'm building an Alexa skill, and I have a slot called 'Name' where I want to capture a name. I want to find in the database the matching name. But let's say that I have in the database a name "Alex Baumgartner". But Alexa returns in a slot "Alex Baugartner".

Obviously, it doesn't match exactly but it matches with 0.95 probability. How can I check this probability or in some way verify that the voice input matches with the database record?

Is there a service online, a tool or algorithm for checking the probability of matching words that I should use, or is there another approach?

  • 1
    I think that you are asking on the wrong site. You could ask the same question without involving Alexa. So, you might get more help on another SE site ...
    – Mawg
    Commented Dec 12, 2017 at 8:48
  • 3
    On the other hand, voice activation is a fairly major topic for IoT. Not sure we can help, but I think it's on topic. Commented Dec 12, 2017 at 13:40

1 Answer 1


Not an Alexa specific answer, but look into support for soundex and similar phonetic hashing systems in your platform and/or database. For example the MySQL database has a soundex() function that can be used for this. BMPM is another algorithm supported out of the box by Apache Solr/Lucene, along with a number of others.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.