--- language: [ha, yo, ig, en] license: mit pipeline_tag: text-to-speech tags: [text-to-speech, voice-cloning, chatterbox, multilingual, hausa, yoruba, igbo, nigerian-english, african-languages] base_model: ResembleAI/chatterbox --- # Naija TTS — multilingual Hausa / Yoruba / Igbo / Nigerian English One Chatterbox model covering four Nigerian languages, with zero-shot voice cloning. LoRA fine-tune of Chatterbox Multilingual (MIT), with the grapheme vocabulary extended for the characters these languages need. Base Chatterbox ships 23 languages, of which Swahili is the only African one. This model adds Hausa, Yoruba, Igbo and Nigerian English — the last under its own `en-ng` tag so base English is left intact. ## Evaluation | Language | n | CER | CER floor | WER | Speaker SIM | RTF | |---|---|---|---|---|---|---| | Hausa (`ha`) | 40 | 8.83 % | 4.87 % | 32.35 % | n/a | 0.680 | | Yoruba (`yo`) | 40 | 45.02 % | 12.13 % | 77.73 % | n/a | 1.065 | | Igbo (`ig`) | 40 | 14.87 % | 8.41 % | 42.57 % | n/a | 0.840 | | Nigerian English (`en-ng`) | 40 | 12.27 % | 13.09 % | 31.44 % | n/a | 0.932 | **Read each CER against its own floor**, not against zero. The floor is what MMS-ASR scores on genuine recordings of that language — its own error rate. A CER at the floor means the synthesized speech is as intelligible as real speech. The floors differ substantially between languages; a raw CER comparison across languages is meaningless. ## Usage ```python import torchaudio as ta import chatterbox.mtl_tts as M from chatterbox.mtl_tts import ChatterboxMultilingualTTS for code, name in [("ha","Hausa"), ("yo","Yoruba"), ("ig","Igbo"), ("en-ng","Nigerian English")]: M.SUPPORTED_LANGUAGES[code] = name model = ChatterboxMultilingualTTS.from_local("path/to/repo", device="cuda") wav = model.generate("Sannu da zuwa.", language_id="ha", audio_prompt_path="reference.wav") ta.save("out.wav", wav, model.sr) ``` Normalize text to Unicode NFC and keep the languages' special characters as written — for Yoruba this includes the combining tone marks. ## Limitations - **Hausa tone** is not modelled: Boko orthography marks neither tone nor vowel length, so a character-input model has no signal for it. Yoruba and Igbo write tone with diacritics and are not subject to this. - Long utterances can truncate (Chatterbox forces EOS on long tails). - The corpus was capped per language for balance, so no language sees its full available data. - Outputs carry Resemble's Perth watermark, inherited from the base model. ## Licence MIT, from base Chatterbox.