Kintu-2.0-30M-Base

Parameters Context Vocab License

A 30M-parameter Luganda language model, pretrained from scratch with the MiniMind recipe. It's a base model: it continues text and doesn't chat. The chat model is Kintu-2.0-30M.

Architecture Qwen3-style decoder (Qwen3ForCausalLM): RMSNorm, SwiGLU, RoPE (ΞΈ = 1e6), QK-norm, grouped-query attention (8 query / 4 KV heads), tied embeddings
Size 30.0M parameters: 8 layers, hidden size 512, MLP 1,664
Tokenizer Byte-level BPE, 6,400 tokens, trained on the pretraining data
Context 512 tokens

Training

273M tokens of henryhale/luganda-pretrain2, packed into sequences of up to 512 tokens, for 2 epochs: 256 sequences per step, AdamW, learning rate 5e-4 with cosine decay to 5e-5, fp16, on 2Γ— T4 in 2.1 hours. Final training loss β‰ˆ 2.49.

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer

tok = AutoTokenizer.from_pretrained("henryhale/Kintu-2.0-30M-Base")
model = AutoModelForCausalLM.from_pretrained("henryhale/Kintu-2.0-30M-Base")
enc = tok(tok.bos_token + "Olunaku lumu,", return_tensors="pt", return_token_type_ids=False)  # pretraining texts started with <|im_start|>
out = model.generate(**enc, max_new_tokens=80)
print(tok.decode(out[0], skip_special_tokens=True))

Samples

Sampled with temperature 0.85 and top-p 0.95:

πŸ’¬ Oli otya?
🧠 Oyinza otya okugamba nti olaba nga okimanyi nti Katonda akulaba? (Zabbuli 67:9) Tetuyinza kutya Katonda nga tusinza ebifaananyi. N'olwekyo, tetujja kwesiga nsibuko z'obunnabbi bwaffe ez'edda.β€”2 Abakkolinso 6:17; Matayo 6:38.
Yakuwa Katonda mu ngeri ey

πŸ’¬ Wasuze otya nno?
🧠 Kuba ntandise bulungi,
Njagala okakkaabya
Olwaleero ngenda kuddamu kusisinkana bakulu,
Nali nebaza mukama wange, nansaba nkubirayo
Okusinziira ku bakulu, nkubira abatujju
Abatujju bonna abakozesa ennyimba ne Bannansi ba Misiri n'abajaasi
Nti ntuuse mu kibuga
Nti

πŸ’¬ Osiibye otyanno ssebo?
🧠 Munnange mumanyi bulungi. Nze maama, nnafuuka kiggala. Wosomera mu luyimba lwa Golden Band, n'okulutuga wano mu Buganda ne mu Buganda. Wulira obuyonjo mu bitundu by'obubaga bw'abawala bunyuma, basomba emmere, embuga ezitaggwa, abalambuzi, Abaana abasomyeko

πŸ’¬ Ndi musanyufu nnyo okulaba.
🧠 - "Nnyinza okuteeka omupiira mu kasanduuko k'eby'okusangamu. "
Omutwazi bwe yawulira ekyo, yamwenyumira era n'amwenya ng'agamba nti, "Ekyo kirungi nnyo.
Yali akimanyi nti wadde nga kyali kizibu nnyo, yali asobola okukikola.
Omusajja omukulu yamwenya n'amugamba nti, "Lwaki tojja kwegatta?
Maama wa John yamwenya n'amugamba nti, "Totya.

πŸ’¬ Weebale nnyo okuyamba bulungi.
🧠 - Yamutunuulira n'amwenya, ng'asanyuka nnyo okuba nti yali azzeemu okubeerako mu kisiikirize.
Oluvannyuma lw'ekiseera kitono, mukwano gwe ow'okubiri n'ajja n'amugamba nti, "Totya, nnina ekintu ekikulu kye njagala okukuwa".
Bwe yali anaatera okutuuka ku mulyango, empewo yatandika okubuuka era omuguwa ne gutandika okugwa.
John yaseka nnyo bwe yawulira ebigambo ebyo nga bigenda

Limitations

At 30M parameters it writes fluent Luganda but is often off-topic and gets facts wrong, so don't rely on it for information. It was trained on sequences of up to 512 tokens, and TinyStories translations are 68.5% of its pretraining tokens, so it leans towards simple stories.

Downloads last month
6
Safetensors
Model size
30M params
Tensor type
F16
Β·
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for henryhale/Kintu-2.0-30M-Base

Finetunes
1 model

Dataset used to train henryhale/Kintu-2.0-30M-Base

Collection including henryhale/Kintu-2.0-30M-Base