Назначение: зафиксировать языковой контракт генератора команд без привязки к конкретному умному дому, device id, комнатам пользователя или статистике сгенерированных команд.
Документ отвечает на вопрос: какие абстрактные формы русских команд должны пониматься системой, какие есть синонимы действий, какие слоты подставляются и где требуется контекст.
Слоты и обозначения
Слот
Значение
Примеры формы
<object>
Устройство, alias устройства или generic concept
***, свет, шторы, телевизор
<object_acc>
Объект в винительном падеже
***, шторы, лампу
<object_gen>
Объект в родительном падеже
***, света, телевизора
<room>
Комната или зона
***
<room_ref>
Комната с предлогом или bare-форма
в ***, на ***, ***
<percent>
Процент яркости/громкости текстом
ноль процентов, пятьдесят процентов, сто процентов
<number>
Число текстом
десять, пятьдесят, сто
<channel>
Номер канала текстом
первый, второй, пятый, десятый
<temperature>
Температура текстом
восемнадцать, двадцать два, двадцать четыре
<item>
Товар или alias товара
***
<playlist>
Плейлист или alias плейлиста
***
<suffix>
Эмоциональный/срочный хвост
срочно, быстро, блять
Общие варианты
ID
Шаблон
Слоты
Контекст
Ограничения
common.object.room.suffix
<command> <room_ref>
room
Нет
Для шаблонов с RoomRule != none; комната фильтрует цель.
common.object.room.prefix
<room_ref> <command>
room
Нет
Только для шаблонов с prefix/both placement.
common.direct.alias.on
<custom_on_phrase>
Нет
Нет
Пользовательский alias из ON:...; исполняет конкретный on intent.
common.direct.alias.off
<custom_off_phrase>
Нет
Нет
Пользовательский alias из OFF:...; исполняет конкретный off intent.
common.frustrated
<command> <suffix>
suffix
Нет
Добавляется к многим smart-home фразам; noise-варианты не должны быть train/Vosk subset.
common.context.short
<short_command>
last_devices
Да
Исполняется только через сохраненный контекст, не расширяется на всю комнату.
Включение
ID
Шаблон
Синонимы
Слоты
Контекст
Ограничения
on.object
<on_verb> <object_acc>
включи, включить, вруби, врубай
object
Нет
<object> должен поддерживать on_off; шторы используют отдельный open-блок.
on.object.room
<on_verb> <object_acc> <room_ref>
включи, включить, вруби, врубай
object, room
Нет
Комната уточняет область поиска.
on.room.only.light
<on_verb> <room_ref>
включи
room
Нет
Только для light-like объектов; команда без имени объекта.
on.short
<on_verb>
включи, включить, вруби, врубай
last_devices
Да
Только после контекста.
on.state.light
<light_on_state> [<room_ref>]
темно, темновато, ничего не видно
room
Нет
Только для light-like объектов.
on.state.heat
<heat_on_state> [<room_ref>]
холодно, холодновато, прохладно
room
Нет
Для heating/thermostat-like объектов.
on.state.cool
<cool_on_state> [<room_ref>]
жарко, жарковато, душно
room
Нет
Для AC/cooling-like объектов.
Выключение
ID
Шаблон
Синонимы
Слоты
Контекст
Ограничения
off.object
<off_verb> <object_acc>
выключи, выключить, отключи, выруби, вырубай
object
Нет
<object> должен поддерживать on_off; шторы используют отдельный close-блок.
off.object.room
<off_verb> <object_acc> <room_ref>
выключи, выключить, отключи, выруби, вырубай
object, room
Нет
Комната уточняет область поиска.
off.room.only.light
<off_verb> <room_ref>
выключи
room
Нет
Только для light-like объектов; команда без имени объекта.
off.short
<off_verb>
выключи, выключить, отключи, выруби, вырубай
last_devices
Да
Только после контекста; может конфликтовать с music_stop.
off.state.cool
<cool_off_state> [<room_ref>]
холодно, холодновато, прохладно
room
Нет
Для AC/cooling-like объектов: выключить охлаждение.
Открытие и закрытие
ID
Шаблон
Синонимы
Слоты
Контекст
Ограничения
open.object
<open_verb> <object_acc>
открой
object
Нет
Только openable-объекты, сейчас curtains/blinds-like.
open.generic
<open_verb> шторы [<room_ref>]
открой
room
Нет
Generic concept для штор.
open.blinds.up
подними <object_acc> [<room_ref>]
подними
object, room
Нет
Только blinds/roller-shutter-like имена.
close.object
<close_verb> <object_acc>
закрой
object
Нет
Только openable-объекты, сейчас curtains/blinds-like.
close.generic
<close_verb> шторы [<room_ref>]
закрой
room
Нет
Generic concept для штор.
close.blinds.down
опусти <object_acc> [<room_ref>]
опусти
object, room
Нет
Только blinds/roller-shutter-like имена.
Яркость
ID
Шаблон
Синонимы
Значение
Контекст
Ограничения
brightness.set.object
<brightness_set> яркость <object_acc> на <percent>
установи, сделай, включи
0..100%
Нет
Объект должен поддерживать brightness.
brightness.set.genitive
<brightness_set> яркость <object_gen> на <percent>