Model CatalogueOpen Models for
Open Models for
Africa's Languages
Fine-tuned on 27,498 Hausa and Yoruba conversational pairs. Available in full precision and Q4_K_M GGUF for local deployment.
chat_bubble
Hausa & YorubaOribAI-14B
Instruction-tuned. Culturally grounded. Open source.
OribAI-14B is fine-tuned from Qwen2.5-14B-Instruct on 27,498 curated Hausa and Yoruba conversational pairs, lexical tasks, and human-annotated instruction data. Designed for dialogue, factual Q&A, and cross-lingual tasks in West African linguistic contexts.
Yoruba Generation (AYA Eval, PPL ↓)94%
Hausa Factual Accuracy67%
Instruction Compliance89%
oribai-14b-hausa-yoruba-v1
- Base ModelQwen2.5-14B-Instruct
- FrameworkUnsloth + TRL SFTTrainer
- LoRA Rank / Alpha32 / 64
- Training Pairs27,498
- LanguagesHausa, Yoruba
- LicenseApache 2.0
memory
Edge DeploymentOribAI-14B GGUF
4-bit quantized. Run locally. Zero cloud dependency.
The Q4_K_M quantized GGUF export of OribAI-14B. Compatible with llama.cpp and Ollama for local inference on consumer hardware. Ideal for offline deployment in low-bandwidth environments.
Quality vs Full Precision94%
Memory Efficiency88%
CPU Inference Viability76%
oribai-14b-q4_k_m.gguf
- Quantization4-bit NF4 (Q4_K_M)
- Runtimellama.cpp, Ollama
- Est. Memory~10 GB RAM
- GPU RequiredNo (CPU inference)
- Base ModelOribAI-14B
- LicenseApache 2.0
Up and Running in Minutes
Load OribAI-14B with three lines of Python using the Transformers library.
quickstart.py
1#e9c176">from transformers import AutoModelForCausalLM, AutoTokenizer
2
3model_id = #ffddb6">"Alkamal01/oribai-14b-hausa-yoruba-v1"
4tokenizer = AutoTokenizer.from_pretrained(model_id)
5model = AutoModelForCausalLM.from_pretrained(model_id, device_map=#ffddb6">"auto")
6
7messages = [
8 {#ffddb6">"role": "system", "content": "You are OribAI, a helpful Hausa and Yoruba assistant."},
9 {#ffddb6">"role": "user", "content": "Menene babban birnin Nijeriya?"}
10]
11input_ids = tokenizer.apply_chat_template(messages, return_tensors=#ffddb6">"pt").to(model.device)
12output = model.generate(input_ids, max_new_tokens=256)
13#e9c176">print(tokenizer.decode(output[0], skip_special_tokens=True)) # >>> Abuja