Use retrieval-augmented generation (RAG) when an AI system needs current, private or citable company facts. Consider fine-tuning when the model already has the necessary evidence but repeatedly fails a stable behaviour such as classification, tone, format or instruction following.
The decision turns on what must change. Retrieval changes the evidence available for each request. Fine-tuning changes model behaviour across requests. Company policies, prices, customer records and operating decisions belong in a controlled retrieval layer because they change and need provenance. A narrow, repeated task can justify training once representative examples and evaluations show that prompting alone has reached its limit.
RAG and fine-tuning alter different parts of the system
RAG searches an external data source at query time, places relevant passages into the model context and generates an answer from that evidence. OpenAI’s Retrieval API documentation describes semantic search over vector stores, including source files, relevance scores, attribute filters and ranking controls. Microsoft Foundry gives the same practical boundary: use RAG for private or frequently changing data, with citations back to source content.
Fine-tuning updates a model’s parameters using curated examples. OpenAI’s model optimisation guide positions supervised fine-tuning around tasks such as classification, nuanced translation, exact output formats and instruction-following failures. Training can make a repeated behaviour more consistent, but the resulting answer cannot point cleanly to the training example that caused it.
That distinction creates a useful architecture rule:
- Facts live outside the model. Store current policies, product details, account state, decisions and approved claims in systems that can be updated, permissioned and cited.
- Behaviour belongs in prompts, tools and evaluations first. Define the required action, schema and acceptance test before paying to train.
- Training earns a place through measured residual failure. Fine-tune only when a stable task still misses its threshold after the model receives sound instructions and the right evidence.
Choose RAG when the answer must track company truth
A sales assistant may need today’s approved pricing, the customer’s current plan and a product claim cleared last week. Those facts can change independently. Encoding them into model weights creates a stale snapshot and makes removal or correction harder to verify.
Retrieval keeps the source record outside the model. A revised policy can become available after indexing; a revoked document can be removed from the eligible corpus; metadata can restrict results by team, region, confidentiality or effective date. OpenAI supports attribute filters and hybrid ranking, while Microsoft recommends document-level access control at retrieval time and warns teams to treat retrieved content as untrusted input.
RAG is the stronger default when any of these conditions apply:
- Information changes on an operating cadence. Prices, roadmaps, customer status and procedures move faster than a training cycle.
- The user needs to inspect the evidence. Citations allow an operator to open the source before making a consequential decision.
- Access depends on identity or context. Retrieval can filter eligible material for the current user and workflow.
- Corrections need a visible path. Updating an authoritative record gives the team a defined route to improve future answers.
- The corpus is broad but labelled examples are scarce. Existing documents can support retrieval before the company has assembled a clean training set.
Retrieval carries its own operating cost. Documents need ownership, chunking, metadata, indexing and freshness rules. Search quality needs evaluation. Microsoft notes that weak preparation or indexing can return incomplete passages, while extra retrieval, embeddings and tokens add latency and spend. RAG gives the model access to evidence; it does not turn poor source material into reliable company truth.
Choose fine-tuning for a stable behaviour with enough examples
Fine-tuning becomes relevant when the evidence is already correct and available, yet the model fails the same bounded task across representative cases.
Consider a system that receives an approved support case and its authorised policy passages. The remaining job may be to classify the case into a fixed taxonomy, follow a specialised response structure or produce an exact machine-readable schema. If a prompted baseline keeps breaking the same requirement, curated input-output examples can target that behaviour.
The commercial case strengthens when four conditions hold:
- the task definition and output contract are stable;
- the company has enough representative, high-quality examples;
- an evaluation set can measure the behaviour separately from factual accuracy;
- improved consistency or use of a smaller model pays back training, validation and version-management cost.
Training data becomes a product dependency. Examples need provenance, labels, coverage and version control. Policy errors or historical workarounds can be learned at scale when the dataset treats them as desirable output. Every model update also creates a release decision: rerun the evaluation set, inspect regressions and preserve a rollback path.
Provider capability belongs in the decision as well. Fine-tuning availability, eligible base models and deprecation timelines change. OpenAI’s current optimisation documentation says its fine-tuning platform is winding down for new users, which makes platform fit and model lifecycle a live constraint rather than a permanent architectural assumption.
Use this decision matrix before funding either route
| Requirement | RAG | Fine-tuning | Combined approach |
|---|---|---|---|
| Current private facts | Primary mechanism | Poor fit for freshness | Retrieval supplies facts |
| Source citations | Directly supported by retrieved passages | Weak provenance to individual examples | Cite retrieved evidence |
| User-level permissions | Filter at retrieval time | Hard to enforce inside weights | Keep access control in retrieval |
| Stable classification or format | Prompt first; retrieval may supply rules | Strong candidate after baseline failure | Retrieve rules, train repeated behaviour |
| Rapid correction or deletion | Update or remove the source | Requires dataset and model-version work | Correct retrieval immediately; retrain on schedule |
| Sparse labelled examples | Can start from existing documents | Weak starting position | Build evaluation data from live use |
| Query latency | Adds search and context overhead | Can reduce per-request steps | Optimise only after measuring the full path |
| Auditability | Source, score and retrieved text can be logged | Requires dataset and model lineage | Preserve both evidence and model version |
The table prevents a common budgeting error: buying training to solve a knowledge-management problem. A model cannot compensate for contradictory policies, missing ownership or documents that remain current only in someone’s head. Training amplifies the examples supplied to it; it cannot establish which company source has authority.
Combine them only when two measured problems exist
A combined system can use retrieval for current facts and a fine-tuned model for stable behaviour. Databricks’ enterprise comparison describes this split as model adaptation for behaviour and retrieval for live knowledge.
That architecture adds another pipeline, model version and failure boundary. It earns the complexity when evaluation identifies both constraints independently.
Take a product-and-GTM planning workflow. Retrieval can assemble the latest roadmap evidence, campaign results, customer signals and approved commercial claims. The model then produces a recurring planning artefact. If reviewers receive the right evidence but repeatedly repair prioritisation labels or output structure, a training experiment has a precise target. If the evidence is missing or stale, fine-tuning would leave the root failure untouched.
Keep separate measures for:
- retrieval quality: whether the eligible sources and passages appeared;
- grounded answer quality: whether claims follow the supplied evidence;
- behavioural compliance: whether the output follows the required rubric and schema;
- accepted outcome: whether the workflow owner can use the artefact;
- full cost: indexing, inference, review, rework, training and maintenance.
This decomposition shows which layer deserves investment. It also protects the team from celebrating a better benchmark while operators still reconstruct the answer by hand.
Test prompt caching before using token cost to justify training
A repeated company brief can carry the same instructions and reference material through many requests. Before funding fine-tuning to reduce that input bill, measure a prompted baseline with eligible prompt caching. Otherwise, the business case compares training against a more expensive baseline than the application requires.
OpenAI’s prompt caching documentation explains how matching prompt prefixes can reuse earlier computation. The model still generates a new response. Caching does not search for newly approved documents or establish whether a user is entitled to read them; those remain application and retrieval responsibilities.
A retrieval-based application can also use prompt caching. The retrieval step selects evidence for each request, while caching avoids repeating eligible input processing. Neither changes learned behaviour in the way fine-tuning does. Compare combinations against the actual failure and cost, rather than treating all three as competing ways to store company knowledge.
Compare a normal working day with an empty cache
Use the same representative requests and acceptance rubric for the baseline and proposed alternative. Keep a record of the exact model and prompt version, then distinguish first requests from subsequent requests that reuse eligible context. Cache thresholds, matching boundaries and retention vary by model and configuration; check the selected provider’s current rules before estimating savings.
For a recurring account brief, place stable instructions before request-specific account evidence where the API’s structure allows it. Preserve the authorised source-selection step on every request. Reordering context for cache reuse must not replace today’s customer status with yesterday’s cheaper prompt.
Record cached input tokens alongside total input, output usage and end-to-end latency. Apply the selected model’s cache-write and cache-read pricing instead of assuming that every cached token receives the same discount. Include retrieval and reviewer corrections in the cost comparison.
An empty-cache run reveals the uncached path; a sequence with representative intervals shows the reuse the workload actually achieves. Neither a single warm request nor an advertised maximum discount establishes the monthly saving.
The AI agent ROI guide explains why the denominator should be accepted outcomes. A lower token bill has limited value if reviewers spend longer repairing stale account facts. OpenAI also states that cached input tokens still count towards tokens-per-minute limits, so lower input cost must not be treated as extra rate-limit capacity.
Change one fact after the cache is warm
Update a source fact in the test environment, allow the documented retrieval refresh to complete, and repeat the question. Check that the answer uses the revised evidence. Next, remove the test user’s access and confirm that the application no longer supplies the restricted material. These are application acceptance tests, not guarantees supplied by a cache hit.
If cached prompting meets the quality target at an acceptable operating cost, training must beat that measured baseline. Where the model still breaks a stable classification rule despite correct evidence, the fine-tuning experiment retains a clear purpose. The funding decision then rests on the remaining behavioural failure rather than avoidable repeated-input spend.
Run a four-stage test before training
1. Define the accepted output
Choose one bounded workflow and name the evidence system, output contract, reviewer and consequence. A useful target is “produce a cited account brief accepted by the sales lead”, rather than “improve company knowledge”. The AI agent pilot success criteria guide provides a broader scorecard for acceptance, safety, adoption and economics.
2. Label failures by layer
Build representative test cases, including source conflicts and access boundaries. For each failed answer, label the cause: absent source, poor retrieval, unsupported synthesis, instruction failure, format error or reviewer disagreement. A single quality score hides the mechanism that needs repair.
3. Establish the cheapest credible baseline
Test a capable base model with explicit instructions, the right tools and controlled retrieval. Tune source preparation, filters and ranking where retrieval fails. Improve the prompt and output validation where behaviour fails. This baseline sets the economic hurdle for training.
4. Fine-tune the residual behaviour
Train against curated examples only after the residual failure is stable and valuable enough to fix. Compare the tuned model with the baseline on held-out cases. Track accepted output, critical errors, latency and full cost per accepted outcome. Keep current company facts in retrieval throughout the experiment.
The same discipline applies when choosing between AI agents and deterministic workflow automation: place complexity at the specific decision where it produces a measurable gain.
The operating layer matters more than the acronym
A production company-knowledge system needs more than a vector index or trained checkpoint. It needs source ownership, permission enforcement, truth status, conflict handling, review, audit and a route for accepted corrections to persist.
Model Operator is implementing and validating that governed company operating layer around permission-aware evidence, accepted company truth and recurring specialist workflows. For an AI-active team deciding whether its constraint sits in retrieval, behaviour or the workflow around both, start a build conversation or email alexander@modeloperator.io.