Allgemeine Einführung
CSM Voice Cloning ist ein Open-Source-Projekt, das von Isaiah Bjork entwickelt und auf GitHub gehostet wird. Es basiert auf dem Sesame CSM-1B-Modell, das es Nutzern ermöglicht, ihre eigenen Stimmen zu klonen und eine Stimme mit ihren eigenen persönlichen Merkmalen zu erzeugen, indem sie einfach ein Audio-Sample bereitstellen. Das Tool unterstützt sowohl lokale GPU-Läufe als auch Modal-Cloud-Läufe, so dass es sich für Inhaltsersteller, Entwickler oder jeden, der sich für Sprachtechnologie interessiert, eignet. Obwohl die Ergebnisse des Klonens nicht perfekt sind, behält die erzeugte Stimme einige der Merkmale der Zielstimme bei und der Effekt ist erkennbar. Es erfordert einige technische Grundlagen, wie die Installation von Python und die Konfiguration der Umgebung, aber eine detaillierte Anleitung ist offiziell verfügbar. Das Projekt ist völlig kostenlos und die Community ist eingeladen, Verbesserungen am Code beizutragen.
Funktionsliste
- Klonen von Sprache: Hochladen von Audiobeispielen, um Sprache zu erzeugen, die ähnlich wie das Beispiel klingt.
- Text-to-Speech: Geben Sie Text ein und erzeugen Sie Audiodateien mit geklonten Stimmen.
- Lokaler Betrieb: Verwenden Sie Ihren persönlichen Grafikprozessor zur Verarbeitung von Spracherzeugungsaufgaben.
- Läuft in der Cloud: Beschleunigt durch Cloud-GPUs über die Modal-Plattform.
- Open-Source-Unterstützung: Der Code ist öffentlich und kann vom Benutzer geändert oder optimiert werden.
- Unterstützt gängige Audioformate: Akzeptiert MP3- oder WAV-Dateien als Samples.
- Parameteranpassung: Ermöglicht dem Benutzer die Anpassung der Modelleinstellungen an unterschiedliche Audiolängen.
Hilfe verwenden
Ablauf der Installation
Um CSM Voice Cloning verwenden zu können, müssen die Benutzer zunächst die Laufzeitumgebung einrichten. Nachfolgend finden Sie die detaillierten Schritte:
Lokales Ausführen der Installation
- Hardware- und Softwareanforderungen prüfen
- Benötigt Python 3.10 oder höher.
- Für den lokalen Betrieb sind NVIDIA CUDA-kompatible Grafikkarten und ausreichend Videospeicher erforderlich.
- Stellen Sie sicher, dass Sie eine Internetverbindung haben, um Modelle und Abhängigkeiten herunterzuladen.
- Code-Repository klonen
- Öffnen Sie ein Terminal (CMD oder PowerShell für Windows, Bash für Linux/Mac).
- Geben Sie den Befehl ein:
git clone https://github.com/isaiahbjork/csm-voice-cloning.git cd csm-voice-cloning
- Installieren von Abhängigkeiten
- Läuft im Terminal:
pip install -r anforderungen.txt
- Dadurch werden die erforderlichen Bibliotheken wie PyTorch, Hugging Face usw. installiert.
- Läuft im Terminal:
Cloud Run Installation (Modal)
- Modal installieren
- Läuft im Terminal:
pip install modal
- Läuft im Terminal:
- Konfigurieren der modalen Authentifizierung
- Geben Sie den Befehl ein:
modal Token neu
- Folgen Sie den Anweisungen, um sich bei Ihrem Modal-Konto anzumelden oder ein neues Konto zu erstellen.
- Geben Sie den Befehl ein:
Konfigurieren des Kontos "Hugging Face
- Registrieren und einen Token erhalten
- Besuchen Sie die Website von Hugging Face, um sich zu registrieren oder einzuloggen.
- existieren Sesam CSM-1B Modellseite Klicken Sie auf "Zugang zum Repository" und akzeptieren Sie die Bedingungen.
- Generieren Sie API-Tokens: Klicken Sie auf Ihren Avatar in der oberen rechten Ecke -> Einstellungen -> Wertmarken -> Neuer Token.
- Token einrichten
- Methode 1: Geben Sie in das Terminal ein:
export HF_TOKEN="Ihr Token"
- Methode 2: Modifizierung
stimme_klon.py
Datei, finden Sie dieos.environ["HF_TOKEN"]
das Token ausfüllen.
- Methode 1: Geben Sie in das Terminal ein:
Vorbereiten von Hörproben
- Audio aufzeichnen
- Nehmen Sie einen klaren 2-3-minütigen Audioclip auf, möglichst ohne Hintergrundgeräusche.
- Speichern im MP3- oder WAV-Format, z. B.
probe.mp3
.
- Transkription des Textes
- Kosten oder Aufwand Flüstern oder ein anderes Tool, um den Audioinhalt zu transkribieren, und notieren Sie den genauen Text (z. B. "Hallo, das ist mein Test-Audio").
Hauptfunktionen
Muttersprachler-Klon (Informatik)
- Parameter bearbeiten
- zeigen (eine Eintrittskarte)
stimme_klon.py
Datei ändern Sie Folgendes:context_audio_path = "sample.mp3"
(Audiopfad).context_text = "Hallo, das ist mein Test-Audio"
(transkribierter Text).text = "Es ist ein schöner Tag heute"
(zu erstellender Text).output_filename = "output.wav"
(Name der Ausgabedatei).
- zeigen (eine Eintrittskarte)
- laufendes Programm
- Geben Sie ihn in das Terminal ein:
python stimme_klon.py
- Das erzeugte Audio wird im Projektordner gespeichert.
- Geben Sie ihn in das Terminal ein:
Cloud-basiertes Klonen von Stimmen (Modal)
- Parameter bearbeiten
- zeigen (eine Eintrittskarte)
modal_voice_cloning.py
Datei, wobei die gleichen Parameter wie bei local gesetzt werden:context_audio_path = "sample.mp3"
.context_text = "Hallo, das ist mein Test-Audio"
.text = "Es ist ein schöner Tag heute"
.output_filename = "output.wav"
.
- zeigen (eine Eintrittskarte)
- laufendes Programm
- Geben Sie ihn in das Terminal ein:
modal ausführen modal_voice_cloning.py
- Modal nutzt die Cloud GPU, um die Aufgabe zu verarbeiten und die Ausgabedatei herunterzuladen, wenn sie fertig ist.
- Geben Sie ihn in das Terminal ein:
Einstellen der Länge der Modellfolge
- Wenn das Audio-Sample lang ist (mehr als 2-3 Minuten), kann es zu Fehlern bei der Tensordimension kommen.
- Lösung:
- zeigen (eine Eintrittskarte)
models.py
Dokumentation. - ausfindig machen.
lama3_2_1B()
Funktion, die diemax_seq_len
Parameter:def llama3_2_1B(). return llama3_2.llama3_2(max_seq_len=4096, ...)
- sicher
lama3_2_100M()
Wert derselbe ist, speichern Sie ihn und führen Sie ihn erneut aus.
- zeigen (eine Eintrittskarte)
Featured Function Bedienung
Cloud-Beschleunigung (Modal)
- Modal bietet Cloud-GPUs für diejenigen, die keine leistungsstarken lokalen Geräte haben.
- Es ist einfach zu bedienen: Installieren Sie Modal und führen Sie die entsprechenden Skripte aus, um eine schnellere Verarbeitung als lokal zu erreichen.
Verarbeitung langer Audiodaten
- Die Standardeinstellung gilt für Proben von bis zu 2 Minuten und 50 Sekunden.
- Längerer Ton muss angepasst werden
max_seq_len
(wie oben beschrieben), oder bringen Sie die Probe auf die empfohlene Länge.
Häufig gestellte Fragen
- Tensor-Dimensionsfehler
aufsteigenmax_seq_len
Werte, oder kürzen Sie die Audio-Samples. - CUDA-Speicher nicht voll
Verwenden Sie kürzere Proben, oder wechseln Sie zu einem modalen Cloud-Lauf. - Modell-Download fehlgeschlagen
Überprüfen Sie die Token und Netzwerke von Hugging Face, um sicherzustellen, dass die Modellbedingungen akzeptiert wurden.
Anwendungsszenario
- Erstellung von Inhalten
- Beschreibung der Szene
Moderatoren können Videokommentare mit ihrer eigenen Stimme erstellen. Laden Sie eine Audioaufnahme zur Selbstvorstellung hoch, geben Sie ein Skript ein und erzeugen Sie Ihre Stimme in wenigen Minuten, sodass keine wiederholten Aufnahmen erforderlich sind.
- Beschreibung der Szene
- Pädagogische Unterstützung
- Beschreibung der Szene
Der Dozent klont seine eigene Stimme und gibt die Kursvorträge ein, um Unterrichtsaudios zu erstellen. Die Studierenden können sich die Vorlesungen jederzeit anhören, was für den Fernunterricht geeignet ist.
- Beschreibung der Szene
- Spieleentwicklung
- Beschreibung der Szene
Entwickler sprechen Spielfiguren. Nehmen Sie einige Samples auf, um mehrere Dialoge zu generieren und den Realismus der Charaktere zu verbessern.
- Beschreibung der Szene
QA
- Wie lang muss das Hörbeispiel sein?
Empfohlen werden 2-3 Minuten. Zu kurz für schlechte Ergebnisse, zu lang für die Anpassung der Parameter. - Warum sieht die erzeugte Stimme nicht so aus wie ich?
Die Modellierung ist begrenzt und behält die Klangeigenschaften bei, ist aber nicht perfekt. Vergewissern Sie sich, dass das Sample klar ist und versuchen Sie es mehrmals mit verschiedenen Texten. - Was ist der Unterschied zwischen Modal und lokalem Betrieb?
Modal verwendet Cloud-GPUs und ist schnell für Nutzer ohne leistungsstarke Geräte. Die lokale Ausführung ist kostenlos, erfordert aber eine gute Grafikkarte.