Neue Version des Sprachsynthesesystems Silero

Eine neue öffentliche Version des Silero Text-to-Speech-Sprachsynthesesystems für neuronale Netzwerke ist verfügbar. Ziel des Projekts ist in erster Linie die Schaffung eines modernen, qualitativ hochwertigen Sprachsynthesesystems, das kommerziellen Lösungen von Konzernen in nichts nachsteht und ohne den Einsatz teurer Serverausrüstung für jedermann zugänglich ist.

Die Modelle werden unter der GNU AGPL-Lizenz vertrieben, das Unternehmen, das das Projekt entwickelt, gibt jedoch den Mechanismus zum Trainieren der Modelle nicht bekannt. Zur Ausführung können Sie PyTorch und Frameworks verwenden, die das ONNX-Format unterstützen. Die Sprachsynthese in Silero basiert auf der Verwendung tiefgreifend modifizierter moderner neuronaler Netzwerkalgorithmen und digitaler Signalverarbeitungsmethoden.

Es wird darauf hingewiesen, dass das Hauptproblem moderner neuronaler Netzwerklösungen für die Sprachsynthese darin besteht, dass sie oft nur in kostenpflichtigen Cloud-Lösungen verfügbar sind und öffentliche Produkte hohe Hardwareanforderungen stellen, von geringerer Qualität sind oder nicht vollständig und einsatzbereit sind Produkte. Um beispielsweise eine der neuen beliebten End-to-End-Synthesearchitekturen, VITS, reibungslos im Synthesemodus auszuführen (also nicht für das Modelltraining), sind Grafikkarten mit mehr als 16 Gigabyte VRAM erforderlich.

Entgegen dem aktuellen Trend laufen Silero-Lösungen sogar auf 1 x86-Thread eines Intel-Prozessors mit AVX2-Anweisungen erfolgreich. Auf 4 Prozessor-Threads ermöglicht die Synthese eine Synthese von 30 bis 60 Sekunden pro Sekunde im 8-kHz-Synthesemodus, im 24-kHz-Modus - 15-20 Sekunden und im 48-kHz-Modus - etwa 10 Sekunden.

Hauptmerkmale der neuen Silero-Version:

  • Die Modellgröße wurde um das Zweifache auf 2 Megabyte reduziert;
  • Models wissen, wie man innehält;
  • Es stehen 4 hochwertige Stimmen auf Russisch zur Verfügung (und unendlich viele zufällige Stimmen). Aussprachebeispiele;
  • Die Modelle sind 10-mal schneller geworden und ermöglichen beispielsweise im 24-kHz-Modus die Synthese von bis zu 20 Sekunden Audio pro Sekunde auf 4 Prozessor-Threads;
  • Alle Sprachoptionen für eine Sprache sind in einem Modell zusammengefasst;
  • Modelle können ganze Textabsätze als Eingabe akzeptieren, SSML-Tags werden unterstützt;
  • Die Synthese funktioniert gleichzeitig in drei wählbaren Abtastfrequenzen – 8, 24 und 48 Kilohertz;
  • „Kinderprobleme“ wurden gelöst: Instabilität und fehlende Wörter;
  • Flags hinzugefügt, um die automatische Platzierung von Akzenten und die Platzierung des Buchstabens „е“ zu steuern.

Derzeit sind für die neueste Version der Synthese 4 Stimmen auf Russisch öffentlich verfügbar, aber in naher Zukunft wird die nächste Version mit den folgenden Änderungen veröffentlicht:

  • Die Syntheserate erhöht sich noch einmal um das 2- bis 4-fache;
  • Synthesemodelle für CIS-Sprachen werden aktualisiert: Kalmückisch, Tatarisch, Usbekisch und Ukrainisch;
  • Modelle für europäische Sprachen werden hinzugefügt;
  • Modelle für indische Sprachen werden hinzugefügt;
  • Modelle für Englisch werden hinzugefügt.

Einige der mit der Silero-Synthese verbundenen Systemausfälle:

  • Im Gegensatz zu traditionelleren Syntheselösungen wie RHVoice verfügt die Silero-Synthese nicht über eine SAPI-Integration, einfach zu installierende Clients oder Integrationen für Windows und Android;
  • Obwohl die Geschwindigkeit für eine solche Lösung beispiellos hoch ist, reicht sie für eine spontane Synthese auf schwachen Prozessoren bei hoher Qualität möglicherweise nicht aus;
  • Die Auto-Akzent-Lösung verarbeitet keine Homographen (Wörter wie „Castle“ und „Castle“) und macht immer noch Fehler, dies wird jedoch in zukünftigen Versionen korrigiert;
  • Die aktuelle Version der Synthese funktioniert nicht auf Prozessoren ohne AVX2-Anweisungen (oder Sie müssen die PyTorch-Einstellungen speziell ändern), da eines der Module im Modell quantisiert ist;
  • Die aktuelle Version der Synthese hat im Wesentlichen eine einzige PyTorch-Abhängigkeit; das gesamte Stuffing ist in den Modell- und JIT-Paketen „fest verdrahtet“. Die Quellcodes der Modelle werden nicht veröffentlicht, ebenso der Code zum Ausführen von Modellen von PyTorch-Clients für andere Sprachen;
  • Libtorch, verfügbar für mobile Plattformen, ist viel umfangreicher als die ONNX-Laufzeit, eine ONNX-Version des Modells ist jedoch noch nicht verfügbar.

Source: opennet.ru

Kommentar hinzufügen