You need to agree to share your contact information to access this model
This repository is publicly accessible, but you have to accept the conditions to access its files and content.
eeny is free for personal, research, education & evaluation — and for commercial use under US$10,000/yr product revenue ("free until you make money"). Commercial use above that needs a paid license: US$19/year or US$39 lifetime, per product or domain. 60% off (code PPP60) for low/lower-middle-income countries. Scale (> US$1M revenue or > 100K MAU) = custom license. Buy → https://www.sprapp.com/buy · questions → sprappcom@gmail.com. By requesting access you agree to the Sprapp Model License v1.0 (SML-1.0).
Log in or Sign Up to review the conditions and access this model content.
eeny — a coherent TinyStories generator in 999,328 parameters
eeny is a tiny language model that writes short children's stories — and runs in a browser tab, offline, with no GPU. At 999,328 total parameters it is, to our knowledge, among the smallest coherent story models, and it beats TinyStories-1M (a model ~3× larger by non-embedding params) on a fair, tokenizer-independent metric.
Numbers (all measured)
| metric | eeny | TinyStories-1M |
|---|---|---|
| total params | 999,328 | ~3M (1M non-embedding) |
| bits-per-byte (held-out TinyStories val, lower=better) | 0.625 fp (≈0.632 after int8 export) | 0.707 |
| in-browser speed (WASM, single thread, no GPU) | 417 tok/s (2.4 ms/tok) | — |
| file size (int8 KNM) | 1.76 MB | — |
Bits-per-byte is tokenizer-independent (normalize cross-entropy by UTF-8 bytes), so the comparison is fair across different tokenizers.
What it is
- Architecture: small decoder-only transformer (dim 88, 7 layers, GQA, RoPE, SwiGLU, tied embeddings), 4096-token BPE tokenizer trained on TinyStories.
- Trained by knowledge distillation from a small full-precision teacher on the TinyStories dataset, then exported to int8 (per-row) for the Sprapp in-browser WASM engine. int8 is near-lossless for this fp model (ternary post-training-quantization destroyed it — int8 preserves it).
Sample (greedy, in-engine)
Once upon a time, there was a little → girl named Lily. She loved to play outside in the sun and
watch the birds fly high up in the sky. One day, she saw an old man sitting ...
The cat sat on the → tree and said, "I'm sorry I was so sad. Can you forgive me?"
The cat smiled and gave the cat a big hug. From that day on, the cat always shared ...
Files
| file | what |
|---|---|
eeny_int8.knm |
int8 weights, KNM1 v3 (1.76 MB) — for the Sprapp WASM engine |
tokenizer_eeny.json |
4096-vocab BPE tokenizer |
Limitations
- Domain: TinyStories only (simple children's stories). Not a general LM.
- Tiny: it confabulates and has no world knowledge beyond the TinyStories distribution.
Part of the Sprapp project — offline on-device tiny LMs in the browser (eeny / meeny / miny family). Trained on TinyStories (Eldan & Li, 2023).
License
Sprapp Model License v1.0 (SML-1.0) — free for personal, research, education, and evaluation.
Commercial use is free under US$10K/yr product revenue ("free until you make money");
above that: US$19/yr (or $39 lifetime) per product, 60% off in low/lower-middle-income countries (code PPP60).
Scale (> US$1M revenue or > 100K MAU) requires a custom license.
Buy: https://www.sprapp.com/buy · contact sprappcom@gmail.com. See LICENSE-MODELS.md.
Trained from scratch; TinyStories dataset attribution above.