Спеціальні навички можуть захоплювати текст та надсилати їх до API вашого вміння.
Якщо ви не зовсім знайомі з тим, як працюють Alexa Skills, ось короткий підсумок:
По-перше, ви реєструєте свою майстерність в Amazon , надаючи схему намірів та зразок висловлювань . Схема намірів визначає, які дії можна виконати, і слоти для користувацьких даних, що надсилаються до вашого API. Зразкові висловлювання дають приклади того, як користувач може викликати кожен намір.
Коли користувач активує вашу майстерність, Alexa спробує співставити те, що вони сказали, з одним із зразкових висловлювань вашої майстерності. Якщо це робить матч, він буде посилати запит HTTPS на сервер , щоб запросити відповідь.
Ваш сервер надає відповідь (якщо все піде добре), і тоді Alexa надасть відгук користувачеві, який ініціював вашу майстерність.
AMAZON.LITERAL
Слот дозволяє приймати практично будь-який вхід. Зауважте, що в даний час він підтримується лише в регіоні англійська (США) - англійською (Великобританія) і німецькими навичками використовувати не можна AMAZON.LITERAL
.
Ваша схема намірів може виглядати приблизно так:
{
"intents": [
{
"intent": "SaveTodo",
"slots": [
{
"name": "Todo",
"type": "AMAZON.LITERAL"
}
]
}
]
}
І ваші зразкові висловлювання можуть бути такими:
SaveTodo remind me to {fetch the shopping|Todo}
SaveTodo remind me to {write my English essay|Todo}
SaveTodo remind me to {buy some dog food tomorrow|Todo}
Під час використання AMAZON.LITERAL
потрібно надати безліч вибіркових висловлювань - принаймні один зразок на кожну можливу довжину введення, але в ідеалі більше. Документація Amazon говорить про те, що вам слід орієнтуватися на сотні зразків для слотів, де ви можете приймати різні типи матеріалів.
Це здається трохи стомлюючим, але якщо ви цього не зробите, навряд чи ваша майстерність добре розпізнає текст. Можливо, ви можете створити вибіркові висловлювання з даних клієнтів (доки особиста інформація буде видалена заздалегідь!), Так що найпоширеніші висловлювання є у ваших зразках - я підозрюю, що Alexa буде трохи упереджений до розпізнавання висловлювань, подібних до зразків.
Однак Amazon відмовляє від AMAZON.LITERAL
слотів і вважає за краще використовувати власні типи слотів , які вимагають перерахувати можливі входи. Важливо пам’ятати про це:
Спеціальний тип слота не є еквівалентом перерахування. Значення поза списком все ще можуть бути повернені, якщо їх визнає система розуміння розмовної мови. Незважаючи на те, що вхід до спеціального типу слота зважується до значень у списку, він не обмежується лише елементами у списку. Ваш код все ще повинен включати перевірку та перевірку помилок при використанні значень слота.