Noah Shutty / Home

Small Stories Visualizer

Stories260K · runs in your browser5 layers · 8 heads · 64 dimensions
Keeps writing until you pause. Edit anywhere; Play continues from the end.

Loading the English model…

About 1 MB. Your story stays in this browser.

PromptGenerated
Drag to pin · double-click to release · hover to highlight
How it works

Each ball groups the model’s token pieces into a word. Green arrows show attention, averaged over heads and the receiving word’s pieces. Positions are a force layout, not model embedding coordinates; dragging changes only the display. In 3D, a gentle Huber penalty favors a shallow plane while allowing outliers in depth.

Orange links show positive effects on the chosen next token: the change in log probability when a prior word’s input embeddings are replaced with zeros. The affected suffix is recomputed through every layer. These effects depend on that baseline, are not additive, and do not uniquely explain a prediction. New words begin near positive support; continuation pieces stay in their existing word.

Sampling uses temperature 0.8 and top-p 0.9 with a fixed seed. Start/end/unknown tokens are excluded so playback continues until paused. At 512 tokens, inference restarts on roughly the latest 384 tokens; earlier text stays in the editor. Text is processed locally and is not sent to a server.

Model: Stories260K by Andrej Karpathy, trained on TinyStories. Inference adapted from llama2.c. Credits & licenses.

Ronen Eldan and Yuanzhi Li (2023). TinyStories: How Small Can Language Models Be and Still Speak Coherent English?