Last verified 13 October 2026. Every cost, latency and failure-rate figure below links to its primary source.
There are four ways to build on a language model, and the entire industry is skipping to the fourth.
This is a guide to the other three — what each one actually does, what it costs, how it breaks, and the procedure for deciding which one your problem needs. The short version: each level buys a capability the level below cannot express, and charges you a failure mode the level below does not have. The right architecture is the lowest one that clears your requirement, not the highest one you can build.
TL;DR: LLM, RAG, AI agent, and agentic AI differ by one variable — who decides how many model calls happen. Nobody, your code, the model, then an orchestrator. Each rung adds capability and a new failure mode, and RAG to agent measured 36× the cost. Most systems should stop at a workflow, the rung everyone skips. Build on the right rung →
The Four Rungs at a Glance
The four architectures are usually presented as a taxonomy — four boxes, four definitions. That framing hides the thing that matters. They are a ladder, and what changes as you climb is control.
The One Variable That Separates Them
| Who decides how many model calls happen | Control flow | Where state lives | |
|---|---|---|---|
| LLM | Nobody — exactly one | None | Nowhere |
| RAG | Your code — one, after one retrieval | Fixed, written by you | Nowhere |
| Workflow | Your code — a known number | Fixed, written by you | In your orchestration code |
| AI Agent | The model | Dynamic, chosen at runtime | In the loop's task state |
| Agentic AI | The model(s) and an orchestrator | Dynamic, single or concurrent | In shared task state |
Rungs 1, 2 and 2.5 are you writing the control flow. Rung 3 hands control flow to the model. Rung 4 adds an orchestrator that drives one or more models toward a shared objective over shared state — the orchestrator and the shared state are the additions, not the agent count.
That single handoff — control flow moving from your code into the model — is the most consequential architectural decision in this entire space, and it is the one most often made by accident.
What Each Rung Costs
| Model calls per task | Cost shape | Debuggability | Latency | |
|---|---|---|---|---|
| LLM | 1 | Flat, predictable | Trivial | One inference |
| RAG | 1 + retrieval | Flat + index cost | Easy — inspect the chunks | Retrieval + one inference |
| Workflow | N, known | Predictable, N × flat | Easy — fixed path, log each step | Sum of known steps |
| AI Agent | Unbounded until a cap | Variable, tail-heavy | Hard — replay a trajectory | Unbounded until a cap |
| Agentic AI | Unbounded × agents | Variable × fan-out | Very hard — concurrent trajectories | Slowest path + coordination |
Note the cost shape column. Rungs 1, 2, and most of 2.5 have flat costs: you can put a number on a request before you run it. One workflow pattern is the exception — an evaluator-optimizer loop revises until it passes, so only its cap is known in advance, not its actual count. Rungs 3 and 4 have full distributions, and the tail of that distribution, not the median, is what sets your bill and your p95 latency.
Rung 1: The LLM
An LLM takes a prompt and generates a response from its learned parameters, predicting tokens one at a time. That is the entire mechanism. There is no lookup, no memory, and no verification.
What a Bare LLM Is Genuinely Good At
It is easy to dismiss rung 1 once you know about the others. Do not. A single well-constructed call is the highest-reliability, lowest-latency, cheapest option available, and an enormous share of real work fits inside it:
- Transformation — rewrite this in a different register, convert this format to that one
- Summarization — condense text that is already in the prompt
- Classification and extraction — route this ticket, pull the fields out of this email
- Drafting — produce a first version a human will edit
- Reasoning over provided material — the facts are in the prompt already
The common thread: everything the model needs is already in front of it. No lookup required.
Where a Bare LLM Fails
| Failure | What it looks like | Why it happens |
|---|---|---|
| Hallucination | Confident, fluent, wrong | Generation is prediction, not retrieval |
| Knowledge cutoff | Stale facts stated as current | Nothing after training exists to it |
| No provenance | Cannot cite a source | There is no source — only weights |
| No action | Describes what to do, cannot do it | No tools, no side effects |
The first three are all the same failure wearing different clothes: the model has no way to distinguish what it knows from what it is generating. That is precisely the gap rung 2 exists to close.
When to Stop at Rung 1
Stop here when the task is a transformation of material you already have. If you are tempted to climb because output quality is poor, check the prompt first — a bad rung-1 result is far more often a prompt problem than an architecture problem, and climbing a rung to fix it means you now own two problems.
Rung 2: RAG (Retrieval-Augmented Generation)
In RAG the query goes to a retriever before it reaches the model. The retriever searches an indexed knowledge base, pulls the relevant chunks, and passes them to the LLM alongside the original query. The model generates a grounded response.
Read the last box carefully. Grounded is not the same as correct. Retrieval changes what the model sees; it does not change what the model does with what it sees. This distinction is the single most expensive misunderstanding in production RAG systems, and it deserves its own section.
The RAG Failure Taxonomy
Almost every RAG failure is a retrieval failure, not a generation failure. Teams debug the model for weeks when the problem was three layers earlier.
Six distinct failure points, and only one of them lives in the model.
The Semantic Gap Is Worse Than People Expect
The third check deserves elaboration because it is counter-intuitive. Embedding search assumes a question sits near its answer in vector space. Often it does not.
"What is our refund window?" and "Customers may return items within 30 days of delivery for a full refund" share almost no vocabulary. A pure dense-vector search can miss it entirely, while a keyword search for "refund" finds it instantly.
This is why hybrid retrieval — dense vectors plus lexical search, fused — outperforms either alone on most real corpora. If your RAG system mysteriously misses obvious answers, this is the first thing to test.
More Retrieval Can Make Things Worse
There is a strong instinct to raise top-k when RAG underperforms. Research on long-context behavior has repeatedly found the opposite effect: adding distractor passages degrades accuracy even when the correct passage is still present, and models attend unevenly across a long context. Chroma's context rot research, which tested 18 models across 194,480 calls, also reported a genuinely surprising result — a coherent, well-structured haystack can be harder for a model to search than the same content shuffled.
The practical rule: retrieve precisely, not abundantly. A reranker that returns three excellent chunks beats a retriever that returns twenty adequate ones.
What RAG Is Genuinely Good At
- Question answering over a corpus you own
- Support and documentation lookup, where citations matter
- Policy and compliance questions where the source must be quotable
- Anything where the answer exists in text somewhere and needs finding
When to Stop at Rung 2
Stop here when the job is to answer rather than to act, and when one retrieval round can supply the facts. If answering requires several dependent lookups — where what you search for second depends on what you found first — you have hit the ceiling of plain RAG, and the next section is where you go.

