Ура! Запустил в своём умном доме
rhasspy.readthedocs.io/en/late
Теперь он меня слушается в буквальном смысле, и продолжит слушаться, даже если оторвать интернет.

• Активация через Porcupine, готовых моделей для русских слов там нет, но есть схоже звучащие английские варианты.
• Распознавание речи через Kaldi. Пока ни разу не ошибся.
• Команды шлёт в Документацию надо б дописать.
• Отвечает… 'ом. Позже прикручу , а пока буду пугать гостей, хи-хи. :blobcatgoogly:

🎤 Хроники (эпизод 4)
В очередном обновлении прилетел речевой движок Larynx с тремя русскими голосами, которые звучат неплохо для голосов на публичных записях. Но местами со странностями, поэтому формулировки ответов приходится проверять на произносимость.
А ещё при нажатии на номер версии в вебморде открывается документация к API. Надо теперь прибить его к Home Assistant и можно делать команды типа "выключить на N часов/минут" или прилепить ещё один обработчик команд (?).
Ух-х!

🎤 Хроники , эпизоды нумеровать уже не вижу особого смысла. Предыдущие – в треде.

Произошло не сказать чтоб много. Разве что я научил его посредством ИК-излучателя запускать вентилятор на заданную скорость. Началось с наблюдения, что вентилятор всегда стартует на скорости 3 (из 10), и оттуда понеслось.

Идея внедрения отвечалки на вопрос "Где хранится Х?" почти стоит, но не заброшена – в поисках способа редактирования я набрёл на "домашний AirTable", пробую его: nocodb.com/

Интересно то, что хоть настройкой вентилятора и занимается очень простая программа, удовольствие от доведения её до работоспособности весьма значительное. Чуть математики, чуть программирования, чуть экспериментов. Хорошо, что этому удалось в своё время научиться.

А NocoDB, если отложить тот факт что в README он врёт и выдаёт планируемые фичи за имеющиеся – неплох. Таблицы делает и показывает, и к ним сразу же есть очень простой API, по которому есть автосгенерированная документация в Swagger.

🎤 Хроники (тред)

✔️ Качественный скачок сегодня: привинтил к нему . Теперь Rhasspy умеет говорить (не только отвечать, а, например, оповещать о событиях). И в целом работать над сценариями с внутренним состоянием там явно будет удобнее.

🤔 NodeRED силён! Его получилось вклинить между Rhasspy и так, что Rhasspy общается с ним по тому же API, от HA. NR обрабатывает что может, а нераспознанное шлёт дальше, в HA, где живут остальные обработчики. С – совместимость.

...впрочем, без казусов тоже не обошлось.

Выше по треду упоминал NocoDB. Э... в общем, в результате бага он может неожиданно для вас (и даже для себя) опустошить таблицу, если сделать bulk delete над объектом БЕЗ id.

Судя по логам, постгрес даже получает запрос с `id = "undefined"` (привет, NodeJS!) и прямо его в запрос и вставляет. А из-за неаккуратной обработки ошибок там получается что-то вроде `DELETE FROM table WHERE true`. И хоба!

Ситуацию спасли снапшоты btrfs, но надо б зарепортить.

Follow

🎤 Хроники (тред)

шикарен. Наконец-то сделал средство, которое поможет избежать значительного количества ложных срабатываний: "помолчи N минут".

Самым сложным моментом во всей этой истории было подружиться с русским языком, а именно числительными и падежами. В языке грамматики команд поддержка числителей только в именительном падеже и без сопоставления правилам для числительных, и в ответах тоже неплохо бы соблюдать правила, никому не хочется слышать "замолкаю на 1 минут".

Под выбор числительного в ответах я даже подпоток (subflow) сделал. Попутно, кстати, нашёл прелюбопытнейшую справочную страничку на сайте Unicode о правилах выбора форм слов для разных числительных в разных языках мира. Немецкий больше не кажется таким уж страшным!
unicode.org/cldr/cldr-aux/char

· · Web · 0 · 2 · 0
Sign in to participate in the conversation
Mastodon.ml

Русская нода социальной сети "Мастодонт", части Fediverse - всемирной федерации социальных сетей. Зона общения, свободная от рекламы и шпионажа, теперь и в России.