RAG Was Always a Temporary Workaround. What is Next?

Editor
12 Min Read


1. The Great Translation Absurdity

favourite RAG system. Very closely.

Somewhere inside that meticulously architected pipeline, a language model is producing rich, high-dimensional hidden states. Those states get compressed down into a string of characters. That string gets re-encoded, by a different neural network, into a different high-dimensional space. That vector gets stored. Later, another vector gets compared against it. The winning strings get pulled out, glued together, and handed to a third model that laboriously rebuilds a hidden state from those characters.

We labelled this “memory.” A more honest name would be: a very elaborate, high-latency game of telephone in which every player is a neural network.

Two amber boxes doing the thinking. Five grey boxes doing the paperwork the two amber boxes shouldn’t have needed in the first place.

The full chain, drawn plainly:

Hidden State → Generate Text → Embed Text → Store Vector → Retrieve Vector → Append Text → Recompute Hidden State

Read that arrow chain twice. Two of the seven stages are neural-native. The other five exist only because we cannot yet persist the neural state itself, so we built an entire industry to reconstruct it from text every single time we needed it back. Vector databases, embedding models, rerankers, chunking heuristics, retrieval evaluators — an entire ecosystem to route around a missing feature.

None of that is a criticism of the engineers who built it. Given the primitives they had, RAG was the right solution. But we should be honest about what it is: a high-overhead translation layer, not a memory system.

2. The Context Window Illusion

I can safely assume that by now the standard objection is warming up in the reader’s head. “None of this matters. Just use a two-million-token context window and dump everything in.”

Fair objection. Also, no.

Bigger context windows solve capacity. They do not solve portability. They do not solve persistence. And they especially do not solve either of those in the environments that are going to define the next decade of applied AI.

Consider one autonomous agent handing off a task to another. Or an edge device (e.g., a drone, a phone, a robot, a network node) moving between compute clusters. Or a multi-agent pipeline in which the router, the tool caller, the safety filter, and the finaliser all live in different processes on different machines.

In every one of those settings, the unit of transfer between two computers cannot practically be a two-million-token prompt. The bandwidth cost is punishing. The re-tokenisation is wasted work. And the receiver still has to re-read the whole transcript — a full prefill pass over every token — to reconstruct any semblance of the sender’s reasoning state. Even on modern hardware, that is not a free operation. It is exactly the original problem, dressed in a bigger context window.

A larger context is a better book. It is not a way to teleport your last thought.

3. The Systems Engineer’s Reality (Latency Budgets)

Prompt engineering stops at “does the model give the right answer?”

Systems engineering starts at “…and at what millisecond?”

Below is a rough, illustrative latency budget for a single RAG call. It is the kind of back-of-the-envelope you scribble the first time your latency service-level agreement stops being generous:

Step Illustrative Latency (ms)
Token generation (upstream) 15
Embedding 12
Network I/O 8
Vector search 25
Reranking 10
Prompt reconstruction 15
Decoding 50
Total ≈ 135 ms

Those are blocking, sequential operations. You cannot start decoding until the prompt has been reconstructed. You cannot reconstruct the prompt until the network hop and the vector search have returned. Every millisecond in that column has to wait for the previous one to finish.

In a chatbot, 135 milliseconds is invisible. Nobody complains.

In a continuous robotics control loop, a haptic feedback system, a self-driving stack, or a wireless base-station handover between radio access nodes, 135 milliseconds is not within the budget. It is the budget, spent entirely on plumbing, before the model has said anything useful.

This is where the forcing function stops being academic. Direct GPU-to-GPU transfer of a latent state skips the embedding step, the network hop to a vector store, the retrieval query, the reranker, and the prompt reconstruction. You are not making each individual step faster. You are removing them from the pipeline. In domains where every millisecond is already spoken for, that is the only kind of “speedup” that actually counts.

4. The Evolutionary Arc of Memory

This is not the first time the field has hollowed out a translation layer. Roughly, it is the fifth.

