Comments 56
Это фича была бы крайне полезна уже встроенной в мессенджеры. Чтобы под голосовым сообщением появлялся toggle "речь в текст". А иногда ещё и перевод. p.s. В некоторых случаях "с русского на русский" :)
Одна из основных UX фишек бота состоит в том, что если его добавить в группу, то он будет распознавать все аудио в этой группе.
А насчет самих мессенджеров — я думаю, что рано или поздно все приложения работающие с "богатыми" форматами данных научатся делать с ними что-то полезное, но это будет процесс долгий и итерационный.
Есть только риск так называемого "research siloing", когда корпорации стремятся де-факто иметь монополию на алгоритмы (на фоне видимой "открытости"). Но для этого и нужны такие люди как мы.
А то зачастую в самых свободных местах свободы почему-то очень мало. За нее всегда нужно бороться.
Я просто про желаемый UI написал, даже без отношения к Telegram.
Правильно понимаю: вы делаете open source, допустимо для коммерческого использования и всё с обученными моделями?
Я бы сформулировал иначе — все, что для коммерческого использования идет по коммерческим условиям.
Но часть вещей выложены для общего или некоммерческого использования, например те же боты для обычных пользователей, публичные модели синтеза или тот же VAD.
У каждого продукта своя логика разделения на открытую и коммерческую части.
research siloing
Откуда это выражение?
Было бы неплохо сделать возможность триггерить бота на реплай с командой, тогда не придется процессить все звуки.
А из лички переслать боту аудио можно?
Возможно, недолго ждать осталось. Whatsapp уже пилит такую фичу: https://wabetainfo.com/whatsapp-is-working-on-voice-message-transcription/
да вы же натуральные боженьки. это то, чего я хотел все эти долгие годы.
А почему бот не имеет доступа к сообщениям по умолчанию? Это какое-то принципиальное решение?
Если добавить его в группу и сделать админом будет тот же эффект, вот только не во всех группах такое возможно, например в обычных, а не "супергруппах", т.к. в этом случае при назначении админа группа автоматически конвертируется, а это нежелательный эффект.
Это можно сконфигурировать у @Botfather
: /mybots
- (bot)
- Bot Settings
- Group Privacy
- Turn off
После этого нужно передобавить бота в чат, чтобы обновились настройки.
Для обычных кейсов разницы, действительно, почти нет, но некоторые нюансы различаются (хранение истории, доступ к ней, отсутствие админских логов, возможность писать у некоторых пользователей...)
Так , про сбор голосов для создания на их базе дипфейков для взятия кредитов по биометрии в сбере указан ?
Нет , так и запишем - занимаемся.
А если серьезно - спасибо , буду пользоваться , полезная штука , если не тяжело - подскажите где гелия подешевле купить
Качественный голос мы как правило можем сделать даже на 15 минутах аудио, но при совпадении звезд:
- Качество должно приближаться к идеальному или студийному;
- Голос должен быть похож на имеющиеся;
- Голос должен быть "ровным";
То, при каких обстоятельствах и как люди обычно записывают голосовые сообщения + тот факт, что мы не сохраняем кто послал нам какое именно аудио, делают массовое создание голосов пользователей уже совсем научной фантастикой, даже если бы мы хотели этим зачем-то заниматься.
Подскажите, (может это уже где-то реализовано)
можно ли скинуть ссылку на подкаст и, через необязательно короткое время получить текстовую расшифровку?
Бывает часовой подкаст, а ценного там - на пару фраз... Глазами быстрее пробежать.
Насчет ссылки не видел, не знаю, писать и поддерживать бесконечные парсеры тоже себе такое занятие.
Но если вы сами скачаете аудио, можно попробовать залить сюда — https://audio-v-text.silero.ai/
Одна беда, туда пока еще не встроили последний VAD и модель для знаков препинания и заглавных букв
Переслал сообщение из ватсап, телеграмм его воспроизводит, но бот говорит что формат файла не поддерживается
Понятно, почему у некоторых юзеров проблемы
- Люди часто качают якобы MP3 через онлайн конвертеры, там по факту MP4;
- Люди сначала добавляют бота в чат, а не начинают сначала с ним лично общаться несмотря на инструкцию;
Обновил и дополнил FAQ, выложу его сюда в том числе для индексации:
Самый популярный вопрос — возникают проблемы при добавлении бота в группу (иногда юзеры проходят капчу в группе).
Убедитесь, что вы сначала ввели команду /start и прошли капчу при прямом общении с ботом, а не через группу или другого бота. Для верности можно пойти к боту напрямую, сделать /restart, ввести капчу, удалить и вернуть бота в группу. После этого должно заработать.
У меня ничего не происходит при отправке файлов боту.
Убедитесь, что вы сначала ввели команду /start и прошли капчу. Если вы не уверены в этом, попробуйте сделать /restart, потом /start и пройти капчу.
Бот не работает в групповом чате.
Убедитесь, что вы не только лично прошли капчу и добавили его, но и сделали его администратором. Иначе он не cможет читать сообщения. Поправка — после настроек это перестало быть нужным. Также в телеграме теперь напротив имени бота в чате явно отображается может ли он читать сообщения.
У меня не работает интерактивная разметка аудио для навигации.
Она работает только в некоторых приложениях (десктоп) и только для некоторых форматов файлов (например opus или ogg+opus).
В групповом чате ничего не происходит, когда я посылаю аудио.
В чатах мы не шлем сообщения с ошибками, чтобы не захламлять пространство. Попробуйте послать тот же файл напрямую.
Я послал файл, но ничего не происходит.
Возможно на данный момент очередь переполнилась. По достижении определенного порога мы удаляем старые запросы, чтобы очередь не застаивалась. Возможно это какой-то редкий краевой случай (такое часто возникает при использовании онлайн-конвертеров). Перешлите файл нам напрямую, мы разберемся.
Бот распознает совсем не то.
Распознавание речи не бывает на 100% точным. Но если вы видите, что это очевидно ошибка и что-то пошло не так при обработке файла, просто напишите нам.
Мой формат аудио не поддерживается, файл слишком большой или длинный.
В таком случае попробуйте воспользоваться сервисом https://audio-v-text.silero.ai/.
Высказывания не оптимально разбиты на смысловые куски или неправильно проставлены знаки препинания.
В устной речи всё работает несколько иначе, чем в письменной. Если человек делает относительно длинные паузы в местах, не соответствующих смысловому разделению его речи на части, или просто запинается, с этим нельзя ничего поделать.
Неправильно проставлены знаки препинания.
Расстановка знаков препинания и заглавных букв делается только для упрощения чтения.
Неправильно обрабатываются числительные, даты, цифры, сокращения, аббревиатуры.
Невозможно обработать все случаи в естественном языке. Но если на ваш взгляд какой-то очень массовый и важный кейс обрабатывается неверно — напишите нам напрямую.
Прочие краевые случаи.
Известные случаи, когда аудио распознается хуже: музыка или рэп; обилие редких слов, неологизмов и жаргонизмов; крик или разговоры на повышенных тонах; речь с очень сильным акцентом; разговор на смеси нескольких языков; несколько людей говорят одновременно или перебивают друг друга.
У меня кончился лимит.
Лимит обновляется раз в сутки.
Важное обновление — баг с "затором" в боте пофикшен.
Остался баг с пересылкой файлов с мобильных клиентов и / или из вотсаппа и / или из музыкальной библиотеки телеграма.
Обновления по горячим следам 2
Баг с пересылкой файлов пофиксили, все оказалось проще — дело было в отсутствующем MIME-типе;
Еще раз пофиксили баги с заторами, вроде дело было в том, что если ответить 500 телеге, то она начинает копить сообщения, и потом это приводит к затору;
Навесили try/catch в несколько ключевых мест;
Решил немного пощупать бот.
Установил тестовую версию Aiseesoft Screen Recorder.
Попробовал начитать коротенькие отрывки из Туве Янсон.
Увы, бот пока угадывает в среднем два слова из трех.
Вот типичный результат:
Глубоко в сугроде, прикрывавшим ход в пещеру. Кто-то постелил Солон? На салоне стояла большая картонная коробка. Отверстия. Вот чудно удивился бельчонок. Прежде этой картинки здесь не было. Должно быть? Тут какая-то ошибка. Может, это совсем не та пища?
Статье всё равно ставлю плюс, за полезность начинания.
А можете рассказать поподробнее - что внутри? Какие нейронки? Мы поднимали похожего бота на vosk.
Работает хуже, чем встроенное распознавание от Гугла на Android, зачем-то разбивает даже короткие фразы на отдельные предложения. После прочтения статьи сразу появилась идея использовать как замена Google Keyboard на телефоне с LineageOS и OpenGapps, но быстрый тест показал, что пока ещё нельзя.
Насчёт Гугла - я более менее уверен что их распознавание на русском в среднем хуже на всех доменах, но скорее всего оно лучше зафичено именно на частые данные пользователей которые вы ему дарите.
Насчёт разделения - ну делит речь по заметным паузам. Я запустил их приложение для заметок - оно тоже делит по паузам.
Но я не совсем понимаю как бот для заметок или сообщений может заменить клавиатуру, у него совсем другая цель и допущения.
Чем короткие заметки отличаются от сообщений, надиктованных на голосовой клавиатуре? Кстати, ещё одна особенность - если переслать сообщение, то временные метки не работают (не подсвечиваются как ссылки), даже если переслать и текст, и аудио. Это ограничение платформы?
Подсветка кодов у самой телеги как-то странно работает, зависит от формата аудио и платформы.
Насчет заметок - использование клавиатуры может сильнее модулировать поведение людей, чем кажется. Подразумевается что типовой сценарий у нас это когда люди просто свободно что-то говорят.
Та же клавиатура будучи нативным приложением на подконтрольной платформе имеет сильно больше оптимизаций чисто с визуальной точки зрения.
Блин, по распознаванию типичной записи телефонного звонка - очень фигово конечно.
Если другие примерно так же до сих пор - мечты об автоконтроле операторов более менее работающем - преждевременны походу у меня :)
С телефонными звонками между двумя звонками разница может быть плюс-минус километр по качеству и отчетливости связи.
Так что я даже хз что тут сказать. Чтобы это работало как продукт на звонках, требуется некая работа со стороны телефонистов и бизнеса.
Могу привести пример из такси — там у нас WER < 10%, но там телефонисты сделали свою работу и там простой сценарий и модель доучили на нужный домен.
Еще бы поддержку формата amr - он минимален по объему и в нем пишут обычные телефонные диктофоны.
что только не выдумают, лишь бы не пользоваться встроенным в телефон распознаванием речи
Насколько большая нагрузка на сервер из-за относительно массового использования бота и кто так сказать оплачивает банкет?
Если вынести за скобки тот факт, что в боте сейчас есть пара тупых багов (банально забыли try-catch в паре мест при обращении к АПИ телеги — оно еще тормозит немного при ошибке и копится немного как снежный ком), которые в совокупности с тем, что очереди делают retry, где-то в районе обеда породили "затор" (я пока временно просто перезапустил бота пока не пофиксили), то на самом деле одновременно и не так мало и не так много. Что меня удивило — использование бота также породило бурный интерес к инструменту для длинных аудио.
По статистике с начала этих суток (а вчера мы сами много трафика слали для тестирования) было где-то по 20,000 нормализованных по длине запросов и в телеграм бота, и в онлайн-бота на нашем сайте. То есть суммарно около 40,000. Затор думаю "убил" процентов 5-10% потенциального трафика. Думаю за сутки будет ну в районе 60к — 75к запросов. Ну может 100к, если ночью народ проснется опять на третью волну.
И, обратите внимание (!), это все на фоне отсутствия фичеринга нашего решения со стороны СМИ то есть весь трафик органический из наших каналов, статей, Хабра.
А насчет банкета — мы просто грамотно спроектировали архитектуру. У нас есть в обоих этих инструментах очереди и инструменты управления concurrency и некоторые "затычки" на случай слишком большого трафика (но мы конечно словили проблемы, но уже из-за других причин). Поэтому де-факто я смог повесить этих ботов на STT сервак с другим нашим проектом, и они почти даже не толкаются руками. Я наверное потом понижу уровень concurrency в боте для телеги, после того как пофиксим оставшиеся проблемы (в самые пиковые моменты толкаются немного).
Я, конечно, после чтения комментариев на VC.ru и нахождения затора приуныл, но потом мы нашли его причину, мне написало в личку много людей с благодарностями, и настроение поднялось.
Эх, где вы были, когда я расшифровку своей кандидатской защиты писал...
А какой хоть примерно лимит? Ну, чтобы понять, для чего вообще может быть это интересно, кроме попробовать послать пару файлов и забыть :)
Закинул сразу голосовое сообщение телеги на полторы минуты, ответил что слишком длинное так как превышает лимит в 1200 секунд. Короче бот не работает.
Возможно ли добавить бота в личный диалог?
Telegram-бот Silero бесплатно переводит речь в текст