Интент
это задача, которую пользователь формулирует в конкретной реплике. Например, узнать погоду. Каждому интенту соответствует одна форма. Подробнее о форме можно узнать в определении: форма в Алисе
Синтаксис
Ниже показан пример описания интента:
# Описание интента "turn.on" для включения устройств.
# Эта грамматика позволит распознавать такие фразы как "включи свет на кухне"
# или "включи кондиционер в спальне".
# Корневой элемент грамматики. Описывает шаблон, по которому будет
# отбираться реплика.
root:
включи $What $Where
# Описание слотов. Диалоги будут отправлять это описание навыку.
slots:
what:
source: $What
where:
source: $Where
$What:
свет | кондиционер
$Where:
в ванной | на кухне | в спальне
Примечание. Вложенные элементы следует обозначать отступом в 4 пробела.
Описание интента состоит из ключевых слов root, slots и filler, а также нетерминалов — фраз на естественном языке, описывающих, на какие запросы должна срабатывать грамматика. Нетерминалы обозначаются символом $. Они эквиваленты переменным в языках программирования.
Поддерживаемые ключевые слова:
root — обозначение корневого элемента. Описывает шаблон, по которому будет отбираться вся реплика целиком.
Пример
root: [включи $What $Where (и $Where)*]
В этом примере используются квантификатор и оператор [].
slots — описание слотов запроса. Это поле будет присутствовать в JSON, который Диалоги отправят в навык после обработки запроса. Подробнее см. Какие данные передаются в навык.
Пример
slots: what: source: $What where: source: $Where $What: свет | кондиционер $Where: # Подойдет любая строка, которую введет пользователь. .+
filler — стоп-слова, которые можно отбросить при разборе запроса. Для исключения незначащих, неинформативных слов используется специальный классификатор, использующий контекст предложения. Например, для разбора из примера выше срабаботает как фраза «включи свет», так и «включи свет, пожалуйста».
Пример
filler: мне | как всегда | ещё раз | нужно
Встроенные интенты
Если в навыке есть хотя бы один интент, Яндекс.Диалоги дополнительно отправляют интенты, универсальные для большинства навыков:
- YANDEX.CONFIRM — согласие.
- YANDEX.REJECT — отказ.
- YANDEX.HELP — запрос подсказки.
- YANDEX.REPEAT — просьба повторить последний ответ навыка.
В этих статьях, упоминается это определение:
Школа Алисы. 40 видео урок. Весеннее обновление Диалогов. Разбор нововведений.
В этом видео мы расскажем, о том, что представляют собой новые функции и разберем некоторые из них на конкретных примерах.
Читать статью
Весеннее обновление платформы Диалогов
Команда Яндекс.Диалогов подготовила большой пакет обновлений и сегодня представляет его сообществу разработчиков голосовых приложений в формате Dev Preview.
Читать статью
Создание навыка я никогда не
Создание навыка я никогда не с использованием движка u_bot, позволяющего создавать приложения на разных платформах.
Читать статью
Как со мной связаться?
Свяжитесь со мной по любому поводу!
Я с радостью отвечу на все вопросы!
Телефон:
+7(909) 281 35-20Почта:
maximco36895@yandex.ruДополнительная почта:
info@maxim-m.ruЯ в социальных сетях: