Все статьи

· Casimiro Ferreira· 3 мин чтения

Представляем phoonnx: новый фреймворк TTS для OpenVoiceOS

  • phoonnx
  • TTS
  • OVOS
  • ONNX
  • Phonemization

Эта статья была первоначально опубликована в блоге OpenVoiceOS

phoonnx теперь основной фреймворк синтеза речи для OpenVoiceOS — полный стек обучения и вывода, построенный на VITS и ONNX, спроектированный для согласованных, готовых к работе офлайн голосов на всех поддерживаемых нами языках.

Послушайте в действии: демо голосов воспроизводит голоса phoonnx вживую прямо в вашем браузере — onnxruntime-web, без сервера.


Новый язык: представляем баскский!

Опираясь на нашу предыдущую работу над созданием синтетических голосов с нуля и наше сотрудничество по арабскому TTS, новейшие пополнения нашей языковой поддержки — это голоса для баскского (eu-ES).

Сюда входят как мужской голос (Miro), так и женский голос (Dii), что продвигает нашу миссию по поддержке даже малоресурсных языков, у которых нет открытых, высококачественных вариантов TTS.

Ранее был доступен только роботизированный женский голос — через плагин AhoTTS, созданный в сотрудничестве с ILENIA.

Послушайте результаты: примеры новых баскских голосов с открытым исходным кодом.

Miro (мужской голос): Послушать Miro

Dii (женский голос): Послушать Dii


Единый образ голоса для всех языков

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

TigreGotico создаёт и поддерживает движок phoonnx, предоставляет открытые обучающие датасеты и обучает многоязычные голоса OVOS по умолчанию — Miro (мужской) и Dii (женский), — которые выполняют это обязательство.


Гибкость фонемизаторов

phoonnx — это больше, чем просто инструмент вывода; это полноценный фреймворк обучения и вывода, построенный на надёжной архитектуре VITS. Эта двойная возможность позволяет нам быстро прототипировать, обучать и разворачивать высококачественные голоса.

Ключ к этой гибкости — способность поддерживать разнообразные фонемизаторы. Фонемизатор (или модель G2P — grapheme-to-phoneme) преобразует письменный текст в последовательность звуковых единиц (фонем), которые произносит модель TTS. Разным языкам могут требоваться разные, специализированные фонемизаторы для точной речи.

  • Совместимость с eSpeak: ключевая особенность в том, что модели phoonnx полностью совместимы со средой выполнения популярного движка Piper TTS, при условии, что они были обучены с использованием широко распространённого фонемизатора eSpeak. Это обеспечивает лёгкое развёртывание в существующей экосистеме OVOS и сторонних проектах, таких как Home Assistant.
  • Поддержка пользовательских фонемизаторов: фреймворк не ограничен eSpeak. Например, высококачественные галисийские модели, разработанные Proxecto Nós с использованием фонемизатора Cotovia, полностью совместимы и могут использоваться с конвейером phoonnx.

Эта гибкость позволяет нам интегрировать и извлекать пользу из работы других проектов с открытым исходным кодом. Более того, для вывода phoonnx может успешно использовать модели, изначально обученные другими проектами, включая Coqui, Mimic3 и Piper.

Далее: G2P-модели на основе ByT5

Заглядывая вперёд, мы постоянно работаем над повышением точности G2P, особенно для малоресурсных языков. Сейчас мы разрабатываем и тестируем G2P-модели нового поколения на основе мощной архитектуры ByT5. Эти модели на базе трансформеров обещают обеспечить более точную и надёжную фонемизацию для более широкого диапазона языков.

Вы можете следить за их разработкой здесь: коллекция G2P-моделей.

В ближайшем будущем для phoonnx будет создан отдельный плагин OVOS TTS, который станет плагином по умолчанию для OpenVoiceOS, заменив предыдущие плагины: ovos-tts-plugin-piper и ovos-tts-plugin-nos.

А пока вы можете попробовать новые голоса через существующий плагин ovos-tts-plugin-piper

Всё, что нужно сделать, — передать URL моделей в mycroft.conf

  "tts": {
    "module": "ovos-tts-plugin-piper",
    "ovos-tts-plugin-piper": {
      "model": "https://huggingface.co/OpenVoiceOS/phoonnx_eu-ES_miro_espeak/resolve/main/miro_eu-ES.onnx",
      "model_config": "https://huggingface.co/OpenVoiceOS/phoonnx_eu-ES_miro_espeak/resolve/main/miro_eu-ES.piper.json"
    }
  }

Отчёт о прогрессе: доступные языки

Совместная работа команд OpenVoiceOS и TigreGotico привела к быстро расширяющейся библиотеке TTS-моделей с открытым исходным кодом.

Поддерживаемые в настоящее время языки:

  • Арабский
  • Баскский
  • Нидерландский
  • Английский (US/GB)
  • Французский
  • Немецкий
  • Итальянский
  • Португальский (Бразилия/Португалия)
  • Испанский

Присоединяйтесь и найдите модели

Мы приглашаем сообщество изучить и использовать эти новые ресурсы.

РесурсОписаниеСсылка
Модели PhoonnxНовые обученные phoonnx TTS-модели в формате ONNX.phoonnx-tts-models
Голоса Piper/PhoonnxПолная коллекция голосов OpenVoiceOS, совместимых с Piper.pipertts-voices
Открытые датасетыДатасеты, использованные для обучения этих голосов, продвигающие исследования открытых данных.tts-datasets


Изучите полный каталог моделей и датасетов на Hugging Face: TigreGotico · OpenVoiceOS. Чтобы внести данные, откройте issue или обсуждение на phoonnx.