Comment fonctionne SeamlessM4T, un moteur basé sur l’intelligence artificielle développé par Meta qui aide à la transcription, à la traduction et au doublage d’une langue à l’autre.
Les modèles génératifs et les algorithmes d’intelligence artificielle en général se taillent de plus en plus la part du lion dans la gestion de la saisie vocale et la traduction en temps réel d’une langue à l’autre. SeamlessM4T est un projet Meta présenté comme le premier modèle multilingue et multimodal de traduction et de transcription par intelligence artificielle. Il permet de communiquer sans effort par la parole et le texte dans différentes langues.
La construction d’un traducteur universel, est un défi de taille, car les systèmes de traduction voix-voix et voix-texte existants ne couvrent qu’une petite fraction des langues parlées dans le monde. SeamlessM4T représente cependant un énorme progrès car il réduit les erreurs et les retards, augmentant ainsi l’efficacité et la qualité du processus de traduction. Les personnes parlant des langues différentes peuvent ainsi communiquer plus efficacement.
Pourquoi SeamlessM4T est multimodal
Dans le cas de SeamlessM4T, on parle d’expérience multimodale parce que le modèle n’est pas limité à un seul mode de communication, comme le texte ou la parole, mais est capable de gérer plusieurs modes d’entrée et de sortie de manière intégrée. En d’autres termes, SeamlessM4T permet la traduction et la transcription non seulement du texte, mais aussi de la parole, dans une variété de combinaisons et de langues différentes.
Cette caractéristique multimodale est pertinente car elle reflète la façon dont les gens communiquent dans la réalité, en utilisant à la fois la parole et le texte dans différentes situations. Pensez, par exemple, aux situations où il est nécessaire de traduire un discours dans une langue étrangère en le transformant en texte écrit, afin de le partager avec quelqu’un qui ne parle pas et ne comprend pas la même langue. Pensez également aux cas où l’on aimerait traduire un texte écrit dans une langue que l’on ne connaît pas en le doublant automatiquement pour aider quelqu’un qui ne sait pas lire.
L’expérience multimodale de SeamlessM4T permet donc aux utilisateurs de choisir le mode de communication qui convient le mieux à leurs besoins et de traduire ou de transcrire du texte et de la parole sans aucune difficulté. Cela contribue à créer une communication plus fluide et plus naturelle entre des personnes parlant des langues différentes, en éliminant les barrières linguistiques grâce à une variété de canaux de communication.
Qu’est-ce que le doublage ?
Le doublage est une pratique utilisée dans l’industrie du divertissement, en particulier au cinéma et à la télévision, qui consiste à remplacer les voix originales des acteurs ou des personnages par des voix traduites ou doublées dans une autre langue. Ce procédé permet aux spectateurs qui parlent une autre langue que la langue originale du film ou de la série télévisée de comprendre le contenu sans avoir à lire les sous-titres.
Les comédiens rééditent et superposent leurs voix aux dialogues originaux, en essayant de les synchroniser avec les mouvements des lèvres et l’intonation des acteurs afin de rendre l’expérience visuelle aussi réaliste que possible.
Ici, SeamlessM4T met le doublage à la portée de tous les utilisateurs en reprenant le discours original, l’intonation et les nuances de la voix pour créer un son dans une autre langue qui soit aussi proche que possible de la version source.
À quoi ressemble SeamlessM4T
SeamlessM4T prend en charge la reconnaissance vocale dans près de 100 langues, la traduction voix-texte pour près de 100 langues d’entrée et de sortie, et la traduction voix-voix pour près de 100 langues d’entrée et 36 langues de sortie.
La plateforme présentée par Meta offre également la traduction texte à texte dans près de 100 langues, la traduction texte à voix prenant en charge près de 100 langues d’entrée et 35 langues de sortie.
Pour l’instant, comme Meta le fait déjà pour d’autres projets, la licence sous laquelle SeamlessM4T est distribuée autorise les initiatives de recherche. Elle n’est malheureusement pas autorisée à être utilisée à des fins commerciales. L’idée de l’entreprise de Mark Zuckerberg est de faciliter le travail des chercheurs et des développeurs qui peuvent utiliser SeamlessM4T comme base pour construire leurs projets.
Les ingénieurs de Meta ont également publié et rendu publiques les métadonnées de SeamlessAlign, le plus grand ensemble de données ouvert de traduction multimodale connu à ce jour : il contient 270 000 heures de parole et de texte extraits de la même parole, une base inestimable pour des projets dérivés. Par exemple, pour l’entraînement des intelligences artificielles.
Comment traduire avec SeamlessM4T sans rien installer localement ?
Pour voir par vous-même les résultats que vous pouvez obtenir avec SeamlessM4T, il vous suffit de lancer l’application Seamless Communication Translation Demo à partir de votre navigateur web. Pour continuer, cliquez d’abord sur le bouton Démarrer la démo, puis cochez la case « J’ai lu et j’accepte d’être lié par les Termes et Conditions de SeamlessTerms and Conditions ».
En cliquant sur Démarrer l’enregistrement, vous devez ensuite autoriser l’application Meta à accéder au microphone de l’appareil utilisé.
L’étape suivante consiste à choisir la langue : en cliquant sur Traduire, après quelques secondes d’attente, vous obtenez à la fois la traduction textuelle et un fichier audio résultant de l’opération de doublage.
En haut de la page, SeamlessM4T affiche d’abord le texte généré par le moteur speech-to-text à partir de la parole acquise par le microphone. Les deux boîtes suivantes, en revanche, affichent la traduction du texte et la piste audio générée dans l’autre langue (traduction vocale).
Comment télécharger la traduction audio
Étant donné que Meta n’autorise pas l’utilisation des informations générées par SeamlessM4T à des fins commerciales et que toute utilisation des données doit être strictement conforme aux conditions d’utilisation du service, il est possible de télécharger la traduction audio grâce à une simple astuce. Voyons comment procéder avec Google Chrome.
Après avoir généré la traduction, vous pouvez appuyer sur la combinaison de touches CTRL+SHIFT+I pour ouvrir les outils de développement de Chrome. Ici, vous devez sélectionner l’onglet Réseau et enfin cliquer sur le bouton « Lire » dans le panneau de traduction vocale de SeamlessM4T.
Enfin, dans l’onglet Réseau, vous verrez une référence commençant par la chaîne blob:https:// Cliquez dessus avec le bouton droit de la souris et sélectionnez Ouvrir dans un nouvel onglet.
Chrome affiche un lecteur audio plutôt spartiate : en cliquant sur les trois points puis sur Télécharger, la traduction créée avec l’application Meta peut être stockée localement au format WAV.
Comment installer et utiliser SeamlessM4T sur vos propres systèmes
Pour installer SeamlessM4T sur un système au sein de votre propre infrastructure ou sur le cloud, vous devez d’abord vous assurer que Python et pip sont correctement installés. Depuis la fenêtre du terminal, vous devez aller dans le dossier où vous avez téléchargé le code de SeamlessM4T. Tapez la commande suivante pour installer SeamlessM4T et ses dépendances :
pip install
Si vous êtes dans un environnement Conda, vous devez également installer la bibliothèque libsndfile avec la commande suivante :
conda install -y -c conda-forge libsndfile
Les bibliothèques utilisées dans le projet
Il est important de garder à l’esprit que SeamlessM4T base son fonctionnement sur trois bibliothèques développées par Meta :
- fairseq2 : il s’agit d’une bibliothèque de séquence de modélisation open source qui fournit des composants pour la traduction automatique, la modélisation du langage et d’autres tâches de génération de séquences. Actuellement, fairseq2 n’est pris en charge que sous Linux et macOS.
- SONAR et BLASER 2.0 : SONAR permet la gestion de phrases multilingues avec une approche multimodale. Il offre également un encodeur de texte et de parole pour de nombreuses langues. BLASER 2.0 est une métrique d’évaluation pour la traduction multimodale.
- stopes : est une bibliothèque d’exploration de données utilisée pour l’entraînement de modèles de traduction, y compris pour la traduction vocale.
Exemples d’utilisation de SeamlessM4T
Pour lancer une tâche S2ST (speech-to-speech) à partir de la ligne de commande, il suffit de lancer la commande suivante :
m4t_predict <chemin_de_sortie_audio> s2st <langue_destination> --chemin_de_sortie <chemin_de_sortie_audio>
Pour effectuer une tâche T2TT (texte à texte), l’instruction suivante peut être utilisée à la place :
m4t_predict <entrée_texte> t2tt <destination_langue> --src_lang <source_langue>
Le guide contenu dans le fichier README contient des instructions détaillées sur la manière d’effectuer d’autres opérations d’inférence en utilisant l’intelligence artificielle de SeamlessM4T.