Modell / Datensatz
fishaudio/Bert-VITS2 avatar
fishaudio/Bert-VITS2

Bert-VITS2: ein eingefrorenes TTS-Projekt und sein Nachfolger

vits2 backbone with multilingual-bert

8.800 Sterne1.305 ForksPythonAGPL-3.0
GitHub

Auf einen Blick

Was ist das?
Bert-VITS2 kombiniert ein VITS2-Backbone mit mehrsprachigem BERT. Das Repository ist nicht archiviert, wird laut README aber kurzfristig nicht mehr gepflegt, und die Projektleitung verweist selbst auf Fish-Speech als Alternative.
Für wen ist es gedacht?
Wer ein bestehendes Bert-VITS2-Modell oder einen darauf aufbauenden Workflow wie Bert-VITS2-UI bereits betreibt, hat einen Grund, beim bekannten Stand zu bleiben, solange die eigene Inferenz läuft. Wer heute neu einsteigt, sollte zuerst prüfen, ob Fish-Speech die benötigte Sprache und Stimmqualität abdeckt, denn das README von Bert-VITS2 empfiehlt diesen Wechsel ausdrücklich.
Darf ich es kommerziell nutzen?
Ja, unter strengen Bedingungen. AGPL-3.0 ist eine Lizenz mit Netzwerk-Copyleft: Wenn andere eine veränderte Version über ein Netzwerk nutzen, etwa als gehosteten Dienst, müssen Sie ihnen den Quellcode unter derselben Lizenz anbieten.
Wird es noch gepflegt?
Ja. Die letzten Commits kamen vor 1 Tag.
In welcher Sprache ist es geschrieben?
Hauptsächlich Python, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Wofür Bert-VITS2 gebaut wurde und für wen

Bert-VITS2 setzt auf einem VITS2-Backbone auf und ergänzt es um mehrsprachiges BERT. Der Name beschreibt damit ziemlich genau den Bauplan: ein Ende-zu-Ende-Sprachsynthesemodell, dessen Textencoder von BERT-Kontext profitiert, statt nur auf Zeichen- oder Phonemfolgen zu reagieren. Die Themenliste des Repositories nennt unter anderem bert, bert-vits, vits, vits2, vocoder und fish-speech, dazu agent und llm. Das ist eine breite Liste, aber der Kern ist klar umrissen.

Angesprochen sind Leute, die ein TTS-Modell selbst trainieren oder feintunen wollen. Das README formuliert das ungewöhnlich direkt: Wer sich als erfahrener Reisender, Pionier, Captain, Doktor, Sensei oder Hexer versteht, soll den Code lesen und selbst lernen, wie man trainiert. Ein Einsteigerprodukt ist das nicht. Der Schnelleinstieg verweist auf webui_preprocess.py, also auf ein Skript im Repository statt auf eine gehostete Oberfläche.

Die Zielgruppe hat sich faktisch verkleinert. Das README trägt einen Projektverweis auf Fish-Speech, ebenfalls unter fishaudio, mit dem Hinweis, dass dieses Projekt als Ersatz für BV2 und GSV empfohlen wird und Bert-VITS2 kurzfristig nicht weiter gepflegt wird. Wer heute nach einem gepflegten Einstieg sucht, landet laut dieser Aussage nicht hier.

VITS2-Backbone plus BERT: was der Aufbau nahelegt

Das Repository beschreibt sich als VITS2 Backbone with multilingual bert. Aus dieser Formulierung und der Referenzliste lassen sich die Bausteine ablesen. Genannt werden jaywalnut310/vits als Ursprung, p0p4k/vits2_pytorch für die VITS2-Umsetzung in PyTorch und anyvoiceai/MassTTS, das das README ausdrücklich als Quelle der Kernidee bezeichnet. MassTTS wiederum wird als sehr gutes TTS-Projekt beschrieben.

Der Datenfluss folgt damit dem Muster eines VITS-artigen Modells: Text wird über einen Encoder in eine latente Repräsentation überführt, ein Decoder erzeugt daraus das akustische Signal, und ein Vocoder beziehungsweise der Decoderteil übernimmt die Wellenformerzeugung. Der BERT-Teil liefert Kontext auf Textebene, der über die reine Lautfolge hinausgeht. Wie genau diese beiden Teile im Code verzahnt sind, lässt sich aus dem vorliegenden README nicht ableiten; dafür muss man die Implementierung lesen. Das README selbst verlangt genau das.

Bemerkenswert ist die Herkunft der Idee. Das README verweist auf ein Video mit dem Titel, der die Kernidee beschreibt, und auf ein Demovideo von MassTTS. Die Entwicklung ging also von einem beobachteten Ergebnis aus, nicht von einem Papier. Das erklärt, warum das Repository stark auf Trainingspipelines und Vorverarbeitung ausgerichtet ist und weniger auf eine saubere Bibliotheksschnittstelle.

Der Einstieg läuft über webui_preprocess.py, nicht über eine API

