oddadmix/50M-8192-Nawah-gemma

🤗 Hugging Face 来源text-generationapache-2.052M 参数207 MBsafetensors✓ 2 个校验和今天更新
一条命令提交

在你的模型文件夹旁边运行它。它会制作种子、将文件与 Hugging Face 比对,然后提交。你只需开始做种,并粘贴你账户中的密钥。它只读取你的文件,绝不修改。如果愿意,可以先阅读脚本。

curl -fsSL https://pirateface.co/package.sh | bash -s -- --repo oddadmix/50M-8192-Nawah-gemma ./model-folder
需要做种者 →

50M-8192-Nawah-gemma (نواة) — Arabic Base Model, 8192-token context

A ~51.8M-parameter Gemma-3 architecture Arabic language model pretrained from scratch on 20 billion Arabic tokens with an 8192-token context window.

This is the long-context sibling of oddadmix/50M-2048-Emhotob: same corpus, same tokenizer, same parameter count, same token budget, same optimizer schedule. What differs is the context window (8192 vs 2048) and the attention layout that makes it affordable.

Base (pretrained) model: a next-token predictor with no instruction or chat tuning.

الملخص بالعربية: نموذج لغوي عربي صغير (~51.8 مليون معامل) بمعمارية Gemma-3، مُدرَّب من الصفر على 20 مليار رمز عربي بطول سياق 8192. نموذج أساس (Base) بدون ضبط تعليمات أو محادثة.

Model details

Parameters ~51.8M
Architecture Gemma-3 (Gemma3ForCausalLM)
Hidden size 512 · Layers 12 · Heads 8 (GQA, 4 KV) · head_dim 64
Intermediate size 1408
Vocab size 32000 (custom Arabic byte-level BPE, shared with the 2048 model)
Context length 8192
Attention interleaved: 10 sliding (window 1024) + 2 global
Positional encoding RoPE, θ = 10,000 on sliding layers, 100,000 on global layers
Tied embeddings yes
License Apache-2.0

Why interleaved attention

All-global attention at 8192 tokens costs 453M attention FLOPs per token — roughly as much as the entire rest of the forward pass, and about 4× what the 2048 model spent. Restricting five of every six layers to a 1024-token window drops that to ~13M while leaving 2 layers that see the full window, so the long-range path survives and the run costs about what the original 2048 run cost. Sliding layers use the smaller RoPE base because they only ever have to resolve 1024 positions.

Training

Corpus kaust-generative-ai/fineweb-edu-ar (config ar)
Budget 20,000,000,000 tokens, 1 epoch over the stream
Packing documents separated by </s>; documents ≥ 4096 tokens duplicated once
Optimizer AdamW (fused), β = (0.9, 0.95), wd 0.1, grad clip 1.0
Schedule lr 6e-4, cosine, warmup ratio 0.02
Effective batch 32 sequences × 8192 = 262,144 tokens/step
Precision bf16, torch.compile, a single consumer GPU

The corpus is short-document heavy — median 427 tokens, and only 0.47% of documents reach 8192 — so packing matters more than architecture for long context here. Documents are separated by </s> (the 2048 recipe used no separator), and documents of at least 4096 tokens are written twice to raise the share of tokens sitting inside a genuinely long single-document span.

Usage

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "oddadmix/50M-8192-Nawah-gemma"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, dtype=torch.bfloat16)

prompt = "اللغة العربية هي"
ids = tok(prompt, return_tensors="pt").to(model.device)
out = model.generate(**ids, max_new_tokens=128, do_sample=True,
                     temperature=0.8, top_p=0.9, repetition_penalty=1.2)
print(tok.decode(out[0], skip_special_tokens=True))

Limitations

At this size and budget the model has a narrow capability range and will produce factually unreliable and sometimes incoherent text. It is not instruction-tuned or aligned, and no safety filtering has been applied. Attention is not masked at document boundaries during training, so the two global layers were exposed to cross-document context within a packed window.


© KAND CA 2026 — PROJECT NAWAH.