Choose the right LLM for a task by trading off quality, cost, latency, and constraints. Use when asked which model to use, whether to upgrade/downgrade a model, how to cut LLM costs without hurting quality, or to justify a model choice. Produces a recommendation with the decision criteria, a per-option comparison, a routing strategy (cheap-by-default, escalate when needed), and how to validate the choice with an eval.
Scanned 9/3/2026
Install to Claude Code
npx -y skills add mohitagw15856/pm-claude-skills --skill model-selection-advisor --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Model Selection Advisor?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/mohitagw15856-model-selection-advisor-c19fce19)More formats (shields.io, HTML) on the badges page.
---
name: model-selection-advisor
description: "Choose the right LLM for a task by trading off quality, cost, latency, and constraints. Use when asked which model to use, whether to upgrade/downgrade a model, how to cut LLM costs without hurting quality, or to justify a model choice. Produces a recommendation with the decision criteria, a per-option comparison, a routing strategy (cheap-by-default, escalate when needed), and how to validate the choice with an eval."
---
# Model Selection Advisor Skill
The right model is rarely "the biggest one" or "the cheapest one" — it's the smallest model that clears the
task's quality bar within its latency and cost budget, with a path to escalate the hard cases. This skill makes
that trade-off explicit and defensible, and ties it to an eval so the choice is measured, not vibes.
## Working from a brief
Given "what model should I use for summarising support tickets?", **deliver a concrete recommendation anyway**
— infer the task's difficulty, volume, and latency sensitivity, label the assumptions, and recommend. Never
hand back "it depends" with no pick; give a default and the condition under which you'd change it.
## Required Inputs
Ask for these only if they aren't already provided (else infer and label):
- **The task** — what the model does, and an example input/output. How hard is it (extraction vs. reasoning vs. open-ended)?
- **Quality bar** — what "good enough" means, and the cost of a wrong answer.
- **Volume & latency** — requests/day and how fast a response must come back (interactive vs. batch).
- **Constraints** — budget, context-length needs, tool use, privacy/region, and whether outputs must be reproducible.
## Output Format
### Model Recommendation: [task]
**1. Decision criteria** — the 3–5 factors that actually decide it here, ranked (e.g. reasoning depth > latency > cost), with why.
**2. Option comparison** — the realistic candidates scored against the criteria. Keep it provider-agnostic in
method; name a default family (e.g. the Claude family — a small/fast tier, a balanced tier, a frontier tier)
and reason by **tier**, not a single hardcoded model, so the advice survives model releases.
| Option (tier) | Quality on this task | Latency | Relative cost | Fit |
|---|---|---|---|---|
| Small/fast | clears bar for easy cases | low | $ | default for the bulk |
| Balanced | clears bar for most cases | med | $$ | when small misses |
| Frontier | clears the hardest cases | higher | $$$ | escalation / eval judge |
**3. Recommendation** — the default model/tier, in one sentence, with the single reason.
**4. Routing strategy** — cheap-by-default with escalation: run the small tier first, detect low-confidence or
hard cases (length, ambiguity, a validator/judge failing), and escalate those to a stronger tier. This usually
beats picking one model for everything on both cost and quality.
**5. Validation** — how to confirm the choice: a small eval set scored per tier (pair with
[`eval-rubric-designer`](../eval-rubric-designer/SKILL.md) and [`ai-eval-plan`](../ai-eval-plan/SKILL.md)),
and a cost/latency estimate at real volume (pair with [`llm-cost-latency-budget`](../llm-cost-latency-budget/SKILL.md)).
## Quality Checks
- [ ] The recommendation names a default model/tier and the condition that would change it
- [ ] Reasoning is by tier (small/balanced/frontier), not a single hardcoded model that dates quickly
- [ ] A routing/escalation strategy is considered, not just a single fixed choice
- [ ] The choice is tied to a measurable quality bar and an eval to verify it
- [ ] Cost and latency are estimated at real volume, not per single call
- [ ] Constraints (context length, privacy/region, reproducibility, tool use) are checked against the pick
## Anti-Patterns
- [ ] Do not default to the biggest model "to be safe" — pay only for the capability the task needs
- [ ] Do not pick on price alone — a cheap model that fails the bar costs more in rework and trust
- [ ] Do not recommend without an eval to confirm the quality bar is actually met
- [ ] Do not hardcode a single model name as the answer — reason by tier and let the eval pick the current best in it
- [ ] Do not ignore the long tail — design for the hard cases via escalation, not by oversizing everything
## Based On
Model-selection practice — quality/cost/latency trade-offs, tiered routing with escalation, and eval-driven validation.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!