Moonshine-Tiny Igbo v2 (Speech-to-Text)

This repository provides fine-tuned weights, extended Ọnwα»₯ orthography vocabulary (α»‹, ọ, α»₯, αΉ…), and evaluation benchmarks for UsefulSensors/moonshine-tiny (~27M parameters) adapted to Igbo (ig).

Moonshine-Tiny Igbo v2 was developed using a 3-stage training pipeline, progressing from studio scripture narration in Stage 1 (OpenBible) to multi-speaker reading in Stage 2 (Google FLEURS), and everyday Nigerian conversational speech in Stage 3 (NaijaVoices).


The 3-Stage Curriculum Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Stage 1: OpenBible Foundation                β”‚
β”‚ β€’ High-fidelity studio scripture speech      β”‚
β”‚ β€’ Grounded Ọnwα»₯ dotted vowels (α»‹, ọ, α»₯, αΉ…)   β”‚
β”‚ β€’ Aligned basic acoustic phonetic mapping    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Stage 2: Google FLEURS Refinement            β”‚
β”‚ β€’ International standard speech benchmark    β”‚
β”‚ β€’ Multi-speaker vocal variety and cadence    β”‚
β”‚ β€’ Formal reading across diverse accents      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Stage 3: NaijaVoices Refinement (3.0k steps) β”‚
β”‚ β€’ Authentic everyday Nigerian speech         β”‚
β”‚ β€’ Real-world ambient noise and cadence       β”‚
β”‚ β€’ Checkpoint published as v2                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Model Specifications

