PMaker home
Training happens once; inference happens on every call — the boundaries of cost and capability sit on either side of this lineTrainingFeed massive text and guess the next token trillions of times: months, tens of thousands of GPUsCapability, language, and style are locked in here — you cannot touch itInferenceFeed input through the weights to compute an answer: seconds, fractions of a cent, every callPrompt, context, temperature, tools all yours — 90% of the work lives hereFine-tuningOne small extra training round on existing weights: style, format, domain framingSits between the two — do not reach for it first"Train our own model" usually means wanting the inference-side things

Training is a one-time huge investment that has nothing to do with you; inference is a per-call marginal cost that is entirely yours.

Training vs. Inference

One feeds the model, the other uses it. The boundaries of cost and capability sit on either side of this line.

Training compresses a corpus into a set of weights; it happens once, and it is over. Inference runs those weights to compute an answer, and it happens every time you hit enter.

Symptoms you'll recognize:

  • You correct a mistake; it acknowledges it, then repeats the same error in a fresh session.
  • No cost pain in the demo, cost spiral after launch.
  • Your boss asks "can we train our own model?" and you are not sure how to answer.

Two different things

Training: feed massive text, make the model guess the next token, adjust the weights when it is wrong, repeat trillions of times. Months, tens of thousands of GPUs, an astronomical electricity bill. What comes out is a weights file, and the file is then inert. The "bigger models and more data make better capability" curve, which the scaling-laws paper characterized, lives entirely on this side. scaling-laws

Inference: feed your input through those weights to produce output. Usually seconds, a fraction of one GPU's capacity, pennies. But it happens fresh on every call.

The most misunderstood point: nothing you say changes the weights. When you correct it in chat and it listens this round, that is because your correction entered this call's input sequence and the next token could reference it. Close the session and that input is gone; the weights are still the same file.

You can only touch one side

Draw this line and many arguments end.

On the training side, your only move is selection. Knowledge cutoff, language strength, code ability, native temperament — all fixed at training. Not satisfied? Switch models. There is no second path; no prompt will make a model that is weak in Chinese good at Chinese.

On the inference side, you can change a lot: how the prompt is written, how much context, what temperature, whether to attach retrieval, whether to give tools, which model tier, whether caching is on. Day-to-day AI product work is 90% here.

In between sits fine-tuning: a small extra training round on existing weights that changes style, format, and domain framing, not knowledge. It costs orders of magnitude less than training but far more than prompting, and it hardens once done — less flexible than a prompt. openai-finetune Exhaust prompting and retrieval before considering it.

Where the cost comes from

Inference bills per token, input and output priced separately, output usually several times more. The bill is simply: call count times input length times input price, plus output. Of the three multipliers, the one you lose control of is the middle.

The classic spiral: the prompt starts at 200 characters and works well. System rules grow it to 800. Then history, retrieved documents, and tool results join, and one request is now 20,000 tokens. Every click costs you 20,000 tokens, and every turn resends all that came before.

What you can squeeze: cache the unchanged prefix, summarize long documents before they enter context, route simple tasks to a cheaper tier, compress multi-turn conversations periodically. All on the inference side, all yours to do.

One thing people forget: latency is an inference-side cost too. The longer the output, the longer the wait, because tokens stream one at a time. For a snappy product, the most effective lever is usually making the model say less, not upgrading to a stronger model.

References

  1. Scaling Laws for Neural Language Models — arXiv
  2. Model optimization (fine-tuning) — OpenAI