Prism: a sparse-autoencoder atlas of a language model’s features
Prism splits a small language model’s residual stream into thousands of features with a TopK sparse autoencoder, in your browser: a ready-made atlas of 2,048 features for TinyStories-3M’s layer 4, or one you train on your own device for any layer. You browse the features as a map, see the story text that fires each one and the words it pushes the model toward, watch every word you type split into its features, and clamp a feature on or cut it out while the model writes, next to the untouched original.
How it works
- Open the ready-made atlas, or grow one for any layer on your device. Each dot on the map is a feature, placed near the features whose directions it shares.
- Hover a word in the story to see the features that fire on it, or click a feature for the contexts that fire it hardest and a logit lens: the words its direction pushes toward and away from.
- Steer a feature: clamp it at every token to a multiple of its peak, or set it to 0 to cut it out, and the story is written again beside the original from the same random numbers.
Privacy and limits
- Everything runs in your browser: prompts and steering stay on your device unless you share a recipe link.
- Growing an atlas reads TinyStories and trains on your device, from about a minute to several, depending on the model, the layer and the dictionary size.
- The logit lens skips the later layers, so it’s a hint, not the whole effect; steering a feature shows the effect.
Models
Prism runs on this site’s desktop, which needs JavaScript: with it on, this address opens the app. In the desktop’s terminal it’s app prism. This page as Markdown.