Frame by frame — tokens.
An LLM reads in chunks called tokens — sometimes a whole word, often only part of one.
A video umpire never takes in an incident at a single glance. It steps through the replay one frame at a time, and the full picture only assembles from that run of frames.
An LLM reads much the same way. Before it can do anything with your text, it splits it into tokens — small pieces, usually chunks of words. A common word like “the” is one token; a rarer or longer one is broken into several. The model never sees your letters, only this stream of chunks and the ID numbers behind them. It's also why a model can fumble something as simple as counting the r's in a word — it isn't looking at letters at all.
Take a sentence and break it into frames yourself — then see what the umpire actually reads.
The same appeal, as the model takes it in.
You hand over text; the model first splits it into tokens. Most words are one token — but a rare word like snickometer becomes several.
tokens = umpire.tokenize("The snickometer caught a faint edge.") # → ['The', ' sn', 'ick', 'ometer', ' caught', ' a', ' faint', ' edge', '.'] len(tokens) # 9 frames tokens[1:4] # [' sn', 'ick', 'ometer'] — one word, three tokens
Everything is tokens.
The appeal, the verdict, every word the umpire reads or speaks — all of it is a sequence of tokens. That's the only form the model ever handles.
Tokens are the unit an LLM works in — and the odds you met on the last page are odds over exactly these chunks, a fresh set for every frame the umpire adds. (How many tokens it can hold at once — its working memory — is Lesson 2.)