Alle artikelen

· Casimiro Ferreira· 4 min leestijd

Introductie van phoonnx: het nieuwe TTS-framework van OpenVoiceOS

  • phoonnx
  • TTS
  • OVOS
  • ONNX
  • Phonemization

Deze blog werd oorspronkelijk gepubliceerd op de OpenVoiceOS-blog

phoonnx is nu het primaire Text-to-Speech-framework voor OpenVoiceOS — een complete stack voor training en inferentie, gebouwd op VITS en ONNX, ontworpen voor consistente, offline-gereede stemmen in elke taal die we ondersteunen.

Hoor het in actie: de Voices Demo draait phoonnx-stemmen live in uw browser — onnxruntime-web, zonder server.


Nieuwe taal: Introductie van het Baskisch!

Voortbouwend op ons eerdere werk aan Synthetische Stemmen Vanaf Nul Maken en onze Arabische TTS-samenwerking, zijn de nieuwste toevoegingen aan onze taalondersteuning stemmen voor het Baskisch (eu-ES).

Dit omvat zowel de mannelijke stem (Miro) als de vrouwelijke stem (Dii), waarmee we onze missie verder brengen om zelfs talen met weinig middelen te ondersteunen die geen open, hoogkwalitatieve TTS-opties hebben.

Voorheen was alleen een robotachtige vrouwelijke stem beschikbaar, via de AhoTTS-plugin, gemaakt in samenwerking met ILENIA.

Hoor de resultaten: Voorbeelden van de nieuwe open-source Baskische stemmen.

Miro (mannelijke stem): Luister naar Miro

Dii (vrouwelijke stem): Luister naar Dii


Een consistente stemidentiteit over talen heen

OpenVoiceOS heeft een consistente merkstem nodig: een standaard mannelijke en vrouwelijke persona die hetzelfde klinkt, ongeacht voor welke taal de assistent is geconfigureerd. Een gebruiker die OpenVoiceOS in Lissabon instelt en later naar het Duits overschakelt, moet dezelfde vertrouwde spreker horen.

TigreGotico bouwt en onderhoudt de phoonnx-engine, draagt de open trainingsdatasets bij en traint de standaard meertalige OVOS-stemmen — Miro (mannelijk) en Dii (vrouwelijk) — die deze belofte waarmaken.


Flexibiliteit in phonemizers

phoonnx is meer dan alleen een inferentietool; het is een compleet framework voor training en inferentie, gebouwd op de robuuste VITS-architectuur. Deze dubbele capaciteit stelt ons in staat om snel hoogkwalitatieve stemmen te prototypen, te trainen en uit te rollen.

Een sleutel tot deze flexibiliteit is het vermogen om diverse phonemizers te ondersteunen. Een phonemizer (of G2P — Grafeem-naar-Foneem-model) zet geschreven tekst om in de reeks klankeenheden (fonemen) die het TTS-model uitspreekt. Verschillende talen kunnen verschillende, gespecialiseerde phonemizers vereisen voor accurate spraak.

  • eSpeak-compatibiliteit: Een kernfunctie is dat phoonnx-modellen volledig compatibel zijn met de runtime van de populaire Piper TTS-engine, mits ze zijn getraind met de breed beschikbare eSpeak-phonemizer. Dit garandeert een eenvoudige uitrol binnen het bestaande OVOS-ecosysteem en projecten van derden zoals Home Assistant.
  • Ondersteuning voor aangepaste phonemizers: Het framework is niet beperkt tot eSpeak. Zo zijn de hoogkwalitatieve Galicische modellen, ontwikkeld door Proxecto Nós met de Cotovia-phonemizer, volledig compatibel en kunnen ze met de phoonnx-pipeline worden gebruikt.

Deze flexibiliteit stelt ons in staat om het werk van andere open-sourceprojecten te integreren en ervan te profiteren. Sterker nog, voor inferentie kan phoonnx met succes modellen gebruiken die oorspronkelijk door andere projecten zijn getraind, waaronder Coqui, Mimic3 en Piper.

Vervolgens: G2P-modellen op basis van ByT5

Vooruitkijkend werken we voortdurend aan het verbeteren van de G2P-nauwkeurigheid, vooral voor talen met weinig middelen. We ontwikkelen en testen momenteel G2P-modellen van de nieuwe generatie op basis van de krachtige ByT5-architectuur. Deze op transformers gebaseerde modellen beloven een nauwkeurigere en robuustere phonemization in een breder scala aan talen.

U kunt hun ontwikkeling hier volgen: G2P Models Collection.

In de nabije toekomst zal een speciale OVOS TTS-plugin voor phoonnx worden gemaakt en de standaard voor OpenVoiceOS worden, ter vervanging van de eerdere plugins: ovos-tts-plugin-piper en ovos-tts-plugin-nos.

In de tussentijd kunt u de nieuwe stemmen uitproberen via de bestaande plugin ovos-tts-plugin-piper

Het enige wat u hoeft te doen is de model-urls doorgeven in 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"
    }
  }

Voortgangsrapport: Beschikbare talen

Het gezamenlijke werk van de teams van OpenVoiceOS en TigreGotico heeft geresulteerd in een snelgroeiende bibliotheek van open-source TTS-modellen.

Momenteel ondersteunde talen:

  • Arabisch
  • Baskisch
  • Nederlands
  • Engels (VS/VK)
  • Frans
  • Duits
  • Italiaans
  • Portugees (Brazilië/Portugal)
  • Spaans

Doe mee en vind de modellen

We nodigen de gemeenschap uit om deze nieuwe bronnen te verkennen en te gebruiken.

BronBeschrijvingLink
Phoonnx-modellenDe nieuwe met phoonnx getrainde TTS-modellen in ONNX-formaat.phoonnx-tts-models
Piper/Phoonnx-stemmenDe volledige collectie OpenVoiceOS-stemmen die compatibel zijn met Piper.pipertts-voices
Open datasetsDatasets die zijn gebruikt om deze stemmen te trainen, ter bevordering van open-dataonderzoek.tts-datasets


Verken de volledige catalogus van modellen en datasets op Hugging Face: TigreGotico · OpenVoiceOS. Om data bij te dragen, open een issue of discussie op phoonnx.