Match Model to Stage

Different stages of a workflow warrant different model capability levels — route expensive models to complex reasoning stages and cheap models to mechanical stages, not the other way around.

What it is

Every multi-stage AI pipeline contains a mix of task types: some stages require deep reasoning, nuanced judgment, or creative synthesis; others are mechanical — parsing, classification, formatting, extraction, routing decisions. Treating all stages as equivalent and running them through the most capable (and expensive) model is not a conservative choice — it is a wasteful one that often produces no better outcomes for the mechanical stages while inflating costs linearly with task count. The pattern is to map each stage's cognitive demand to the appropriate model tier. High-stakes reasoning stages — evaluating ambiguous requirements, synthesizing conflicting evidence, making architectural decisions — warrant the most capable model. Mechanical stages — extracting structured fields from well-formed input, reformatting output, classifying a request into a known taxonomy — can be delegated to a fast, cheap model without quality loss. The calibration question for each stage is not "which model do we have?" but "what is the minimum capability level that produces acceptable output here?" Running the minimum sufficient model at each stage is not a compromise; it is the correct engineering decision.

Routing models by stage is often framed as a way to save money, and it does — but the deeper reason to do it is that the model assigned to a role shapes how that role behaves, which makes routing a design decision about the workflow itself. The roles in a typical graph each call for a different kind of model:

| Role | Model choice pattern | |---|---| | Planner | A stronger, more expensive model when global coherence across the whole task matters. | | Executor | A cheaper or faster model for well-scoped implementation where the structure is already decided. | | Reviewer | A *different* model family from the implementer, to reduce shared blind spots. | | Critic | Adversarial framing, fresh context, or several models — independence is the point. | | Summarizer | A cheaper model when the output is bounded and the result is validated downstream. | | Researcher | Models or tools with retrieval, browsing, or large context windows. |

The Reviewer and Critic rows are the ones most often gotten wrong: routing them to the *same* model that did the work saves nothing meaningful and quietly destroys the independence that makes review worth running. Choosing a different family there is a workflow decision wearing a cost-routing disguise.

When to reach for it

When NOT to

Exemplars

Related