Note · Demo content

Tokenization Is a Design Choice, Not a Law

A demo note that starts with a basic preprocessing assumption and exposes the system boundary hidden inside it.

This is demonstration content, not a record of Ryan’s personal conclusion.

Question#

Why do language models need tokenization at all? It is tempting to treat the tokenizer as neutral preprocessing, but it decides which chunks the model can see directly.

Explanation#

Text must become a finite sequence of model inputs. A subword tokenizer is one way to choose that sequence. Bytes, characters, or learned continuous representations move the boundary elsewhere; they do not remove the underlying representation decision.

For the text unbelievable, one vocabulary might produce:

["un", "believ", "able"]

Another might produce bytes. The model receives a different sequence length and a different set of reusable units in each case.

Current understanding#

The useful mental shift is from “tokenization cleans text” to “tokenization allocates representational primitives.” That framing makes tokenizer-free research easier to evaluate: the question becomes which component learns the segmentation and what cost moves with it.

Open question#

How should we compare tokenizers when compression efficiency, multilingual fairness, and downstream accuracy disagree?