Rung 2.5: The Workflow Everyone Skips
Between "one call with retrieval" and "let the model decide" sits the rung that most production systems should actually occupy, and it usually goes unnamed.
Anthropic draws the line precisely in Building effective agents:
Workflows are systems where LLMs and tools are orchestrated through predefined code paths.
Agents are systems where LLMs dynamically direct their own processes and tool usage.
That is the whole distinction, and it is about who wrote the control flow, not about how sophisticated the system looks. Their guidance is equally direct: find the simplest solution possible, and only increase complexity when it demonstrably improves outcomes.
The Common Workflow Patterns
| Pattern | Use when | Why not an agent |
|---|---|---|
| Prompt chaining | The task decomposes into fixed sequential subtasks | The sequence never varies, so nothing needs deciding |
| Routing | Inputs fall into known categories needing different handling | Classification is a decision; the branches are not |
| Parallelization | Independent subtasks, or several votes on one subtask | Fan-out is structural, not adaptive |
| Evaluator-optimizer | Output improves measurably with critique rounds | The loop is bounded and its shape is known |
| Orchestrator-workers | Subtasks unknown in advance but the pattern is fixed | The closest to an agent, and often still deterministic |
Why the Workflow Rung Matters So Much
A well-built workflow beats a badly-built agent on every axis that matters in production: latency, cost, reliability, testability, and your ability to understand what happened at 2am.
The reason this rung gets skipped is not technical. "We built an agentic system" is a better sentence than "we wrote a routing function." But the routing function ships, runs for a tenth of the cost, and can be unit tested.
The Data Says Production Already Agrees With This
This is not a contrarian opinion. It is what shipped systems actually look like.
An analysis of real production deployments found that 80% (16 of 20) used predefined structured workflows rather than open-ended autonomous planning, prioritizing controllability and human oversight over autonomy (arXiv:2512.04123). That is a survey of case studies rather than a random industry sample, but the direction is unambiguous.
Anthropic's own January 2026 guidance is blunter still:
"Today, multi-agent systems are often applied in situations where a single agent would perform better."
And in the same post: "Teams have invested months building elaborate multi-agent architectures only to discover that improved prompting on a single agent achieved equivalent results."
If you can write the steps down before you run anything, you do not have an agent problem. You have a workflow, and you should build one.
A Measured Case Where Adding a Tier Made Things Worse
A controlled experiment appended naive RAG onto an expert-designed workflow for MATLAB-to-HDL code translation. Success rate dropped from 33.5% to 19.5% at 30B model scale — attributed to context clutter, architectural mismatch in the retrieved examples, and truncation of precise compiler errors (arXiv:2512.14762).
Adding retrieval to a working system cut its success rate by nearly half.
The same paper carries a second finding that complicates every rule in this article, and it is worth stating honestly: the right tier depends on the model. For 8B–30B models, an agentic approach with conditional retrieval beat the fixed workflow by 20+ percentage points. At 235B scale, the agentic advantage shrank and naive RAG became comparable.
So "use the lowest rung that works" is the right default, but which rung works moves as models improve. Re-test your architecture decision when you change models — it is not a permanent answer.
Rung 3: The AI Agent
An agent has a goal and keeps track of the current task state. It plans what to do next, calls a tool, gets a result, observes it, and repeats until the goal is met. The feedback loop is the point: the agent adjusts its actions based on what actually happened.
This loop descends from ReAct (Yao et al., 2022), which interleaved reasoning traces with actions and showed that a model that could both think and act outperformed one that only did either. Every modern agent framework is a descendant of that pattern.
The Agent's Defining Risk: Errors Compound
This is the most important arithmetic in agent engineering, and it is simple enough to do in your head.
If each step succeeds independently with probability p, then a task needing n sequential steps succeeds with probability p^n.
| Per-step reliability | 5 steps | 10 steps | 20 steps | 50 steps |
|---|---|---|---|---|
| 90% | 59% | 35% | 12% | 0.5% |
| 95% | 77% | 60% | 36% | 8% |
| 99% | 95% | 90% | 82% | 61% |
| 99.9% | 99.5% | 99% | 98% | 95% |
Read the 95% row again. A step reliability that would be excellent for a single API call produces a 36% completion rate over twenty steps. This one table explains nearly every disappointing agent pilot: the demo ran three steps, the real task needs thirty.
The Math Is Optimistic, and There Is a Paper Proving It
p^n assumes each step succeeds independently. That assumption is false, and the direction it is false in is the bad one.
The Illusion of Diminishing Returns (Sinha et al., 2025) ran a controlled experiment varying the error rate visible in an agent's own history and found self-conditioning: when a model's context contains its own prior mistakes, its per-step error rate measurably rises. Failure is not memoryless. An agent that has stumbled is more likely to stumble again, because the stumbles are now in its context.
Two consequences worth internalizing:
- Real compounding is worse than
p^npredicts, because p is not constant — it degrades along the trajectory. - Self-conditioning does not go away with model scale alone. The same paper found that without chain-of-thought, even frontier non-reasoning models failed after roughly four sequential steps, while the reasoning variant executed over 100 steps correctly. Reasoning-before-acting is what breaks the spiral, not a bigger model.
That last point is the practical one: if your agent degrades over long runs, adding reasoning budget will do more than upgrading the model.
The engineering responses, in order of effectiveness:
- Use fewer steps. Collapse multi-step tool sequences into single higher-level tools. A tool that does the whole job in one call has one chance to fail, not six.
- Verify after each step. A check that catches an error immediately stops it compounding — and stops it entering the context where it triggers self-conditioning.
- Make recovery cheap. Retrying one failed step is affordable; restarting a thirty-step chain is not.
- Give it room to reason. The 4-steps-vs-100-steps result above is the largest single lever in this list.
- Then improve per-step reliability. It matters, but the exponent punishes you regardless.
The Rest of the Agent Failure Surface
Tool Calls Fail More Than You Think, and It Depends on the Model
The largest measurement available analyzed 78,295 real tool calls and found an aggregate failure rate of 70.8% — but the aggregate hides the real finding, which is how sharply it varies by model (arXiv:2602.04234):
| Model | Tool-call failure rate | Dominant failure type |
|---|---|---|
| Llama-3.2-3B | 81.6% | Malformed, unparseable requests — failing at the interface layer |
| Qwen3-8B | 13.0% | Executed but wrong: errors and empty results — failing at the content layer |
A 6× difference in failure rate, and a qualitative shift in what fails. Weak models cannot form the call; strong models form it correctly and ask the wrong thing. Those need completely different fixes — schema constraints and retries for the first, better tool descriptions and verification for the second.
On the GAIA benchmark, failure decomposition put limited tool capability at 32.7% and planner error at 21.2% as the two largest buckets. A separate analysis of failed GAIA traces attributed 45.0% to tool-usage errors versus 36.7% to wrong final answers despite a correct process.
Read together: your agent's tools are more likely to be the problem than your agent's reasoning.
Silent wrong-completion is the one to design against hardest. Every other failure produces a signal — an error, a timeout, a bill. This one produces a confident report of success. If you take one operational practice from this article, make it: never let the agent be the sole judge of whether it succeeded.
The Agent's State Machine
Note the Verifying state. Many agent implementations go straight from Observing to Done. That missing state is exactly where silent wrong-completion lives.
When to Stop at Rung 3
Stop here when one agent with a good toolset closes the loop on your task. Do not climb to rung 4 to fix an unreliable agent — coordination multiplies unreliability rather than cancelling it. Get one agent completing tasks consistently first. Our field guide on agent evals covers how to know when you are actually there.
Rung 4: Agentic AI
Putting one or more agents to work on a shared objective is what makes a system agentic. It is achieved through planning, tool use, and feedback — with an orchestration layer added to coordinate work across multiple agents and workflows. Agents read and write shared task state and access tools, data, and the environment.
Two things are genuinely new here, and neither is "more agents":
- An orchestrator that decides what work goes to whom and replans when progress stalls.
- Shared task state that several agents read and write, which is what lets them build on each other rather than duplicating work.
A single agent inside an orchestrated system with shared state is agentic. Ten agents with no orchestrator and no shared state are just ten agents.
Multi-Agent Topologies
| Topology | Strength | Weakness | Fits |
|---|---|---|---|
| Supervisor | Clear accountability, easy to reason about | Lead becomes a bottleneck and a single point of failure | Research, delegation, review |
| Pipeline | Deterministic, testable stage by stage | Rigid; a stage failure halts everything | Document processing, ETL-shaped work |
| Blackboard | Agents build on each other's output naturally | Write conflicts and race conditions | Collaborative artifacts, shared plans |
The Coordination Tax
Anthropic, writing about its own multi-agent research system, has been explicit that multi-agent architectures burn dramatically more tokens than single-threaded chat, and that the approach only pays off for tasks valuable enough to justify it. Their framing is worth internalizing: multi-agent systems work best when the task parallelizes genuinely and the value of the output is high enough to absorb the token cost.
Error propagation deserves a specific warning. In a single agent, a bad intermediate result is at least visible in the same trajectory. Across agents, agent A's hallucination arrives at agent B formatted as a clean, authoritative input — and B has no reason to doubt it. Cross-agent outputs should be treated as untrusted input, exactly as you would treat data crossing any other process boundary.
When Rung 4 Is Actually Right
- The work genuinely parallelizes — several independent lines of inquiry that combine at the end
- You need specialists with different tools and different instructions, not one generalist
- There is a real orchestrator and evaluator, not just a group chat
- One agent is already reliable on its portion
- The output is valuable enough to absorb the coordination cost
If you cannot tick all five, the honest answer is a workflow that calls one agent.
The Strongest Case For Climbing
This article argues for restraint, so it owes you the best counter-evidence.
On TravelPlanner, a multi-constraint itinerary benchmark, Planning with Multi-Constraints via Collaborative Language Agents (Zhang et al., Huawei Noah's Ark Lab, COLING 2025) measured a coordinated multi-agent framework at 42.68% success versus a single-agent GPT-4 + ReAct baseline at 2.92% — a more than 14× improvement. Read the condition, though: those are the hint-assisted numbers. Without hints the same table reports 22.40% versus 0.65% — a far larger ratio on a far smaller absolute base. Some tasks genuinely do not yield to one agent, no matter how well prompted.
And Anthropic's 90.2% improvement over single-agent Opus 4 on research tasks is real, measured, and came from exactly the architecture this section warns about.
The honest synthesis: rung 4 is not wrong, it is expensive and frequently misapplied. When the task genuinely parallelizes and the output is valuable, the multiplier pays for itself several times over. The failure is not choosing rung 4 — it is choosing it by default, for a task that never needed it, before rung 3 was working.

Agentic RAG: Where Rungs 2 and 3 Merge
The clean ladder blurs at one point worth naming, because it is where a large share of 2026 production systems actually live.
Agentic RAG puts the model in charge of retrieval rather than treating retrieval as a fixed pre-step.
| Plain RAG | Agentic RAG | |
|---|---|---|
| Retrieval rounds | Exactly one | Decided at runtime |
| Query | Used verbatim | Rewritten and decomposed |
| Sources | One index | Routed across several |
| Bad retrieval | Cannot recover | Notices and retries differently |
| Multi-hop questions | Cannot answer | Can answer |
| Cost and latency | Flat, predictable | Variable |
The capability unlock is real: "which customers on the legacy plan also filed a ticket last quarter" requires two dependent lookups and plain RAG cannot do it. The tradeoff is equally real: your flat-cost component just became a variable-cost component.
The Named Mechanisms
"Agentic RAG" is not one technique. Three distinct mechanisms carry most of the value, each with a primary source:
| Mechanism | What it adds | Source |
|---|---|---|
| Retrieve on demand | The model emits reflection tokens deciding whether to retrieve at all, retrieve again, or answer without retrieval — and critiques its own output segment by segment | Self-RAG (Asai et al., 2023) |
| Corrective retrieval | A lightweight evaluator scores retrieval confidence and triggers one of three actions: keep and refine, discard and fall back to web search, or combine both | CRAG (Yan et al., 2024) |
| Planning and multi-agent retrieval | Separate retriever, critic and generator agents; routing across specialist indexes; multi-hop chains | Agentic RAG survey (Singh et al., 2025) |
Self-RAG's design targets a specific classic-RAG failure directly: indiscriminately retrieving a fixed number of passages whether or not retrieval is needed. If your RAG system retrieves on every query including "hello," that is the failure it fixes.
Treat agentic RAG as rung 3 applied to retrieval, not as an upgrade to rung 2, and budget accordingly.
What It Actually Costs: Real Numbers
Almost everything written about these four tiers describes cost qualitatively — "higher processing load," "more expensive." Here is what has actually been measured, with sources.
RAG vs Agentic Retrieval, Same 100 Queries
The cleanest like-for-like comparison available ran 100 queries through both a RAG pipeline and an MCP-based agentic retrieval system on the same corpus (Infragistics, July 2026):
| Measure | RAG | Agentic retrieval | Delta |
|---|---|---|---|
| Cost per query | $0.0047 | $0.1691 | +3,500% |
| Total latency | 12,715 ms | 31,932 ms | +151% |
| Time to first token | 6,314 ms | 29,372 ms | +365% |
| Answer win rate | 38% | 52% | +14 pts |
| Citations per answer | 2.2 | 4.5 | +2.3 |
The agentic system is better — 52% vs 38% win rate, twice the citations. It also costs 36× more per query and takes nearly 5× longer to produce its first token. That is the tradeoff in one table, and it is the table the rest of this cluster does not publish.
Note the TTFT column especially. A 29-second wait before the first token appears is a different product, not just a slower one.
Token Multipliers, From the People Who Ship It
Anthropic has published figures from its own production systems at two different moments, against two different baselines. They are often merged online. Do not merge them:
| Source | Comparison | Multiplier |
|---|---|---|
| Anthropic, June 2025 | Agent vs chat | ~4× tokens |
| Anthropic, June 2025 | Multi-agent vs chat | ~15× tokens |
| Anthropic, January 2026 | Multi-agent vs single agent | 3–10× tokens |
Two more findings from the same June 2025 writeup are worth more than the multipliers:
- Their multi-agent system outperformed single-agent Claude Opus 4 by 90.2% on an internal research eval. The extra cost bought something real.
- Token usage alone explained 80% of the performance variance on BrowseComp. Which means much of what looks like architectural cleverness is, statistically, just spending more.
And a caveat they state plainly: "upgrading to Claude Sonnet 4 is a larger performance gain than doubling the token budget on Claude Sonnet 3.7." A better model is often a cheaper lever than a bigger architecture.
Where RAG Latency Actually Goes
A published p95 latency budget for a production RAG system targeting a 3-second p95 (technovice.net):
RAG p95 LATENCY BUDGET — target 3,000ms
────────────────────────────────────────────────
query embedding 50ms ▏
vector search + filters 700ms ▏▏▏▏▏▏▏
reranking 250ms ▏▏▏
prefill to first token 900ms ▏▏▏▏▏▏▏▏▏
decode + render 1,000ms ▏▏▏▏▏▏▏▏▏▏
headroom 100ms ▏
────────────────────────────────────────────────
adding RAG roughly DOUBLES time-to-first-token
(495ms → 965ms in the measured baseline) ⚠ vector-index p95 measured at 64× the median
— the tail is the whole problem
That last line is the one to act on. Your median RAG query is fine. Your p95 is where the user leaves.
Two Baselines, Not One Range
The same discipline applies here that applies to the Anthropic table above: these figures are measured against different baselines, and merging them is the most common error in this literature.
Infragistics ran the one genuine agent-vs-RAG comparison available: 36× cost, 2.5× latency, for a 14-point win-rate gain. Separate token-consumption analyses put agent tasks at 5–30× a standard chat exchange — a different baseline, not a RAG query. Nothing in either study establishes what RAG costs relative to chat in the same rig, so the two cannot be folded into a single "agent vs RAG" multiplier.
Budget from the Infragistics number if you are moving from RAG to an agent. Treat the chat-baseline range as directional corroboration, not as a second measurement of the same thing. And note that none of these are median figures you can plan capacity from — they are averages over distributions with long tails.
Why Multi-Agent Systems Fail
When rung 4 breaks, it usually is not the model's fault — and there is now a proper taxonomy saying so.
Berkeley researchers hand-annotated 150 multi-agent failure traces (κ = 0.88 inter-annotator agreement), then scaled the analysis to 1,600+ traces across seven frameworks, producing MAST, a 14-mode taxonomy (Why Do Multi-Agent LLM Systems Fail?):
The paper's central claim is the one that should change how you plan: "improvements in the base model capabilities will be insufficient to address the full taxonomy."
Waiting for a better model will not fix your multi-agent system. Nearly 42% of failures are specification and design problems — things you wrote, or failed to write. Another 37% are agents talking past each other. Only the remaining fraction looks anything like a capability limit.
The Rungs Nest Inside Each Other
One thing the ladder metaphor hides: these are not mutually exclusive. Real systems compose them, and knowing where the nesting stops is its own decision.
An agent whose third tool is a RAG pipeline is completely normal and usually correct. A RAG pipeline is a well-behaved tool: bounded latency, bounded cost, one call, one result.
The stopping rule: nest downward freely — an agent may call a workflow, a workflow may call RAG, RAG calls an LLM. Be extremely reluctant to nest upward or sideways — an agent that calls another agent that calls another agent compounds every failure mode in this article at every level, and the resulting trace is close to un-debuggable.
One layer of agent-calling-agent, with an orchestrator that owns the plan, is the practical ceiling for most teams.
The Decision Procedure
Ask these in order. Stop at the first yes.
As a checklist you can keep next to you:
1. Can a single well-written prompt do it? → LLM. Stop.
↓ no
2. Does it only need facts you own, fetched once? → RAG. Stop.
↓ no
3. Can you write the steps down in advance as code? → WORKFLOW. Stop.
(chaining, routing, parallel, evaluator-optimizer) ← most teams belong here
↓ no — the path genuinely varies per input
4. Does ONE agent with tools close the loop? → AI AGENT. Stop.
↓ no
5. Genuine parallel specialists + shared state, and you
can afford coordination cost AND concurrent debugging? → AGENTIC AI.
The Rule Behind the Procedure
Do not add a rung to fix a bug in the rung below.
An agent will not fix bad retrieval — it will retrieve badly several times and cost more. A second agent will not fix a flaky first agent — it will inherit the flakiness and add coordination on top. Fix the layer that is broken.
What Each Rung Is Best At
Each rung wins a narrow class of job and wastes money on every other one. The cost gap between adjacent rungs is large enough to matter — the one measured agent-vs-RAG comparison in this article puts it at 36× — so matching the rung to the shape of the task is worth more than any prompt optimization you will do afterward. Match on task shape first, team enthusiasm second.
| Rung | Use it when | Do not use it when |
|---|---|---|
| LLM | Transform, summarize, classify, draft, extract from provided text | The answer depends on facts you own or events after the cutoff |
| RAG | Q&A over your corpus, support, docs, policy lookup, citations needed | The task must act, or needs several dependent lookups |
| Workflow | Steps are knowable: route, fetch, transform, validate, emit | The path genuinely varies per input in ways you cannot enumerate |
| AI Agent | Open-ended task, unknown step count, tools available, verifiable outcome | You cannot verify the outcome, or a wrong action has a large blast radius |
| Agentic AI | Genuinely parallel specialist work over a shared artifact, with orchestrator and evaluator | You have not yet made a single agent reliable |
Two Axes Nobody Tabulates: Memory and Governance
Two dimensions change as sharply as cost does, and almost no comparison of these tiers writes them down.
Where State Lives
| Rung | Memory type | Survives the request? | Survives the session? | Who can write it |
|---|---|---|---|---|
| LLM | None | No | No | Nobody |
| RAG | External index, read-only at query time | Index yes, context no | Index yes | Your ingestion pipeline |
| Workflow | Orchestrator variables | Depends on your code | If you persist it | Your code |
| AI Agent | Working memory / task state | Yes, within the loop | Only if persisted | The agent |
| Agentic AI | Shared task state | Yes | Usually yes | Several agents, concurrently |
The last cell is the one that bites. "Several agents, concurrently" is a concurrency problem, and most agent frameworks give you a key-value store with last-write-wins semantics and no conflict detection. If two agents update the same plan field, one of them silently loses. Design for that before you hit it.
Governance and Control Points
Each rung moves the security boundary, and the questions your compliance reviewer asks change with it.
| Rung | Blast radius of a mistake | Control point | Audit question |
|---|---|---|---|
| LLM | A wrong sentence | Prompt + output filter | What did it say? |
| RAG | A wrong sentence with a citation | Index permissions, document ACLs | What did it read, and was the user allowed to read it? |
| Workflow | A wrong action, on a known path | Code review of the path | Which branch ran? |
| AI Agent | A wrong action, on an unknown path | Tool permissions, approval gates, step caps | Which tools were called, with what arguments? |
| Agentic AI | Wrong actions in parallel | Per-agent scoping, cross-agent handoff audit | Which agent did what, and who told it to? |
The rung-2 row is worth pausing on. RAG creates a permissions problem that a plain LLM does not have: if your index contains documents some users cannot see, retrieval will happily surface them. Document-level ACLs must be enforced at retrieval time, not at ingestion time, and this is one of the most common production security gaps in RAG systems.
At rungs 3 and 4 the question shifts from what did it read to what did it do — a materially harder thing to audit, and the reason approval gates on destructive tools are not optional.
A Worked Example: One Support Pipeline, Four Rungs
Abstract ladders are easy to agree with and hard to apply. Here is one concrete system, and where each rung is the right answer.
The system: a customer support pipeline.
| Stage | Rung | Why that rung | Why not higher |
|---|---|---|---|
| Classify the ticket | LLM | One call, text in, label out | An agent to classify is pure waste |
| Answer "what is your refund window" | RAG | The answer is in the docs | No action needed, so no agent |
| Process a refund | Workflow | Validate → check policy → call payments → notify. Known, every time | The steps never vary, so nothing needs deciding |
| "My integration broke after your update" | Agent | Path unknown: read logs, check status, reproduce, correlate | A workflow cannot enumerate the investigation |
| Multi-system outage across billing, auth, and API | Agentic | Genuinely parallel specialist investigation | One agent serializes what should run concurrently |
Most tickets never leave the first two rows. That distribution is the entire argument of this article in one table: the expensive rungs should handle the tail, not the head.
Quality Per Dollar
The metric that makes this concrete is quality per dollar, not quality. Using the measured figures from earlier: if agentic retrieval wins 52% of answers versus RAG's 38%, that is a 1.37× quality gain for a 36× cost. On a high-volume FAQ, that trade is indefensible. On a contract review worth thousands, it is obviously correct.
The same architecture is right and wrong depending on the value of the task. Decide per stage, not per system.
Evaluation Gets Harder at Every Rung
This is the hidden tax, and the strongest practical argument for climbing reluctantly.
| Rung | What you measure | Why it is harder than the rung below |
|---|---|---|
| LLM | Output quality vs a reference | Baseline — one input, one output |
| RAG | Retrieval precision/recall and answer faithfulness | Two failure surfaces; a good answer can come from bad retrieval |
| AI Agent | Task completion, step count, cost per completion, recovery rate | The unit under test is a trajectory; you need replay infrastructure |
| Agentic AI | End-to-end outcome, coordination cost, per-agent attribution | Attribution across concurrent agents is often impossible after the fact |
What to Actually Measure at Rung 2
Ragas (Es et al., EACL 2024) formalized RAG evaluation into three reference-free metrics, and the split is the useful part:
| Metric | Question it answers | How |
|---|---|---|
| Faithfulness | Is the answer grounded in what was retrieved? | Decompose the answer into atomic statements, check each against the context |
| Answer relevance | Does the answer address the question asked? | Score the answer against the original query |
| Context relevance | Was the retrieved context focused, or padded? | Identify which retrieved sentences were actually needed |
The paper's own finding is a warning: context relevance is the hardest of the three to evaluate, partly because the judge model itself struggles to pick the crucial sentences out of a long context.
Sit with that. At rung 2 — the second rung — the evaluator is already hitting the same long-context limitation as the system it is evaluating. Evaluation difficulty is compounding before you have even reached agents.
Why Rung 4 Evaluation Is Qualitatively Different
The MAST work is itself evidence. To get a reliable failure-attribution signal across multi-agent traces, the researchers needed six expert human annotators plus an LLM judge, validated against human agreement at κ = 0.88. Standard "did the task succeed" scoring could not localize which agent, at which turn caused the failure.
That is the real cost of rung 4: you stop scoring a model's output and start scoring a system's process, and the tooling for that barely exists.
⚠️ Before you trust any improvement you measure at rung 3 or 4, establish your run-to-run variance first. In our own measurements, running the same prompt through the same rig twice moved per-shape results by 10.5% to 50.0%, mean 29.6%, while aggregate totals stayed far tighter at 5.2%. Most single-run agent improvements sit inside a band like that. We wrote up the method and three other negative results in A Year of Agent Memory Experiments.
How to Climb Safely
If you have established that you genuinely need the next rung, climb with these in place.
Step 3 is non-negotiable. An agent that grades its own homework will pass.
Climbing Down Is Also an Option
The move nobody writes about: replacing an agent with a workflow once you learn what it actually does. Run an agent in development to discover the real decision paths, observe that 90% of runs take one of three routes, then write those three routes as code and keep the agent only for the long tail. You get the reliability of rung 2.5 for the common case and the flexibility of rung 3 for the rest.
Common Mistakes
Most production failures at these tiers trace to an architecture chosen before the problem was understood, not to model quality. The MAST taxonomy makes the point quantitatively: 41.77% of multi-agent failures are specification and design problems, and another 36.94% are inter-agent misalignment — both decided at architecture time, not at inference time. The eight mistakes below are the recurring shapes.
| Mistake | Why it happens | What to do instead |
|---|---|---|
| Building an agent for a fixed sequence | "Agentic" sounds more advanced | Write the workflow |
| Adding an agent to fix bad RAG | The symptom shows up at generation time | Fix retrieval; run the failure taxonomy |
| Adding agent #2 to fix agent #1 | Coordination feels like redundancy | Make agent #1 reliable first |
| Raising top-k when RAG underperforms | More context feels like more grounding | Add a reranker; retrieve precisely |
| No step cap | It worked in the demo | Cap steps, cost, and wall clock |
| Letting the agent declare success | The loop needs a terminal state | Add an independent verification step |
| Judging a change on one run | The number moved, so it worked | Measure your noise floor first |
| Treating cross-agent output as trusted | It arrives formatted and confident | Treat it as untrusted input |
How This Maps to Taskade
Every rung on this ladder exists as a surface you can build on, which is unusual — most platforms make you pick one rung and commit.
| Rung | Surface | What it looks like |
|---|---|---|
| LLM | Model selection per agent | Pick the model per task, from 15+ frontier models from OpenAI, Anthropic, and open-weight providers |
| RAG | Agent knowledge | Projects, files and links become the indexed corpus an agent is grounded on |
| Workflow | Automations | Triggers, actions, branching — written in advance, runs the same way every time |
| AI Agent | Agents with tools | Goal, tools, the decide/act/observe loop |
| Agentic AI | Multi-agent teams | Several agents over a shared workspace |
Working examples of each rung, built and published by other people, are browsable in the App Kits gallery — useful for seeing which rung a given problem actually landed on before you pick one yourself.
The architecturally interesting part is what the shared task state is. In most orchestration frameworks it is a store only the system can read. In Taskade it is an ordinary project — same views, same editing, same sharing a person uses.
That means the "shared state" box in the rung-4 diagram is something a human can open and correct mid-run. When an agent writes a wrong assumption into the shared plan, you fix the line rather than restarting the run. It also means the record of what the system did is legible afterward, which is what makes rung-4 debugging tractable at all.
To be precise about the limits: this is coordination over shared state with an evaluator, not arbitrary-topology orchestration, and there is no automated self-improvement loop. Those are different claims and we are only making the first one.

Which Framework Belongs at Which Rung
Tool choice follows the rung, not the other way around. Picking an orchestration framework before you know your rung is how teams end up with a multi-agent graph running a task that needed one prompt.
| Rung | What you actually need | Typical tooling |
|---|---|---|
| LLM | A model call | Provider SDK. Nothing else |
| RAG | Index, retriever, reranker | Vector store (Weaviate, Pinecone, Qdrant, pgvector) + a reranker |
| Workflow | Deterministic step execution | Plain code, a job runner, or a no-code automation builder |
| AI Agent | A loop, tool schemas, step caps | Provider tool-calling, agent SDKs, MCP for tool access |
| Agentic AI | Orchestration, shared state, handoffs | LangGraph, AutoGen, CrewAI, agent SDKs with handoff primitives |
Two notes worth having:
- MCP sits across rungs 3 and 4, not above them. It standardizes how an agent reaches tools and data. It is plumbing for the rung you chose, not a rung of its own — though it increasingly appears in these comparisons as if it were.
- A graph framework does not make you agentic. LangGraph models systems as an explicit graph of nodes with shared state — which is an excellent way to build a workflow. Using a graph framework to run a fixed sequence is rung 2.5 with better tooling, and that is a perfectly good place to be.
The Academic Anchor
If you want one peer-reviewed reference for the agent-versus-agentic distinction, it is AI Agents vs. Agentic AI: A Conceptual Taxonomy, Applications and Challenges (Sapkota, Roumeliotis & Karkee, Information Fusion, 2025). It characterizes agents as modular LLM-driven systems for task-specific automation, and agentic AI as a shift marked by "multi-agent collaboration, dynamic task decomposition, persistent memory, and coordinated autonomy" — then names the failure classes each paradigm carries, including coordination failure and emergent behavior.
It is the closest thing this topic has to a canonical citation, and remarkably few of the pages ranking for these terms link to it.
The Short Version
- The four architectures differ by who decides how many model calls happen.
- Each rung adds a capability and a failure mode.
- Errors compound at least as fast as
p^n. A 95%-reliable step is a 36% task at twenty steps — and self-conditioning makes the real curve worse than the formula, not better. - Most RAG failures are retrieval failures. Run the taxonomy before blaming the model.
- The workflow rung is the one everyone skips and where most systems belong.
- Never let an agent be the sole judge of its own success.
- Do not add a rung to fix a bug in the rung below.
- Evaluation difficulty grows faster than capability. Measure your noise floor first.
▲ ■ ● Memory, Intelligence, Execution — pick the rung your problem needs, not the one the industry is selling.
Deeper Reading
Primary sources
- Lewis et al., Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, arXiv:2005.11401, 2020
- Yao et al., ReAct: Synergizing Reasoning and Acting in Language Models, arXiv:2210.03629, 2022
- Shinn et al., Reflexion: Language Agents with Verbal Reinforcement Learning, arXiv:2303.11366, 2023
- Sumers et al., Cognitive Architectures for Language Agents (CoALA), arXiv:2309.02427, 2023
- Anthropic, Building effective agents — the workflows-vs-agents distinction
- Anthropic, Effective context engineering for AI agents
- Chroma, Context Rot — 18 models, 194,480 calls
On this blog
- What Are AI Agents? — the full primer on rung 3
- Agentic Workflows Explained · The 21 Agentic Design Patterns
- Single Agent vs Multi-Agent AI Teams · Best Practices for Multi-Agent AI Teams
- What Is an AI Agent Harness? · What Are AI Agent Evals?
- Context Engineering: The Complete Field Guide · Fine-Tuning vs RAG
- A Year of Agent Memory Experiments · Structure Beats Instruction
- Multi-Agent Systems in Production · AI Agent Reliability · AI Agent Error Recovery
- Vector Databases and Embeddings Explained · How Do LLMs Work?
Concepts
- Large Language Models · Retrieval-Augmented Generation · Agentic RAG
- Agentic AI · Multi-Agent Systems · Agent Orchestration
- Agent Loop · Agent Harness · ReAct Pattern
- Context Window · Context Rot · Vector Database · Embeddings
- Evals · Agent Evaluation · Non-Determinism
Frequently Asked Questions
What is the difference between an LLM, RAG, an AI agent, and agentic AI?
They differ by one variable: who decides how many model calls happen. A plain LLM makes exactly one call and holds no state. RAG adds a retrieval step before that one call, so the answer is grounded in your data, but your code still controls the flow. An AI agent hands control of the flow to the model itself, which loops through decide, act, and observe until a goal is met. Agentic AI adds an orchestration layer so several agents and workflows pursue a shared objective over shared state. Each level adds capability and adds a failure mode the level below does not have.
Do I need an AI agent or is RAG enough?
RAG is enough when your task is to answer a question from facts you own and a single retrieval can supply those facts. You need an agent when the task requires acting rather than answering, or when the number of steps cannot be known in advance because each result determines the next move. A useful test: if you can write the steps down as code before running anything, you do not need an agent, you need a workflow. Most production systems that call themselves agents are workflows, and that is usually the correct design.
What is the difference between an AI agent and agentic AI?
An AI agent is one unit that pursues a goal through a loop of deciding, acting with tools, and observing results. Agentic AI describes a system property rather than a component: one or more agents plus workflows, coordinated by an orchestration layer toward a shared objective, reading and writing shared task state. A single agent can be part of an agentic system. The distinguishing addition is the orchestrator and the shared state, not the number of agents.
Why do AI agents fail more often on longer tasks?
Because errors compound across steps. If each step succeeded independently with probability p, a task needing n sequential steps would succeed at p to the power of n. At 95 percent per-step reliability that is roughly 36 percent at twenty steps and under 8 percent at fifty. Real compounding is worse than that formula, because steps are not independent: research on self-conditioning shows a model's per-step error rate rises once its own prior mistakes are in its context. This is why agent demos look excellent at three steps and collapse at thirty. The fix is not a better prompt, it is fewer steps, verification after each step, or recovery that does not restart the chain.
What are the main failure modes of RAG?
Almost all of them are retrieval failures rather than generation failures, which is why teams often debug the wrong layer. The relevant content was never indexed. It was indexed but chunking split it apart. It was chunked correctly but the question embedding does not sit near the answer embedding. It was retrieved but ranked below the cutoff. It was retrieved and the model ignored it. Or it was retrieved and it was stale. Grounding is an input to generation, not a guarantee of correctness.
What is the difference between a workflow and an agent?
Anthropic draws the line clearly: workflows are systems where LLMs and tools are orchestrated through predefined code paths, while agents are systems where the LLM dynamically directs its own processes and tool usage. A workflow's control flow is written by you before anything runs. An agent's control flow is chosen by the model at runtime. Workflows are more predictable, cheaper, and far easier to debug, so the guidance is to use the simplest approach that works and only reach for an agent when the path genuinely cannot be known in advance.
What is agentic RAG?
Agentic RAG puts the model in charge of retrieval instead of treating retrieval as a fixed step before generation. The agent can rewrite or decompose the query, choose which index to search, judge whether the results are good enough, and retrieve again with a different angle. This makes multi-hop questions answerable that a single retrieval cannot handle. The tradeoff is that retrieval cost and latency stop being flat and become variable, because the number of retrieval rounds is now decided at runtime.
How much more expensive is a multi-agent system than a single LLM call?
Substantially, and the shape of the cost changes as well as its size. A single LLM call and a RAG query both cost a flat, predictable amount per request. An agent loop costs a variable amount bounded only by its step cap, with a long tail that sets your real bill. A multi-agent system multiplies that variable cost by the number of agents plus the tokens spent on coordination. Anthropic has reported that its multi-agent research system uses far more tokens than ordinary chat interactions. Budget for the tail, not the median.
How do you evaluate each of these architectures?
Evaluation gets harder at every level. For a plain LLM you score the output against a reference. For RAG you must score two surfaces separately, retrieval quality and the answer's faithfulness to what was retrieved, because a good answer can come from bad retrieval. For an agent the unit under test is a trajectory rather than an output, so you need replay and you measure task completion, step count, and cost per completion. For an agentic system you add coordination cost and per-agent attribution, which is genuinely hard because a failure may not be traceable to one agent.
When should you not use an AI agent?
Do not use an agent when the steps are knowable in advance, because a workflow will be cheaper, faster, and debuggable. Do not use one when you cannot verify the outcome, because an unverifiable agent will confidently report success it did not achieve. Do not use one when a wrong action has a large blast radius and there is no confirmation step. And do not add a second agent to compensate for a first agent that is unreliable, because coordination multiplies unreliability rather than cancelling it.
Is agentic AI the same as generative AI?
No. Generative AI describes what a model produces, which is new content such as text, code, or images. Agentic AI describes how a system behaves, which is pursuing an objective over time through planning, tool use, and feedback. Nearly all agentic systems are built on generative models, but generating content and pursuing a goal are different properties. A model that writes an excellent summary is generative. A system that decides to look something up, checks the result, and then writes the summary is agentic.
What is the right order to build these systems in?
Build the lowest rung that clears your requirement and only climb when you have evidence the current rung cannot do the job. Start with a single well-written prompt. Add retrieval when the answer depends on facts you own. Add a written workflow when the task needs several steps you can enumerate. Add an agent only when the path genuinely varies per input. Add orchestration only after one agent is reliably completing tasks. Climbing before the rung below is solid means debugging two problems at once.