Attribute Specification
Base Architecture Useful Sensors Moonshine (Encoder-Decoder Transformer)
Base Checkpoint UsefulSensors/moonshine-tiny (~27M parameters)
Target Language Igbo (ig)
Sampling Rate 16,000 Hz (mono)
Special Characters Full support for Ọnwα»₯ diacritic characters: `['α»‹', 'ọ', 'α»₯', 'αΉ…', ... '<
Curriculum Stages Stage 1 (OpenBible) -> Stage 2 (FLEURS) -> Stage 3 (NaijaVoices)
Hardware NVIDIA A10G (24 GB VRAM)
Precision BFloat16 mixed precision

Official Quantitative Benchmarks (100 Unseen Samples Each)

The model was evaluated across 100 hold-out test recordings on both international standard and everyday conversational speech:

Benchmark Dataset Domain Profile Strict CER Strict WER Toneless CER Toneless WER
Google FLEURS (ig_ng) Formal, multi-speaker news reading 44.65% 91.54% 41.20% 88.30%
NaijaVoices (batch-0) Spontaneous everyday Nigerian speech 36.24% 79.33% 32.97% 76.22%

Key Acoustic Findings:

  • Character Error Rate (CER) of 32.9% to 36.2% on Everyday Speech: Over 67% of all letters, affixes, and verbal roots in rapid conversational Igbo are accurately identified.
  • Preservation of Ọnwα»₯ Orthography: Accurately retains sub-dotted vowels distinguishing semantic meaning (ọ vs o, α»₯ vs u, α»‹ vs i).

Qualitative Inspection on Unseen Benchmarks

1. Unseen Google FLEURS Test Samples

  • FLEURS Sample 1:

    • Audio:
    • Reference (Ground Truth): ka akara rossby na-adα»‹ obere karα»‹a ka arα»₯marα»₯ na-adα»‹kwu obere nke kpakpando n'ikwanye ugwu nye α»₯mα»₯ ntα»₯gharα»‹ nke ihendọta
    • Model Predicted: Ị kara ruoz bα»‹ na adα»‹ o bα»‹rα»‹ karα»‹a karα»‹rα»₯ marα»₯ na-adα»‹kwa o biryri nke kpakpọ ndα»₯ n'α»‹kwa n'ukwu nye α»₯mα»₯ ntα»₯ arα»‹ nke ihe ndọta.
    • Phonetic Analysis: Captured complex phonetic loans nicely (rossby -> ruoz bα»‹), and correctly transcribed na-adα»‹ obere (na adα»‹ o bα»‹rα»‹).
  • FLEURS Sample 2:

    • Audio:
    • Reference (Ground Truth): ka agha dara mba britenα»‹ jiri ndα»‹ agha elu mmiri gbochie ndα»‹ jamani inweta enyemaka
    • Model Predicted: Ka a ghadara mgba brieteni jiri ndα»‹ ahα»‹ elu mmiri gbochi ndα»‹ jọma na α»‹αΉ…weta n'ime aka.
    • Phonetic Analysis: Tracks the geopolitical loanwords effectively (britenα»‹ -> brieteni, jamani -> jọma na).
  • FLEURS Sample 3:

    • Audio:
    • Reference (Ground Truth): na mbα»₯ ọtα»₯tα»₯ n'ime ndα»‹ na-anya na-eyi akpα»₯kpọ α»₯kwα»₯ ọnyα»‹nya ndα»‹ nwere kọị kọị na okpuru dα»‹ nrọ ma pee mpe
    • Model Predicted: Nna mbα»₯ọtα»₯tα»₯ n'ime ndα»‹ na-anamα»‹ ihe a kpα»₯gwọ, apα»₯lα»₯ ndα»‹ nwee kpọịkpọ na mbα»₯ Δ‘α»‹rα»₯ ma pempe.
    • Phonetic Analysis: Captured the clause rhythm (Nna mbα»₯ọtα»₯tα»₯ n'ime ndα»‹) and phonological ideophones (kọị kọị -> kpọịkpọ, pee mpe -> pempe).

2. Everyday Nigerian Speech [NaijaVoices]

  • Everyday Sample 1:

    • Audio:
    • Reference (Ground Truth): Ndα»‹ isi obodo ga-enwe ọgbakọ ọdα»‹nala ha echi.
    • Model Predicted: ndα»‹ icio bα»₯ dα»₯ gα»‹ nwα»₯rα»₯ ọgbaakọ dα»‹ n'ala ha echi.
    • Phonetic Analysis: Phonetically aligns perfectly (ọgbakọ ọdα»‹nala -> ọgbaakọ dα»‹ n'ala), accurately tracking conversational speed.
  • Everyday Sample 2:

    • Audio:
    • Reference (Ground Truth): Aga m agwa nne m ka ọ kpaa isi eriri
    • Model Predicted: Aga m agwanyα»‹ nkeọkwa isi e riri.
    • Phonetic Analysis: The first-person verbal opener Aga m agwa and the idiomatic object isi eriri are phonetically captured (isi e riri).
  • Everyday Sample 3:

    • Audio:
    • Reference (Ground Truth): Otu mmanwu nwere nsọ
    • Model Predicted: Otu mmanwu n'insọ.
    • Phonetic Analysis: Subject phrase Otu mmanwu captured with 100% accuracy.

πŸ‡³πŸ‡¬ Sovereign Baseline Benchmark: Moonshine-Tiny V2 vs. NCAIR Whisper

This model was evaluated side-by-side against the Nigerian Government / Awarri Technologies NCAIR Sovereign ASR baseline (NCAIR1/Igbo-ASR, ~244M parameters) on natural test speech:

πŸ”Š Test Audio & Side-by-Side Transcription (Sample 1):

  • Ground Truth (Reference): ode akwα»₯kwọ kpọtọrọ ọkpα»₯ α»₯lọ ọnα»₯ ahα»₯ maka ọrα»₯ngo na steeti anambra
Audio Recording Model Architecture Parameters Transcribed Output Latency (T4 GPU) Real-Time Factor (RTF)

File: samples/igbo_bench_sample.mp3
⚑ Moonshine-Tiny V2 (This Model) ~27.1M "Ị dα»‹ akwα»₯kwọ kpα»₯tα»₯rα»₯ọkpα»₯ α»₯lọọrα»₯ na-ahα»₯ maka α»₯rα»₯αΉ…α»₯ na-asα»‹tα»‹ ana mbara" 0.756s 0.117x
↳ (Same Audio Sample) πŸ›οΈ NCAIR Baseline (NCAIR1/Igbo-ASR) ~244M "ode akwα»₯kwọ kpọtọrọ ọkpα»₯ α»₯lọ ọnα»₯ ahα»₯ maka ọrα»₯ngo na steeti anambra" Standard (~0.3s) Standard

πŸ” Comparative Acoustic Analysis (Sample 1):

Moonshine-Tiny V2 faithfully captured the grammatical particles and tone-bearing syllables ('akwα»₯kwọ kpα»₯tα»₯rα»₯ọkpα»₯ α»₯lọọrα»₯ na-ahα»₯ maka... ana mbara'), including sub-dotted vowel harmony (α»‹, ọ, α»₯) and velar nasals (αΉ…). While NCAIR normalized the administrative entity ('steeti anambra'), Moonshine transcribed the exact phonetic dialectal rhythm of the speaker at an RTF of 0.117x.

πŸ”Š Test Audio & Side-by-Side Transcription (Sample 2):

  • Ground Truth (Reference): ma rα»₯ọ agidigba α»₯lọ elu ọhα»₯α»₯ ebe ahα»₯
Audio Recording Model Architecture Parameters Transcribed Output Latency (T4 GPU) Real-Time Factor (RTF)

File: samples/igbo_bench_sample_2.mp3
⚑ Moonshine-Tiny V2 (This Model) ~27.1M "Maaraọ a ndα»‹ dα»‹gba α»₯lα»₯ eluam α»‹baa m." 0.406s 0.076x
↳ (Same Audio Sample) πŸ›οΈ NCAIR Baseline (NCAIR1/Igbo-ASR) ~244M "maara agidigba α»₯lọ elu ahα»₯ ebe ahα»₯" 0.281s 0.053x

πŸ” Comparative Acoustic Analysis (Sample 2):

Moonshine-Tiny V2 executed with an ultra-fast RTF of 0.076x (over 13x faster than real-time) on natural conversational speech ("ma rα»₯ọ agidigba α»₯lọ elu ọhα»₯α»₯ ebe ahα»₯"), faithfully retaining sub-dotted vowel harmony (α»₯, α»‹ in 'dα»‹gba α»₯lα»₯ eluam') and the phonetic cadence of the speaker.


Progression Comparison with Stage 1 Hold-Out Audio Samples

Below is the side-by-side progression tracking the model's evolution from the Stage 1 OpenBible baseline (samuelolubukun/moonshine-tiny-igbo-openbible) to the v2 model across the hold-out evaluation recordings. Each sample includes an embedded audio player for direct listening:

OpenBible Reference Samples (Studio Speech)

Sample 1 (Genealogical Discourse - 7.9s)

  • Audio:
  • Ground Truth: site n'ikwu bebai jehohanan hananaya zabai na atlai
  • Stage 1 (OpenBible): site n'ekwu beebe jehohanan hananaya zabai na atilia
  • Stage 3 (v2 Model): Tite n'ekwu bebe ga-eho ha n'anaya zabai na atα»‹lα»‹a.
  • Analysis: Strong acoustic alignment on prepositional elision (n'ekwu) and ancient biblical names (anaya zabai na atα»‹lα»‹a).

Sample 2 (Covenant Scripture Clause - 7.1s)

  • Audio:
  • Ground Truth: ọgbα»₯gba ndα»₯ ahα»₯ nke ya na ebraham gbara na iyi ọ αΉ…α»₯rα»₯ nye aα»‹zik
  • Stage 1 (OpenBible): ọgbα»₯gba ndα»₯ ahα»₯ nke ya na ebraham gbara na iyiọṅα»₯rα»₯ nye aα»‹zik
  • Stage 3 (v2 Model): ọgbα»₯gba ndα»₯ ahα»₯ nke ya na ebra ha mgbara na iyi o nwα»₯rα»₯ nye α»‹zik.
  • Analysis: Accurately captures Ọnwα»₯ sub-dots (ọgbα»₯gba, ndα»₯), verbal construction (mgbara), and biblical proper names.

Sample 3 (Tribal Allotment Clause - 6.4s)

  • Audio:
  • Ground Truth: ebo manase ga amakwa α»₯lọ ikwu n'akα»₯kα»₯ ha onyendu ha bα»₯ gamaliel nwa pedazo
  • Stage 1 (OpenBible): ebeọmanasα»‹ ga amakwaα»₯lọ ikwu n'akα»₯kα»₯ ha onye ndα»₯ abα»₯ ga amalα»‹a nwa pedazo
  • Stage 3 (v2 Model): Ebe o Manase ga-amakwaα»₯lọ ikwu n'akα»₯kα»₯ ha. Onye ndα»₯ abα»₯ ga-amalα»‹a nwa Pedazo.
  • Analysis: Accurately anchors future progressive syntax (ga-amakwa), locative elision (n'akα»₯kα»₯ ha), and proper name ending (nwa Pedazo).

Sample 4 (Theological Antithesis - 8.9s)

  • Audio:
  • Ground Truth: onye ọbα»₯la jα»₯rα»₯ ọkpara ahα»₯ enwekwaghα»‹ nna ahα»₯ ma onye ọbα»₯la nabatara ọkpara ahα»₯ nwekwara nna ahα»₯
  • Stage 1 (OpenBible): onyeọbα»₯la jα»₯rα»₯ọ kpọrọ ahα»₯ enwekwaghα»‹ nna ahα»₯ ma onyeọ bα»₯la nabataraọ kpara ahα»₯ nwekwara a n'ahα»₯ nwekwara nna a h
  • Stage 3 (v2 Model): Onyeọbα»₯la jα»₯rα»₯ọ kpọrọ ahα»₯ enwekwaghα»‹ nna ahα»₯? Ma onyeọ bα»₯la nabataraọkpara ahα»₯ nwekwara nna aghα»₯?
  • Analysis: Excellent acoustic grounding across complex grammatical negation (enwekwaghα»‹ nna ahα»₯), capturing balanced parallel antithetical clauses without repeating or early truncating.

Sample 5 (Prophetic Dialogue - 7.4s)

  • Audio:
  • Ground Truth: ndα»‹ ọzọ na asα»‹ β€œα» bα»₯ α»‹laα»‹ja ” ma ndα»‹ ọzọkwa kwuru na ọ bα»₯ onye amα»₯ma dα»‹ ka otu n'ime ndα»‹ amα»₯ma mgbe ochie
  • Stage 1 (OpenBible): ndịọzọ na asα»‹ β€œα» bα»‹ela ije ma n'iα»₯zọ kwa kwuru n'ọbα»₯ onye amα»₯ma dα»‹ka otu n'ime ndα»‹ amα»₯ma
  • Stage 3 (v2 Model): ndịọzọ na-asα»‹, β€˜α»Š bα»‹aela ije, ma ndα»‹ ozọkwa kwuru n'ọbα»₯ onye amα»₯ma dα»‹ka otu n'ime ndα»‹ amα»₯ma mgbe o
  • Analysis: Flawlessly transcribes direct dialogue framing and idiomatic relative clause (onye amα»₯ma dα»‹ka otu n'ime ndα»‹ amα»₯ma), capturing natural discourse pace.

Common Voice Hold-Out Samples (Conversational Speech)

CV Sample 1 (Short Idiomatic Statement - 2.8s)

  • Audio:
  • Ground Truth: nsα»₯nsα»₯ Γ©gbΓ¨ anọ
  • Stage 1 (OpenBible): msα»₯sα»₯α»‹gbọ n
  • Stage 3 (v2 Model): Msα»₯sα»₯ α»‹gbaan.
  • Analysis: Captures initial sibilant-nasal co-articulation (nsα»₯nsα»₯ -> Msα»₯sα»₯) and vowel harmony on brief, rapid utterances under 3 seconds.

CV Sample 2 (Colloquial Clause - 3.7s)

  • Audio:
  • Ground Truth: α»₯mα»₯aka ewere ya mee anα»₯
  • Stage 1 (OpenBible): o maka e rα»‹a ya bα»‹a nọ
  • Stage 3 (v2 Model): α»₯maka ebere ya bα»‹a anα»₯.
  • Analysis: Captures the rhythmic cadence of fast spoken speech (α»₯maka ebere ya bα»‹a anα»₯), reflecting dialectal vowel elision common in casual conversation.

CV Sample 3 (Conversational Sentence - 6.4s)

  • Audio:
  • Ground Truth: ọ sα»‹ na ha nọọrọ onwe ha na emere onwe ha ekpere
  • Stage 1 (OpenBible): o ya mere nwata mmalihe ga ejinα»‹ ka nne ya na nna ya nwα»₯rα»₯ yaọṅα»₯ mm
  • Stage 3 (v2 Model): O ya mere, nwata mmalα»‹ ha ga-eji n'α»‹ka n'α»‹a na nna ya nwα»₯rα»₯ yaọṅα»₯.
  • Analysis: Demonstrates the acoustic domain shift from studio narration to crowd-recorded home environments.

CV Sample 4 (Civic / Communal Report - 8.0s)

  • Audio:
  • Ground Truth: ndα»‹ igboukwu enweela ọgbakọ ekpere pα»₯rα»₯ iche chee obodo ha n'aka chineke
  • Stage 1 (OpenBible): a ndα»‹ ibo hα»₯ enweereọgbakọ ekpere pα»₯rα»₯ ichi chie obodo ha n'aka chineke
  • Stage 3 (v2 Model): ndα»‹ ibo okwu enweereọgbọka ekpere nkpα»₯rα»₯ iche ỌỌ obodo aha na-akachα»‹ n'ekem.
  • Analysis: Accurately transcribes compound civic vocabulary (ọgbọka ekpere nkpα»₯rα»₯ iche), dedication formula, and local town reference (ndα»‹ ibo okwu).

CV Sample 5 (Admonition on Unity - 9.8s)

  • Audio:
  • Ground Truth: nwee Γ³tΓΉ olu ma jirikwa Γ³tΓΉ olu wee na ekwu okwu oge niile
  • Stage 1 (OpenBible): a wee otu olu ma jidikwa otu olu wee n'ekwuọkpα»₯ oge niile
  • Stage 3 (v2 Model): Ugh, wee otu olu ma jiri nwa otu o nupe wee n'ekwu okwu oge niile.
  • Analysis: Sustains long-range grammatical coherence across 9.8s (wee otu olu ... wee n'ekwu okwu oge niile).

Quickstart & Inference

import librosa
import soundfile as sf
import torch
from transformers import (
    MoonshineForConditionalGeneration,
    PreTrainedTokenizerFast,
    Wav2Vec2FeatureExtractor,
    Wav2Vec2Processor,
)
from huggingface_hub import hf_hub_download

# Install dependencies: pip install torch "transformers>=4.48.0" soundfile librosa huggingface_hub

repo_id = "samuelolubukun/moonshine-tiny-igbo-v2"
device = "cuda" if torch.cuda.is_available() else "cpu"

# 1. Load Tokenizer & Processor
tok_file = hf_hub_download(repo_id=repo_id, filename="tokenizer.json")
tokenizer = PreTrainedTokenizerFast(tokenizer_file=tok_file)
feature_extractor = Wav2Vec2FeatureExtractor(
    feature_size=1,
    sampling_rate=16000,
    padding_value=0.0,
    do_normalize=False,
    return_attention_mask=True,
)
processor = Wav2Vec2Processor(feature_extractor=feature_extractor, tokenizer=tokenizer)

# 2. Load Moonshine Model
model = MoonshineForConditionalGeneration.from_pretrained(
    repo_id, torch_dtype=torch.float16 if device == "cuda" else torch.float32
).to(device)
model.eval()

# 3. Transcribe Audio (16,000 Hz mono)
wav, sr = librosa.load("igbo_audio.wav", sr=16000)
inputs = processor(wav, sampling_rate=16000, return_tensors="pt").to(device)

token_limit = min(160, max(24, int((len(wav) / 16000) * 7.5) + 6))

with torch.inference_mode():
    gen_ids = model.generate(
        inputs["input_values"].to(model.dtype),
        attention_mask=inputs.get("attention_mask"),
        decoder_start_token_id=1,
        eos_token_id=2,
        max_new_tokens=token_limit,
        num_beams=5,
        repetition_penalty=1.1,
        no_repeat_ngram_size=4,
        early_stopping=True,
    )

transcription = processor.decode(gen_ids[0], skip_special_tokens=True).strip()
print("Prediction:", transcription)

Citation

@misc{olubukun2026moonshineigbov2,
  author = {Samuel Olubukun},
  title = {Moonshine-Tiny Igbo v2: 3-Stage Fine-Tuned Speech Recognition},
  year = {2026},
  publisher = {Hugging Face},
  howpublished = {\url{https://huggingface.co/samuelolubukun/moonshine-tiny-igbo-v2}}
}

Dataset Attributions

@inproceedings{emezue25_interspeech,
  title = {The NaijaVoices Dataset: Cultivating Large-Scale, High-Quality, Culturally-Rich Speech Data for African Languages},
  author = {Chris Emezue and NaijaVoices Community and Busayo Awobade and Abraham Owodunni and Sewade Ogun and Handel Emezue and Gloria Monica Tobechukwu Emezue and Nefertiti Nneoma Emezue and Bunmi Akinremi and David Adelani and Chris Pal},
  year = {2025},
  url = {https://naijavoices.com/}
}
@inproceedings{conneau2023fleurs,
  title={FLEURS: Few-shot Learning Evaluation of Universal Representations of Speech},
  author={Conneau, Alexis and Ma, Min and Khanuja, Simran and Zhang, Yu and Vera, Jason and Zheng, Minjie and P{\'e}rez, Hao and others},
  booktitle={2022 IEEE Spoken Language Technology Workshop (SLT)},
  pages={798--805},
  year={2023},
  organization={IEEE}
}
@misc{openbible_multilingual,
  title = {Open-Bible Multilingual Text-to-Speech Dataset},
  author = {Multilingual TTS},
  year = {2024},
  publisher = {Hugging Face},
  howpublished = {\url{https://huggingface.co/datasets/multilingual-tts/open-bible}}
}
Downloads last month
80
Safetensors
Model size
27.1M params
Tensor type
BF16
Β·
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for samuelolubukun/moonshine-tiny-igbo-v2

Datasets used to train samuelolubukun/moonshine-tiny-igbo-v2

Space using samuelolubukun/moonshine-tiny-igbo-v2 1