- Modèle de traduction vocale en temps réel par streaming, à haute fidélité (High Fidelity) (Speech-to-Speech Translation)
- Contrairement à la traduction hors ligne classique, il génère une voix traduite en temps réel pendant que l’utilisateur parle
- Fournit aussi une traduction textuelle, ainsi qu’une fonction de conversion vocale qui préserve le style de la voix d’origine
Architecture
- Modèle decoder-only, conçu pour la traduction vocale simultanée
- Utilise l’architecture multistream de Moshi pour modéliser simultanément la voix source et la voix traduite
- Génère un flux de sortie continu à une cadence fixe de 12,5 Hz, et fournit aussi une traduction textuelle horodatée
Méthode d’entraînement
- Nécessite des données alignées entre voix et texte, à la fois pour la source et la traduction, mais ce type de données reste rare en pratique
- L’entraînement est donc réalisé en générant des données synthétiques
- Le système de traduction automatique MADLAD est utilisé pour aligner faiblement les textes source et traduits
- Des règles d’alignement sont appliquées afin que les mots n’apparaissent qu’au moment où ils deviennent prévisibles à partir de l’original
- Méthode 1 : insertion de silence (silence insertion)
- Méthode 2 : synthèse vocale sensible à l’alignement (alignment-aware TTS)
Inférence
- Hibiki encode la voix source en temps réel et génère la voix traduite
- Sans recourir à une méthode d’inférence complexe, il utilise un échantillonnage par température (temperature sampling), compatible avec le traitement par lots
- Il est possible d’ajuster la similarité vocale via le coefficient de Classifier-Free Guidance
- Plus ce coefficient est élevé, plus la voix générée ressemble à l’original, mais une valeur trop haute peut dégrader la qualité de la traduction
- Actuellement, Hibiki ne prend en charge que la traduction du français vers l’anglais
- Le modèle léger Hibiki-M peut aussi fonctionner sur smartphone
Comment exécuter le modèle
- Exécutable avec PyTorch, Rust, MLX (macOS) et MLX-Swift (iOS)
- Le code de Hibiki est presque identique à celui du projet Moshi ; l’implémentation réelle peut être consultée dans le dépôt kyutai-labs/moshi
- À ce stade, seuls deux modèles prenant en charge la traduction français → anglais (FR → EN) sont proposés
- Hibiki 2B : architecture Transformer plus profonde, 16 RVQ par flux
- Hibiki 1B : version légère, 8 RVQ par flux, exécutable on-device
2 commentaires
Le déploiement Rust utilise apparemment candle. (Cargo.toml)
Pour les langues dont l’ordre des mots est complètement différent, la traduction en temps réel me semble assez difficile ; il va falloir que je jette un œil à l’article.