How to Choose the Right Model for Each Agent in a Multi-Agent System

Multi-agent systems should allocate models per agent rather than sharing one globally, balancing cost and quality.
The article notes that most multi-agent teams run all agents on the same model, resulting in either high frontier-model costs for simple tasks or weaker answers on tasks requiring judgment. Per-agent model allocation solves both ends: small models for high-frequency queries, frontier models for tone-sensitive content, local models for compliant data. At the implementation level, the Team structure has the leader dispatch each agent without an extra router; fallback_models supports cross-provider degradation but requires tool and capability alignment; switching models only changes the model string without touching instructions, tools, or memory. The article stresses running evals before switching and using end-to-end cost per task rather than token price as the decision basis. The core judgment: most agents don't need the strongest model, the ones that do are usually easy to identify, and model selection should shift from a global configuration to a per-agent decision.
Why Most Teams Get Model Strategy Wrong
In a multi-agent system, one common but easily overlooked decision is: which model should each agent use? According to a technical discussion in the Reddit community, most teams run all agents on the same model—meaning they either pay the high cost of a frontier model for simple queries, or they get weaker answers on tasks that require judgment.
The approach of allocating models per agent solves both problems at once. The original article uses an invoice management product as an example: customer balance inquiries run hundreds of times per hour, so a small model is sufficient to control costs; collection emails need the right tone, so they're written by a frontier model; contract analysis involves data that cannot leave the customer's cloud environment, so it runs on a local model via Ollama or vLLM. Three agents, three models, all within the same system.

