Les avancées majeures de Moshi
D’un point de vue Data Science, quelles sont les avancées majeures de Moshi ?
Le fait que le modèle soit multimodal n’est pas une avancée en soi. Des modèles comme Gemini ou SeamlessM4T sont déjà multimodaux, ce qui signifie qu’ils peuvent accepter du texte ou du son en entrée. La capacité de détecter et de reproduire les émotions n’est pas non plus nouvelle, ElevenLabs le fait déjà.
Alors, quelles sont les innovations majeures ?
La première innovation remarquable de Moshi est l’utilisation asynchrone des Dual-Stream Channels. Cette approche est non seulement innovante mais aussi extrêmement complexe. D’ailleurs, cela explique pourquoi Moshi interrompt souvent l’interlocuteur.
Avec les IAs Lisa et Adriana que nous avons produites, nous n’avons pas réussi à descendre en dessous de 500 ms pour la réactivité, bien que notre objectif ait été de 100 ms. Pour y parvenir, nous avons utilisé plusieurs techniques :
1. Hardware : utilisation d’un GPU avec des TFLOPS extrêmement élevés, d’un CPU puissant pour la préparation des batches et d’un réseau optimisé (incluant switchs, câbles, carte réseau allant jusqu’au choix du PCIe, le tout très puissant).
2. Technologie de streaming : développement de notre propre technologie de streaming pour compresser les données sonores lors de leur transfert vers le LLM.
3. Limitation de la séquence : réduction de la longueur du prompt d’entrée (moins de tokens en entrée = moins de puissance de calcul requise).
4. Détection du « point » : commencement de l’inférence dès la détection d’un point dans le texte, s’il y a plusieurs phrases.
5. Traitement asynchrone : travail en asynchrone, non pas avec deux streams différents, car cela pose des problèmes de synchronisation des prédictions (entre les modèles énoncés ci-dessous), mais de manière successive.
Malgré ces techniques, nous avons atteint un plafond de performance car notre pipeline est en trois étapes distinctes (comprendre 3 modèles d’IA) :
TTS (Transcription) => LLM (Inférence) => STT (Synthèse vocale)
Moshi, en revanche, intègre tout cela différemment. Il commence par la reconnaissance vocale automatique (ASR) et ensuite fait son inférence pour produire du son en sortie, le tout dans un seul modèle. Le traitement asynchrone devient donc possible. L’autre avantage est qu’il n’y a pas besoin d’avoir d’appuyer sur un bouton pour commencer à parler, vu qu’il n’y a plus besoin de transcription.
L’autre innovation majeure de Moshi est sa capacité à tourner localement sur un MacBook Pro. Tous ceux qui travaillent en Data Science savent à quel point il est difficile de travailler avec des GPU autres que ceux de NVIDIA.
Optimiser un modèle de cette envergure pour qu’il fonctionne efficacement sur du matériel Apple (comme les M1 et M2) est une prouesse technologique significative.
Est-ce que l’action NVIDIA va finalement chuter ?
Vous pouvez visionner la vidéo complète de Moshi ici.