ποΈ Karamojong TTS β VITS
An open-source neural text-to-speech model for Ng'akarimojong (kdj) β an Eastern Nilotic language spoken by approximately 370,000 people in the Karamoja sub-region of northeastern Uganda.
One of the first open-weights TTS systems for this language.
π Samples
| Karamojong | English | Model | Audio |
|---|---|---|---|
| "Abaraka noi ejok akim" | "Thank you very much, it is good" | best_model | sample_1.wav |
| "Ijo noi Anu ejok noi" | "Yes indeed, Anu is fine indeed" | best_model | sample_2.wav |
| "Abunit ayong Najie anerai acamit ayong akisyom ngiemuto ka ngitalio a Ngijie" | "I came to Najie because I want to learn about the history and culture of the Jie" | best_model | samples/best_model__abunit_ayong_najie_anerai_acamit_ayong_akisyom_ngiemuto.wav |
| "Abunit ayong Najie anerai acamit ayong akisyom ngiemuto ka ngitalio a Ngijie" | "I came to Najie because I want to learn about the history and culture of the Jie" | best_model_9918 | samples/best_model_9918__abunit_ayong_najie_anerai_acamit_ayong_akisyom_ngiemuto.wav |
π Why this matters
Of the world's ~7,000 languages, fewer than 100 have meaningful speech technology. Karamojong β despite hundreds of thousands of speakers β has been almost entirely absent from voice assistants, accessibility tools, and language-learning apps. This model is a step toward changing that.
π Quick start
CLI
# Install with pinned versions to avoid dependency conflicts
pip install \
"coqui-tts==0.27.5" \
"transformers==4.57.6" \
"tokenizers>=0.22,<0.23" \
"numpy>=2.0,<2.3" \
"numba>=0.61,<0.62" \
"librosa>=0.11,<0.12" \
"huggingface_hub>=0.34,<0.40"
# Pull model + config from the Hub
python -c "from huggingface_hub import snapshot_download; \
snapshot_download('speedykom-group/karamojong-tts-vits-beta', local_dir='./karamojong-tts')"
# Synthesize
tts --text "Ejok noi! Iyalama ngesi?" \
--model_path ./karamojong-tts/best_model.pth \
--config_path ./karamojong-tts/config.json \
--out_path output.wav
Python
from huggingface_hub import snapshot_download
from TTS.utils.synthesizer import Synthesizer
repo_dir = snapshot_download("speedykom-group/karamojong-tts-vits-beta")
syn = Synthesizer(
tts_checkpoint=f"{repo_dir}/best_model.pth",
tts_config_path=f"{repo_dir}/config.json",
)
wav = syn.tts("Ejok noi! Iyalama ngesi?")
syn.save_wav(wav, "output.wav")
ποΈ Model
| Architecture | VITS (end-to-end TTS) |
| Framework | Coqui TTS |
| Sample rate | 22,050 Hz, mono WAV |
| Speakers | Single-speaker |
| Language | Ng'akarimojong (ISO 639-3: kdj) |
| Family | Eastern Nilotic β Ateker (TesoβTurkana) |
| License | CC BY-NC 4.0 |
π§ͺ Training
Trained on a single NVIDIA L4 GPU (24 GB) with Coqui TTS. Key design choices:
- Source data β 4,622 clips (1β8 s, ~5β6 hours total) from
speedykom-group/karamojong-speech-dataset. - Audio preprocessing β Stationary noise reduction via
noisereduceapplied to the source audio. Cleaner training signal translates directly to more natural output. - Loss balancing β
mel_loss_alpha=40,feat_loss_alpha=2.5,gen_loss_alpha=1.5. The boosted feature-matching weight pushes outputs from "correct mel-spectrogram" toward "naturally human." - Schedule β Cosine annealing with warm restarts; balanced generator/discriminator learning rates.
Beta-15 is the latest checkpoint in an iterative training process and represents the current best perceptual quality.
Early training history (beta-0 β beta-13) on raw audio. Beta-15 uses a denoised dataset β values aren't directly comparable.
π€ Dataset & ethics
Training data comes from the Karamojong Speech Dataset by Speedykom Group, derived from publicly available GRN recordings. This work is offered as a contribution to digital preservation and accessibility for an underrepresented language community. The non-commercial license reflects the spirit of the source material.
π₯ Credits
| Dataset | Speedykom Group |
| Model training | @dhiakassab |
| TTS framework | Coqui TTS |
| Hardware | NVIDIA L4 GPU (24 GB) Γ1 |
π License
CC BY-NC 4.0 β free for research and non-commercial use with attribution to Speedykom Group. For commercial licensing, contact Speedykom Group.
Part of an effort to build speech technology for underserved African languages.
- Downloads last month
- 7
