2017-03-10 1 views
1

J'ai de la difficulté en ce moment ayant l'adresse Alexa différents types de fente qui contiennent certains des mêmes mots. Je suis en train de construire ce tutoriel sur la technique https://github.com/alexa/skill-sample-nodejs-howto Permettez-moi d'expliquer ce que je suis en train de faire: -Aujourd'hui, vous pouvez dire "Alexa, quels sont les ingrédients pour le pain grillé français"? Cela retournera les ingrédients d'un fichier recipe.js qui est inclus dans le tutoriel ci-dessus, que j'ai légèrement modifié. Les mots pour ceux-ci sont construits hors d'un type de fente, LIST_OF_ITEMSEssayer de faire Alexa adresse différents types de fente qui contiennent certains des mêmes mots

-cependant, je veux être en mesure de dire « Alexa, comment puis-je faire griller des toasts français » et je veux que ce retour le processus de fabrication du pain grillé français , que j'ai aussi écrit. Ces mots sont contiennent dans un autre emplacement, LIST_OF_STEPS

Un échantillon de deux intentions que j'ai sont:

RecipeIntent what ingredients do I need for {Item} 

StepIntent how to make a {Step} 

Dans cet exemple, {article} et {Step} sont la même chose (pain grillé français) mais sont répertoriés dans des emplacements différents.

Dans mon fichier recipe.js, deux langues sont chargées en même temps. J'ai coupé la plupart de ce souci de clarté

"RECIPE_EN_GB" : { 

//... 

"french toast": "To make french toast, you will need 30g of unsalted butter, two eggs, milk 160g, 

//.. 

}, 

"RECIPE_EN_GBTEST" : { 

//... 

"french toast": "Test test Lorem ipsum" 

//... 

}, 

Quand je dis « Quels sont les ingrédients pour des toasts français », il me rendra RECIPE_EN_GB pain français, comme on le souhaite. Quand je demande comment cela est fait, il me donnera toujours RECIPE_EN_GB et non RECIPE_EN_GBTEST. En fait, si j'utilise simplement 'French toast', cela me rapportera RECIPE_EN_GB, je n'ai même pas besoin d'utiliser un énoncé. Je l'ai fait à un moment donné dans "testfood": "Testfood Lorem ipsum", et il a appelé ça bien quand j'ai dit testfood. Je suis conscient que ce n'est pas clair, mais c'est un problème difficile à essayer d'expliquer correctement, et je suis désolé. Si quelqu'un a l'expérience prolongée le tutoriel how_to s'il vous plaît faites le moi savoir

Répondre

0

Il est important de s'assurer que vos intentions sont assez différentes pour que Alexa puisse faire la différence. Alexa utilise un algorithme de comparaison floue, et pas seulement la correspondance exacte pour décider de l'intention de l'utilisateur.

Ainsi, par exemple, deux intentions avec ces paroles: 1. que vous me donnez {} slot_name 2. il m'a donné {} slot_name causerait Alexa pour avoir un moment très difficile a décidé ce qui est correct lorsqu'un utilisateur dit "got me {slot_name}". Essayez de changer vos énoncés en quelque chose de très unique dans chaque intention, demandez à ceux qui travaillent, puis ajoutez des énoncés supplémentaires. La conception de vos énoncés est vraiment la partie la plus importante de la conception d'une compétence Alexa. Je recommande de lui donner beaucoup de temps.

+0

Merci, c'était une partie du problème. Il y a eu quelques problèmes avec mon javascript aussi. Je vais certainement être plus clair avec des énoncés à l'avenir! – DenisDr