AI Personal Learning
und praktische Anleitung
豆包Marscode1

MegaTTS3: Ein leichtgewichtiges Modell zur Synthese von chinesischer und englischer Sprache

Allgemeine Einführung

MegaTTS3 ist ein Open-Source-Sprachsynthesewerkzeug, das von ByteDance in Zusammenarbeit mit der Zhejiang-Universität entwickelt wurde und sich auf die Erzeugung hochwertiger chinesischer und englischer Sprache konzentriert. Sein Kernmodell besteht aus nur 0,45B Parametern, ist leichtgewichtig und effizient und unterstützt gemischte chinesische und englische Spracherzeugung und Sprachklonen. Das Projekt wird auf GitHub gehostet und bietet Code und vortrainierte Modelle zum kostenlosen Download an. MegaTTS3 kann die Zielstimme mit ein paar Sekunden Audio-Samples imitieren und unterstützt auch die Anpassung der Intensität des Akzents. Es eignet sich für die akademische Forschung, die Erstellung von Inhalten und die Entwicklung von Sprachanwendungen, wobei Funktionen zur Aussprache- und Dauersteuerung in Zukunft hinzugefügt werden sollen.

MegaTTS3:合成中英文语音的轻量模型-1


 

Funktionsliste

  • Generieren Sie Chinesisch, Englisch und gemischte Sprache mit natürlicher und flüssiger Ausgabe.
  • Qualitativ hochwertiges Klonen von Sprache wird mit einer kleinen Menge an Audio erreicht, um eine bestimmte Klangfarbe zu imitieren.
  • Unterstützt die Einstellung der Akzentstärke und kann Sprache mit Akzent oder Standardaussprache erzeugen.
  • Verwenden Sie akustische Latenzen, um die Effizienz der Modellschulung zu verbessern.
  • Integrierter hochwertiger WaveVAE-Vocoder für verbesserte Sprachverständlichkeit und Realismus.
  • Aligner und Graphme-to-Phoneme Untermodule werden zur Unterstützung der Sprachanalyse bereitgestellt.
  • Offener Quellcode und vortrainierte Modelle für die benutzerdefinierte Entwicklung.

 

Hilfe verwenden

MegaTTS3 erfordert einige grundlegende Programmiererfahrung, insbesondere mit Python und Deep-Learning-Umgebungen. Im Folgenden finden Sie ausführliche Anweisungen zur Installation und Verwendung.

Einbauverfahren

  1. Gebaute Umwelt
    MegaTTS3 Empfohlen Python 3.9. Dies kann geschehen mit Conda Erstellen Sie eine virtuelle Umgebung:

    conda create -n megatts3-env python=3.9
    conda activate megatts3-env
    

    Nach der Aktivierung werden alle Operationen in dieser Umgebung durchgeführt.

  2. Code herunterladen
    Führen Sie den folgenden Befehl in einem Terminal aus, um zu klonen GitHub Lagerhaus:

    git clone https://github.com/bytedance/MegaTTS3.git
    cd MegaTTS3
    
  3. Installation von Abhängigkeiten
    Projektangebote requirements.txtWenn Sie die erforderlichen Bibliotheken installieren möchten, führen Sie den folgenden Befehl aus:

    pip install -r requirements.txt
    

    Die Installationszeit variiert je nach Netzwerk und Gerät und ist in der Regel in wenigen Minuten abgeschlossen.

  4. Das Modell erhalten
    Vorgefertigte Modelle können von Google Drive oder Hugging Face heruntergeladen werden (siehe offizielle Links). README). Laden Sie es herunter und entpacken Sie es nach ./checkpoints/ Mappe. Beispiel:

    • Oberbefehlshaber (Militär) model.pth hineinstecken ./checkpoints/model.pth.
    • vor-extrahiert latents Die Dateien müssen von dem angegebenen Link in dasselbe Verzeichnis heruntergeladen werden.
  5. Probeaufbau
    Führen Sie einen einfachen Testbefehl aus, um die Umgebung zu überprüfen:

    python tts/infer_cli.py --input_wav 'assets/Chinese_prompt.wav' --input_text "测试" --output_dir ./gen
    

    Wenn keine Fehler gemeldet werden, war die Installation erfolgreich.

Hauptfunktionen

Sprachsynthese

