Комментарии 13
То есть роботом управляете не вы а OpenAI по вашей просбе ? Что если OpenAI задумает поуправлять самостоятельно ? Также без связи интернет робот превращается в тыкву...
Если вам нужен оффлайн и четкое выполнение инструкций (без OpenAI), заходите в голосовой помощник Ирину: https://github.com/janvarev/Irene-Voice-Assistant (900+ звезд на Гитхабе, 3 статьи на Хабре :)
Там все локальное, можно подключать сторонних клиентов (в клиент-серверном варианте). Если взять прошивку из статьи, думаю, и её можно прикрутить, отсылая записанный WAV-файл в Ирину для распознавания и выполнения (но сам я в ESP32 не спец)
Интересно, странно, что не видел до этого. А какие там требования к железу? Боюсь, что для микроконтроллеров не пойдет...
Если в облачном варианте (как у вас), то вообще никаких требований. Ну, разве что надо где-то гонять распознавание звука, обычно это делается локально на VOSK, где-то надо поставить.
Так вообще я знаю, что серверы на Raspberry делали. Клиентом вообще может быть что угодно, ESP32 кто-то делал, но я не в курсе деталей.
Хуже не то что там им может ИИ поуправлять, что там эта игрушка сделать может нехорошего? Хуже то, что это по факту прослушка, все что рядом с ним сказано, будет уходить куда-то туда, в сеть.
Впрочем, эта проблема касается не только данного устройства но всяких умных колонок, да и простого смартфона..
В текущей версии реализовал отправку команды по кнопочке - т.е. нужно размьютить микрофон, сказать команду, замьютить.
Но вообще да, согласен - те же смартфоны, Алиса в каждой комнате, которая слушает на постоянной основе - это всё уже с нами (со многими по крайней мере).
В каком-то смысле - да, по нашей просьбе управляет OpenAI. Т.е. "переводит" команду, которую мы озвучиваем естественным языком, в команду "понятную" конкретному изделию (роботу, лампочке, кондиционеру и т.п.). Наверное можно представить себе ситуацию, что вместо команды "вперед" намеренно пришлёт команду "назад". Для игрушки - нестрашно, для управления критическими системами - не нужно этот подход использовать.
А по второму вопросу - он очень интересный. Есть несколько решений с работой нейросетей на микроконтроллере для распознавания речи, в том числе и мы делаем. Но там ограничения по числу команд - обработка естественного языка просто не поместиться. Поэтому приходится выбирать.
Ссылочку на репозиторий поправьте пожалуйста.
https://www.youtube.com/watch?v=i8SJv4Ezhhg. Делал себе для электровела. Все работает offline безо всяких аи и интернета. Есть режим обучения на русском языке.
Классная штука! Уже видел вашу разработку в комментариях к каким-то статьям. Отличие решения с OpenAI в том, что "большая" нейросетка поймет как четкую команду "Включи свет", так и размытую формулировку, например включить свет по запросу "Стало темно" или "Не вижу ничего". В конкретном решении для велосипеда - это избыточно конечно, но в других кейсах может пригодиться.
Лично я использую смартфон с Tasker для распознавания речи (а распознанная фраза уходит на устройство, сервер и там обрабатывается скриптом на php).
Понимающий робот: голосовой интерфейс на ESP32 и OpenAI