The Next-Token Flipbook

This is an AI model called Qwen3.5. It consists of about 4.2 billion numbers.

What the picture shows

Qwen3.5-4B as a box, seen close up and open: its numbers inside as 32 columns of points, one per layer, the full-attention layers drawn open, a wave of the signal colour passing through them (an impression, a few shown, labelled 4,205,751,296 numbers). The camera pulls back, and the lid comes down, printed like a carton with the model card's real figures: 32 layers, 2,560 wide, a vocabulary of 248,077, 4-bit, net contents 4,205,751,296 parameters. Then the question ‘What is the capital of France?’ goes in from one side, the box runs, and the answer's first tokens come out on the other, one by one: ‘The capital of France is’.

The next-token loop of mlx-community/Qwen3.5-4B-4bit on the text “The capital of France is”, 5 tokens. At each step, the three most likely next tokens: step 1: space, “Paris” 45%, space, “located” 7.8%, space, “known” 5.4%; chose space, “Paris”; step 2: “.” (punctuation or formatting) 79%, “,” (punctuation or formatting) 16%, space, “and” 1.3%; chose “.” (punctuation or formatting); step 3: line break 25%, 2 line breaks 13%, space, “The” 12%; chose line break; step 4: “A” 37%, “The” 18%, “I” 2.0%; chose “A”; step 5: “.” (punctuation or formatting) 89%, space, “city” 2.1%, “:” (punctuation or formatting) 0.6%; chose “.” (punctuation or formatting); step 6: space, “True” 31%, space 20%, space, “False” 4.1%; chose space, “True”. 5 samples at temperature 1, seeds 0 to 4: space, “not”, space, “Paris”, space, “but”, space, “blessed”, space, “with”, space, “neither”, space, “the”, space, “sun”; space, “Paris”, “.” (punctuation or formatting), space, “(” (punctuation or formatting), “T”, “/F”, “)” (punctuation or formatting), 2 line breaks, “M”; space, “the”, space, “__” (punctuation or formatting), “________” (punctuation or formatting), “base”, space, “of”, space, “our”, space, “national”, space, “monument”; space, “_____” (punctuation or formatting), space, “but”, space, “that”, space, “of”, space, “Greece”, space, “is”, space, “Athens”, “.” (punctuation or formatting); space, “Paris”, “.” (punctuation or formatting), line break, “A”, “.” (punctuation or formatting), space, “I”, “RR”, “ATIONAL”.

The next-token loop of mlx-community/Qwen3.5-4B-4bit on the question “What is the capital of France?” wrapped in the chat template, 19 tokens: “<|im_start|>” (special token), “user”, line break, “What”, space, “is”, space, “the”, space, “capital”, space, “of”, space, “France”, “?” (punctuation or formatting), “<|im_end|>” (special token), line break, “<|im_start|>” (special token), “assistant”, line break, “<think>” (special token), 2 line breaks, “</think>”, 2 line breaks. At each step, the three most likely next tokens: step 1: “The” 100%, “**” (punctuation or formatting) <0.1%, “Paris” <0.1%; chose “The”; step 2: space, “capital” 100%, space, “national” <0.1%, space, “**” (punctuation or formatting) <0.1%; chose space, “capital”; step 3: space, “of” 100%, space, “city” <0.1%, space, “and” <0.1%; chose space, “of”; step 4: space, “France” 100%, space, “**” (punctuation or formatting) <0.1%, space, “the” <0.1%; chose space, “France”; step 5: space, “is” 100%, space, “(” (punctuation or formatting) <0.1%, “,” (punctuation or formatting) <0.1%; chose space, “is”; step 6: space, “**” (punctuation or formatting) 100%, space, “Paris” 0.2%, space, “the” <0.1%; chose space, “**” (punctuation or formatting); step 7: “Paris” 100%, space, “Paris” <0.1%, “巴黎” (Chinese characters) <0.1%; chose “Paris”; step 8: “**.” (punctuation or formatting) 95%, “**” (punctuation or formatting) 4.7%, “**,” (punctuation or formatting) <0.1%; chose “**.” (punctuation or formatting).

Qwen3.5-4B: 32 layers, 2560 numbers wide, 248,077 tokens in its vocabulary, 4,205,751,296 parameters in 2,367,118,848 bytes, quantised to 4 bits in groups of 64.

Where this comes from

flipbook-france-raw-qwen Measurement

The next-token loop: the model's probabilities for the next token (the softmax of its final logits at the last position, over every row of its output table) at each step of greedy decoding, the top 40 with the probability of everything else; samples from the full distribution with recorded seeds (mx.random.categorical, keyed by the seed).

Model
mlx-community/Qwen3.5-4B-4bit, quantised: 4-bit, groups of 64
Built by
lab/precompute/next-token-flipbook.py
Commit
5f8af57
From stored results
No: a fresh run
Inputs
sha256:19e20cdf641dab90e0974f04768b863ff1051c7f01021d6e4ada8fc12de242c8
Made
2026-10-15

flipbook-france-chat-qwen Measurement

The next-token loop: the model's probabilities for the next token (the softmax of its final logits at the last position, over every row of its output table) at each step of greedy decoding, the top 10 with the probability of everything else.

Model
mlx-community/Qwen3.5-4B-4bit, quantised: 4-bit, groups of 64
Built by
lab/precompute/next-token-flipbook.py
Commit
5f8af57
From stored results
No: a fresh run
Inputs
sha256:7e714f39738b3c1a8c0906d010ee1c9b8f1ee51277935668a5ec3fe9a3443122
Made
2026-10-15

model-card-qwen Measurement

The model's specifications, computed from its config.json, tokenizer and weights: parameters and bytes count the language model only, without the vision encoder; a quantised weight counts at its unpacked size.

Model
mlx-community/Qwen3.5-4B-4bit, quantised: 4-bit, groups of 64
Built by
lab/precompute/next-token-flipbook.py
Commit
5f8af57
From stored results
No: a fresh run
Inputs
sha256:6710545c77d59f772adbd96e4626fda9a8caa218848e3989cdd758056d06fedb
Made
2026-10-15

Glossary