Das README ist an dieser Stelle knapp. Für den Schnelleinstieg verweist es auf webui_preprocess.py, sowohl in der englischen als auch in der chinesischen Fassung. Ein Installationsabschnitt, ein requirements-Beispiel oder dokumentierte Konfigurationsschlüssel fehlen im vorliegenden Text. Wer das Projekt aufsetzen will, muss die Abhängigkeiten aus dem Repository selbst ermitteln.

Die Python-Sprache des Projekts und die Nennung eines WebUI-Skripts legen nahe, dass der typische Weg über eine lokale Umgebung mit installierten Abhängigkeiten führt und die Vorverarbeitung der Audiodaten über dieses Skript läuft. Konkrete Befehle lassen sich aus dem Material nicht belegen. Das ist eine echte Lücke: Ein Projekt, das Trainingsdaten aufbereiten muss, lebt von einer reproduzierbaren Pipeline, und das README liefert sie nicht mit.

Es gibt einen Hinweis auf Ökosystemarbeit von dritter Seite. In der Referenzliste steht Bert-VITS2-UI von jiangyuxiaoxiao. Wer eine grafische Oberfläche sucht, findet sie also möglicherweise dort, nicht im Hauptrepository. Das verschiebt die Verantwortung für Bedienkomfort und Dokumentation auf ein separates Projekt mit eigenem Wartungsstand.

Drei Release-Zweige und was sie über die Zielsprachen sagen

Die letzten Releases heißen Extra, Extra-v2 und JP-Exta. Die Zeitstempel liegen zwischen dem 4. Januar und dem 1. Februar 2024. Die chinesischen Bezeichnungen ordnen sie ein: Extra wird als 中文特化版本 geführt, also als auf Chinesisch spezialisierte Version, Extra-v2 als 中文特化修复版, eine reparierte Fassung davon, und JP-Exta als Japanese Specialized Version.

Das ist die wichtigste praktische Information im ganzen Repository. Die Sprachabdeckung ist nicht gleichmäßig, sondern in Zweigen organisiert, die jeweils auf eine Sprache zugeschnitten sind. Wer Chinesisch oder Japanisch synthetisieren will, findet dafür vorgesehene Stände. Wer eine andere Sprache braucht, muss prüfen, ob der allgemeine Zweig sie trägt, und das README beantwortet diese Frage nicht.

Die Reihenfolge der Releases ist ebenfalls aufschlussreich. Zwischen Extra und Extra-v2 liegen drei Wochen, und der Name der zweiten Fassung enthält explizit eine Reparatur. Es handelt sich also um Nachbesserungen an einem spezialisierten Zweig, nicht um eine kontinuierliche Produktlinie. Seit Februar 2024 sind keine weiteren Releases im Material verzeichnet, während der letzte Push auf master mit September 2026 datiert ist. Codeänderungen und veröffentlichte Modellstände liefen zuletzt also auseinander.

AGPL-3.0 ist hier kein Nebensatz

Das Projekt steht unter AGPL-3.0. Diese Lizenz verlangt, dass abgeleitete Werke ebenfalls unter derselben Lizenz stehen, und sie erstreckt die Weitergabeplichten auch auf die Nutzung über ein Netzwerk. Wer ein Modell auf Basis dieses Codes trainiert und es als Dienst betreibt, muss die Bedingungen der Lizenz prüfen, bevor er Nutzern Zugang gibt.

Das ist bei einem TTS-Projekt besonders relevant, weil der typische Einsatz nicht in einer ausgelieferten Binärdatei besteht, sondern in einem erreichbaren Endpunkt, über den Sprachausgabe erzeugt wird. Die Netzwerkkonstruktion der AGPL trifft genau diesen Fall. Ob eine bestimmte Nutzung als Verbreitung gilt und welche Quellen dann bereitzustellen sind, ist eine Rechtsfrage, die dieses Material nicht beantwortet. Wer das Projekt kommerziell einsetzen will, sollte das vor dem Training klären, nicht danach.

Hinzu kommt eine inhaltliche Einschränkung, die im README steht: Die Nutzung zu Zwecken, die gegen die Verfassung, das Strafgesetz, das Gesetz über Ordnungswidrigkeiten oder das Zivilgesetzbuch der Volksrepublik China verstoßen, ist ausdrücklich untersagt, ebenso jede politische Verwendung. Solche Klauseln sind keine Lizenzbedingungen im engeren Sinn, aber sie stehen im Repository und sind Teil dessen, was man beim Übernehmen zur Kenntnis nimmt.

Wann Bert-VITS2 das falsche Werkzeug ist

Der deutlichste Grenzfall steht im README selbst. Wer heute mit Sprachsynthese anfängt und ein gepflegtes Projekt sucht, wird ausdrücklich auf Fish-Speech verwiesen. Der Unterschied im Ansatz ist grundlegend. Bert-VITS2 ist ein VITS2-basiertes Modell mit BERT-Kontext und einem Vocoder. Fish-Speech wird im README als autoregressives TTS beschrieben, also mit einer anderen Generierungsstrategie. Wer die Entscheidung zwischen beiden treffen will, sollte nicht nur die Ausgabequalität vergleichen, sondern auch, wie viel Trainingsdaten und Rechenzeit der jeweilige Ansatz verlangt.

