IndexTTS-2-MLX

IndexTeam/IndexTTS-2 converted to MLX safetensors (fp32) for native Apple Silicon inference, with mlx-indextts.

IndexTTS-2 is a zero-shot voice-cloning TTS system with emotion control. It clones a voice from a single short reference clip (5โ€“15 s) and synthesizes Chinese and English speech with optional explicit emotion vectors.

Model files

File Description
gpt.safetensors GPT semantic-code generator (autoregressive)
s2mel.safetensors S2Mel flow-matching mel decoder
bigvgan.safetensors BigVGAN v2 vocoder (22.05 kHz, 80-band)
vq2emb.safetensors Semantic-code โ†’ embedding table
feat1.pt / feat2.pt Speaker-style / emotion matrices for explicit emotion control
wav2vec2bert_stats.pt w2v-BERT feature normalization statistics
tokenizer.model / config.yaml / config.json Text front end and runtime configs
LICENSE.txt / LICENSE_ZH.txt Upstream IndexTTS-2 license

Auxiliary encoders (w2v-BERT 2.0, MaskGCT semantic codec, CAMPPlus) are loaded from their original upstream checkpoints at runtime; see the inference repo for details.

Use with mlx-indextts

git clone https://github.com/Jup33Q/mlx-indextts
cd mlx-indextts && uv sync

hf download Jup33QE/IndexTTS-2-MLX --local-dir models/IndexTTS-2-MLX

HF_HUB_OFFLINE=1 uv run python -m mlx_indextts.generate_v2 \
  --model-dir models/IndexTTS-2-MLX \
  --reference path/to/reference.wav \
  --text "ไฝ ๅฅฝ๏ผŒ่ฟ™ๆ˜ฏไธ€ๆฎต MLX ๅŽŸ็”ŸๆŽจ็†็š„ไธญๆ–‡่ฏญ้Ÿณใ€‚" \
  --output out.wav

Conversion notes

  • Converted from the official PyTorch checkpoints with mlx_indextts/convert_v2.py, fully offline from local weights.
  • Layer-wise alignment vs PyTorch (MPS): end modules match within fp32 tolerance (BigVGAN full-model MAE 6.8e-3, emotion pipeline ~5e-4); a few intermediate layers show device-level numerical outliers that do not affect end-to-end output.
  • Verified end-to-end on Apple M5 Max: Mandarin synthesis RTF โ‰ˆ 1.9 (fp32, batch).

License

IndexTTS-2 weights are released under the upstream IndexTTS license โ€” see LICENSE.txt (English) and LICENSE_ZH.txt (Chinese), which are included in this repo and apply to the converted weights as well. The MLX conversion code lives in mlx-indextts under its own license.

Downloads last month
573
MLX
Hardware compatibility
Log In to add your hardware

Quantized

Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for mlx-community/IndexTTS-2-MLX

Finetuned
(10)
this model