- Chatterbox est le dernier modèle open source de TTS (synthèse vocale) publié par Resemble AI
- Lors d’évaluations comparatives face au concurrent ElevenLabs, il a montré des résultats systématiquement préférés
- Il intègre des fonctions propres, comme le contrôle de l’exagération émotionnelle, permettant diverses expressions vocales
- L’entraînement a été réalisé avec un backbone Llama de 500 millions de paramètres et 500 000 heures de données nettoyées
- Toutes les voix générées embarquent un watermark Perth pour aider à prévenir l’usage non autorisé et la falsification
Présentation de Chatterbox TTS et importance
- Chatterbox est un modèle open source de TTS (text-to-speech) de niveau production développé par Resemble AI
- Il est distribué sous licence MIT, donc librement exploitable, et des résultats montrent une qualité supérieure même face à des modèles commerciaux propriétaires (ex. : ElevenLabs)
- Il peut être appliqué à l’ensemble de la création de contenu, comme la vidéo, les mèmes, les jeux ou les agents IA, et il est le premier TTS open source à proposer un contrôle de l’exagération émotionnelle
- Des démonstrations et usages réels sont possibles via l’application Hugging Face Gradio ou sa propre API ; pour les besoins à grande échelle ou à forte exigence de précision, une API commerciale (ultra-faible latence inférieure à 200 ms) est proposée
Principales caractéristiques
- TTS zero-shot de pointe : permet d’exprimer divers styles de locuteurs sans données supplémentaires
- Backbone Llama 0.5B : applique une architecture de grand modèle de langage à la synthèse vocale
- Réglage de l’exagération/intensité émotionnelle : offre un contrôle fin de l’intensité de la personnalité et des émotions pour chaque locuteur
- Alignment-informed inference : reflète les informations d’alignement entre phonèmes et audio pour offrir une qualité de génération ultra stable
- 0.5M heures de données nettoyées : entraînement sur un jeu de données vocales massif et de haute qualité
- Watermarking intégré : le watermarking Perth (Perceptual Threshold) de Resemble AI permet la traçabilité des contenus générés et la prévention des usages non autorisés
- Script de conversion vocale : intègre une fonctionnalité voice conversion facile à utiliser
- Validation des performances : résultats disponibles montrant une évaluation supérieure à ElevenLabs
Conseils d’utilisation
- TTS général / agents vocaux : avec les valeurs par défaut (Exaggeration=0.5, cfg_weight=0.5), on obtient une qualité équilibrée dans la plupart des situations
- Pour les styles de locuteurs rapides, ajuster cfg_weight autour de 0.3 peut offrir un débit plus naturel
- Synthèse vocale émotionnelle / dramatique : augmenter Exaggeration à 0.7 ou plus et réduire cfg_weight renforce l’effet dramatique de l’énonciation
- Plus l’intensité émotionnelle (exaggeration) est élevée, plus le débit de parole s’accélère ; réduire cfg_weight permet d’obtenir une parole plus lente et plus nette
Langues prises en charge
- Actuellement, seul l’anglais est pris en charge
Open source de référence / dépendances
- Intègre diverses technologies récentes de modèles vocaux et linguistiques, dont Cosyvoice, Real-Time-Voice-Cloning, HiFT-GAN, Llama 3 et S3Tokenizer
Watermarking Perth intégré
- Watermarking Perth (Perceptual Threshold) : insère dans toutes les voix générées un watermark neuronal sans dégradation de la qualité audio
- Le watermark est conservé même après compression MP3, édition audio et traitement
- Une détection automatique avec une précision proche de 100 % est possible, ce qui aide à la traçabilité de l’original, à la prévention de la falsification et à un usage responsable de l’IA
Exemple d’extraction du watermark
- Il est possible de vérifier la présence de ce watermark via un script séparé
- En utilisant le package Python perth et librosa, on peut extraire la valeur du watermark (0 ou 1) depuis l’audio
Communauté
- Une communauté Discord officielle est en activité, et chacun peut la rejoindre et collaborer
Clause de non-responsabilité
- L’usage malveillant de ce modèle est interdit, et les prompts n’utilisent que des données publiquement disponibles sur Internet
1 commentaires
Réactions sur Hacker News
Ils le présentent comme des imperceptible neural watermarks, capables de survivre à la compression MP3, à l’édition audio et à divers types d’altération, avec une précision de détection proche de 100 %
Mais je me demande s’il ne suffit pas simplement de commenter l’appel à la fonction
apply_watermarkdanstts.pypour désactiver facilement l’insertion du filigranePour ce type de filigrane, j’imaginais justement que l’objectif était de le cacher directement dans le modèle pour éviter qu’il soit retiré trop facilement
Ajouter un filigrane à un modèle open source comme simple étape de post-traitement fait se demander pourquoi l’ajouter du tout
Un peu comme le content filter présent dans la version originale de Stable Diffusion
Il est aussi possible que cela vise à empêcher la contamination des données d’entraînement
--no-watermarkdans le parserAu final, on dirait qu’ils l’ont ajouté comme une “fonctionnalité” destinée aux utilisateurs qui voudront l’intégrer dans un produit plus large
Les leaders du marché TTS sont déjà bien identifiés, et des acteurs comme Resemble ou PlayHT doivent publier le poids des modèles et le code source s’ils veulent récupérer ne serait-ce qu’un peu de part de marché auprès des développeurs
Le watermarking relève surtout d’une logique CYA pour répondre aux critiques sur les abus liés aux médias
Sans ce genre de dispositif, les médias et le camp anti-IA (404Media, etc.) soulèveraient immédiatement la question des abus
Publier le code source, les poids, et proposer séparément une API ou des options de fine-tuning me paraît être la bonne direction
À titre de référence, article de 404Media
Si les audios de démo ne sont pas trop triés sur le volet, je trouve que c’est vraiment une excellente sortie
Comme je le dis souvent, dans la pratique, avec l’IA vocale, la limite reste plus souvent la reconnaissance vocale (transcription) que la qualité TTS elle-même
À moins que ça n’ait changé récemment, cela reste encore le principal point faible
Je n’ai pas encore essayé de leur fournir plusieurs versions d’une transcription ou des niveaux de confiance, mais j’ai l’impression qu’ils sauraient en tirer parti efficacement
C’est aussi amusant que la phrase vienne de Pulp Fiction
Les démos habituelles sont toujours tellement fades et inoffensives que ça devient lassant
Dans la communauté TTS indé, on utilise souvent le Navy Seals copypasta, donc voir une entreprise de services comme Resemble inclure ce type de phrase est assez rafraîchissant
Wiki Copypasta, exemple de Navy Seal copypasta
Quand j’y mets mon accent australien, le résultat sonne très britannique, avec une prononciation RP extrêmement policée
Le rendu paraît très naturel, mais il ne donne clairement pas l’impression de reproduire mon accent
Pour des usages réels, on cherche souvent avant tout une voix claire et naturelle, donc pour ça c’est parfaitement adapté
Parmi les meilleurs modèles “open”, on trouve
En pratique, seul Seed-VC fournit le code d’entraînement/fine-tuning, mais tous ont de meilleures performances zeroshot que Chatterbox
En particulier, le MegaTTS3 de ByteDance est à un niveau que pratiquement aucune entreprise ne peut suivre, hors ElevenLabs
ByteDance surclasse tout le monde en argent, en personnel et en données
Si votre objectif est la reproduction vocale zeroshot sans fine-tuning, ces modèles sont un meilleur choix
Le lien vers le modèle déployable est également fourni
Le support du streaming est encore en cours de développement
Mais même avec des accents finalement assez répandus, on entend des interférences d’autres accents (par exemple un enregistrement écossais qui ressort avec une teinte australienne)
L’accent du Yorkshire est lui aussi mal capté
Donc, dans son état actuel, il faut un matériel grand public plutôt costaud
Mais il y a probablement beaucoup de marge pour de futures optimisations
Lien vers l’issue
Si le modèle en vaut vraiment la peine, quelqu’un finira sans doute par trouver comment le faire tourner avec moins de VRAM
Je l’ai moi-même lancé sur une vieille Nvidia 2060, avec un pic d’environ 5 Go de VRAM
On peut le faire tourner gratuitement, mais le coût réel peut finir par retirer tout intérêt à l’auto-hébergement
Je voulais savoir s’il fallait un GPU coûteux, ou si ça pouvait tourner sur un portable vieux de 12 ans
Parmi les problèmes rencontrés :
numpy 1.26.4non détecté,uv pipne cherchant que dans le dépôt PyTorchpip install chatterbox-ttsest buguée en mode CPU onlymainpar défaut nécessiteprotobuf-compilersur DebianÀ force de retomber sur ce genre de galères dès qu’on essaie d’exécuter le projet Python de quelqu’un d’autre, ça devient épuisant
SparkTTS expose un peu plus de paramètres, et son code GitHub laisse entrevoir des possibilités de contrôle émotionnel plus fines
Dans mon cas, en poussant fortement les indications textuelles sur la prosody et la tonality, j’ai parfois réussi à approcher le concept recherché sur certains modèles
Mais cela reste bien plus fastidieux que l’approche intuitive de conception émotionnelle proposée par ElevenLabs
Cela reste tout de même assez impressionnant d’arriver à ce niveau avec un échantillon aussi court
Et si l’échantillon wave one-shot contient du bruit, Chatterbox offre parfois en bonus un étrange son non identifié à la fin
En particulier quand il lit quelque chose comme la Divine Comédie de Dante, on obtient presque une expérience de “sons de l’enfer”
(Reste seulement à savoir si Amazon l’indiquera clairement)
outil de conversion audiobook audiblez
Un an plus tard, c’est forcément encore meilleur