Your Million-Token Context Window Is a Marketing Department Lying to You
Every vendor has the same slide now: 1M token context. 10M token context. Context so long it can eat your entire codebase and ask for seconds.
Meanwhile, the actual model, when you hand it a real 400k-token document, responds like it skimmed page one, skimmed the last page, and vibed in between.
The needle-in-a-haystack scam
The original long-context benchmark was a party trick: drop one weird phrase like the magic unicorn eats tacos into a wall of essays and ask the model to retrieve it. Retrieving a single salient string is the easiest thing an attention mechanism does. Your laptop does the same job with grep in milliseconds.
Modern evals like RULER and the NoLiMa variants actually require multi-hop reasoning, aggregation, and tracking entities across the haystack. Scores collapse. Models advertising 1M tokens routinely fall off a cliff at 10-20% of the claimed window. That effective number is the one nobody puts on the launch slide.
Why the math hates you
- Standard attention is O(n squared) in sequence length, and the sparse tricks that dodge it all leak somewhere.
- The KV cache grows linearly with context. A 128k-token chat on a 70B model can eat tens of GB of VRAM before the weights even say hello. A million tokens is not a software feature; it is an infrastructure apology.
- Positional extrapolation via RoPE scaling is exactly that: extrapolation. Models are trained mostly on short sequences, so past a certain point you are asking them to imagine positions they never rehearsed.
Lost in the middle
Even when the model technically ingests everything, attention has a strong primacy and recency bias. Bury your crucial constraint in paragraph 60 of 200 and watch the model confidently violate it. In practice, a boring retrieval setup with aggressive chunking often beats the shiny long-context mode, which is embarrassing for everyone involved, especially the keynote speaker.
What to actually do
- Treat advertised context as a ceiling, not a working range. Budget real workloads to a third of it.
- Benchmark on your own data with tasks that require synthesis, not retrieval.
- Measure latency and cost at the long end. A 500k-token prompt is not a prompt; it is a rental agreement on someone's H100.
- Curate what reaches the model with retrieval or summaries. The best long-context strategy is not sending that much context.
The million-token window is real in the sense that the model will not crash. It is fake in the sense that anyone promising coherent reasoning across all of it is selling you the brochure, not the car.