Supertonic-3-Stimmen: woher eigene Stimmen kommen und wie Sie sie nutzen
Supertonic 3 ist ein kleines offenes Sprachsynthese-Modell, das auf einem gewöhnlichen Computer läuft. Es bringt zehn vordefinierte Stimmen mit, und jede weitere Stimme ist eine einzige kleine Datei, die Sie selbst hinzufügen. Mit dieser Datei entsteht Sprache in jeder der 31 Sprachen des Modells offline, auf Ihrer eigenen CPU oder GPU.
Dieser Leitfaden erklärt, was eine Supertonic-3-Stimme ist, woher eigene Stimmen kommen, seit das ursprüngliche Supertonic-Projekt archiviert ist, und wie Sie eine Stimme mit dem offiziellen Code, mit der SuperClonica-Engine und mit Docker verwenden. SuperClonica verkauft und trainiert solche Stimmen, deshalb sagen wir, wo es um unser Angebot geht.
Was eine Supertonic-3-Stimme ist
Eine Supertonic-3-Stimme ist ein Stimmstil: eine JSON-Datei von etwa 0,3 MB mit zwei kleinen Zahlensätzen. Der eine prägt Klangfarbe und Sprechweise, der andere Tempo und Pausen. Das Modell selbst, etwa 385 MB ONNX-Dateien, ist für alle Stimmen gleich und wird einmal heruntergeladen.
Weil die Stimme vom Modell getrennt ist, kostet ein Wechsel nichts: Dieselbe Installation spricht mit jeder Stimmdatei, die Sie ihr übergeben. Eine Stimme funktioniert außerdem in allen Sprachen des Modells, von Englisch, Spanisch und Deutsch bis Russisch, Japanisch, Koreanisch, Arabisch und Hindi. Am natürlichsten klingt sie in der Sprache der Aufnahme, aus der sie entstanden ist. Chinesisch gehört nicht zu den 31 Sprachen.
Woher Sie Supertonic-3-Stimmen bekommen
Die zehn vordefinierten Stimmen, M1 bis M5 und F1 bis F5, gehören zum Modell. Für alle anderen gibt es mehrere Quellen.
- Kostenlose Stimmen auf GitHub: Das Repository superclonica/supertonic-voices enthält kostenlose Stimmdateien mit Hörproben in neun Sprachen.
- Der SuperClonica-Katalog: über 170 Stimmen, darunter Spiel- und Zeichentrickfiguren, Sprecher, Männer-, Frauen- und Kinderstimmen. Jede Stimmseite hat Demos und lässt Sie online kostenlos einen eigenen kurzen Satz vertonen; kostenlose Stimmen laden Sie ohne Konto herunter, kostenpflichtige kaufen Sie einmal.
- Eine Stimme auf Bestellung: Auf der Auftragsseite beschreiben Sie die Stimme und hängen eine Aufnahme an, und ein Autor trainiert sie für Sie.
- Ihre eigene Stimme: SuperClonica trainiert eine Stimme aus einer kurzen, sauberen Aufnahme kostenlos auf Ihrer eigenen NVIDIA-GPU, mit unserem Worker-Programm.
- Voice Builder, der frühere Dienst von Supertone für eigene Stimmen, gehört nicht zum archivierten Projekt, neue Stimmen lassen sich dort also nicht mehr erstellen.
Eine Stimme mit dem offiziellen Supertonic-Code nutzen
Das archivierte Supertonic-Repository funktioniert weiterhin. Klonen Sie es, legen Sie eine virtuelle Python-3.11-Umgebung an, installieren Sie huggingface_hub und laden Sie das Modell mit hf download supertone-oss-archive/supertonic-3 --local-dir assets in den Ordner assets (der Schnellstart des Projekts nennt die genaue Revision). Installieren Sie danach die Pakete aus py/requirements.txt.
Um mit einer eigenen Stimme zu sprechen, starten Sie das Beispielskript im Ordner py und übergeben die Stimmdatei: python example_onnx.py --voice-style ./voice.json --text "Ihr Text" --lang de --n-test 1. Die WAV-Datei erscheint im Ordner results. Für eine andere Sprache ändern Sie --lang, etwa zu en oder ja.
Eine Stimme mit der SuperClonica-Engine nutzen
SuperClonica ist unsere Engine auf Basis von Supertonic 3. Sie liest dieselben Stimmdateien ohne Umwandlung, ist nach unseren Messungen im Schnitt 61 % schneller auf der CPU und 73 % schneller auf der Grafikkarte, entfernt das Rauschen des Modells zwischen den Wörtern und spricht Zahlen als Wörter.
Installieren Sie ein Paket: python -m pip install superclonica-cpu oder superclonica-gpu-cuda für eine NVIDIA-GPU. In Python erstellen Sie die Engine einmal und rufen tts.synthesize("Hallo!", voice="voice.json", lang="de", seed=7) auf, danach tts.save("hello.wav", audio). Auf der Kommandozeile: superclonica --text "Hallo!" --voice voice.json --lang de --output hello.wav. Das Basismodell wird beim ersten Start heruntergeladen.
Eine Stimme in Docker nutzen
Das Image superclonica/superclonica auf Docker Hub betreibt die Engine als HTTP-Server: docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu, oder das Tag cuda mit --gpus all auf einer NVIDIA-GPU.
Eine Anfrage an POST /synthesize enthält Text, Sprache und Stimme: Der Inhalt der Stimm-JSON steht direkt in der Anfrage. Da eine Stimme etwa 0,3 MB groß ist, stellen Sie die Anfrage am besten in einer Datei zusammen und senden sie mit curl -d @request.json. Die Antwort ist eine 16-Bit-WAV-Datei.
Tipps für gute Ergebnisse
Ein paar Gewohnheiten holen das Beste aus einer Stimme heraus.
- Geben Sie die Sprache des Textes an, nicht die der Stimme: Eine russische Stimme liest englischen Text mit lang=en.
- Legen Sie einen Seed fest, wenn Ihnen ein Take gefällt: Derselbe Text, dieselbe Stimme und derselbe Seed ergeben wieder dieselbe Aufnahme.
- Schreiben Sie Zahlen, Daten und Abkürzungen im offiziellen Code so, wie sie klingen sollen; die SuperClonica-Engine spricht Zahlen selbst aus.
- Teilen Sie lange Texte in Absätze. Die SuperClonica-Engine macht das selbst und vertont lange Texte in kurzen Stücken, damit Wörter seltener wiederholt oder abgeschnitten werden.
- Hören Sie vor dem Kauf die Demos: Eine Stimme behält den Charakter ihrer Aufnahme, einschließlich des Akzents.
Stimmen realer Personen und die Regeln des Modells
Einige Katalogstimmen sind von bekannten Personen inspiriert. Es sind nicht ihre echten Stimmen, und die Personen haben nicht mitgewirkt, geben Sie solche Aufnahmen also nicht als ihre echten Worte aus.
Supertonic 3 steht unter der Lizenz BigScience Open RAIL-M, und ihre Nutzungsbeschränkungen gelten für jede Stimme: Geben Sie sich ohne Zustimmung nicht als jemand anderes aus, täuschen oder belästigen Sie niemanden mit Sprachausgabe und weisen Sie darauf hin, dass der Ton maschinell erzeugt ist, wo das wichtig ist.