CoolFace
Modelpublic

Mosescreates/habibi-tts-mlx

sourceHugging Faceupdated 7mo agoView on Hugging Face
0likes
Model Card

Habibi-TTS MLX

The first MLX conversion of Habibi-TTS — an Arabic dialect text-to-speech model built on the F5-TTS architecture.

Overview

This is the Unified Habibi-TTS model converted to Apple MLX format for use with f5-tts-mlx and f5-tts-swift.

  • —Architecture: F5-TTS DiT (dim=1024, depth=22, heads=16, ffmult=2, convlayers=4)
  • —Parameters: 337M (float32)
  • —Model size: ~1.3 GB
  • —Vocab: 2,731 characters (includes 93 Arabic characters + diacritics)
  • —Sample rate: 24 kHz
  • —Source: Unified checkpoint from SWivid/Habibi-TTS (200K steps, EMA weights)

Supported Dialects

The Unified model supports multiple Arabic dialects:

CodeDialect
MSAModern Standard Arabic (فصحى)
EGYEgyptian (مصري)
SAUSaudi (سعودي)
UAEEmirati (إماراتي)
IRQIraqi (عراقي)
MARMoroccan (مغربي)
ALGAlgerian (جزائري)

Usage with f5-tts-mlx (Python)

python
from f5_tts_mlx.cfm import F5TTS

# Load directly from this repo
f5tts = F5TTS.from_pretrained("pmax-agency/habibi-tts-mlx")

# Generate Arabic speech
wave, _ = f5tts.sample(
    ref_audio,
    text=["أهلاً وسهلاً، كيف حالك اليوم؟"],
    duration=duration,
    steps=8,
)

Or via CLI:

bash
pip install f5-tts-mlx
python -m f5_tts_mlx.generate \
  --model pmax-agency/habibi-tts-mlx \
  --text "أهلاً وسهلاً" \
  --output arabic_speech.wav

Conversion Details

Converted from the original PyTorch safetensors checkpoint to MLX-compatible format:

  1. 1.Extracted EMA weights (best quality) from the Unified checkpoint
  2. 2.Stripped ema_model. prefix
  3. 3.Removed training metadata (initted, step)
  4. 4.Weight format is compatible with f5-tts-mlx's built-in convert_weights=True conversion

The model_v1.safetensors file contains weights in PyTorch key format — f5-tts-mlx's from_pretrained handles the final key renaming and conv weight transposition automatically.

Credits

License

This model inherits the license from the original Habibi-TTS repository.