@realchendahuang: Three years ago, when large language models had just swept the globe, the entire tech world was in an awkward state of being both thrilled and constrained everywhere. At the time, the industry broadly agreed on several almost insurmountable technical hurdles: model memory windows were too short — input just a little longer and it couldn't remember; the underlying compute architecture was extremely compute-hungry, with computation for long text exploding exponentially; the cost per call stayed sky-high, so enterprises didn't dare deploy them broadly in business use; and so-called autonomous agents would completely lose control under probabilistic drift if they ran just a few extra steps...
Summary
A deep retrospective on three years of LLM technical evolution: long-context handling shifted from RAG to prefix caching and million-token context windows; the Transformer still wins over linear-complexity architectures thanks to the hardware ecosystem of GPU tensor cores; inference costs were democratized through quantization, distillation, and task-based routing; agents moved toward pragmatic engineering paths like progressive disclosure, command-line sandboxes, and test feedback loops; and hallucination remains unsolved.
View Cached Full Text
Cached at: 10/06/26, 05:53 PM
When large language models first swept across the globe three years ago, the entire tech industry found itself in an awkward state — electrified with excitement, yet constrained at every turn.
Back then, the industry had reached consensus on a handful of nearly insurmountable technical bottlenecks:
- The models’ memory window was far too short; they forgot things as soon as the input got a little long.
- The underlying computational architecture devoured computing power, with long-text workloads exploding geometrically.
- The cost per call stayed stubbornly high, so enterprises were afraid to let business teams use these models at scale.
- And the so-called autonomous agents, once they took a few extra steps, ran off the rails entirely within a few probability errors.
Three years later, looking back at how these problems evolved, what emerges is a genuinely instructive story about the solutions the industry actually managed to implement. Many of the mathematical ideas once held up as the industry’s great hope were in turn humbled by the laws of physics in real-world engineering; while the cost and compute barriers that looked utterly impassable were leveled, one by one, by remarkably solid, fundamental engineering.
The first area to undergo a profound transformation was context length and knowledge retrieval.
In the early days, the basic unit for processing text in large models was the token — usually a few English characters or a single Chinese character. Mainstream models of that era had context windows of only a few thousand tokens, barely enough to fit even a thin technical manual. Worse, as input text grew longer, the attention mechanism began to exhibit an information-dropout effect: the model could retain the beginning and the end, while entire blocks of middle content were simply ignored.
To get around this bottleneck, the most popular solution across the industry was retrieval-augmented generation, or RAG.
The logic went like this: first split the text — chop a several-hundred-thousand-character document forcibly into small fragments of a few hundred characters each by paragraph. Then use embedding models to map every fragment into a high-dimensional coordinate space, storing them in a dedicated vector database. When a user asked a question, the system converted the question into a vector as well, ran a geometric-distance comparison against the database, pulled out the three or five most literally relevant fragments, stitched them into the prompt, and finally handed the prompt to the model for an answer.
Many teams regarded this fragment-and-vector-matching pipeline as their core proprietary asset.
But once this approach ran inside genuinely complex business scenarios, it exposed fundamental flaws.
Real-world business logic is an interlocking whole. Shattering a long document into pieces severs the causal chains between its sections. Any question requiring cross-chapter logical deduction, or a global synthesis of the entire document, caused vector retrieval to fail outright — and the fragments stitched together were often incoherent with one another.
What truly put long-text processing back on track was an increase in GPU memory bandwidth, combined with a core engineering mechanism: prefix caching — Prefix Caching.
When a large model processes preceding context, it saves the intermediate computation results of the attention layers as a key-value cache, i.e., the KV Cache. In the past, every time a question was posed to the model, even if the tens of thousands of words of project documentation ahead of it hadn’t changed at all, the system still had to recompute the attention matrix over the entire text from scratch — an enormous compute bill.
Prefix caching changed that: it let the system keep the key-value caches of shared documents resident in GPU memory, so that subsequent prompts required only incremental computation over the few dozen newly appended characters.
Once the per-inference cost of ultra-long text was slashed, the elaborate fragmenting pipelines lost their reason to exist almost overnight. Feeding hundreds or thousands of code files whole into a million-token context window — and letting the model complete its reasoning over the global semantics — produced results far cleaner and more stable than cobbling fragments together on the periphery.
The second area to run headlong into reality was the search for a new architecture to replace the Transformer.
Nearly all mainstream large models today are built on the Transformer architecture, whose core mechanism is self-attention. This mechanism requires every word in the input text to be compared, one by one, against every other word in the context.
The consequence: double the text length and the computation expands fourfold — or even by hundreds or thousands of times — a phenomenon mathematically known as quadratic complexity.
Faced with compute consumption that explodes with length, academia has long hunted for something lighter. Researchers devised many state space models, architectures such as S4 and Mamba. Mathematically these models have linear complexity — double the text length, and the compute only doubles along with it. The formulas looked exquisitely elegant.
Yet three years on, the models at the absolute industry frontier still rest firmly on the Transformer and its variants.
The reason theoretically cheaper architectures haven’t prevailed comes down to the physical characteristics and ecosystem scale of modern compute chips.
The core computing unit of the modern GPU is the tensor core — the Tensor Core. This hardware structure was purpose-built, at the physical level, for dense, high-throughput, regular matrix multiplication.
The Transformer’s computation is mathematically heavy, but every single one of its operations is a neat, well-ordered big-matrix computation — exactly the kind that can drive the GPU’s hardware pipeline at full speed.
Linear models, by contrast — mathematically lower in complexity — are typically riddled with intricate state loops and recursive updates during inference. These operations shuttle data back and forth between compute cores and video memory constantly, imposing very high scheduling overhead on the hardware, and in practice they struggle to saturate a chip’s peak performance.
On top of that, the industry over the past several years has accumulated tens of thousands of operator-level compilation optimizations and cluster-scheduling toolchains around matrix multiplication. A lighter algorithm on paper is hard-pressed to defeat a mature industrial architecture so deeply bound to a trillion-dollar hardware ecosystem.
The third change that genuinely democratized the technology was the evolution of inference cost and model roles.
In the early days of large models, loading a model with a hundred billion parameters into memory required massive clusters, and the per-call cost of hardware depreciation and electricity was enormous. Enterprises recoiled from production-grade bills.
What made costs come down to earth so quickly was first and foremost model quantization.
Early on, computers recorded model weights using 16-bit or even 32-bit high-precision floating-point numbers. Engineers later discovered that by compressing these parameters through quantization algorithms into 8-bit — or even 4-bit — integer storage, the model’s overall inference capability was barely degraded, while memory footprint dropped to a small fraction of what it had been.
Next came knowledge distillation. By having a massive teacher model with a hundred billion parameters generate high-quality reasoning data, and using that data to train a small student model with only a few billion parameters, lightweight models too could learn the sophisticated patterns of logical deduction.
But the deeper cost-reduction logic came from task routing baked into the architecture itself.
In the early days, people habitually used a single expensive, do-everything model for all the work — equivalent to hiring a top scholar to pour tea and fetch water, paying a sky-high consulting fee even to fix two typos.
Today’s engineering practice has moved to a clear division of roles:
The vast majority of everyday work — text extraction, formatting, semantic classification, and light code completion — is routed directly to distilled small models or very fast lightweight versions. These models run with negligible overhead, return results in milliseconds, and cost as little as a fraction of a cent per call.
Only when the system encounters genuinely hard problems — ambiguous edge cases, multi-step deductions — is a large reasoning model brought out.
Only by routing tasks sensibly by complexity did the large-scale commercialization of large models become economically viable.
The fourth direction was the maturation of agents from hype to pragmatism.
Three years ago, the open-source community was chasing fully autonomous agents — Autonomous Agents — with feverish enthusiasm. The vision was to hand a model a high-level goal and let it open browsers, scour web pages, call APIs, and send emails on its own, solving any problem end to end.
Run it in a real business environment, though, and you quickly realize: a large model is fundamentally a probabilistic prediction system. Every step of its reasoning carries a tiny probability of error. Let it execute dozens of steps completely unconstrained, and those tiny errors accumulate exponentially until the program deadlocks in a loop — or produces output that has strayed completely off intent.
Today, the programming agents and workflow systems that actually work reliably in production have taken a far more pragmatic engineering path.
First: progressive disclosure. Instead of trying to cram the documentation for hundreds of complex external interfaces into the prompt all at once, the system provides the model only a concise index of topics, and lets the model fetch specific documents on demand when it needs them.
Second: command-line sandboxing. The system gave up on having the model recognize fancy web interfaces and simulate mouse clicks; instead it provides the model with a standard, isolated command-line sandbox. Large models have learned from massive volumes of real code during training. Having them write standard Python or Bash scripts to call the underlying interfaces directly yields determinism far higher than any graphical interaction.
Finally: a closed testing loop. Rigorous code test suites act as the referee. The moment the model finishes writing a logic segment, the system runs automated tests in the sandbox; if errors surface, the real error stack from the console is fed straight back to the model, helping it fix the code line by line against the specific failure.
Leave the large model at the level of solution reasoning, and hand the actual physical execution back to strict code sandboxes — only then does an agent gain genuine engineering usability.
Of all the problems listed over these past years, the one that still cannot be completely eliminated inside the model itself is, and remains, hallucination.
The fundamental working principle of a large language model is autoregressive prediction: given the sequence that has already appeared, it selects the next most probable character or word from the vocabulary distribution. There is no hard fact database of the physical world inside it — only statistical regularities of how words co-occur. Since the model is relying on probabilistic inference, the possibility of a wrong guess is unavoidable.
Trying to make a model stay objective by optimizing prompts alone, or having a large model review its own output, is — at bottom — still using one probability to correct another.
This is precisely why, over the past three years, the most solid progress in large models has been in programming and automated scripting.
In the context of pure textual argument, a plausible-sounding hallucination is hard for people to spot at a glance; but in the world of computers, code is absolutely honest. Miss one character in the syntax and the compiler raises an error on the spot; deviate the logic in one place and the test cases refuse to pass.
It is exactly this black-or-white, deterministic feedback from code execution environments that has put the firmest physical reins on the probabilistic drift of large models.
Trace the arc of these three years of technical evolution and a clear trajectory emerges:
The industry did not — as early enthusiasts envisioned — produce an all-powerful, all-capable miracle overnight; nor was it trapped indefinitely by theoretical mathematical complexity.
What has stayed and settled on the production line are always the pragmatic solutions that interlock deeply with the existing hardware ecosystem and use deterministic engineering mechanisms to absorb probabilistic fluctuation, over and over.
Understand the physical boundaries these solutions discovered through real-world business, and when confronted with an endless stream of new technical concepts, you can naturally tell which are packaging on paper and which are true productivity foundations worth putting in your toolbox.
Primary source:
Similar Articles
@realfxw: Using large language models as 'content generators' or 'logical judgment layers' are entirely different dimensions in terms of system throughput and inference costs. Recently, a Japanese developer shared a set of actual test data on the dedicated evaluation model JEV: after inputting 100 interview transcripts, the system completed the 'pass /...' for all candidates in only 12.8 seconds.
The dedicated evaluation model JEV demonstrated high efficiency and low-cost potential in processing interview transcripts, emphasizing the advantages of using large language models as logical judgment layers rather than content generators.
@NFTCPS: 4GB VRAM running 70B large model? It actually works! AirLLM did a clever trick — layered inference, not loading the whole model into VRAM at once, but layer by layer, compute and discard, squeezing the giant into a small GPU. The best part: 100% open source, freebie warning https://github.com/0xSo…
AirLLM is a fully open-source tool that uses layered inference (loading and releasing VRAM layer by layer) to enable 70B large language models to run on GPUs with only 4GB VRAM, without quantization, distillation, or pruning. It already supports running Llama3.1 405B on 8GB VRAM.
@seclink: There are a few obvious interview questions: 1. Can Transformer do large-model inference? It can, so why not use it, and why must we use sglang and vllm? - Essentially because Transformer's performance is too poor; the bottlenecks are memory (KV cache) and slow token-by-token decoding...
Discusses the bottlenecks of using Transformer for large-scale inference and reviews the evolution of inference optimization technologies for large models from 2023 to 2026, including KV cache quantization, speculative decoding, architectural innovation, and hardware-software co-design.
@AYi_AInotes: A counter-intuitive judgment: 80% of Agent production crashes have nothing to do with model IQ — they're all from context overflow, tool misconfiguration, sub-agent runaway. The real watershed in 2026 is Harness and Loop, not the model. Bro, @wizardly_ai's engineering note...
This article points out that 80% of AI Agent production crashes are not due to model intelligence, but are caused by context overflow, tool misconfiguration, and sub-agent runaway. The author emphasizes that the watershed in 2026 lies in Harness (office systems, security) and Loop (automatic cycling mechanism), not the model itself.
@berryxia: Small model, big wisdom? It's now real! A 7B small model now acts as the boss of top large models like GPT-5, Claude Sonnet 4, Gemini 2.5 Pro. A new paper shows an RL-trained 7B model learned to write natural language subtasks, assign them to different models, precisely...
A new paper proposes training a 7B small model via reinforcement learning as a task scheduler, automatically decomposing subtasks and assigning them to top models like GPT-5 and Claude. It surpasses individual frontier models on several hard benchmarks, demonstrating that end-to-end reward learning can effectively replace manual prompt engineering and multi-agent pipeline design.