AI & ML interests
None defined yet.
Recent Activity
Olaverse Lab
Small, task-specific open models — with a core focus on African & Nigerian languages.
We believe the future of open AI isn't only bigger models — it's specialist models: compact, efficient, and sharply focused on one job. Our mission is to make African languages first-class citizens of AI.
Yorùbá · Igbo · Hausa · Nigerian Pidgin — and 25+ languages beyond
Website · Docs · GitHub · PyPI · X/Twitter · LinkedIn
Every model below is one line of Python away:
pip install olaverse
Flagship models
Three jobs, done properly: identify the language, restore its tone marks, generate from it. These are the models we maintain, version, and support for real use.
| Model | Task | Why it matters |
|---|---|---|
| diacnet-1.0 | ✍️ Diacritic restoration | Our most-used model — restores diacritics and tone marks across Yorùbá, Igbo, Hausa and more. A ByT5 model doing a job almost nobody else does for these languages · demo Space |
| lid-neural-25.2 | 🌍 Language ID | Identifies 25 languages, including the Nigerian languages most detectors miss entirely · live demo |
| mist-qg-1.5b | ❓ Question generation | Generates real questions from any passage, in 25+ languages · demo Space |
| mist-tg-0.3b | 🏷️ Title generation | A 300M ByT5 that names chats and documents from their content. Small enough to run anywhere |
✍️ DiacNet — diacritic & tone restoration
Nigerian-language text without its tone marks is ambiguous to readers and nearly useless to machines. DiacNet puts them back.
- diacnet-1.0 — flagship multilingual ByT5 restorer (Yorùbá, Igbo, Hausa, and more)
from transformers import AutoTokenizer, T5ForConditionalGeneration
tok = AutoTokenizer.from_pretrained("olaverse/diacnet-1.0")
model = T5ForConditionalGeneration.from_pretrained("olaverse/diacnet-1.0")
inputs = tok("<yor> se eranko naa si gbo o?", return_tensors="pt")
out = model.generate(**inputs, max_new_tokens=256)
print(tok.decode(out[0], skip_special_tokens=True))
# >> ṣé ẹranko náà sì gbọ́ ọ?
Prefix input with the target language tag — <yor>, <vie>, <ibo>, <hau>, <pol>, <tur>, <por>, <spa>, <fra>, <ita>.
🌍 LID — language identification
Most language detectors either don't cover Nigerian languages or confuse them with each other. Ours doesn't.
- lid-neural-25.2 — 25 languages, neural
from transformers import pipeline
lid = pipeline("text-classification", model="olaverse/lid-neural-25.2")
lid("Kedu ka i mere?")
# >> [{'label': 'ibo', 'score': 0.998}]
Use -25.2 for short text (queries, chat messages) and -25.1 for long-form passages.
⚡ MIST Generators — small models, one job each
- mist-qg-1.5b — multilingual question generation, 25+ languages (Qwen2.5-based)
- mist-tg-0.3b — 300M ByT5 title generator
Also on the Hub
Alongside the production tier we publish research and preview work — the MIST LLM line, the mist-encoder-base-ng foundation encoder and naija-embed-base embeddings, mist-reranker cross-encoders, OTK tokenizers, and the Prism vision models. These are open and usable, but they move faster and carry fewer guarantees. Browse all models →
🗺️ What's Next
- 📊 Published benchmarks for every production model — measured against real baselines, not claimed
- ✍️ DiacNet 1.1 — better Yorùbá & Igbo restoration, lower CER
- 🛠️ SDK CLI & REST inference (
olaverse diacritize "se eranko naa")
Full roadmap in the docs.
🤝 Get Involved
We're a small lab with big ambitions. If you're working on African-language NLP, edtech, retrieval, or efficient specialist models — or want to use our models in production — reach out via olaverse.co.uk or open a discussion on any model.
Olaverse Lab — building AI that speaks your language.
spaces 5
Nigerian & Multilingual LID
All olaverse language-identification models in one Space
Diacnet 1.0
Mist Question Gen
Generate search‑style questions from a passage in 25 languages
Naija NLP
Identify Nigerian language and search semantically across texts
