Learn LLM with your own model

Also known as the Wittenstein Language Game — the name borrows from Wittgenstein's idea that meaning is use, and from the famous "automaton" chess machine that looked intelligent but just followed hidden rules.

A simplified look at how a real LLM actually works. Pick or edit a text above and the model builds itself — every word starts as a totally random vector, free to explore by clicking one. Then press Train (drag the Rounds slider first to run several rounds in one click) to train those vectors for real, using a small but genuine self-attention mechanism to predict the next word. Try this: click a word, check its "most similar" list, then train again and watch that list change. "Reset model" throws away training and starts over with fresh random vectors.

Choose text
Choosing or editing text rebuilds the model automatically — every word gets a fresh, random vector.
Vocabulary growth
Text with repeating words is good training text, and that's what makes the LLM model good.
Dashed line = how many unique words there would be if every word were new. The real line falls behind as words start repeating.
A flatter curve means more repetition, which helps the model learn reliably, and it's part of why AI companies want more, original text: rare words need repetition too.
Groups:
Training
Training (gradient descent)
Loss = how wrong the model's guesses are on average. Each "Train" click nudges the vectors to make correct guesses — like the example below — more likely.
Press "Train" to see one real example worked through.
Most similar
Click a word in the model above to see what it's most similar to — and watch this list change as you train.
Ready.
Ask the model using ONLY words from the training text
This model is far too small for human-like answers — expect it to surface related words, not coherent sentences. Try continuing one of these:
3%
Gray words are your question; highlighted words are what the model added. Word choice has some randomness, so answers vary.
Training is random, so quality varies between runs. If the answer looks weak, try "Reset model" and train again.