|
Download README.md from JayF14/MONA: direct link, hf CLI and curl.
- Browser
- Download file 3.34 kB
-
https://huggingface.co/JayF14/MONA/resolve/main/README.md
- Command line
-
hf download hf://JayF14/MONA/README.md
-
curl -L -o README.md https://huggingface.co/JayF14/MONA/resolve/main/README.md
3.34 kB
| language: [en, hi] | |
| license: mit | |
| library_name: pytorch | |
| pipeline_tag: text-generation | |
| tags: [education, multilingual, hindi, hinglish, awadhi, from-scratch, small-language-model] | |
| # MONA: a multilingual small language model you can open up | |
| MONA is a **110M-parameter Llama-style language model trained from scratch on one laptop GPU** for | |
| **English, Hindi, Hinglish and Awadhi** (Tulsidas). It was built to **teach how LLMs work**: the | |
| companion terminal app lets anyone look inside it, stage by stage, in English, हिंदी or Hinglish. | |
| - Code, app and full build story: https://github.com/JayD108/Mona | |
| - `pip install` the repo, then run `mona`: the app downloads these files on first run. | |
| ## Model | |
| | | | | |
| |---|---| | |
| | Architecture | decoder-only transformer: 12 layers, width 768, 12 heads, SwiGLU 2048, RMSNorm, RoPE, tied embeddings | | |
| | Parameters | 110.1M (85.0M non-embedding) | | |
| | Tokenizer | byte-level BPE, 32,768 tokens, trained on a balanced EN / HI / Hinglish / Awadhi sample (Hindi 1.33 tokens/word) | | |
| | Context | 1,024 tokens | | |
| | Pretraining | 2.5B tokens, AdamW, bf16, WSD learning-rate schedule (peak 6e-4), ~19 h on an RTX 5080 Laptop GPU | | |
| | Chat tuning | supervised fine-tuning with loss masking on ~100K conversations | | |
| ## Evaluation (held-out text, bits per byte, lower is better) | |
| | English | Hindi | Hinglish | | |
| |---|---|---| | |
| | 1.027 | 0.455 | 1.058 | | |
| Final held-out loss per language (nats/token): english 3.146, hindi 3.063, hinglish 2.899, awadhi 5.445 | |
| Sample (MONA-Chat, "Who are you?"): *I'm Emily Wilson, the executive director of the National Geographic Society. I'm the lead author of the new report, "The Greatest Planet: The Greatest Earthquake in History." I'm thrilled to share my * | |
| ## Files | |
| - `assets/models/mona/mona.pt`: base model (bf16 state dict) · `assets/runs/mona_m_chat/model.pt`: MONA-Chat | |
| - `assets/models/mona/tokenizer.json`: tokenizer (Hugging Face `tokenizers` format) | |
| - `assets/…`: a small, licence-clean demo bundle used by the app (see NOTICE.md) | |
| ```python | |
| from mona.engine.glassbox import GlassBox # from the GitHub repo | |
| gb = GlassBox() # loads the newest weights on CPU | |
| print(gb.next_word("The capital of India is", top=5)) | |
| ``` | |
| ## Intended use and limits | |
| For **education and experimentation**. MONA is small: it writes fluent text but **often states things | |
| that are wrong**, cannot do arithmetic, and must not be used for factual, medical, legal or other | |
| consequential decisions. | |
| ## Training data and licences | |
| English: FineWeb-Edu (ODC-By 1.0) · Hindi and romanized Hindi: AI4Bharat Sangraha (CC-BY-4.0; its | |
| Wikipedia-derived parts are CC BY-SA) · chat: smol-smoltalk (Apache-2.0), Aya dataset (Apache-2.0) · | |
| Awadhi: Tulsidas's verses (public domain). See NOTICE.md for full attribution. | |
| **Copyright note:** an earlier Tulsidas corpus also contained a modern Hindi commentary (Gita Press, | |
| likely still under copyright). When this was noticed, at 0.8B of 2.5B training tokens (~0.1% of | |
| batches up to then), it was removed: the rest of pretraining, the chat tuning and everything in this | |
| repository use only public-domain verse. No commentary text is distributed here. | |
| ## Credits | |
| Built by Mrittunjay Dubey. Coding assisted by Claude (Anthropic). | |