Resources/Chatbots, language, and model quality/Few-Shot Prompting vs. Fine-Tuning vs. Training: Which Fix Do You Need?

Few-Shot Prompting vs. Fine-Tuning vs. Training: Which Fix Do You Need?

Technical teams often jump to fine-tuning too early. A small set of excellent examples can fix tone, format, tool use, and edge-case handling without changing model weights.

Mohamed Amine Saada, Forteuno Web

Published

Three example cards feed signals through a transparent glass instrument that produces one clear speech bubble

When an AI system gives weak results, technical people often reach for fine-tuning. I understand why. It sounds like the serious solution. But many failures come from missing examples, vague instructions, bad tool definitions, or a test set that does not represent real users. Fine-tuning cannot rescue a team that has not defined what good looks like.

01

Start with few-shot prompting

Few-shot prompting places a small number of worked examples inside the model context at runtime. It is useful for response style, output format, intent classification, tool selection, dialect, terminology, and recurring edge cases. You can change the examples immediately, route different examples by context, and test the effect without creating a new model.

01Use static examples when the task is narrow and the context is small.
02Use retrieval or dynamic context injection when different intents need different examples.
03Include the input, expected output, decision criteria, relevant terms, tool call, and fallback behavior.
04Keep an evaluation set separate from the examples so you do not test on the same cases you taught.
Start with the lightest intervention that passes a representative evaluation.
Start with the lightest intervention that passes a representative evaluation.

Fine-tuning and few-shot prompting solve different problems, not the same problem at different intensities. Fine-tuning mostly changes form: consistent style, tone, and output shape across a large volume of calls. Few-shot prompting mostly changes behavior in the moment: tool selection, reasoning through a specific edge case, and getting the answer right on a class of input the base model handles poorly. If a model keeps calling the wrong tool or its reasoning breaks on a known edge case, more style consistency from fine-tuning will not fix that. More relevant examples usually will.

02

Use fine-tuning for repeated behavior at scale

Fine-tuning updates a model using a curated dataset. It becomes attractive when the behavior is stable, you have enough high quality examples, runtime prompts are too large, or the base model repeatedly misses a pattern even with clear context. It can improve consistency and reduce prompt length. It also creates a dataset, training, validation, versioning, and monitoring responsibility.

OpenAI supports supervised, preference, and reinforcement fine-tuning methods on selected models. That does not mean every available method belongs in your project. Start with a measurable failure and choose the method that targets it.

03

Model training is a different category

Training or continued pretraining changes model weights using much larger datasets and far more compute. It may make sense for a model provider, a research program, strict deployment constraints, or a domain with enough proprietary data to justify the investment. It is rarely the first answer for a customer support chatbot that needs better tone, terminology, or tool use.

MethodBest first useMain burden
Few-shot promptingFast behavior correction and context-specific examplesContext size and example selection
Fine-tuningStable repeated behavior with a strong datasetTraining data, validation, versions, monitoring
Training or continued pretrainingDeep model capability or domain adaptationData, compute, research, infrastructure
04

My decision order

I fix the prompt, tool contracts, examples, and routing first. Then I run the same benchmark against the candidate setup. If the system still fails in a stable and repeatable way, fine-tuning becomes a real option. This order is less exciting than announcing a custom model, but it is faster to debug and gives you evidence for the next step. I never start with fine-tuning, even when a client asks for a custom model on day one.

A document-processing project made the same discipline concrete outside language work. A translation agency needed to quote jobs by counting words in whatever a customer uploaded: scanned pages, embedded images, tables, several languages and dialects sometimes inside one file. My first attempt tried to solve the whole problem with OCR before producing a single reliable count, every document type and every edge case in one pass. It never worked well, and the cost of running a strong enough model against every document type got expensive fast. The fix was not a better OCR model. It was accepting a pipeline that automated the roughly 20% of cases that covered 80% of real documents well, and routed everything else to a short human review step instead of forcing full automation from the start. That 20% keeps expanding as more edge cases get handled, but trying to hit 100% automated on day one is what kept it broken.

See the dialect support case that led me to this decision order.

Darija chatbot examples

Benchmark the candidate model instead of assuming newer means better.

Model benchmarking

Continue exploring

Get started

Want help deciding what to automate first?

Discuss your process