Fine-tuning or RAG? The question is framed wrong

One teaches form, the other supplies facts. Almost no project has to choose; plenty need to understand the difference.
The question framing is wrong because it assumes you have to choose. You don't. The better question is: what is the problem you're actually solving? That determines the tool.
If the problem is that the model doesn't know your data, adjusting weights is the expensive, brittle tool. Fine-tuning costs money in compute and data annotation. It requires thousands of examples. Every time the underlying model updates, you need to retune. For facts and knowledge, retrieval is simpler.
Retrieval brings fresh data on every call. It scales to new documents without retraining. It's cheaper and more maintainable for knowledge problems.
If the problem is that it answers in the wrong tone or a format your system rejects, retrieving documents won't fix it. Fine-tuning can adjust style, format and reasoning. The model learns from examples how to behave. Retrieval doesn't teach it anything.
We shipped five systems this year: four with retrieval, one with light fine-tuning, two with both. The mixed approach made sense when we needed both custom knowledge and custom behavior. It also cost more to build and maintain.
Start with retrieval. Only fine-tune if retrieval alone leaves you short. The burden of proof sits with the expensive option.