Logo Lanfrica

Afrowatch/afw-waxal-african-models

Domain:

natural language processing

Record type:

modelsoftware
Creator:
Afr
Host:
Fine-tuned speech and language models for African languages, trained on the Waxal dataset from Google. # AFW Waxal African Language Models Fine-tuned speech and language models for African languages, trained on the Waxal dataset from Google. ## Overview This repo contains training scripts for three model types, all integrated with the A.I-African-dubbing production system: | Model | Base | Dataset | Task | |---|---|---|---| | TTS | Coqui XTTS v2 / VITS | Waxal TTS (180+ hrs, 16 langs) | African language speech synthesis | | ASR | OpenAI Whisper Large v3 | Waxal ASR (1,250 hrs, 19 langs) | African language transcription | | Translation | Meta NLLB-200 | WaxalNLP (google/WaxalNLP) | African ↔ English translation | ## Supported Languages ### TTS Languages (16) Acholi, Luganda, Kiswahili, Nyankole, Akan (Fante, Twi), Fula, Igbo, Hausa, Yoruba, Nigerian Pidgin, Kikuyu, Luo ### ASR Languages (19) Acholi, Luganda, Masaaba, Nyankole, Soga, Akan, Ewe, Dagbani, Dagaare, Ikposo, Fula, Lingala, Shona, Malagasy, Amharic, Oromo, Sidama, Tigrinya, Wolaytta ## Setup ```bash python -m venv venv source venv/bin/activate pip install -r requirements.txt ``` Requires CUDA GPU with at least 16GB VRAM. Recommended: A100 40GB (AWS `p4d.xlarge` or `g5.2xlarge`). ## Training Workflow ### 1. TTS (Text-to-Speech) ```bash # Prepare dataset python tts/prepare_dataset.py --output_dir data/tts # Train Coqui XTTS v2 (multi-language, recommended) python tts/train_xtts.py --config tts/configs/xtts_config.json # Or train per-language VITS (higher quality, single language) python tts/train_vits.py --config tts/configs/vits_yoruba.json --language yor ``` #### MacOS MPS smoke test ```bash # Train on MacOS MPS (smoke test — not full GPU/CUDA) python tts/train_xtts.py --config tts/configs/xtts_smoke_macos.json ``` Expected output: ``` outputs/tts/afw_xtts_v2_waxal_yb/ xtts_v2_smoke_macos- / checkpoint_10.pth ← 5.2 GB — the trained model config.json ← config used for the run trainer_0_log.txt ← the logs of training train_xtts.py ← copy of the training script (saved by Tra …