CoolFace
Modelpublic

VynoDePal/omniASR-fine-tuning-6languageKenya

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes5downloads
Model Card

license: apache-2.0 language:

  • —swa
  • —kik
  • —kln
  • —luo
  • —som
  • —mas pipelinetag: automatic-speech-recognition libraryname: omnilingual-asr metrics:
  • —wer tags:
  • —automatic-speech-recognition
  • —ctc
  • —omnilingual-asr
  • —kenya
  • —multilingual
  • —lora ---

omniASR fine-tuning — six languages of the Kenya-focused Afri Voices task

This repository contains the single acoustic runtime used for the public Kaggle submission scoring 0.36878 macro-WER on the Afri Voices East Africa ASR Hackathon public leaderboard. That score belongs to the complete acoustic + KenLM pipeline, not to the acoustic model alone.

Supported languages

Repository codeLanguageomniASR code
sw / swaSwahiliswh_Latn
kikKikuyukik_Latn
klnKalenjinkln_Latn
luoDholuoluo_Latn
somSomalisom_Latn
masMaasaisaq_Latn

Architecture and compliance

  • —Base: omniASR_CTC_1B_v2, fine-tuned jointly, BF16 checkpoint at total step 1250.
  • —Base parameters: 975,675,056.
  • —Maasai LoRA parameters: 9,898,496.
  • —Maximum active neural parameters: 985,573,552, below one billion.
  • —LoRA routing: enabled only for mas|unscripted; disabled for all other routes.
  • —Corrected external peak RSS measurement in the audited BF16 CPU setup: 4.378 GiB; 5.034 GiB with a 15% margin, with one lazy KenLM resident at a time. This is an environment-specific measurement, not a universal guarantee.
  • —The competition's one-billion limit is reported here for active neural parameters. Compiled n-gram entries are separate non-neural assets; final compliance remains subject to the organizers' interpretation.

Training data summary

LanguageSelected clipsTotal hoursLegacy replay hoursNew in-domain hours
sw25532143.787214.3814129.4059
kik38182115.935738.256277.6795
kln1237753.49559.628743.8668
luo1605458.183519.200038.9835
som729531.48555.667425.8180
mas706048.66098.276940.3840

Data mixed legacy replay and new in-domain spontaneous speech. The repository contains only aggregate statistics. See ATTRIBUTION.md for source attribution and license information.

Files

  • —weights/base_step1250_bf16.pt: tensor-exact BF16 base repacked without optimizer or private metadata.
  • —adapters/mas_step1250.safetensors: tensor-exact Maasai LoRA adapter in a non-pickle format.
  • —adapters/lora_plan.parquet: audited module/rank plan.
  • —adapters/lora_routing.json: mandatory routing rule.
  • —config.json: portable runtime contract.
  • —training_data_summary.csv and evaluation_summary.json: aggregate data, training schedule and frozen local/public evaluation results.
  • —load_model.py: reference loader.
  • —runtime_environment.json and requirements.txt: captured publication/runtime dependency versions and source audit status.
  • —publication_manifest.json and SHA256SUMS: integrity proofs.

Usage

python
import importlib.util
from pathlib import Path
from huggingface_hub import snapshot_download
repo = snapshot_download("VynoDePal/omniASR-fine-tuning-6languageKenya", revision="v1.0.0")
spec = importlib.util.spec_from_file_location("kenya_asr_release", Path(repo) / "load_model.py")
module = importlib.util.module_from_spec(spec)
spec.loader.exec_module(module)
print(module.self_check(repo))  # verify every frozen asset before model loading
KenyaASRRuntime = module.KenyaASRRuntime
runtime = KenyaASRRuntime(repo, device="cuda")
text = runtime.transcribe(["audio.wav"], language="mas", domain="unscripted")[0]

The example above is greedy acoustic inference. It does not reproduce the leaderboard score by itself; leaderboard-compatible decoding additionally needs the linked KenLM profile, exact CTC labels, preprocessing and normalization. CPU loading keeps BF16 and therefore requires a CPU/runtime with BF16 support.

Pass the correct scripted/unscripted domain. For the leaderboard-compatible beam-search pipeline, use VynoDePal/KenLM-V1 and profile current_model_036878.

Evaluation

  • —Public leaderboard macro-WER: 0.36878 for the complete pipeline.
  • —The leaderboard averages WER independently over the six languages.
  • —This is a public leaderboard result; no private-test claim is made.
  • —The model was selected on held-out local development data with exact, frozen decoding configurations.

Intended use

Research and development of ASR for the six listed languages, especially Kenyan speech. Validate performance on the intended dialect, microphone and domain before deployment.

Limitations

  • —The CTC reference pipeline expects short audio segments (approximately 40 seconds or less).
  • —No automatic language or scripted/spontaneous-domain classifier is included.
  • —Accuracy varies substantially by language, dialect and domain.
  • —KenLM can improve decoding but can also bias output toward its training text.
  • —Do not use unreviewed output for high-stakes decisions.

License and citation

Model code and the upstream omniASR model are Apache-2.0. Dataset licenses and attribution obligations are documented separately in ATTRIBUTION.md and license_audit.json.

Upstream project: https://github.com/facebookresearch/omnilingual-asr