Мы хотим, чтобы наш агент - сквид - мог реагировать на фразу "hey squid". Как "hey siri", "ok google" итд.
До сих пор я делал так:
- транскрибирую все что говорю
- смотрю в транскрибации сказано ли "хей сквид", fuzzy (то есть допустимо хей сквит, хай сквид)
- если сказано, сквид просыпается
Такой подход плох двумя вещами - это медленно и дорого. Чисто ради этого у нас запущена отдельная транскрибация, которая ест 1 доллар в час во время созвона. И задержка больше секунды.
Есть другой подход - поднять модель, которая распознает сам звук "hey squid". Именно звук, не текст. Типа биты или звуковые волны. Это сильно дешевле и быстрее. НО я до сих пор думал, что мне придется 5 тысяч раз произнести фразу "hey squid" в разных локациях, разными голосами итд, чтобы обучить эту модель.
Но я нашел библиотеку https://openwakeword.com. Она очень прикольная. Ты даешь ей фразу "hey squid", она сама генерирует тысячи вариаций этой фразы (с шумом, разными голосами, с фоновым мусором) и отправляет это на обучение. И все это спокойно делается на макбуке, не надо платить за токены для обучения.
Само обучение продлилось не больше 10 минут на моем М4. Результат хороший, распознавание работает и оно сильно быстрее, чем прошлое решение.
Post #897
1.63K
- 👍 52