Sending each request to a model chosen by the difficulty of the task, rather than using one model for everything.
Most work in an agent pipeline is mechanical — classifying, extracting, formatting, summarizing — and a small fast model does it indistinguishably at a fraction of the cost and latency. Routing reserves the expensive model for the judgment calls that actually need it.
The hard part is the router itself: deciding difficulty before you have the answer. Simple heuristics on task type and input length outperform clever schemes surprisingly often, and a cheap model that escalates when unsure is a reasonable default.