A small model.
A little imagination.

Sprout learned to tell stories from scratch.
Give it an idea. See what grows.

An open research experiment

29.4 million parameters. Simple English stories.
The real model, running on your device.

Plant an idea

Add story details

These are requests. Sprout may miss them.

Adjust the writing

0 picks the most likely next word; higher values add variety.

First use downloads about 126 MB of weights, plus the runtime. Prompts stay on your device. Writing can be slow on phones.

Ready when you are.

Your story

Every story starts
with something small.

Your words will appear here as Sprout writes.
Written by a small, imperfect model

What grew from this experiment?

A complete language model: byte-level tokenizer, eight transformer layers, pretraining, two controlled comparisons, instruction tuning, and cached generation. All built in plain Python and PyTorch.

Read the results

19 / 20Test stories stopped on their own after instruction tuning.

6 / 20Included every requested word. Following instructions remains a weakness.

Sprout can repeat itself, change characters, or contradict its own story. It is a learning project with a 512-token context, not a general chat assistant. Outputs have not been evaluated for suitability for children.