Allgemeine Einführung
Kokoro WebGPU ist die WebGPU-Version des Kokoro Text-to-Speech (TTS)-Modells, das von der WebML-Community auf der Hugging Face-Plattform bereitgestellt wird. WebGPU ist eine moderne Grafik- und Berechnungs-API, die hochleistungsfähige Berechnungsaufgaben im Browser ermöglicht. Das Kokoro WebGPU-Modell wurde entwickelt, um Benutzern schnelle und zuverlässige Text-zu-Sprache-Dienste für eine Vielzahl von Anwendungsszenarien zu bieten, wie z.B. Hörbücher, Podcasts Lehrvideos, etc.
Kokoro ist ein Open-Source-TTS-Modell mit 82 Millionen Parametern. Trotz seiner leichtgewichtigen Architektur ist Kokoro in Bezug auf die Qualität der Sprachsynthese mit größeren Modellen vergleichbar und bietet gleichzeitig Geschwindigkeits- und Kostenvorteile. Kokoro ist unter der Apache 2.0-Lizenz lizenziert, wodurch es in einer Vielzahl von Umgebungen frei eingesetzt werden kann, sowohl in der Produktion als auch für persönliche Projekte.
Funktionsliste
- Effiziente Text-to-SpeechLeistungsstarke Text-zu-Sprache-Umwandlung mit WebGPU-Technologie.
- Der Browser läuft: Keine zusätzliche Software zu installieren, läuft direkt in Ihrem Browser.
- Mehrsprachige UnterstützungUnterstützt die Umwandlung von Text in Sprache in mehreren Sprachen.
- Echtzeit-ReaktionBietet schnelle Reaktionszeiten für Echtzeitanwendungen.
- Unterstützung der Open-Source-GemeinschaftUnterstützt von der WebML-Community können Benutzer an den Diskussionen und der Entwicklung der Community teilnehmen.
Hilfe verwenden
Beispielcode zur Ausführung in einem Browser
Um Kokoro in Ihrem Browser zu verwenden, müssen Sie zunächst das kokoro-js
Bibliothek.
npm install kokoro-js
Die Stimme kann dann mit folgendem Code erzeugt werden:
importiere { KokoroTTS } von "kokoro-js".
const model_id = "onnx-community/Kokoro-82M-v1.0-ONNX";
const tts = await KokoroTTS.from_pretrained(model_id, {
dtype: "q8", // optionale Werte: "fp32", "fp16", "q8", "q4", "q4f16"
device: "wasm", // Optionale Werte: "wasm", "webgpu" (web) oder "cpu" (node). Wenn "webgpu" verwendet wird, wird dtype="fp32" empfohlen.
});
const text = "Das Leben ist wie eine Schachtel Pralinen, man weiß nie, was man bekommt." ;
const audio = await tts.generate(text, {
// Verwenden Sie `tts.list_voices()`, um alle verfügbaren Stimmen aufzulisten
Stimme: "af_heart", {
});
audio.save("audio.wav"); }
Der obige Code läuft in einer Browserumgebung und nutzt die WebGPU-Technologie für eine effiziente Sprachsynthese.
Python-Code
In einer Python-Umgebung können Sie die kokoro
Bibliothek für Sprachsynthese.
# Installation von kokoro und soundfile
!pip install kokoro>=0.7.11 soundfile
# install espeak-ng für englisches OOD Fallback und einige nicht-englische Sprachen
!apt-get -qq -y install espeak-ng > /dev/null 2>&1
von kokoro importieren KPipeline
aus IPython.display importieren display, Audio
importiere soundfile as sf
# Initialisierung der Pipeline
pipeline = KPipeline(lang_code='a') # 'a' für amerikanisches Englisch
text = '''
Der Himmel hatte die Farbe eines Fernsehers, der auf einen Kanal ohne Signal eingestellt war.
"Es ist nicht so, dass ich etwas benutze", hörte Keith jemanden sagen, als er sich durch die Menschenmenge am Eingang von Chat zwängte. Es ist, als hätte mein Körper einen massiven Drogenmangel entwickelt."
Es war eine große Stadt voller Geräusche und Witze. Das Chatsubo war eine Bar für Berufstätige aus dem Ausland; man konnte dort die ganze Woche über trinken und kein einziges Wort Japanisch hören.
'''
# Erzeugen und Speichern des Audios
generator = pipeline(
text, voice='af_heart', # Stimme ändern
speed=1, split_pattern=r'\n+'
)
for i, (gs, ps, audio) in enumerate(generator):
print(i) # index
print(gs) # Zeichen
ausdrucken(ps) # Phonem
display(Audio(data=audio, rate=24000, autoplay=i==0))
sf.write(f'{i}.wav', audio, 24000) # jede Audiodatei speichern
Der obige Code läuft in einer Python-Umgebung und verwendet die kokoro
Die Bibliothek ermöglicht die Umwandlung von Text in Sprache.
Erleben Sie es direkt in Ihrem Browser
Sie können Kokoro TTS direkt in Ihrem Browser erleben, ohne es installieren zu müssen. Bitte besuchen Sie den unten stehenden Link:
https://huggingface.co/spaces/webml-community/kokoro-webgpu
Bitte beachten Sie, dass die Anwendung ca. 300+ Megabyte groß ist und erst vollständig geladen werden muss, bevor Sie sie nutzen können. Da es sich jedoch um ein effizientes TTS-Modell handelt, das vollständig im Browser läuft, lohnt sich das Warten.
Hauptfunktionen
Text-to-Speech
- EingabetextGeben Sie den Text, der in Sprache umgewandelt werden soll, in das Eingabefeld ein.
- Sprache auswählenWählen Sie die zu konvertierende Sprache, z. B. Englisch, Französisch, Japanisch usw.
- BetriebsmodellKlicken Sie auf die Schaltfläche Ausführen, und das Modell führt eine Text-in-Sprache-Umwandlung durch.
- Ergebnisse anzeigenDas Sprachergebnis wird auf der Seite angezeigt und der Benutzer kann die erzeugte Sprachdatei abspielen und herunterladen.
Ausgewählte Funktionen
- Online-KonvertierungKokoro WebGPU nutzt die WebGPU-Technologie, um eine Text-zu-Sprache-Umwandlung in Echtzeit für Anwendungsszenarien zu ermöglichen, die schnelle Reaktionszeiten erfordern.
- Mehrsprachige UnterstützungUnterstützt die Text-zu-Sprache-Umwandlung in mehreren Sprachen, so dass der Benutzer je nach Bedarf verschiedene Sprachen auswählen kann.
- Unterstützung der GemeinschaftPowered by WebML Community: Benutzer können sich an Diskussionen in der Community beteiligen und erhalten technische Unterstützung und Updates.