Downloads · 30 days
30
28% of all-time downloads
devblockHQ/eti-yoruba-asr
eti-yoruba-asr is a automatic speech recognition model from devblockHQ. Use it when you need speech turned into text. It is set up for transformers. The card lists the license as mit.
Ẹtí (Yoruba: ẹtí, "ear") is a fine-tuned Whisper-small model for Yoruba automatic speech recognition, released as open source by DevBlock Technology Limited (devblocktechnologies.com).
Downloads · 30 days
30
28% of all-time downloads
All-time downloads
109
Public
Parameters
242M
1.2 GB on disk
Likes
1
Public
Click a slice to open those files.
.safetensors967 MB · 79%
From the Hugging Face model README
Ẹtí (Yoruba: ẹtí, "ear") is a fine-tuned Whisper-small model for Yoruba automatic speech recognition, released as open source by DevBlock Technology Limited (devblocktechnologies.com).
Yoruba is spoken by ~50M people but has limited commercial ASR coverage. Ẹtí is an early, openly-licensed step toward filling that gap — with a CPU-friendly CTranslate2 build so it can run on edge hardware and low-cost servers.
| Field | Value |
|---|---|
| Base model | openai/whisper-small (MIT) |
| Task | Automatic speech recognition (Yoruba, yo) |
| Adaptation | LoRA on q_proj + v_proj, rank 16 / alpha 32, merged |
| Parameters | ~244M (Whisper-small) |
| Formats | Transformers (repo root) · CTranslate2 / faster-whisper (ct2/) |
| Released | 2026-08-15 |
| License | MIT |
The decoder is standard Whisper (language token <|yo|>, task transcribe).
Audio is expected at 16 kHz mono; the feature extractor handles mel
computation on CPU/GPU.
from transformers import WhisperProcessor, WhisperForConditionalGeneration
import librosa
repo = "devblockHQ/eti-yoruba-asr"
model = WhisperForConditionalGeneration.from_pretrained(repo)
proc = WhisperProcessor.from_pretrained(repo, language="yoruba", task="transcribe")
audio, sr = librosa.load("yoruba_clip.wav", sr=16000, mono=True)
feats = proc(audio=audio, sampling_rate=16000, return_tensors="pt").input_features
ids = model.generate(feats, language="yoruba", task="transcribe")
print(proc.batch_decode(ids, skip_special_tokens=True)[0])
from faster_whisper import WhisperModel
model = WhisperModel("devblockHQ/eti-yoruba-asr/ct2", device="cpu", compute_type="int8")
segments, info = model.transcribe("yoruba_clip.wav", language="yo", beam_size=5)
print(" ".join(s.text for s in segments))
pip install faster-whisper
python -c "from faster_whisper import WhisperModel; \
m = WhisperModel('devblockHQ/eti-yoruba-asr/ct2', device='cpu', compute_type='int8'); \
print(' '.join(s.text for s in m.transcribe('yoruba_clip.wav', language='yo', beam_size=5)[0]))"
| Source | Content | License | Use |
|---|---|---|---|
| Base corpus | Yoruba read speech (train/dev/test) | verify before commercial use | train / dev / test |
| IroyinSpeech | Yoruba news, ~5h validated | CC-BY 4.0 | extra train |
WAXAL voicedata/final_yoruba | West African speech (capped sample, 6k clips) | verify before commercial use | extra train |
Attribution: IroyinSpeech © its contributors, licensed CC-BY 4.0. The base Whisper model is © OpenAI, MIT.
⚠️ Before commercial use, verify the license terms of the base corpus and WAXAL sample against the current source terms (see
data_licensing.md).
WER (word error rate, lower is better) measured on held-out sets — neither set was used to train the model.
| Set | n | WER (raw) | WER (no diacritics) |
|---|---|---|---|
| Read speech (base-corpus test) | 40 | 0.557 | 0.473 |
Conversational (thisniyi/yoruba-speech-project-v2) | 50 | 1.087 | 0.822 |
ẹọṣ → eos) before scoring,
isolating word-level errors from tonal/diacritic ones.ọpẹlẹ → pred ọ̀pẹ̀nẹ̀; ref olóriawo →
pred Olóhi àwó ó — the gist is caught, fine-grained words are not.Note on targets: DevBlock's production gate is WER ≤ 0.20 (API) / ≤ 0.28 (telephony). This release does not yet meet that gate; it is an open baseline, not a production claim.
Intended use: general-purpose Yoruba speech-to-text research and prototyping, low-resource ASR benchmarking, and building blocks for voice agents.
Known limitations:
train/train_yoruba_asr.ipynb (Colab, T4-friendly;
LoRA on q_proj/v_proj, transformers 4.44.2 + peft 0.12.0).scripts/bench_wer.py.pip install ctranslate2
ct2-transformers-converter --model devblockHQ/eti-yoruba-asr \
--output_dir ct2 --quantization int8
@misc{eti2026,
title = {{Ẹtí}: An Open Yoruba ASR Model based on Whisper-small},
author = {DevBlock Technology Limited},
year = {2026},
howpublished = {\url{https://huggingface.co/devblockHQ/eti-yoruba-asr}},
}
MIT License — © 2026 DevBlock Technology Limited. Whisper base weights are MIT (OpenAI); training-data terms are noted above.
Questions: devblocktechnologies.com · GitHub: DEVBLOCK-TECHNOLOGIES-LIMITED/eti-yoruba-asr