Teams waste quarters on the wrong question: “should we do RAG or fine-tuning?” It’s the wrong question because the three big techniques (four, counting live agentic search) solve different problems, and asking which one “wins” is like asking whether a hammer beats a screwdriver. Production systems in 2026 almost always use two or three of them together, deliberately assigned to the layer each is structurally best at. Here’s the map, and the reasoning behind it, so you can defend the design when a stakeholder asks “why don’t we just fine-tune it.”
What each tool actually does
Retrieval (RAG) gives the model access to knowledge it was never trained on, filtered per user, current as of the last sync, with citations back to source. Its unit of work is the chunk. It answers: which few thousand tokens, out of billions, should the model see for this specific question? Its refresh cadence is as fast as your ingestion pipeline, typically seconds to minutes for a well-built incremental sync (Module 2).
Long context lets the model read a lot at once: whole contracts, full codebases, a day of logs, an entire meeting transcript. Its unit of work is the document set, not the chunk. It answers: given these specific documents, what does a complete reading reveal? Critically, it does not answer “which documents?” on its own, and (from Lesson 1) it degrades and gets expensive when abused as a general-purpose knowledge base rather than used for documents you’ve already narrowed down.
Fine-tuning changes the model’s weights to make behavior automatic: tone, output format, domain vocabulary, tool-calling discipline, refusal style, the shape of a JSON schema it should never deviate from. Its refresh cadence is measured in the time it takes to curate a training set, run the job, evaluate it, and redeploy: days to weeks in a mature pipeline, longer in most real organizations. That cadence is fine for behavior, which rarely needs to change weekly. It is a bad fit for facts, which often do.
Live agentic search skips the index entirely and queries source systems directly at question time, through APIs or MCP tools (Module 6 covers this in depth). It trades ranking quality and latency for perfect freshness and zero sync infrastructure. Its unit of work is a live API call. It answers: what does the source system say right now?
The decision, as a flowchart
flowchart TD
START["What are you trying to change?"] --> B{"The model's knowledge\nor its behavior?"}
B -- "Behavior: tone,\nformat, style" --> FT["Fine-tune, or engineer\nthe system prompt"]
B -- "Knowledge" --> C{"Are the relevant documents\nalready identified?"}
C -- "Yes, and they fit\nthe window" --> LC["Long context:\nread them whole"]
C -- "No, must find them\nin a large corpus" --> D{"Does the corpus change\nfaster than you can sync?"}
D -- "Yes (live tickets,\ntoday's Slack)" --> AS["Live agentic search\nvia APIs / MCP"]
D -- "No" --> RAG["Indexed retrieval:\nhybrid search + rerank"]
style START fill:#EEF0F7,stroke:#6366F1,color:#0F172A
style B fill:#fff7ed,stroke:#f59e0b,color:#0F172A
style C fill:#fff7ed,stroke:#f59e0b,color:#0F172A
style D fill:#fff7ed,stroke:#f59e0b,color:#0F172A
style FT fill:#EEF0F7,stroke:#6366F1,color:#0F172A
style LC fill:#EEF0F7,stroke:#6366F1,color:#0F172A
style AS fill:#f0fdf9,stroke:#0D9488,color:#0F172A
style RAG fill:#f0fdf9,stroke:#0D9488,color:#0F172A
Why fine-tuning keeps failing as a knowledge store
This mistake is expensive enough to deserve its own section, because it recurs every year with a new team that hasn’t yet learned it the hard way. Every year, some team fine-tunes a model on their documentation and expects it to answer questions from it accurately and durably. The results disappoint in four predictable, well-documented ways:
- Staleness. The docs change next Tuesday. The weights don’t, and won’t, until someone notices the drift, curates a new training set, and pays for another training run.
- No provenance. The model states things confidently with no way to cite where they came from, because the fact is now diffused across millions of weight parameters rather than sitting in an identifiable document. Wrong answers become indistinguishable from right ones, which is far worse than an obviously broken system.
- No permissions. Weights are shared by all users of that model deployment. If the training set included the M&A folder or the salary review documents, every single user of the fine-tuned model has effectively memorized access to it, and there is no way to selectively forget for one user while remembering for another.
- Blending. Gradient descent generalizes, which is usually its strength and here becomes its liability. Two similar policies from different regions or different points in time merge into one plausible-sounding hybrid that exists nowhere in any real document, and the model states it with exactly the same confidence as a fact it got right.
Fine-tuning shines when the target is behavior you’d otherwise re-explain in every single prompt: strict JSON schemas the downstream system depends on, a consistent house style across thousands of generated documents, domain-specific tool-use discipline (always check inventory before confirming a shipping date), or a particular register of formality. Modern practice, correctly, keeps fine-tuning in that lane and leaves the volatile facts to retrieval.
The cost and cadence comparison
Putting real numbers next to the four techniques makes the tradeoff concrete, and this table is worth having ready the next time someone proposes fine-tuning as a shortcut around building retrieval:
| Technique | Refresh cadence | Cost to update | Per-query cost |
|---|---|---|---|
| RAG (retrieval) | Seconds to minutes | One document re-embed, cents | Low: a few thousand tokens |
| Long context | Instant (no update needed, reads current documents) | None | High: scales with document size |
| Fine-tuning | Days to weeks | A full training run, real GPU spend | Low: no extra tokens at inference |
| Live agentic search | Instant (queries the source directly) | None | Medium: API latency, weaker ranking |
Reading this table the way a platform team should: retrieval is the only technique that is both cheap to update and cheap per query, which is exactly why it earns the default position at the front of the pipeline. The other three are specialists, brought in for the specific job they’re each good at.
How real systems combine them
The pattern you’ll see in the rest of this course, and in most serious 2026 deployments, layers all four:
- Retrieval is the front door. Every knowledge question hits the hybrid index first, with permission filters applied before anything else happens.
- Long context is the reading room. When a question needs depth (compare, summarize, audit a specific set of documents), the system retrieves documents rather than chunks and feeds full text to a long-context model. Bigger windows made retrieval better, not obsolete: top-k candidate pools went from a stingy 5 chunks in 2023 to a generous 40 in 2026, plus a whole-document mode when a question genuinely needs it.
- Fine-tuning is the uniform. A small tuned model, or a well-crafted system prompt on a frontier model, enforces tone, output format, and citation discipline consistently across every answer, regardless of what evidence retrieval happened to find.
- Agentic search is the periscope. For “what’s the status of ticket 4812 right now?”, an agent calls the live API instead of hoping the index synced recently, because for that specific question, an index can never be fresher than the moment it was last written.
One sentence to remember the split, worth writing on a whiteboard the next time this debate comes up in a design review: retrieval finds, long context reads, fine-tuning behaves, agents check live. With the map in place, the next module starts building the first plane in that pipeline: getting enterprise documents parsed, cleanly and at scale, which turns out to be where most retrieval quality is won or lost before a single embedding is ever computed.