--- license: other license_name: coqui-public-model-license license_link: https://coqui.ai/cpml language: - ar library_name: coqui pipeline_tag: text-to-speech base_model: coqui/XTTS-v2 datasets: - NightPrince/Arabic-professional-original-voice - NightPrince/Fasih-TTS-Benchmark tags: - text-to-speech - tts - arabic - arabic-tts - fusha - msa - xtts - xtts-v2 - speech-synthesis - voice-cloning - coqui metrics: - cer model-index: - name: Fasih-TTS-V1 results: - task: type: text-to-speech name: Text-to-Speech (Arabic MSA) dataset: name: Arabic Professional Original Voice type: NightPrince/Arabic-professional-original-voice metrics: - type: cer value: 1.3 name: CER (%) — held-out synthesis vs Whisper-large-v3 - type: cer value: 1.8 name: Human-recording ASR floor (%) --- # Fasih-TTS-V1 — Arabic (MSA / Fusha) Professional Male TTS Fasih-TTS-V1 **▶ Try the live demo (ZeroGPU): https://huggingface.co/spaces/NightPrince/Fasih-TTS** **Fasih** (فَصِيح, *"eloquent"*) is a single-speaker **Modern Standard Arabic** text-to-speech model with a **professional male "news-anchor" voice**, fine-tuned from [Coqui XTTS v2](https://huggingface.co/coqui/XTTS-v2). It voices the *"Muslim"* religious-Q&A assistant, and reaches **human-level intelligibility** with **broadcast-grade consistency**. ## In the wild - **[Arabic TTS Arena](https://huggingface.co/spaces/Navid-AI/Arabic-TTS-Arena)** — Fasih-TTS-V1 has been submitted for blind A/B voting against other Arabic TTS models. PR: [Navid-Gen-AI/arabic-tts-arena#6](https://github.com/Navid-Gen-AI/arabic-tts-arena/pull/6) (pending maintainer review at time of writing). ## Samples | Greeting | Fiqh explanation | |---|---| | | | | *السَّلَامُ عَلَيْكُمْ... أَنَا مُسْلِم، مُسَاعِدُكَ الصَّوْتِيُّ* | *الْوُضُوءُ شَرْطٌ لِصِحَّةِ الصَّلَاةِ...* | --- ## Capabilities - **Human-level intelligibility** — **1.3% CER** (ASR-measured), matching the **1.8%** error floor of the *original human recordings*. The synthetic voice is as understandable as the actor. - **Broadcast consistency** — the same sentence synthesized **4× gave identical CER**, and across 24 stress generations there were **zero** autoregressive failures (no loops, skips, or early cut-offs) — the classic XTTS weakness, eliminated. - **True Fusha, correct iʿrāb** — trained on **fully-diacritized** text and paired with a built-in **CATT** diacritizer, so even **bare, undiacritized** Arabic is pronounced correctly, case-endings and all. - **Production-ready text handling** — auto-expands **numbers to words**, applies a **sacred-term pronunciation lexicon**, and **chunks long passages** — raw assistant text becomes speech-ready in a single call. - **Real-time and streaming** — **RTF ≈ 0.60**, streaming **first-audio ≈ 675 ms**, clean **24 kHz** output — suitable for live conversational agents. --- ## Benchmarks CER between the intended text and a **Whisper-large-v3** transcription of the synthesized audio (both diacritics-stripped and orthography-normalized), judged against the ASR floor on the human originals. | Test set | Clips | Mean CER | Worst CER | |----------|:----:|:--------:|:---------:| | Varied MSA sentences | 8 | **1.3%** | 2.2% | | Same sentence ×4 (variance) | 4 | **2.0%** | 2.0% | | Long text (auto-chunked) | 2 | **0.8%** | 0.9% | | Hard stress (numbers, lists, terms) | 6 | 2.1% | 8.2% | | **Human originals (ASR floor)** | 8 | *1.8%* | *4.8%* | | Efficiency (1× RTX 2080 Ti, FP32) | Value | |--|--| | Real-time factor | **~0.60** | | Streaming time-to-first-audio | **~675 ms** | | Output | 24 kHz mono | --- ## SILMA open-source Arabic TTS benchmark Evaluated on [SILMA's Open-Source Arabic TTS Benchmark](https://huggingface.co/spaces/silma-ai/opensource-arabic-tts-benchmark) (MSA, 10 fixed sentences), scored by **two independent ASR judges** — Whisper-large-v3 and NVIDIA NeMo Arabic FastConformer — plus **UTMOS** naturalness. Two judges keep the ranking honest. ![SILMA MSA benchmark](https://huggingface.co/NightPrince/Fasih-TTS-V1/resolve/main/assets/benchmark_msa.png) | Model | WER · Whisper | WER · NeMo | UTMOS | |--|:--:|:--:|:--:| | **Fasih-TTS-V1 (ours)** | **6.5** | **2.5** | 3.16 | | xtts (base) | 10.3 | 2.5 | 2.99 | | chatterbox | 12.8 | 5.4 | 3.20 | | silma_tts | 11.1 | 5.8 | 3.15 | | omnivoice | 15.3 | 7.3 | 3.62 | | habibi_specialized | 21.9 | 23.3 | 2.33 | **Fasih is top-tier on intelligibility** — the best-or-tied lowest WER across *both* ASR judges (tied with base XTTS at 2.5% on the stronger Arabic ASR, NeMo). On **naturalness (UTMOS) it is mid-pack (#3)** — the smoothest model (omnivoice) is also the least accurate, and Fasih is tuned toward pronunciation correctness, which is what matters most for a religious agent. WER measures intelligibility, not naturalness; SILMA's own benchmark is a **human auditory** comparison. Full per-clip provenance and all clips live in the companion dataset **[NightPrince/Fasih-TTS-Benchmark](https://huggingface.co/datasets/NightPrince/Fasih-TTS-Benchmark)**. Reproduce: `scripts/silma_compare.py` (Whisper), `scripts/nemo_compare.py` (NeMo), `scripts/utmos_compare.py` (UTMOS). --- ## Architecture ![Fasih-TTS-V1 architecture](https://huggingface.co/NightPrince/Fasih-TTS-V1/resolve/main/assets/architecture.png) --- ## Quick start ```python from huggingface_hub import snapshot_download from TTS.tts.configs.xtts_config import XttsConfig from TTS.tts.models.xtts import Xtts path = snapshot_download("NightPrince/Fasih-TTS-V1") config = XttsConfig(); config.load_json(f"{path}/config.json") model = Xtts.init_from_config(config) model.load_checkpoint(config, checkpoint_path=f"{path}/model.pth", vocab_path=f"{path}/vocab.json", use_deepspeed=False) model.cuda().eval() gpt_cond, spk = model.get_conditioning_latents(audio_path=["reference.wav"]) out = model.inference("السَّلَامُ عَلَيْكُمْ وَرَحْمَةُ اللَّهِ", "ar", gpt_cond, spk, temperature=0.65, repetition_penalty=2.0) # out["wav"] -> 24 kHz mono waveform ``` Feed **diacritized** Fusha for correct iʿrāb. The included front-end (diacritization, number expansion, sacred-term lexicon, ≤166-char chunking) turns raw text into speech-ready input automatically. --- ## Intended use and ethics **In scope:** voicing **MSA / Fusha explanatory** religious and educational content that has been authored or reviewed by a qualified human. **Out of scope / prohibited** - **Qur'anic recitation** — requires *tajwīd* and human reciters; route āyāt to real audio. - **Autonomous religious rulings** — the model only voices text; it does not verify content. - **Impersonation / misinformation** — do not synthesize false statements in this voice. --- ## Training Fine-tuned from **`coqui/XTTS-v2`** on **`NightPrince/Arabic-professional-original-voice`** (1297 clips, ~2.4 h, one male speaker, fully diacritized — plain transcripts diacritized with **CATT**, verified ≈ human gold). **FP32** (Turing has no bf16; XTTS's GPT is unstable under FP16 autocast), single RTX 2080 Ti, batch 1 × grad-accum 24, gradient checkpointing, LR 5e-6. **Best validation loss: 2.622.** ## Limitations - Feed **diacritized** text for correct iʿrāb (the front-end handles it). - **Number gender-agreement** (`خمسة` vs `خمس`) is not always correct. - Source audio is **128 kbps MP3** — a soft ceiling on fidelity. - ~2.4 h single-speaker; auto-diacritization of 371 training clips is ~95%+ (not fully human-verified). ## License Fine-tuned from **Coqui XTTS v2** under the **Coqui Public Model License (CPML)** — **non-commercial**, attribution required; derivatives inherit these terms. Diacritization: **CATT** (MIT). ## Copyright Copyright 2026 **Yahya Elnawasany (NightPrince)**. The Fasih-TTS-V1 model, its voice and generated audio, and the "Fasih / فَصِيح" name and branding are copyright the author. The model is distributed under the **Coqui Public Model License** (non-commercial, attribution); the accompanying code is MIT. Do not use the model or its outputs to impersonate, misrepresent, or generate misleading religious content. Full terms: `COPYRIGHT` and `THIRD_PARTY_NOTICES.md` in the repository. ## Source and citation Full pipeline, evaluation and serving code: **https://github.com/NightPrinceY/Fasih-TTS-V1** Author and portfolio: **Yahya Elnawasany (NightPrince)** — https://nightprincey.github.io/Portfolio-App/ ```bibtex @software{fasih_tts_v1_2026, author = {Yahya Elnawasany (NightPrince)}, title = {Fasih-TTS-V1: Arabic Fusha Professional-Male Text-to-Speech}, year = {2026}, url = {https://github.com/NightPrinceY/Fasih-TTS-V1}, note = {Fine-tuned from Coqui XTTS v2} } ```