A horizontal timeline of six retrieval-infrastructure stages, from Raw
Files to Latent Persistence. Earlier stages are muted grey-blue; the
final Latent Persistence stage is highlighted in warm amber with a
soft glow.
Every stage on this chart was once someone’s endgame. None of them stayed the endgame

Every stage on this chart was once someone’s endgame. None of them stayed the endgame.

Raw Files → Relational DBs → Search Indices → Text Embeddings → Vector Search → Latent Persistence

Every stage in that chain solved the retrieval problem at a higher level of abstraction than the one before, and every stage eventually stopped being the primary interface. Relational databases did not disappear — they quietly became the storage layer sitting under everything else. Search indices did not disappear — they became a feature inside larger platforms. Text embeddings did not disappear — they enabled the vector search era. Each layer keeps living. It just stops being the place where new applications get built.

Vector search is exceptional at what it was actually designed for: enterprise document search, semantic knowledge graphs, biological sequence retrieval, code discovery, recommendation. It is not going away. What is likely to shift is its role as the default conversational memory mechanism for AI systems. That role is a temporary bridge, held together by the fact that models could not yet natively persist their own state.

Every previous “temporary bridge” in that chain eventually stopped being the primary interface. There is no obvious reason this one will be different.

5. The Implementation Reality

None of this means “just persist the latent state” is easy. It is, in fact, spectacularly hard.

Unlike text, which is a stable, universal, standardized model-agnostic interchange format, latent representations are model-specific and often unstable across architectures. That single fact makes interoperability the central research challenge, not a solved side-detail.

Direct memory injection is not an API call you casually add to your stack. To move a live neural state between two models, you have to take care of several unpleasant details at once:

  • Architectural compatibility. Layer counts, hidden dimensions, attention layouts, KV-cache formats — they have to line up.
  • Precision matching. Send an fp16 state into a bf16 model and the numbers drift subtly at first, and then not so subtly.
  • Layer normalisation and residual scale. Two models with identical topology can still live in differently-scaled hidden spaces.
  • Positional and rotary embedding alignment. RoPE offsets, absolute positions, sequence-position bookkeeping. Get any of these wrong and the transferred state decodes as confidently coherent nonsense — which is arguably the worst failure mode a memory system can have.

This is why “just persist the hidden state” has stayed a research topic and not a shrink-wrapped product. The interoperability contract is harder than the interoperability contract of RAG, which is precisely why RAG got shipped first. Text is the universal fallback protocol because it strips out everything hard.

Research directions like Inductive Latent Context Persistence (ILCP) attempt to solve exactly these protocol alignments — learning a compressed, portable representation of the source-side state on one end and a receiver-side projection that maps it back into the target model’s space on the other. Approaches of this shape are being actively explored across adjacent fields, including mobile networks, where the transferred latent has to survive a change of receiving base station in a tight sub-second time budget. The honest state of the art, however, is that these frameworks currently work only under strict architectural compatibility — usually identical models on both ends — and that lifting the compatibility constraint is an open research problem, not a solved one.

That is a much narrower claim than “vector databases are dead.” It is also a much more useful one.

6. The Takeaway

Here is the non-hyperbolic version of the prediction:

Text retrieval will keep doing the job it is genuinely great at: sitting at the boundary where a machine has to explain itself to another machine that does not share its architecture, or to a human. That is the actual strength of the RAG stack, and it is not going anywhere.

What will fade is the assumption that the only way one AI system can hand memory to another AI system is through a string of characters. That assumption was reasonable five years ago. It gets less reasonable every quarter.

RAG was never the destination. It was the workaround we all built while waiting for the actual thing.

For decades, computers stored knowledge as symbols. AI briefly did the same. The next generation of AI systems may finally start remembering the way neural networks think — not the way humans write.


Disclaimer: The illustrations in this article were generated using AI (Claude Opus 4.8). They are illustrative, not photographic, and any labels visible inside the images are stylized rather than authoritative — refer to the article body and the code itself for precise function names, metric values, and architecture details.

Share this Article
Please enter CoinGecko Free Api Key to get this plugin works.