Sukuma MT
Authors: Zephania and Isack Odero
Swahili → Sukuma machine translation for the macron orthography (ā ē ī ō ū). Reads Swahili text and writes Sukuma text.
Direction is one-way. There is no English → Sukuma SKU — pivot English → Swahili first, then this model.
| Lite sibling | nileagi/nileagi-suk-mt-lite |
| Collection | nileagi/nileagi-suk |
Quick example
| Swahili | Sukuma (this model) |
|---|---|
| Habari yako? | Ūlī mhola? |
Always set the source language to swh_Latn and force the Sukuma BOS token suk_Latn. If you skip that, output will not be Sukuma.
Summary
| Task | Machine translation |
| Direction | Swahili → Sukuma |
| Language codes | swh_Latn → suk_Latn |
| Pairs | 31,102 · train 29,962 · val 993 · test 147 |
| Split rule | whole document groups |
| Orthography | Latin with vowel macrons |
| Primary metric | chrF2 |
Evaluation
Held-out document-group test (147 pairs) — the number to quote. Validation is a check only.
Sukuma is morphologically rich and longer than Swahili on this table (~1.3× words). Prefer chrF2; BLEU is secondary.
| Split | chrF2 | BLEU | eval loss |
|---|---|---|---|
| Test (147) | 42.6 | 20.0 | 1.97 |
| Validation (993) | 46.3 | 23.2 | — |
A chrF2 in the low–mid 40s means meaning is often carried but the text is not a clean match to the reference.
Lite on the same test split: chrF2 34.8, BLEU 12.7.
How to use
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
tok = AutoTokenizer.from_pretrained("nileagi/nileagi-suk-mt")
model = AutoModelForSeq2SeqLM.from_pretrained("nileagi/nileagi-suk-mt")
tok.src_lang = "swh_Latn"
inputs = tok("Habari yako?", return_tensors="pt")
bos = tok.convert_tokens_to_ids("suk_Latn")
out = model.generate(
**inputs,
forced_bos_token_id=bos,
max_new_tokens=128,
)
print(tok.decode(out[0], skip_special_tokens=True))
Decoded Sukuma sometimes contains spaces inside words. Keep real word boundaries when you display or score the text.
Intended use
- Literary and read-aloud Swahili → Sukuma
- Last hop of English → Swahili → Sukuma
Out of scope
- Sukuma → Swahili
- Direct English → Sukuma
- Chat, legal, medical, or news translation
- Conversational or social-media Sukuma
- Commercial products without a licence from NileAGI
Limitations
- Literary table and macron spelling only
- Decoding can insert extra spaces inside words; prefer chrF2 over BLEU
- Names and rare stems are often approximated
- English errors in a pivot cascade are copied into Sukuma
- Small held-out test (147 pairs)
Related
- Lite MT:
nileagi/nileagi-suk-mt-lite - STT:
nileagi/nileagi-suk-stt - TTS:
nileagi/nileagi-suk-tts
Access
Weights are gated under CC BY-NC-SA 4.0.
- Open Request access at the top of this page and describe your intended use.
- After approval, authenticate (
huggingface-cli loginorHF_TOKEN) and download or load the model.
Attribute NileAGI when you use or redistribute the weights. Adapted weights must stay under CC BY-NC-SA 4.0. Commercial licensing: hi@nileagi.com.
License
Weights: CC BY-NC-SA 4.0.
See LICENSE and NOTICE.md.
Citation
@misc{nileagi-suk-mt-2026,
title = {Sukuma machine translation (Swahili to Sukuma)},
author = {Zephania and Isack Odero},
year = {2026},
howpublished = {Hugging Face},
url = {https://huggingface.co/nileagi/nileagi-suk-mt},
note = {NileAGI}
}