Key Practices for Implementation
No Additional Router Needed
The original article emphasizes that under the Team structure, each agent comes with its own model configuration, and the leader decides which agent handles which request. This eliminates the complexity of building a separate routing layer—model selection is embedded in the agent definition rather than tacked on as a scheduling component.
In a Multi-Agent architecture, the Leader pattern refers to a hierarchical collaboration structure: a master agent receives user requests, dispatches them to sub-agents with different specialties based on task content, and aggregates the results to return. Unlike a "router" component, the Leader is itself an agent with its own model configuration and instructions; its scheduling decisions are made through model reasoning rather than predefined rules or classifiers. The advantage of this design is that scheduling logic is naturally aligned with business semantics, and adding or adjusting sub-agents requires no changes to a centralized routing table; the cost is that the Leader itself consumes tokens, and its judgment quality directly affects the accuracy of task dispatch. Therefore, the Leader should typically use a model with strong reasoning capabilities, while sub-agents can flexibly downgrade based on task complexity.
Design for Failover in Advance
When the primary model fails, fallback_models can transfer the call to another provider—provided the backup model supports the same tools and capabilities. This is easily overlooked in engineering: degradation isn't just about swapping a model name; you also need to ensure alignment of capabilities like tool calling and structured output, otherwise the switch will simply fail.
fallback_models refers to the list of backup models that the system automatically switches to when the primary model call fails—due to timeout, rate limiting, service unavailability, or abnormal return format. In multi-agent systems, the difficulty of failover isn't initiating a retry, but capability alignment: the tool definitions the agent relies on (function calling schema), structured output formats (such as JSON mode), context window size, etc., must all be equally available on the backup model, otherwise the call will fail due to incompatibility after switching. In engineering practice, you typically need to maintain a set of "capability tags" to verify whether the backup model meets the minimum capability set required by the current agent when configuring fallback, and log switch events into observability logs to distinguish between "graceful degradation" and "silent errors."
Switching Models Doesn't Change Agent Logic
Changing models only requires changing the model string; instructions, tools, and memory remain unchanged. This decoupling means teams can first validate workflows with strong models, then gradually swap the appropriate agents to cheaper models without rewriting the agents themselves.
Run Evals First, Then Switch
The original article's advice is clear: run your evals first, then change models. Judging by intuition that "a small model should be sufficient for this task" is high-risk; evaluation data is the basis for switching.
Evals in the context of LLM applications refers to automated test sets built for specific tasks: composed of input samples with reference answers or scoring criteria, used to quantify model performance in real business scenarios. Unlike general benchmarks, evals in agent scenarios typically need to assess end-to-end behavior, including whether tool calls are correct, whether multi-turn conversations maintain state, whether output formats meet downstream parsing requirements, etc. In practice, a combination of "LLM-as-judge" (using a strong model to score weak model outputs) and manual spot-checking is commonly used. Evaluation sets should establish a baseline before model switching, perform regression comparisons after switching, and continuously expand as the business changes—otherwise the evaluations themselves will quickly become obsolete.
Decide by Task Cost, Not Token Price
This is a counterintuitive but important point: a model with double the token price that completes a task in one call often has a lower total cost than a cheaper model that requires three calls. Looking only at price per token misleads model selection; you should look at the end-to-end cost per task.
Token price is the price at which a model API charges per input/output token, but it's only part of the cost. The true cost of a task should also account for: number of calls (multi-step reasoning amplifies consumption), cost of failure retries, input inflation from context length, and the time invested in manually reviewing weak model outputs. This is exactly the value of the "cost per task" perspective—it restores model selection to an end-to-end business calculation. For example, a model with a low unit price but requiring three rounds of tool calls to complete a task may have higher total token consumption and latency than a model with a high unit price that hits the mark in one shot; and when outputs require human fallback, the hidden labor cost often far exceeds the API price difference.
Implications for Agent Architecture Design
The core judgment of the original article is: most agents in a system don't need the strongest model, and the agents that truly need strong models are usually easy to identify—such as those requiring specific tone, judgment, or complex reasoning. This observation turns model selection from a "global configuration" into a "per-agent decision," and allows cost and quality to be managed in tiers within the same system.
For teams building multi-agent systems, this means that from the early stages of architecture, "model" should be treated as a configurable property of an agent rather than a system-level unified premise. Combined with an evaluation system and fallback design, model switching can become a routine operational action rather than a disruptive refactor.
The original article also mentions that its knowledge base covers seven questions to consider when choosing models, starting point recommendations for different tasks, and code examples for each pattern, which can serve as references for further practice.
One-line Summary
Multi-agent systems should allocate models per agent rather than sharing a single model globally, to balance cost and quality.
Paragraph Summary
The article points out that most multi-agent teams run all agents on the same model, resulting in either paying high frontier-model costs for simple tasks or getting weaker answers on tasks requiring judgment. Allocating models per agent solves both ends simultaneously: small models for high-frequency queries, frontier models for tone-sensitive content, and local models for compliant data. At the implementation level, under the Team structure the leader dispatches each agent, eliminating the need for an additional router; fallback_models supports cross-provider degradation but requires alignment of tools and capabilities on the backup model; switching models only changes the model string without touching instructions, tools, or memory. The article emphasizes that evals must be run before switching, and decisions should be based on end-to-end cost per task rather than token price. The core judgment is: most agents don't need the strongest model, the ones that truly do are usually easy to identify, and model selection should shift from a global configuration to a per-agent decision.
Related articles

Salesforce Acquires Rune for $375M: AI Logistics Tech Bolsters Defense Business
Salesforce reportedly acquires defense tech startup Rune for $375M. Rune's AI logistics tech will strengthen Salesforce's Missionforce defense platform, continuing its M&A spree.

Why Fair Use Benefits Everyone in the AI Era
Starting from a Hacker News discussion, this article analyzes the legal logic and controversies of the fair use principle in AI training and content creation, and its dual impact on creators and the tech ecosystem.

Mistral Large 4 Open-Sources a Trillion Parameters, Microsoft Offers Voluntary Severance to 60,000 Employees
Mistral Large 4 open-sources a trillion-parameter multimodal model with a coding agent score of 48; SanDisk earnings show AI inference reshaping NAND demand; Google Gemini adds in-app file editing, OpenAI raises Codex quotas, and Microsoft offers voluntary severance to 60,000 employees.