index-tts/index-ttsPlease refer to the latest official releases for information GitHub Homepage
IndexTTS est un système de synthèse vocale texte-parole de qualité industrielle, contrôlable et efficace, basé sur XTTS et Tortoise. Il prend en charge la correction de la prononciation pinyin chinoise et le contrôle précis de la voix.
Apache-2.0Python 3.6kindex-ttsindex-tts Last Updated: 2025-06-17
Présentation détaillée du projet IndexTTS
Aperçu du projet
IndexTTS est un système de synthèse vocale zéro-shot de qualité industrielle, contrôlable et efficace, principalement basé sur XTTS et Tortoise. Ce système adopte une architecture de style GPT et possède de puissantes capacités de synthèse vocale, particulièrement optimisées pour la synthèse vocale chinoise.
Fonctionnalités clés
1. Clonage vocal zéro-shot
- Capacité à réaliser un clonage vocal de haute qualité avec seulement quelques échantillons audio de référence
- Prend en charge la synthèse vocale multilingue, notamment le chinois et l'anglais
2. Correction du pinyin chinois
- Capacité à corriger la prononciation des caractères chinois à l'aide du pinyin
- Utilise une méthode de modélisation hybride caractère-pinyin pour corriger rapidement les caractères mal prononcés
- Gère efficacement les problèmes de prononciation des caractères polysémiques et des caractères à longue traîne
3. Contrôle précis de la voix
- Contrôle des pauses à n'importe quel endroit via la ponctuation
- Prend en charge le contrôle précis du rythme et de la prosodie vocale
- Offre de nombreuses options de réglage pour l'expressivité vocale
Architecture technique
Composants du modèle
- Modèle de synthèse vocale de style GPT : Basé sur l'architecture Transformer
- Encodeur conditionnel Conformer : Améliore la stabilité de l'entraînement et la similarité vocale
- Décodeur vocal BigVGAN2 : Optimise la qualité audio et la fidélité du timbre vocal
- Modélisation hybride caractère-pinyin : Spécialement optimisée pour la synthèse vocale chinoise
Données d'entraînement
- Entraîné sur des dizaines de milliers d'heures de données
- Couvre une variété de langues et de styles vocaux
- Comprend de riches ensembles de données vocales chinoises
Performances
Indicateurs d'évaluation objectifs
Comparaison du taux d'erreur de mot (WER)
Résultats des tests basés sur l'ensemble de données seed-test :
Modèle | test_zh | test_en | test_hard |
---|---|---|---|
Human | 1.26 | 2.14 | - |
SeedTTS | 1.002 | 1.945 | 6.243 |
CosyVoice 2 | 1.45 | 2.57 | 6.83 |
F5TTS | 1.56 | 1.83 | 8.67 |
IndexTTS | 0.937 | 1.936 | 6.831 |
IndexTTS-1.5 | 0.821 | 1.606 | 6.565 |
Comparaison de la similarité du locuteur (SS)
Modèle | aishell1_test | commonvoice_20_test_zh | commonvoice_20_test_en | librispeech_test_clean | Moyenne |
---|---|---|---|---|---|
Human | 0.846 | 0.809 | 0.820 | 0.858 | 0.836 |
CosyVoice 2 | 0.796 | 0.743 | 0.742 | 0.837 | 0.788 |
IndexTTS | 0.744 | 0.742 | 0.758 | 0.823 | 0.776 |
IndexTTS-1.5 | 0.741 | 0.722 | 0.753 | 0.819 | 0.771 |
Score d'évaluation subjective (MOS)
Modèle | Prosodie | Timbre | Qualité | Moyenne |
---|---|---|---|---|
CosyVoice 2 | 3.67 | 4.05 | 3.73 | 3.81 |
F5TTS | 3.56 | 3.88 | 3.56 | 3.66 |
XTTS | 3.23 | 2.99 | 3.10 | 3.11 |
IndexTTS | 3.79 | 4.20 | 4.05 | 4.01 |
Installation et utilisation
Configuration de l'environnement
# Cloner le dépôt
git clone https://github.com/index-tts/index-tts.git
# Créer un environnement conda
conda create -n index-tts python=3.10
conda activate index-tts
# Installer les dépendances
pip install -r requirements.txt
apt-get install ffmpeg
Téléchargement du modèle
# Télécharger avec huggingface-cli
huggingface-cli download IndexTeam/IndexTTS-1.5 \
config.yaml bigvgan_discriminator.pth bigvgan_generator.pth bpe.model dvae.pth gpt.pth unigram_12000.vocab \
--local-dir checkpoints
# Les utilisateurs chinois peuvent utiliser le miroir
export HF_ENDPOINT="https://hf-mirror.com"
Utilisation en ligne de commande
# Installer l'outil en ligne de commande
pip install -e .
# Exemple d'utilisation
indextts "Bonjour à tous, je suis actuellement en train d'expérimenter la technologie de l'IA sur Bilibili, et honnêtement, je n'aurais jamais imaginé cela avant de venir ! La technologie de l'IA a atteint un niveau aussi incroyable !" \
--voice reference_voice.wav \
--model_dir checkpoints \
--config checkpoints/config.yaml \
--output output.wav
Interface Web
# Installer les dépendances de l'interface Web
pip install -e ".[webui]"
# Lancer l'interface Web
python webui.py
Accédez ensuite à http://127.0.0.1:7860 dans votre navigateur.
Utilisation de l'API Python
from indextts.infer import IndexTTS
# Initialiser le modèle
tts = IndexTTS(model_dir="checkpoints", cfg_path="checkpoints/config.yaml")
# Définir l'audio de référence et le texte
voice = "reference_voice.wav"
text = "Bonjour à tous, je suis actuellement en train d'expérimenter la technologie de l'IA sur Bilibili, et honnêtement, je n'aurais jamais imaginé cela avant de venir ! La technologie de l'IA a atteint un niveau aussi incroyable !"
# Générer la voix
tts.infer(voice, text, output_path)
Expérience en ligne
Avantages du projet
- Performances de qualité industrielle : Surpasse les systèmes TTS grand public dans plusieurs évaluations.
- Support multilingue : Optimisé spécifiquement pour la synthèse vocale chinoise, tout en prenant en charge l'anglais.
- Contrôle flexible : Offre des capacités de contrôle vocal précises.
- Facilité de déploiement : Propose plusieurs modes d'utilisation et une documentation de déploiement complète.
- Mises à jour continues : L'équipe optimise et améliore continuellement les performances du système.
IndexTTS représente l'état de l'art actuel en matière de technologie de synthèse vocale, offrant une solution de haute qualité et très efficace pour les applications de synthèse vocale.