# Afri-Voices omniASR for six Kenyan languages
This repository documents our end-to-end development of a six-language automatic
speech recognition system for the Afri-Voices East Africa ASR Hackathon. We began
with joint and language-specialized omniASR checkpoints, explored balanced
fine-tuning, checkpoint merging, low-rank approximations and LoRA, and converged
on one BF16 acoustic base, one Maasai LoRA adapter, and language/domain-routed
KenLM decoding.
The final audited system has **985,573,552 active neural parameters**, stays below
the **8 GiB edge-memory limit**, and obtained a public leaderboard WER of
**0.36585**. The repository contains the complete research notebooks, including
failed experiments, plus a deterministic K1–K6 language-model and inference
pipeline. It contains no audio, competition test data, transcripts, credentials,
model weights, KenLM binaries, or submission files.
## Final result
| Submission | Acoustic system | Decoder | Status | Public LB WER |
|---|---|---|---|---:|
| Historical exploration | Multiple specialist checkpoints | KenLM V5 | Exploratory; not the final single-artifact system | **0.36529** |
| First edge-audited system | Step-1250 BF16 base + Maasai LoRA | Production domain routing | Under 1B and under 8 GiB | 0.36878 |
| **Final K6 system** | Same audited acoustic system | Hybrid production/KenLM V6 routing | **Under 1B and under 8 GiB** | **0.36585** |
The historical 0.36529 score is reported for completeness. It relied on multiple
specialized acoustic checkpoints and was not retained under our strict
interpretation of the single-model, total-parameter, and edge-memory constraints.
The 0.36585 submission is our best fully audited, reproducible configuration.
KenLM V6 improved the compliant 0.36878 system by **0.00293 absolute WER**
(approximately **0.8% relative**).
## Task and metric
The task covers six languages: Swahili (`swa`/`sw`), Kikuyu (`kik`), Kalenjin
(`kln`), Dholuo (`luo`), Somali (`som`), and Maa …