File size: 4,898 Bytes
dcb0055
c0bfde5
 
 
 
 
 
dcb0055
 
 
c0bfde5
 
 
 
 
 
 
 
 
 
dcb0055
c0bfde5
 
 
 
 
 
 
 
 
 
 
d0aa86e
c0bfde5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
---
language:
  - zh
  - en
  - ja
  - es
  - ar
license: other
license_name: bilibili-model-license
license_link: LICENSE
library_name: indextts
pipeline_tag: text-to-speech
tags:
  - text-to-speech
  - tts
  - zero-shot
  - voice-cloning
  - multilingual
  - cross-lingual
  - emotion-controllable
---
# IndexTTS-2.5

IndexTTS-2.5 is a zero-shot text-to-speech model that performs voice cloning from a single reference audio. It supports **Chinese, English, Japanese, Spanish, and Arabic**, with cross-lingual voice transfer and disentangled emotion control.

Compared to IndexTTS-2, it adds Japanese/Spanish/Arabic support, improves inference speed, and enhances controllability of Chinese Pinyin, English CMU phonemes, and Japanese Kana.

## Model Details

- **Developed by:** IndexTeam, Bilibili
- **Model type:** Autoregressive zero-shot TTS (GPT + DiT + BigVGAN)
- **Languages:** Chinese, English, Japanese, Spanish, Arabic
- **License:** Bilibili Model License

### Model Sources

- **Repository:** [github.com/index-tts/index-tts](https://github.com/index-tts/index-tts)
- **Demo:** [IndexTTS-2.5 Demo Page](https://index-tts.github.io/index-tts2-5.github.io/)

## How to Get Started

### Installation

```bash
git clone https://github.com/index-tts/index-tts.git && cd index-tts
git lfs pull
pip install -U uv
uv sync --all-extras
```

### Download Model Weights

```bash
# HuggingFace
uv tool install "huggingface-hub[cli,hf_xet]"
hf download IndexTeam/IndexTTS-2.5 --local-dir=checkpoints

# ModelScope
uv tool install "modelscope"
modelscope download --model IndexTeam/IndexTTS-2.5 --local_dir checkpoints
```

### Quick Inference

```python
from indextts.infer_v2_5 import IndexTTS2

tts = IndexTTS2(cfg_path="checkpoints/config.yaml", model_dir="checkpoints", use_bf16=True)

# Basic voice cloning
tts.infer(
    spk_audio_prompt="prompt.wav",
    text="Hello, this is a voice cloning demo.",
    lang="EN",
    output_path="output.wav",
)

# With emotion control
tts.infer(
    spk_audio_prompt="prompt.wav",
    text="快躲起来!是他要来了!",
    lang="ZH",
    output_path="output.wav",
    emo_vector=[0, 0, 0.8, 0, 0, 0, 0, 0],
)

# With Pinyin/phoneme annotation
tts.infer(
    spk_audio_prompt="prompt.wav",
    text="他在银<行|XING2>里<行|HANG2>走了半天。",
    lang="ZH",
    output_path="output.wav",
)
```

### Web Demo

```bash
uv run webui.py --version 2.5 --model_dir ./checkpoints
```

## Uses

### Direct Use

- Zero-shot voice cloning from a single reference audio
- Multilingual speech synthesis (Chinese, English, Japanese, Spanish, Arabic)
- Cross-lingual voice transfer (e.g., Chinese speaker voice → English output)
- Emotion-controllable speech synthesis via emotion vectors, emotion reference audio, or text-based emotion detection

### Downstream Use

- Audiobook and podcast production
- Voice dubbing and localization
- Conversational AI and virtual assistants

### Out-of-Scope Use

- Impersonation or deception without consent
- Generating misleading or fraudulent audio content
- Any use that violates applicable laws or regulations

## Bias, Risks, and Limitations

- Voice cloning quality may vary across speakers and languages.
- The model may produce artifacts or unnatural prosody for very long or highly complex text.
- Cross-lingual transfer quality depends on the target language and speaker characteristics.
- The model does not verify speaker identity or consent. Users are responsible for ethical use.

## Evaluation

### Zero-Shot TTS (CV3-Eval)

| Model | Params | zh WER↓ | zh SS↑ | en WER↓ | en SS↑ | es WER↓ | es SS↑ | ja WER↓ | ja SS↑ | ar WER↓ | ar SS↑ |
|---|---|---|---|---|---|---|---|---|---|---|---|
| VoxCPM2 | 2B | 3.88 | 74.99 | 5.13 | 71.57 | 5.49 | 74.67 | 6.69 | 72.90 | 14.94 | 65.99 |
| CosyVoice3-0.5B | 0.5B | 3.84 | 80.01 | 4.88 | 74.16 | 4.04 | 78.85 | - | 76.36 | - | - |
| Fish Audio S2 Pro | 4B | 3.62 | 67.79 | 3.83 | 61.66 | 2.93 | 67.44 | 5.15 | 66.15 | 14.15 | 59.43 |
| Qwen3-TTS | 1.7B | 3.27 | 73.02 | 5.06 | 67.17 | 2.87 | 73.17 | 5.89 | 70.18 | - | - |
| **IndexTTS2.5** | **0.8B** | 4.36 | 77.10 | 5.12 | 68.06 | 3.75 | 76.39 | 5.66 | 74.62 | 14.88 | 69.74 |
| **IndexTTS2.5-RL** | **0.8B** | 3.93 | 77.92 | 3.89 | 67.79 | 3.33 | 76.68 | 5.30 | 75.41 | 13.58 | 70.36 |

### Cross-Lingual TTS (Chinese prompt → target language)

| Model | Params | zh→en WER↓ | zh→en SS↑ | zh→es WER↓ | zh→es SS↑ | zh→ja WER↓ | zh→ja SS↑ | zh→ar WER↓ | zh→ar SS↑ |
|---|---|---|---|---|---|---|---|---|---|
| VoxCPM2 | 2B | 4.48 | 64.25 | 16.38 | 64.89 | 11.84 | 71.54 | 11.09 | 67.62 |
| CosyVoice3-0.5B | 0.5B | 3.23 | 62.79 | 4.58 | 64.04 | - | - | - | - |
| **IndexTTS2.5** | **0.8B** | 3.62 | 63.83 | 5.17 | 65.48 | 6.57 | 74.16 | 9.51 | 71.02 |
| **IndexTTS2.5-RL** | **0.8B** | 3.55 | 67.47 | 4.86 | 64.47 | 6.38 | 75.82 | 9.89 | 73.05 |