Как стать автором
Обновить

Комментарии 21

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

На рынке полно движков, которые за небольшую плату все, что угодно сгенерят.

Платных GAFA АПИ для синтеза тонна, цены сейчас пока действительно низкие.
Но вопрос тут исключительно в целесообразности и конверсионном сценарии, когда мошенники обрабатывают миллионы клиентов.


Вообще использовать синтез для скама — пока в принципе так себе затея, потому что сочетание спам-рассылок и операторов из "службы поддержки Сбербанка" может быть выгоднее даже бесплатного синтеза.


чтобы обосновать переход на коммерческие рельсы

А зачем что-то обосновывать? Очевидно, что мы успешно делаем и коммерческие и некоммерческие проекты.


Мы сделали комьюнити огромный подарок — быстрый, качественно работающий синтез на ~10 языках. Причем какие-то языки в принципе никогда не будет покрыты GAFA продуктами и мотивация некоторых членов комьюнити была прозрачной — получить более качественный синтез, чем на их языке допустим есть в espeak, вложив свою работу pro bono. По сути практически то же самое, что делают GAFA корпорации, но публично и бесплатно без strings attached.


Статья была высоко оценена Хабром (+200). Но вот судя по числу донатов (7 человек) — команда любого такого проекта (даже если жить на 100 долларов в месяц и видеокарты и мотивацию брать с деревьев) на такую щедрость существовать не может.


Если вам нравятся наши публичные проекты — open_stt, silero-vad и silero-models — вы всегда можете поддержать нас напрямую или проектом. А вот лукавить и передергивать про "обоснование" пожалуйста не надо — из статьи очевидно следует, что у нас далеко идущие планы по развитию и публичного синтеза.

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

Мне почему-то показалось, что ваши слова о том, что вы прекращаете выкладывать модели, вызваны именно ситуацией описанной выше.

Еще раз приношу извинения, что написал неверно и показалось, что я вас в чем-то обвиняю.

Когда же мы сможем услышать подлинные слова Ленина о том, что надо верить всем цитатам из интернетов?

Когда?!
Что-то он запинается в начале, после слова «товарищи». Нельзя ли найти другую патефонную пластинку?

=)


Вообще интересен такой философский вопрос. Настоящих записей лидера мирового пролетариата было сделано буквально пара десятков. Тот факт, что мы можем сделать его голосом синтез и какие-то фразы звучат почти нормально — мне кажется чудом (но Хабр почему-то пропустил статью, я перестал понимать логику коллективного бессознательного Хабра).


Но если просто взять все почищенные и обработанные аудио и попросить актера повторить голос, то синтез вероятно получится сильно лучше и, вероятно, люди в слепом тесте выберут "поддельный".


Соответственно возникает вопрос — неужели, если мы это сделаем, мы тем самым косвенно примкнем к тем, что считает, что Земля — плоская?

Моим родителям года полтора назад уже звонили моим голосом (они уверяли, что звучит один в один) и просили денег, типа я на машине сбил человека. Они не повелись, т.к. 1) раньше уже был подобный прецедент, исполненный потопорнее, 2) мошенник где-то взял мой голос, но прокололся на том, что я за рулём авто почти не езжу.

А вообще я сам поигрался бы с таким движком. Программа-минимум - для розыгрыша друзей) Или сделать читалку книг с интересным мне голосом.

Чтоб сначала обучить программу, скармливая ей разные записанные фразы в wave-виде и рядом текстом набирая что именно было сказано (программа должна быть достаточно умна, чтоб правильно сопоставить конкретные миллисекунды записи с конкретными написанными мною текстовыми слогами). А потом чтобы могла говорить этим голосом любой введённый текст, разве что с доп.инструментарием для расставления ударений в словах и логических ударений и тона во фразе. Инструмент-то интересный.

Моим родителям года полтора назад уже звонили моим голосом (они уверяли, что звучит один в один)

Интересно. Это был динамический синтез, или просто фиксированное аудио из надерганных слов?
Люди старшего поколения, особенно в возрасте, иногда бывает и не на такое ведутся.


Чтоб сначала обучить программу, скармливая ей разные записанные фразы в wave-виде и рядом текстом набирая что именно было сказано (программа должна быть достаточно умна, чтоб правильно сопоставить конкретные миллисекунды записи с конкретными написанными мною текстовыми слогами). А потом чтобы могла говорить этим голосом любой введённый текст, разве что с доп.инструментарием для расставления ударений в словах и логических ударений и тона во фразе. Инструмент-то интересный.

По отдельности все эти задачи у нас естественно так или иначе решены, но планов пакетирования их в отдельное desktop приложение у нас нет. Да и с этической точки зрения мне это кажется уже в серой зоне будет.

Как именно было сделано - не могу сказать, для этого надо бы иметь запись того разговора, а без неё родители ничего толком не объяснять, просто "очень похоже" и всё.

Ну инструмент всё равно злоумышленники используют так или иначе.

Не уверен конечно, что там может быть прямо синтез, все-таки мороки с ним очень много.
Может максимум слили базу с возрастом и полом.


Ну или еще банальнее — записано 10 разных голосов по какому-то общему сценарию, и просто рандомом всем звонят, побирая по полу и возрасту. Если 1 клюнет — уже профит.

А для русского уже ударения можно не размечать?

Модели V2 содержат автопростановку ударений и ё.
Но она работает примерно для 95-97% случаев и не покрывает омографы.
Мы данные собрали, но не продвинулись дальше пока, к сожалению.

Спасибо, интересно.

А какие open source AI проекты стоит попробовать, чтобы поиграться с синтезом и распознаванием речи? Заработает ли это на Neural Compute Stick? (можно попробовать например робота говорящего сделать :)

