- Hochwertiges Echtzeit-Streaming-Modell für Sprachübersetzung (Speech-to-Speech Translation) mit hoher Wiedergabetreue
- Anders als bei herkömmlicher Offline-Übersetzung wird während des Sprechens des Nutzers in Echtzeit übersetzte Sprache erzeugt
- Bietet zusätzlich Textübersetzung und enthält auch eine Sprachumwandlungsfunktion, die den Stil der Originalsprache beibehält
Architektur
- Ein Decoder-only-Modell, das für simultane Sprachübersetzung entwickelt wurde
- Nutzt die Multistream-Architektur von Moshi, um Original- und übersetzte Sprache gleichzeitig zu modellieren
- Erzeugt einen kontinuierlichen Ausgabestream mit einer konstanten Framerate von 12,5 Hz pro Sekunde und bietet zusätzlich Textübersetzungen mit Zeitstempeln
Trainingsmethode
- Erfordert ausgerichtete Daten aus Original- und übersetzter Sprache sowie Text, aber solche Daten sind in der Praxis rar
- Deshalb wird das Training mit synthetischen Daten durchgeführt
- Mit dem maschinellen Übersetzungssystem MADLAD werden Original- und Übersetzungstext im Rahmen eines Weak-Supervision-Ansatzes ausgerichtet
- Es werden Ausrichtungsregeln angewendet, sodass Wörter nur dann erscheinen, wenn die Übersetzung aus dem Original vorhersagbar wird
- Methode 1: Silence Insertion
- Methode 2: alignment-aware TTS
Inferenz
- Hibiki kodiert die Originalsprache in Echtzeit und erzeugt die übersetzte Sprache
- Ohne komplexe Inferenzverfahren wird Temperature Sampling verwendet, wodurch das Verfahren mit Batch-Verarbeitung kompatibel ist
- Über den Classifier-Free-Guidance-Koeffizienten lässt sich die Ähnlichkeit der Stimme steuern
- Je höher der Koeffizient, desto ähnlicher klingt die erzeugte Stimme dem Original; ist er jedoch zu hoch, kann die Übersetzungsqualität sinken
- Derzeit unterstützt Hibiki nur Französisch → Englisch
- Das kompakte Modell Hibiki-M kann auch auf Smartphones ausgeführt werden
So führt man das Modell aus
- Ausführbar mit PyTorch, Rust, MLX (macOS) und MLX-Swift (iOS)
- Der Code von Hibiki ist nahezu identisch mit dem des Moshi-Projekts; die konkrete Implementierung findet sich im Repository kyutai-labs/moshi
- Derzeit werden nur zwei Modelle bereitgestellt, die Französisch → Englisch (FR → EN) unterstützen
- Hibiki 2B: tiefere Transformer-Struktur, 16 RVQ pro Stream
- Hibiki 1B: leichtgewichtige Version, 8 RVQ pro Stream, On-Device-Ausführung möglich
2 Kommentare
Für die Rust-Bereitstellung wird offenbar candle verwendet. (Cargo.toml)
Bei Sprachen mit völlig unterschiedlicher Wortstellung scheint Echtzeitübersetzung etwas schwierig zu sein, aber ich sollte mir die Arbeit wohl einmal ansehen.