LINUX.ORG.RU

Подскажите по TTS/ASR и окружению для них

 , , ,


0

2

Надо tts русского и английского текста, желательно со стабильным голосом и возможностью управлять ударением. Желательно ещё и ASR, но не обязательно в реальном времени и одновременно с tts.
Пользовать буду api запросами из python кода скармливая json и ожидая wav или наоборот.

По ресурсам у меня есть условные ryzen 3600, nvidia cmp50hx 20Gb VRAM одна штука и 32G RAM.

Лучшее что нашёл и что хотябы работает это sglang+higgs tts sgl-omni serve --model-path bosonai/higgs-audio-v3-tts-4b --allowed-local-media-path docs/_static/audio --port 8000 --mem-fraction-static 0.6 (mem-fraction-static чтобы «влезло в VRAM»)

Но «голосов нет», приходится пользоваться «voice cloning» логикой что работает не оч. стабильно, но лучше чем ничего. Не понял как выставлять ему ударения. И мне надо wav 8kHz, приходится потом ещё результат через sox прогонять.

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

Бегло разобрался как запустить piper_tts и kitten_tts на CPU, качество не устроило. «Быстро, но уши вянут такое слушать».

Вопросы:

  • Прошу примеров что гуглить в сторону «подсредника подготовки текста перед TTS», возможно та-же логика будет работать при ASR в постобработке распознанного.
  • Посоветуете что-то «полегче» для VRAM или может что запустится даже на CPU, но не сильно уступает по качеству?
  • Если кто-то пользует higgs-tts, подскажите как расставлять ударения.
  • Принимаю любые советы по реализации ASR т.к. вообще нет знаний.

Я может забегаю вперёд, но я видел одновременное tts и asr на одной nvidia 3060, я вроде и понимаю что для только одного языка можно найти модельки полегче и качеством похуже, но может я что-то пропустил в своём поиске.

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

★★★
Ответ на: комментарий от ptah_alexs

Хм, спорно. Сам осилил только запустить их минимальный пример, не понравилось.
Скормил ИИ с задачей сделать «API с крутилками голосов/качества» и вроде бы даже получилось более менее и работает только на CPU, для телефонии наверное хватит…

ASR у них репозиторий есть, но «archived» уже как 4 года, может и работает не смотрел пока.

Flotsky ★★★
() автор топика

Прошу примеров что гуглить в сторону «подсредника подготовки текста перед TTS», возможно та-же логика будет работать при ASR в постобработке распознанного.

То, что ИИ нашёл из примеров к silero работает, но всёравно ошибается в ударениях, теряет склонения/окончания и полностью игнорирует все английские символы.

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

Flotsky ★★★
() автор топика
Ответ на: комментарий от ptah_alexs

Бегло глянул, вечером подробнее всмотрюсь

Из первой ссылки разве что логику нормализации «одолжить/адаптировать»
Вторую ссылку мне фактически ИИ написал похожее, stress, num2words и ruaccent уже есть.

Закон подлости, когда искал примеры/готовое сам находил только заброшенное для silero v3

Flotsky ★★★
() автор топика
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария