"Should we use RAG or fine-tune?" is still one of the first questions founders ask us when adding AI to their product. In 2026 there's a third option on the table: just put everything in a huge context window.
All three are useful. They solve different problems.
The short answer
| Need | Best fit |
|---|---|
| Answer questions from your docs, tickets or records | RAG |
| Reason over one large document or codebase at a time | Long context |
| Consistent format, tone or classification at scale | Fine-tuning |
| Make a small, cheap model match a big one on a narrow task | Fine-tuning (distillation) |
| Data changes daily, or differs per tenant | RAG |
Most production systems combine them: retrieve the right material, place it in a reasonably long context, and optionally use a fine-tuned small model for the narrow steps.
Retrieval-augmented generation (RAG)
RAG retrieves relevant chunks from your data and gives them to the model with the question.
Strengths
- Fresh data with no retraining
- Permission filtering: only retrieve what this user may see, which is essential for multi-tenant SaaS
- Citations that users can check
What goes wrong
- Bad chunking: tables split in half, or headings lost
- Embedding-only search misses exact terms such as SKUs, error codes and names. Use hybrid search (keyword plus vector) with reranking
- No evals, so nobody notices that retrieval quality has dropped
Long context
Modern models accept hundreds of thousands to millions of tokens.
Strengths
- Simple: no index to build
- Great for "analyse this contract" or "review this repository" tasks
Limits
- Cost and latency scale with every token, on every request. Prompt caching helps, but only for repeated prefixes
- Accuracy can degrade for facts buried in the middle of very long inputs
- No natural permission boundary. You must choose what goes in, which is retrieval again
Fine-tuning
Fine-tuning adjusts model weights on your examples.
Strengths
- Reliable output format and style
- Lower cost and latency by moving a task from a large model to a small one
- Strong on narrow classification and extraction
Limits
- Poor at storing facts that change
- Needs good training data (hundreds to thousands of examples) and a repeatable pipeline
- Every base-model upgrade means re-evaluating, and often retraining
A decision framework
- Start with prompting plus retrieval. It's the fastest to ship and the easiest to debug
- Add long context when tasks genuinely need whole documents, and cache the stable parts of the prompt
- Fine-tune only when evals show a consistent gap in format or behaviour, or when cost at volume justifies a smaller model
Evals: the part everyone skips
Without evals you're guessing. Build a test set of 50–200 real questions with expected answers and sources, then measure:
Retrieval
- Recall@k: is the right source in the top k results?
- Precision: how much irrelevant context is included?
Generation
- Faithfulness: is every claim supported by the retrieved sources?
- Answer relevance: does it actually answer the question?
- Refusal quality: does it say "I don't know" when the answer isn't there?
Frameworks such as Ragas help, but a spreadsheet and LLM-as-judge with human spot-checks is a fine start. Run the suite on every change of model, prompt, chunking or index.
Cost control
Retrieval keeps prompts small, which is usually the biggest cost lever. Combine it with model routing and caching from our LLM cost optimisation guide.
Bottom line
RAG for knowledge, long context for big single inputs, fine-tuning for behaviour. Pick by the problem, and let evals, not opinions, decide when to move up a level.
Our AI integration team builds RAG pipelines with hybrid search, permissions and eval suites, often as part of a wider agent architecture. Talk to us.
Frequently asked questions
Is RAG still needed with long-context models?
Usually yes. Long context is great for a single large document, but retrieval is cheaper, faster, easier to keep fresh and easier to permission-filter when you have thousands of documents or many tenants.
When should we fine-tune a model?
Fine-tune for consistent format, tone or a narrow classification or extraction task at high volume, or to make a small model behave like a large one. Don't fine-tune to teach facts that change; use retrieval for that.
How do we evaluate a RAG system?
Measure retrieval and generation separately. Retrieval: did the right chunks come back (recall@k)? Generation: is the answer faithful to the sources and does it actually answer the question? Use a fixed set of real questions with expected answers.