- Pocket TTS mit 100 Millionen Parametern ist ein leichtgewichtiges Text-to-Speech-Modell mit Voice-Cloning-Funktion, das selbst auf gewöhnlichen Laptop-CPUs in Echtzeit laufen kann
- Es verringert die Leistungslücke zwischen bestehenden großen LLM-basierten TTS-Systemen (mehr als 1 Milliarde Parameter) und kleinem Kokoro TTS (82 Millionen Parameter) und erreicht gleichzeitig hohe Qualität und Effizienz
- Mit nur einem Sprachsample von etwa 5 Sekunden lassen sich Stimmfarbe, Emotion, Intonation und akustische Bedingungen eines Sprechers präzise nachbilden
- Durch eine Architektur auf Basis eines Continuous Audio Language Model werden kontinuierliche latente Vektoren statt diskreter Tokens direkt vorhergesagt, wodurch die Modellgröße ohne Qualitätsverlust reduziert wird
- Als Open Source unter MIT-Lizenz veröffentlicht, setzt es einen neuen Maßstab für leichtgewichtige TTS-Technologie, die hochwertige Sprachsynthese auch in CPU-Umgebungen ermöglicht
Überblick über Pocket TTS
- Pocket TTS ist ein Text-to-Speech-Modell mit 100 Millionen Parametern, das Voice Cloning unterstützt
- Kann selbst auf Laptop-CPUs in Echtzeit ausgeführt werden
- Lokale Ausführung per Befehl
uvx pocket-tts serveoderuvx pocket-tts generate
- Entwickelt von Kyutai und als Open Source unter der MIT-Lizenz veröffentlicht
- Für das Training wurden ausschließlich öffentliche englische Sprachdatensätze verwendet
- Eine mögliche Erweiterung mit zusätzlichen nicht öffentlichen Daten wird erwähnt
Vergleich mit bestehenden TTS-Modellen
- Die aktuelle TTS-Technologie lässt sich in zwei Kategorien einteilen
- Große LLM-basierte Modelle: z. B. Kyutai TTS 1.6B (ca. 1,6 Milliarden Parameter)
- Können vielfältige Stimmen, Emotionen und akustische Bedingungen modellieren, benötigen jedoch eine GPU
- Kleine spezialisierte Modelle: z. B. Kokoro TTS (82 Millionen Parameter)
- Arbeiten effizient mit einem festen Stimmenset und einer manuell aufgebauten Pipeline, sind aber in ihrer Flexibilität eingeschränkt
- Große LLM-basierte Modelle: z. B. Kyutai TTS 1.6B (ca. 1,6 Milliarden Parameter)
- Pocket TTS besetzt die Mittelposition zwischen diesen beiden Ansätzen und ermöglicht hochwertige Sprachsynthese auf der CPU
Leistungsbewertung
- Die Evaluierung wurde mit dem Librispeech test-clean set durchgeführt
- Die Audioeingaben wurden mit Adobe Enhance Speech aufbereitet, um 24-kHz-Qualität sicherzustellen
- Vergleichsmodelle: F5-TTS, DSM, Chatterbox Turbo, Kokoro TTS
- Bewertungsmetriken:
- Word Error Rate (WER)
- Audioqualität (ELO)
- Sprecherähnlichkeit (ELO)
- Zusammenfassung der Ergebnisse:
- Pocket TTS erreicht mit WER 1,84 die niedrigste Fehlerrate
- Die Audioqualität ist besser als bei F5-TTS und DSM
- Die Sprecherähnlichkeit liegt auf dem Niveau der Referenzstimme
- Es ist das einzige Modell, das auf der CPU schneller als in Echtzeit läuft
| Modell | Parameterzahl | WER ↓ | Audioqualität (ELO) ↑ | Sprecherähnlichkeit (ELO) ↑ | CPU-Echtzeitbetrieb |
|---|---|---|---|---|---|
| F5-TTS | 336M | 2.21 | 1949 ± 27 | 1946 ± 26 | ✗ |
| Kyutai TTS 1.6B | 750M | 1.84 | 1959 ± 25 | 2037 ± 21 | ✗ |
| Chatterbox Turbo | 350M | 3.24 | 2055 ± 23 | 2012 ± 22 | ✗ |
| Kokoro | 82M | kein Voice Cloning | kein Voice Cloning | ✓ | |
| Pocket TTS | 100M | 1.84 | 2016 ± 25 | 1898 ± 26 | ✓ |
- Bei Tests auf Intel Core Ultra 7 165H und Apple M3 konnten nur Pocket TTS und Kokoro in Echtzeit synthetisieren
Architektur
- Pocket TTS wurde auf Grundlage der Forschung zu Continuous Audio Language Models entworfen
- Während bisherige Ansätze diskrete Audio-Tokens vorhersagen, prognostiziert Pocket TTS direkt kontinuierliche latente Vektoren (latents)
- Dadurch werden RQ-Transformer-Engpässe beseitigt und ein leichtgewichtiges Modell ermöglicht
Neural Audio Codec
- Entworfen auf Basis des Mimi-Codecs
- Mimi komprimiert in diskrete Tokens, Pocket TTS verwendet jedoch kontinuierliche latente Repräsentationen
- Eingesetzt wird ein VAE-Training mit Normalisierung auf eine Gauß-Verteilung
- WavLM wird per Kosinus-Ähnlichkeitsverlust in die interne Repräsentation destilliert
- Die RVQ-Stufe wird entfernt und der Destillationsverlust auf die gesamte latente Repräsentation angewendet
Generatives Modell
- Basiert auf dem Masked Autoregressive (MAR)-Framework
- Besteht aus einem Causal-Transformer-Backbone und einem MLP-Sampler
- Verwendet Lagrangian Self-Distillation (LSD)-Loss für 1-Step-Sampling
- Während der Inferenz werden die vorhergesagten latenten Vektoren autoregressiv zurückgeführt
Konditionierung durch Sprache und Text
- Die Modelleingabe kombiniert einen Sprachprompt (einige Sekunden) mit Text
- Sprache wird über den Codec-Encoder eingebettet, Text über einen SentencePiece-Tokenizer
Zusammensetzung der Modellgröße
- Generatives Modell (Transformer + MLP): 90 Millionen Parameter
- Codec-Decoder: 10 Millionen Parameter
- Codec-Encoder: 18 Millionen Parameter (wird beim Kodieren des Sprachsamples nur einmal verwendet)
Trainingsdaten
- Ausschließlich öffentliche englische Sprachdatensätze, insgesamt 88.000 Stunden
- AMI, EARNINGS22, GIGASpeech, SPGISpeech, TED-LIUM, VoxPopuli, LibriHeavy, Emilia
Wichtige technische Beiträge
Head Batch Multiplier
- Zur Entschärfung des Rechenengpasses im Transformer wird der z-Vektor mehrfach wiederverwendet
- Für jede Eingabesequenz wird z einmal berechnet und für 8 Loss-Berechnungen wiederverwendet
- Dies verbessert Effizienz und Trainingsstabilität
Gaussian Temperature Sampling
- Auch im kontinuierlichen Raum wird eine Sampling-Temperatursteuerung angewendet
- Durch die Reduzierung der Gaußschen Rauschvarianz wird die Qualität verbessert
- Gute Ergebnisse wurden bei Temperatur 0.7 bestätigt
Latent Classifier-Free Guidance (Latent CFG)
- Das bestehende CFG wird auf der Ebene der latenten Variablen (z) angewendet
- Konditionierte und unkonditionierte Ausgaben werden linear kombiniert, um die Qualität zu verbessern
- Verwendet wird α=1.5
- Ein ähnliches Konzept taucht auch in der Forschung zu SoundReactor auf
Distillation
- Ein CFG-Modell als Lehrermodell wird verwendet, um in ein leichtgewichtiges Schülermodell zu destillieren
- Der MLP-Head des Lehrermodells wird fixiert, und das Schülermodell lernt z mit L2-Loss
- Eine Verkleinerung von einem 24-Layer-Lehrermodell auf ein 6-Layer-Schülermodell ist möglich
Fazit
- Pocket TTS ist ein leichtgewichtiges TTS-Modell, das hochwertige Sprachsynthese in Echtzeit auf der CPU ermöglicht
- Es kombiniert eine Architektur auf Basis kontinuierlicher latenter Räume, effiziente Trainingsmethoden und Voice Cloning
- Als Open Source unter MIT-Lizenz veröffentlicht, bietet es Entwicklern und Forschern Reproduzierbarkeit und Erweiterbarkeit
4 Kommentare
Es scheint nicht viele offene TTS-Modelle mit Unterstützung für Koreanisch zu geben.
Vom früher veröffentlichten Kokoro-82M hieß es zwar, dass es Koreanisch unterstützt, aber ich habe gehört, dass die Qualität wohl nicht besonders gut sein soll.
Wenn ich kurz suche, heißt es außerdem, dass man mit GPT-Sovits etwas bauen und nutzen kann oder mit etwas wie Edge-TTS wohl einigermaßen brauchbare Ergebnisse bekommt.
In letzter Zeit mache ich viel Vibe-Coding, und wenn man das mit Whisper kombiniert, könnte vielleicht etwas Interessantes dabei herauskommen, aber mir fehlt noch die Idee, haha.
Kürzlich hat Supertonic ein Modell veröffentlicht, das sogar Koreanisch unterstützt — schauen Sie es sich mal an.
Ich habe auch eine One-Click-Bibliothek dafür erstellt!
https://www.npmjs.com/package/easy-supertonic-tts
Sieht toll aus. Aber beim Erstellen wäre es gut, wenn auch die Adressen der benötigten Ressourcen dabeistünden. Ich kann es nicht einfach blind installieren, haha.
Hacker-News-Kommentare
Ich freue mich riesig, dass mein Beitrag so viel Aufmerksamkeit bekommen hat
Ich bin Teil eines Teams in Paris, das Enterprise-Sprachlösungen auf Basis der Kyutai-Forschung entwickelt
Wenn hier jemand in diesem Bereich etwas baut, würde ich gern kommende Modelle und Features teilen
Meldet euch gern über die E-Mail in meinem Profil
Während ich die lange Fallstudie gelesen habe, wurde mir klar, dass ich eine Browser-Erweiterung brauche, also habe ich selbst ein Browser-Interface gebaut
Das Ergebnis ist Pocket Reader
Ich fand es interessant und habe direkt einen MCP-Server daraus gemacht, damit Claude meldet, wenn eine Aufgabe fertig ist
speak_when_done
Ich habe auch ein ähnliches Tool gebaut und den
say-Befehl als Hintergrundprozess laufen lassen, hatte aber Schwierigkeiten, konsequent eine gute Stimme einzustellenDiese natürlich klingende Stimme scheint irgendwo versteckt zu sein
speak-mcp
Ich werde jetzt auch deinen Server ausprobieren
Diesmal ist die Codequalität wirklich gut
Normalerweise sind die Codebases neuer Modelle voller unnötigem Dependency Dump, aber diesmal ist es auch aus Software-Engineering-Sicht hervorragend
Danke fürs Teilen! Ich bin ein Kokoro-Fan und habe mir selbst einen lokalen Sprachassistenten gebaut
ova-Projekt
Ich werde Pocket TTS auf jeden Fall ausprobieren
Pocket TTS ist allerdings geschlossen, daher kann ich die Voice-Cloning-Funktion nicht prüfen
Ich frage mich nur, ob es auf mlx basiert oder auf Hugging Face transformers
Ich frage mich, ob sich dieses Projekt als kleine statische Binärdatei ausliefern lässt
Im Moment sind die Abhängigkeiten ziemlich groß
Gefällt mir wirklich sehr
Allerdings steht dort MIT-Lizenz, aber im README gibt es einen separaten Abschnitt zu verbotener Nutzung (Prohibited Use), daher bin ich unsicher, ob das nicht zu unfreier Software wird
Wie Bilder oder Sounds werden auch ML-Modelle möglicherweise nicht als Software betrachtet
Dieselbe Verbotsklausel steht auch in der Hugging-Face-Model-Card
Daher könnten die Verbote im README rechtlich im Widerspruch dazu stehen
Ich habe auf einem M1 Mac
uvx pocket-tts serveausgeführtZum Test habe ich es den ersten Absatz aus Eine Geschichte aus zwei Städten lesen lassen, und bei der Javert-Stimme gab es das Problem, dass mitten im Satz Teile übersprungen wurden
Zum Beispiel wurde eine Passage wie „it was the age of foolishness“ ausgelassen
Das mindert das Vertrauen
Das betreffende Issue habe ich hier gemeldet
Ich habe bisher nicht viele Sprachmodelle benutzt, aber durch Pocket TTS habe ich unmute.sh kennengelernt
Es ist Open Source und scheint vom selben Unternehmen zu stammen
Diese Modelle wirken so, als ließen sie sich auch in einer Homelab-Umgebung kostengünstig sinnvoll einsetzen
Open-Source-Modelle haben insgesamt ein so hohes Niveau erreicht, dass es für fast jeden Zweck etwas gibt
Der einzige Bereich mit echter verbleibender Einstiegshürde scheinen Coding-Modelle zu sein
Es wäre spannend, ob Deepseek 4 Claude Sonnet schlagen kann
Ich habe es in mein Codex-Plugin integriert, sodass nach jedem Turn eine Zusammenfassung vorgelesen wird, und es funktioniert erstaunlich gut
Auf meinem MacBook läuft es viel flüssiger als Samantha
agentify-sh/speak