← all posts
// models · gpt-5

GPT-5.6: Finding the production fit

So no, the interesting part of the GPT-5.6 announcement isn't which of Sol, Terra, or Luna tops some leaderboard. It's the same argument I have every time a new family ships: capability and fit are different questions, and most teams answer the first and skip the second. OpenAI ships this round as a genuine three-tier lineup, gpt-5.6-sol / terra / luna, each carrying a 1.05M context window and its own price-performance slot instead of one capability cliff. One tier for hard reasoning, one for daily production, one for cheap volume. Check the current docs before you build on this; aliases and prices on a page like that move faster than blog posts get updated.

Earn the lane before you route to it

A tier name is not a routing decision. The real question is which requests should reach this model at all, and that means defining what winning looks like per job first. For extraction, winning is a schema-valid record whose fields trace back to source text. For coding, it's a patch that passes tests and survives review. For research, it's a claim set where every claim has a citation you can follow. None of those definitions mention how confident the output sounds. Good. Fluency fools people into skipping the check that matters.

What the comparison actually has to hold constant

Label real requests by difficulty, latency target, context size, and how bad a wrong answer would be, then compare accepted task completions across tiers, not your gut reaction to a handful of transcripts. Keep the whole request when you test: system instructions, tool schemas, attached files, sampling or reasoning settings, output limits, all of it. Strip any of that out and you're comparing how much homework you did for each model, not the models. A harness that hands one model native tools and force-feeds another pasted terminal output will make the second look worse than it is. Hold the workflow fixed and let each provider's documented format do its own thing; slower to build than skimming a chart, but the only comparison worth trusting.

Plausible is not the same as correct

The expensive mistake is making the newest tier the default for everything and paying its latency and price on routine transformations that never needed it. Frontier output is dangerous precisely because it reads fine almost every time you glance at it. Measure what code can check. Ask reviewers to name a concrete defect instead of rating a vibe. Keep the wrong outputs on file, too. A page of failures teaches you more about where to route traffic than another page of successes ever will, because failures are what your guardrails get built from.

The context window is not a free pass

A million tokens of headroom doesn't remove prefill time, doesn't filter retrieval noise, and doesn't tell the model which parts of that window are instructions and which are just documents someone pasted in. Put stable prefixes first if the API caches them, keep anything volatile away from the cache boundary, and send a structured checkpoint instead of the full conversation history when you can get away with it. The same caution applies to tool calls. Better function selection from the provider does not relieve your application of validating arguments, authorizing the caller, capping side effects, or logging what happened. A web page, an email, a tool result: none of that becomes an instruction just because a smarter model read it that way once.

The default lane and the exit ramp

Give the model a narrow default lane and a clear escalation path, written into configuration, not left to whichever engineer likes the new tier this month. Keep a cheap, fast lane for routine work and send the strongest tier only what benefits from its reach; a cheap model that triggers constant retries and manual repair was never cheap. Pin dated versions where stability matters, watch for deprecation notices, canary an alias before it takes all your traffic, and keep a known-good fallback ready, the same hygiene model migration reality covers in more depth than I will here. Re-run your evaluation set every time the model, the prompt, or the tool contract changes underneath you, because none of them ask permission first.

One rule survives all of this: a model earns its traffic by what it gets right on your evidence, not by which tier OpenAI decided to put it in.

#gpt-5#openai#api#evaluation