- Bibliothèque légère de synthèse texte-parole (TTS) basée sur ONNX et de niveau
State-of-the-art, capable de produire une synthèse vocale de haute qualité sur CPU בלבד
- La taille des modèles va de 15M à 80M de paramètres (25 à 80 Mo), pour une exécution efficace même sans GPU
- Fournit 8 voix intégrées, le réglage de la vitesse, un pipeline de prétraitement du texte et une sortie audio en 24 kHz
- Utilisable directement sur Hugging Face et simple à intégrer via une API Python
- Solution TTS open source pensée pour le déploiement sur edge devices et l’intégration commerciale
Présentation de Kitten TTS
- Kitten TTS est une bibliothèque TTS open source basée sur ONNX qui effectue une synthèse vocale de haute qualité sur CPU, sans GPU
- Les modèles vont de 15M à 80M de paramètres, soit 25 à 80 Mo sur disque
- La version 0.8 propose des modèles 15M, 40M et 80M
- Le projet est actuellement en developer preview, et l’API peut évoluer à l’avenir
- Une prise en charge commerciale est proposée (support d’intégration, voix personnalisées, licence entreprise)
Fonctionnalités principales
- Architecture ultra-légère : à partir de 25 Mo en int8, adaptée au déploiement en environnement edge
- Optimisation CPU : inférence ONNX efficace sans GPU
- 8 voix intégrées : Bella, Jasper, Luna, Bruno, Rosie, Hugo, Kiki, Leo
- Réglage de la vitesse : contrôle du débit de parole via le paramètre
speed
- Pipeline de prétraitement du texte : gestion automatique des nombres, devises, unités, etc.
- Sortie 24 kHz : génération audio de haute qualité à fréquence d’échantillonnage standard
Modèles disponibles
- Quatre modèles sont proposés
- kitten-tts-mini (80M, 80MB)
- kitten-tts-micro (40M, 41MB)
- kitten-tts-nano (15M, 56MB)
- kitten-tts-nano (int8, 15M, 25MB)
- Certains utilisateurs ont signalé des problèmes avec le modèle
kitten-tts-nano-0.8-int8 ; il est recommandé d’ouvrir une issue
Démo et utilisation
- Essai direct dans le navigateur via Hugging Face Spaces
- Installation possible avec Python 3.8 ou version ultérieure et pip uniquement
- Exemple d’utilisation de base :
from kittentts import KittenTTS
model = KittenTTS("KittenML/kitten-tts-mini-0.8")
audio = model.generate("texte", voice="Jasper")
- Fonctions avancées : réglage de la vitesse (
speed), sauvegarde dans un fichier (generate_to_file), consultation de la liste des voix disponibles
Structure de l’API
KittenTTS(model_name, cache_dir=None)
- Charge le modèle depuis le Hugging Face Hub
model.generate(text, voice, speed, clean_text)
- Convertit le texte en audio 24 kHz
model.generate_to_file(text, output_path, voice, speed, sample_rate, clean_text)
- Enregistre directement la voix synthétisée dans un fichier
model.available_voices
- Renvoie la liste des voix disponibles
Configuration requise
- Système d’exploitation : Linux, macOS, Windows
- Python : 3.8 ou version ultérieure
- Matériel : CPU uniquement, GPU non requis
- Espace disque : 25 à 80 Mo selon le modèle
- Utilisation d’un environnement virtuel (venv, conda, etc.) recommandée
Feuille de route
- Optimisation du moteur d’inférence, SDK mobile, modèles haute qualité, TTS multilingue, sortie prévue de KittenASR
- Apache License 2.0
Aucun commentaire pour le moment.