Ein zweiter Grenzfall ist die Dokumentation. Das README enthält keinen Installationsabschnitt, keine dokumentierten Konfigurationsschlüssel und keine Beispielbefehle. Für ein Projekt, dessen Kern das Training eigener Stimmen ist, bedeutet das einen hohen Einarbeitungsaufwand, der vor der ersten brauchbaren Ausgabe anfällt. Wer eine Bibliothek sucht, die er in eine Anwendung einbettet, wird hier nicht fündig; das Repository ist eine Trainingsbasis, kein SDK.

Der dritte Fall betrifft die Sprache. Die veröffentlichten Spezialisierungen decken Chinesisch und Japanisch ab. Für andere Zielsprachen gibt es im vorliegenden Material keinen Beleg, dass ein passender Modellstand existiert. Wer eine Sprache außerhalb dieser beiden braucht, muss den allgemeinen Zweig selbst trainieren und die Qualität eigenständig bewerten.

Wartung, Upgrades und die Frage nach dem Fork

Das README sagt, dass das Projekt kurzfristig nicht mehr gepflegt wird. Der Repository-Status widerspricht dem nicht: Das Repository ist nicht archiviert, der letzte Push liegt laut Metadaten im September 2026. Nicht archiviert bedeutet, dass Issues und Pull Requests grundsätzlich noch möglich sind. Es bedeutet nicht, dass jemand darauf reagiert.

Für die Planung heißt das: Fehlerbehebungen und Anpassungen an neue Abhängigkeiten sind nicht zugesichert. Wer Bert-VITS2 produktiv betreibt, übernimmt faktisch die Wartung des eigenen Forks. Das ist bei einem Python-Projekt mit Modellgewichten und Vorverarbeitungsskripten kein kleiner Aufwand, sondern umfasst typischerweise die Anpassung an neue Versionen der verwendeten Bibliotheken. Die Referenzliste nennt PaddleSpeech und so-vits-svc, also Abhängigkeiten aus unterschiedlichen Ökosystemen, was die Upgrade-Arbeit eher vergrößert als verkleinert.

Die Lizenz verstärkt diesen Effekt. Wer den Code forkt und Änderungen verteilt, bleibt an die AGPL-3.0 gebunden. Ein Fork kann also nicht einfach unter permissiveren Bedingungen weitergegeben werden. Wer plant, auf Basis dieses Codes etwas Eigenes aufzubauen, sollte die Lizenzfrage vor der ersten Zeile eigenen Codes klären und nicht danach.

Was vor dem ersten Training zu prüfen ist

Die Reihenfolge ist wichtig, weil ein TTS-Training Zeit kostet und sich nicht rückwirkend korrigieren lässt. Zuerst die Sprache: Deckt einer der Zweige Extra-v2 oder JP-Exta die Zielsprache ab, oder muss der allgemeine Zweig trainiert werden? Zweitens die Lizenz: Ist die geplante Verbreitung oder der geplante Netzwerkdienst mit AGPL-3.0 vereinbar? Drittens die Wartung: Wer übernimmt Fixes, wenn eine Abhängigkeit bricht?

Erst danach lohnt der Blick in den Code selbst. Das README verlangt das ohnehin, und bei einem Projekt ohne Installationsanleitung ist der Quelltext die eigentliche Dokumentation. Wer die Vorverarbeitung in webui_preprocess.py nicht nachvollziehen kann, wird auch die Trainingsergebnisse nicht interpretieren können.

Für alle anderen bleibt die Empfehlung des Projekts selbst bestehen. Das README nennt Fish-Speech als Ersatz für BV2 und GSV und beschreibt es als derzeitigen Open-Source-SOTA-Stand mit laufender Pflege. Wer neu beginnt, sollte diesen Hinweis ernst nehmen, statt ihn als Höflichkeit zu lesen.

Redaktionelles Fazit

Wer ein bestehendes Bert-VITS2-Modell oder einen darauf aufbauenden Workflow wie Bert-VITS2-UI bereits betreibt, hat einen Grund, beim bekannten Stand zu bleiben, solange die eigene Inferenz läuft. Wer heute neu einsteigt, sollte zuerst prüfen, ob Fish-Speech die benötigte Sprache und Stimmqualität abdeckt, denn das README von Bert-VITS2 empfiehlt diesen Wechsel ausdrücklich. Vor jedem Produktiveinsatz ist zu klären, ob die AGPL-3.0-Bedingungen mit der geplanten Verbreitung vereinbar sind, und ob die Sprachspezialisierung Extra-v2 oder JP-Exta überhaupt zu den eigenen Zielsprachen passt.

Offizielle Quellen

  1. fishaudio/Bert-VITS2 on GitHub
  2. Issues
  3. License: AGPL-3.0
  4. README
  5. Releases
Community-Notizen

Community-Notizen