Die Erzeugung von Sprache ist die Kernfunktion von MegaTTS3. Sie erfordert die Eingabe von Text und Referenzton:

  • Das Dokument vorbereiten
    existieren assets/ in den Referenz-Audio-Ordner (z. B. Chinese_prompt.wavund latents Dateien (z.B. Chinese_prompt.npy). Wenn keine latentssind offizielle, vor-extrahierte Dateien erforderlich.
  • Befehl ausführen
    Eingabe:

    CUDA_VISIBLE_DEVICES=0 python tts/infer_cli.py --input_wav 'assets/Chinese_prompt.wav' --input_text "你好,这是一段测试语音" --output_dir ./gen
    
    • --input_wav ist der Referenz-Audiopfad.
    • --input_text ist der Text, der synthetisiert werden soll.
    • --output_dir ist der Ausgabeordner.
  • Ergebnisse anzeigen
    Die erzeugte Sprache wird in der Datei ./gen/output.wavDer Film kann direkt abgespielt werden.

Sprachklonen

Es sind nur wenige Sekunden an Audiosamples nötig, um einen bestimmten Klang zu imitieren:

  • Bereiten Sie einen klaren Referenzton vor (5-10 Sekunden empfohlen).
  • Verwenden Sie den obigen Synthesebefehl, um die --input_wav.
  • Die ausgegebene Stimme wird dem Referenzton so nahe wie möglich kommen.

Akzentsteuerung

Anpassen der Akzentstärke über Parameter p_w im Gesang antworten t_w::

  • Geben Sie den englischen Ton mit einem Akzent ein:
    CUDA_VISIBLE_DEVICES=0 python tts/infer_cli.py --input_wav 'assets/English_prompt.wav' --input_text "这是一条有口音的音频" --output_dir ./gen --p_w 1.0 --t_w 3.0
    
  • p_w Anfahrt 1.0 Der ursprüngliche Akzent wird manchmal beibehalten, und die Zunahme tendiert zur Standardaussprache.
  • t_w Kontrolliert die Ähnlichkeit der Klangfarbe, in der Regel mehr als p_w Ihr (Ehrentitel) 0-3.
  • Generierung einer standardisierten Aussprache:
    CUDA_VISIBLE_DEVICES=0 python tts/infer_cli.py --input_wav 'assets/English_prompt.wav' --input_text "这条音频发音标准一些" --output_dir ./gen --p_w 2.5 --t_w 2.5
    

Web-UI-Betrieb

Unterstützt den Betrieb über eine Weboberfläche:

  • Laufen:
    CUDA_VISIBLE_DEVICES=0 python tts/gradio_api.py
    
  • Öffnen Sie Ihren Browser und geben Sie die Adresse ein (Standard) localhost:7860), Audio und Text hochladen, um Sprache zu erzeugen.CPU Ca. 30 Sekunden in der Umgebung.

Verwendung von Submodulen

Aligner

  • FunktionalitätAusrichten von Sprache und Text.
  • Verwendung: Lauf tts/frontend_function.py Der Beispielcode für die Sprachsegmentierung oder Phonemerkennung in der

Graphme-to-Phoneme

  • FunktionalitätKonvertierung von Text in Phoneme.
  • Verwendung: Referenz tts/infer_cli.pyIm Folgenden finden Sie eine Liste der wichtigsten Funktionen der Ausspracheanalyse.

WaveVAE

  • FunktionalitätKomprimiertes Audio ist latents und wiederaufgebaut.
  • Einschränkung: Die Encoder-Parameter sind nicht offengelegt und können nur mit den zuvor extrahierten Daten verwendet werden. latents.

caveat

  • WaveVAE-Encoder-Parameter sind aus Sicherheitsgründen nicht verfügbar und können nur mit offiziellen latents Dokumentation.
  • Das Projekt wurde am 22. März 2025 veröffentlicht und befindet sich noch in der Entwicklung, wobei neue Aussprachen und Anpassungen der Dauer geplant sind.
  • GPU Beschleunigte Empfehlungen.CPU Läuft, ist aber langsam.

 

 

Anwendungsszenario

  1. akademische Forschung
    Forscher können mit MegaTTS3 Sprachsynthesetechniken testen, indem sie die latents Die Wirkung der
  2. Pädagogische Hilfsmittel
    Konvertierung von Lehrbüchern in Sprache und Erstellung von Hörbüchern zur Verbesserung der Lernerfahrung.
  3. Erstellung von Inhalten
    Erstellen Sie Kommentare für Videos oder Podcasts und sparen Sie die Kosten für manuelle Aufnahmen.
  4. Sprachinteraktion
    Entwickler können es in ihre Geräte integrieren, um Sprachdialoge in Englisch und Chinesisch zu ermöglichen.

 

QA

  1. Welche Sprachen werden unterstützt?
    Unterstützt Chinesisch, Englisch und Mixed Speech, mit der Möglichkeit der Erweiterung auf andere Sprachen in der Zukunft.
  2. muss GPU Was? - Ich weiß es nicht.
    Nicht notwendig.CPU Er kann zwar ausgeführt werden, ist aber langsam und es wird empfohlen, den GPU.
  3. Wie gehe ich mit Installationsfehlern um?
    Update pip(pip install --upgrade pip), die Überprüfung des Netzes, oder in GitHub Thema einreichen.
  4. Warum fehlen die WaveVAE-Geber?
    Aus Sicherheitsgründen nicht offengelegt, offizielle Vorab-Extraktion erforderlich latents.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " MegaTTS3: Ein leichtgewichtiges Modell zur Synthese von chinesischer und englischer Sprache
de_DEDeutsch