Насчет проектов могу посоветовать наш — https://github.com/snakers4/silero-models


Насчет Neural Compute Stick — весьма маловероятно как мне кажется. Когда в прошлый раз узнавал что-то про эти дивайсы, там все еще все было плохо. Грубо говоря работали сетки от производителя дивайсов. Сейчас может конечно что-то поменялось.

Здравствуйте. Периодически юзаю ваш скрипт на колабе (baya_v2), голос нравится, действительно неплох. Но:

Во-первых, не всегда правильно ставит ударения. Даже в вашем примере он говорит: ядра кедрОв. Идея: можно прикрутить словарь ударений (такие в интернете есть). Конечно, не словарь Даля или Ожегова, а что-нибудь простое, часто употребляемое.

Во-вторых, иногда глючит, особенно если в предложении имеется аббревиатура. То есть, например, <обычные слова> <абракадабра> <обычные слова> он сперва читает нормально, потом на абракадабре зависает (3 секунды тишина), и дальше часть слов глотает и оставляет только конец. Цифры не читает. Идея: прикрутить что-то типа конвертёра чисел в фразу, а для аббревиатур сделать транслитерацию.

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

В-четвертых, обзавестись интерфейсом. Или не надо?

А так, спасибо за такой полезный проект, потому что a) такого красивого и милого ("няшного") голоса нет НИГДЕ. Вообще нигде. б) Это один из немногих ОТКРЫТЫХ проектов, который вырос из "механической тети" (все наверное слышали экранный диктор в винде, оставайтесь на линии, ваш звонок важен для нас и т.п.) в реалистичный голос.

Во-первых, не всегда правильно ставит ударения

Мы и не говорили, что она всегда их правильно ставит.
Мы работаем в этом направлении.
Если нужно идеально четко все поставить — там есть флаг для ручной подачи ударений и буквы ё.


Идея: прикрутить что-то типа конвертёра чисел в фразу, а для аббревиатур сделать транслитерацию.

Мы считаем, что разного рода middleware не должны быть частью открытого релиза.
В текущем релизе аббревиатуры и числа надо обрабатывать транскрипцией.
Если нужен продукт под конкретную ситуацию — мы предлагаем такие услуги на коммерческой основе.


В-третьих, качество довольно низкое, на уровне голосового сообщения.

22 или 32 kHz действительно звучит немного получше, но я бы не характеризовал 16 kHz как "низкое" качество. Скорее в V2 версии моделей, мы специально выложили модели более низкого качества, чем в V1. Речь вообще имеет мало частот выше 4 — 8 kHz, только обертона. Насчет того, делать ли модели с 32 kHz публичными я пока не решил. С другой стороны, мошенникам по телефону хватает и 8.


Относительно актуальные примеры приватных моделей можно найти тут:


https://soundcloud.com/alexander-veysov/sets/silero-private-hq-samples
https://soundcloud.com/alexander-veysov/sets/silero-private-hq-samples-2


В-четвертых, обзавестись интерфейсом. Или не надо?

Какая-то из моделей крутится здесь @silero_tts_bot в телеграме.

Потрясающий проект! Один из немногих доступных именно с русскоязычными моделями (даже мультиязычными и с хорошим качеством!!). Русский в вашей модели даже звучит лучше и приятнее чем LJSpeech в других английских такатронах2 (или он просто приелся, у них ведь стандарт - использовать LJ для демонстрации всего и вся).
Сборка с запуском буквальном с пары строчек и от одного pytorch - волшебно, после запусков flowtron от nvidia :D (где ещё нужно подобрать версиии всех модулей, чтобы они друг с другом не конфликтовали).

Прочитал обе ваших статьи. Совершенно справедливые замечания про черри-пики всех артефактов/косяков от исходника. Заметил, что Вы постоянно ставите целью "ускорить работу в 5-10 раз", что (невероятно), но удаётся!
Однако когда ради этого приходится жертвовать качеством голоса, теряется изначальная цель всех долгих обучений и обработок датасета.. Поэтому если есть возможность выложить не самые производительные, но более качественные модели, это было бы замечательно!
А насчёт мошенников.. Они всё равно найдут способ, до чтения этой статьи я как-то даже и не думал, что могут использовать в таком ключе синтез речи. Им ведь логичнее было бы предзаписать фразы живым голосом? Хотя я конечно не знаю, как они там работают :)

Берутся записи, которые удалось раздобыть, и банально их нарезают. То есть, из "привет, как дела! Хорошо на улице" можно сделать "на улице дела, пришел". Что за волшебная программка это делает? Audacity и FL studio, до компьютеров еще резали пленку. Даже над училками ржали, превращая их в няшек и накладывая на электронщину...

Так, мы опубликовали новую ультимативную версию нашего синтеза в нашей новой статье на Хабре - https://habr.com/ru/post/660565/, считайте это продолжение этой статьи


Краткое содержание:

  • Снизили размер модели в 2 раза;

  • Научили наши модели делать паузы;

  • Добавили один высококачественный голос (и бесконечное число случайных);

  • Ускорили наши модели где-то примерно в 10 раз (!);

  • Упаковали всех спикеров одного языка в одну модель;

  • Наши модели теперь могут принимать на вход даже целые абзацы текста;

  • Добавили функции контроля скорости и высоты речи через SSML;

  • Наш синтез работает сразу в трех частотах дискретизации на выбор — 8, 24 и 48 килогерц;

  • Решили детские проблемы наших моделей: нестабильность и пропуск слов, и добавили флаги для контроля ударения;

Статья почему пока собирает меньше, чем прошлые, хотя синтез там на порядок лучше, так что если вам были интересны прошлые версии синтеза, то прошу поддержать статью =)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации