Голосовое управление на основе SDK ОК Гугл (OK Google)
Модератор: immortal
- djprizrak
- Сообщения: 64
- Зарегистрирован: Пн фев 12, 2018 10:58 am
- Благодарил (а): 3 раза
- Поблагодарили: 17 раз
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
А как такое сделать на ПК ubuntu?
Что бы сервер слушал и отвечал, без дополнительных терминалов.
Что бы сервер слушал и отвечал, без дополнительных терминалов.
- lanket
- Сообщения: 1168
- Зарегистрирован: Вт окт 14, 2014 11:27 pm
- Откуда: Санкт-Петербург
- Благодарил (а): 260 раз
- Поблагодарили: 163 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
Благодаря devoff дело сдвинулось с мёртвой точки.
Сейчас стоит вопрос об обратной связи, то есть построение диалогов и корректная обработка таких команд как say, sayto, sayreply...
Вопрос к знатокам. Как добавить в систему новый тип терминала. Чтобы система воспринимала сетевое устройство как полноценный терминал.
То есть чтобы при команде say sayto sayreply на зарегестрированный терминал прилётал текст для tts на терминале.
Отправлено с моего Redmi Note 4 через Tapatalk
Сейчас стоит вопрос об обратной связи, то есть построение диалогов и корректная обработка таких команд как say, sayto, sayreply...
Вопрос к знатокам. Как добавить в систему новый тип терминала. Чтобы система воспринимала сетевое устройство как полноценный терминал.
То есть чтобы при команде say sayto sayreply на зарегестрированный терминал прилётал текст для tts на терминале.
Отправлено с моего Redmi Note 4 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
- lanket
- Сообщения: 1168
- Зарегистрирован: Вт окт 14, 2014 11:27 pm
- Откуда: Санкт-Петербург
- Благодарил (а): 260 раз
- Поблагодарили: 163 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
Кто нибудь знает отличается ли механизм диалога терминала, имеется ввиду запрос мажора терминалу с уточнение, от команды sayreply?
Или это одно и тоже?
Отправлено с моего Redmi Note 4 через Tapatalk
Или это одно и тоже?
Отправлено с моего Redmi Note 4 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
-
- Сообщения: 181
- Зарегистрирован: Пт апр 04, 2014 10:17 pm
- Благодарил (а): 37 раз
- Поблагодарили: 54 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
Да, потихоньку потихоньку мы все сделаем.
lanket - тут именно нужно инициализировать режим диалога, даже сейчас на majordroid при ответе нужно опять нажимать кнопку или говорить проснись.
То есть -
Подхожу к терминала и жму кнопку активации запроса голосом -
Алиса - Слушаю (или диалоговое окно)
Я - Включи свет
Алиса (sayReply) - Где включить ?
Я - опять жму кнопку, так как диалог закончен
Алиса - Слушаю
Я - В коридоре
Алиса - Выключаю свет в коридоре
Диалог окончен.
Если мы будем так искать фильмы, включать музыку, палец отвалится.
А должно быть как у Ассистент Дуся, после ответа микрофон опять запускается и ждет команды, нет команды - отбой.
В принципе задумки есть, все это делается в работе терминала, потихоньку пробую.
lanket - тут именно нужно инициализировать режим диалога, даже сейчас на majordroid при ответе нужно опять нажимать кнопку или говорить проснись.
То есть -
Подхожу к терминала и жму кнопку активации запроса голосом -
Алиса - Слушаю (или диалоговое окно)
Я - Включи свет
Алиса (sayReply) - Где включить ?
Я - опять жму кнопку, так как диалог закончен
Алиса - Слушаю
Я - В коридоре
Алиса - Выключаю свет в коридоре
Диалог окончен.
Если мы будем так искать фильмы, включать музыку, палец отвалится.
А должно быть как у Ассистент Дуся, после ответа микрофон опять запускается и ждет команды, нет команды - отбой.
В принципе задумки есть, все это делается в работе терминала, потихоньку пробую.
-
- Сообщения: 1555
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
Делается вход в ssh по ключу и соответственно когда что-то нужно от терминала, на нём запускается программа на питоне для распознаванияdevoff писал(а): ↑Чт май 03, 2018 7:59 pmДа, потихоньку потихоньку мы все сделаем.
lanket - тут именно нужно инициализировать режим диалога, даже сейчас на majordroid при ответе нужно опять нажимать кнопку или говорить проснись.
То есть -
Подхожу к терминала и жму кнопку активации запроса голосом -
Алиса - Слушаю (или диалоговое окно)
Я - Включи свет
Алиса (sayReply) - Где включить ?
Я - опять жму кнопку, так как диалог закончен
Алиса - Слушаю
Я - В коридоре
Алиса - Выключаю свет в коридоре
Диалог окончен.
Если мы будем так искать фильмы, включать музыку, палец отвалится.
А должно быть как у Ассистент Дуся, после ответа микрофон опять запускается и ждет команды, нет команды - отбой.
В принципе задумки есть, все это делается в работе терминала, потихоньку пробую.
ssh pi@ip терминала python3 sr.py
В sr.py
Код: Выделить всё
import speech_recognition as sr
import urllib.request
r = sr.Recognizer()
with sr.Microphone() as source:
audio = r.listen(source)
command=r.recognize_google(audio, language="ru-RU")
link='http://ip majordomo/command.php?qry=' + urllib.parse.quote_plus(command)
f=urllib.urlopen(link)
- lanket
- Сообщения: 1168
- Зарегистрирован: Вт окт 14, 2014 11:27 pm
- Откуда: Санкт-Петербург
- Благодарил (а): 260 раз
- Поблагодарили: 163 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
Странно, у меня не так.devoff писал(а):... даже сейчас на majordroid при ответе нужно опять нажимать кнопку или говорить проснись.
То есть -
Подхожу к терминала и жму кнопку активации запроса голосом -
Алиса - Слушаю (или диалоговое окно)
Я - Включи свет
Алиса (sayReply) - Где включить ?
Я - опять жму кнопку, так как диалог закончен
Алиса - Слушаю
Я - В коридоре
Алиса - Выключаю свет в коридоре
Диалог окончен.
...
Специально проверил только что.
Нажимаешь кнопку запускается stt,
Говорю : включи радио
Мажордроид : какое радио хотите послушать?
Запускается stt без нажатий кнопок или ключевых слов:
Говорю: радио energy
Мажордроид : где включить?
Запускается stt без нажатий кнопок или ключевых слов:
Говорю: На телевизоре.
Мажордроид : Приятного прослушивания. И включает радио на телевизоре.
На всякий случай уточняю что диалоги у меня построены на api.ai
Такая же история с Дусей :
Зову Дусю по ключевому слову, она отзывается и слушает команду, распознав делает get мажорику, тот получая от api.ai уточняющий запрос уже даёт запрос, видимо, ask мажордроиду на том терминале где начался диалог с Дуси. И диалог продолжается уже с мажордроидом без участия Дуси, кнопок и ключевых слов.
Что то у тебя не так.
Отправлено с моего Redmi Note 4 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
- lanket
- Сообщения: 1168
- Зарегистрирован: Вт окт 14, 2014 11:27 pm
- Откуда: Санкт-Петербург
- Благодарил (а): 260 раз
- Поблагодарили: 163 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
Не пропусти предыдущий мой пост.devoff писал(а):... .
А должно быть как у Ассистент Дуся, после ответа микрофон опять запускается и ждет команды, нет команды - отбой.
... .
Сейчас без дороботок дроид и Дуся работают именно так как ты и описываешь хотелку.
Теперь понятно почему мы говорили на разных языках до этого. Мы по разному наблюдали процесс работы диалогов.
Думаю что у тебя какие либо фаерволы или настройки сети антивирусы и хз кто ещё может мешать запросу ask: к дроиду. А может и сам мажорик у тебя сломан из за эксперементов.
На форуме топик 'Андроид приложение' Сергей описал команды к мажордроиду и порт сервиса. Думаю сначала надо добиться корректной работы диалогов с родным приложением, чтобы костыли не вставлять туда где они не нужны.
Отправлено с моего Redmi Note 4 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
- lanket
- Сообщения: 1168
- Зарегистрирован: Вт окт 14, 2014 11:27 pm
- Откуда: Санкт-Петербург
- Благодарил (а): 260 раз
- Поблагодарили: 163 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
На всякий случай тут описание порта и команды сервиса majordroid
Отправлено с моего Redmi Note 4 через Tapatalk
Отправлено с моего Redmi Note 4 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
-
- Сообщения: 181
- Зарегистрирован: Пт апр 04, 2014 10:17 pm
- Благодарил (а): 37 раз
- Поблагодарили: 54 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
fandaymon костылище ))
Учитывая что в питоне есть сокеты и запуск можно сделать через них, а еще нужно стопорить скрипт сноубоя, так как он слушает микрофон и не даст записать в него.
На самом деле уже большая часть реализована, совсем скоро сделаем обновления поста.
Для решения в прошлом посте есть 2-3 варианта, как мне видится -
1. Включать микрофон на терминале после ответа Алисы на 5-10 секунд
2. Ловить на терминале знак вопроса и понимать, что это вопрос, но наверняка будут не так гладко.
3. Пытаться найти решение на основе "Понимание естественного языка" и уже строить диалог на терминале.
fandaymon На данный момент у нас реализовано -
1. Запуск по ключевому слову на SnowBoy
2. Рандомное приветствие голосом и звуковое уведомление о начале и конце распознавания
2. Распознавание голоса через Python Speech Recognition использую гугл либо wit.ai либо api.ai (гугл самый быстрый)
3. Отправка команды в МДМ
4. Ответ на терминал от мдм через sayReply (без доработки в мдм)
5. Озвучка ошибок распознавания
Опционально
1. Запись звуковых моделей для SnowBoy (работает лучше если записать на микрофоне терминала)
2. использование как wi-fi колонки через mpd
3. Установка всех приложений и зависимостей через скрипт
По планам и что хотелось бы -
1. Подключить и проверить светодиоды
2. Разобраться с диалогами
fandaymon,lanket - Спасибо вам за сообщения на форуме, они с подвигли меня на поиски, но я хочу не только для себя, костылить то я умею, а для всех, что бы все могли легко себе поставить и настроить, можно через образ, можно через скрипт и всех стабильно работало.
Учитывая что в питоне есть сокеты и запуск можно сделать через них, а еще нужно стопорить скрипт сноубоя, так как он слушает микрофон и не даст записать в него.
На самом деле уже большая часть реализована, совсем скоро сделаем обновления поста.
Для решения в прошлом посте есть 2-3 варианта, как мне видится -
1. Включать микрофон на терминале после ответа Алисы на 5-10 секунд
2. Ловить на терминале знак вопроса и понимать, что это вопрос, но наверняка будут не так гладко.
3. Пытаться найти решение на основе "Понимание естественного языка" и уже строить диалог на терминале.
fandaymon На данный момент у нас реализовано -
1. Запуск по ключевому слову на SnowBoy
2. Рандомное приветствие голосом и звуковое уведомление о начале и конце распознавания
2. Распознавание голоса через Python Speech Recognition использую гугл либо wit.ai либо api.ai (гугл самый быстрый)
3. Отправка команды в МДМ
4. Ответ на терминал от мдм через sayReply (без доработки в мдм)
5. Озвучка ошибок распознавания
Опционально
1. Запись звуковых моделей для SnowBoy (работает лучше если записать на микрофоне терминала)
2. использование как wi-fi колонки через mpd
3. Установка всех приложений и зависимостей через скрипт
По планам и что хотелось бы -
1. Подключить и проверить светодиоды
2. Разобраться с диалогами
fandaymon,lanket - Спасибо вам за сообщения на форуме, они с подвигли меня на поиски, но я хочу не только для себя, костылить то я умею, а для всех, что бы все могли легко себе поставить и настроить, можно через образ, можно через скрипт и всех стабильно работало.
-
- Сообщения: 1555
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: Голосовое управление на основе SDK ОК Гугл (OK Google)
Ну понятно что можно просто мини-сервер написать, который будет делать тоже самое, что делает Majordroid, но костыль написать гораздо быстрее К тому же через ssh реализуется и вывод rhvoice.. Snowboy не мешает распознаванию, так как микрофон подключен как dsnoop...
А можно отлавливать ask, идущий на терминалdevoff писал(а): Для решения в прошлом посте есть 2-3 варианта, как мне видится -
1. Включать микрофон на терминале после ответа Алисы на 5-10 секунд
2. Ловить на терминале знак вопроса и понимать, что это вопрос, но наверняка будут не так гладко.
3. Пытаться найти решение на основе "Понимание естественного языка" и уже строить диалог на терминале.
Будут следить за вашим прогрессом. Так как пытаюсь идти примерно тем же путём, только используя готовый шилд respeaker 4 mic и малинкуdevoff писал(а): fandaymon На данный момент у нас реализовано -
1. Запуск по ключевому слову на SnowBoy
2. Рандомное приветствие голосом и звуковое уведомление о начале и конце распознавания
2. Распознавание голоса через Python Speech Recognition использую гугл либо wit.ai либо api.ai (гугл самый быстрый)
3. Отправка команды в МДМ
4. Ответ на терминал от мдм через sayReply (без доработки в мдм)
5. Озвучка ошибок распознавания
Опционально
1. Запись звуковых моделей для SnowBoy (работает лучше если записать на микрофоне терминала)
2. использование как wi-fi колонки через mpd
3. Установка всех приложений и зависимостей через скрипт
По планам и что хотелось бы -
1. Подключить и проверить светодиоды
2. Разобраться с диалогами
fandaymon,lanket - Спасибо вам за сообщения на форуме, они с подвигли меня на поиски, но я хочу не только для себя, костылить то я умею, а для всех, что бы все могли легко себе поставить и настроить, можно через образ, можно через скрипт и всех стабильно работало.