GuppyLM is a 9M-parameter toy LLM trained in one Colab notebook, designed to demystify transformer architecture for non-experts.
An indie developer released GuppyLM, a 9-million-parameter language model built on a vanilla transformer architecture and trained on 60K synthetic conversations in roughly 5 minutes on a single GPU. The project includes everything from tokenizer to training loop to inference, packaged in a single Google Colab notebook. The model plays the character of a fish named Guppy, using a narrow synthetic dataset to keep personality consistent. The entire stack — data generation, architecture, and training — is intentionally simplified to serve as a teaching tool, with no GQA, RoPE, or SwiGLU.
GuppyLM is a clean, readable end-to-end transformer implementation with no abstraction layers hiding the math. Attention mechanism, tokenizer, training loop, and inference are all visible and modifiable in a single notebook. For developers who've used LLM APIs without ever touching the underlying architecture, this is the fastest path to actually understanding what's happening under the hood — which pays off when debugging latency, hallucination, or fine-tuning failures.
Fork the Colab notebook, run it end-to-end, then swap the synthetic fish dataset with a domain-specific corpus (e.g., your product's FAQ or support tickets) and retrain — you'll have a working custom character model and genuine understanding of the tokenizer-to-inference pipeline in under an hour.
Open the GuppyLM Colab notebook from the GitHub repo linked on the Show HN post
Tags
Sources
Signals by role
Tools mentioned