Question presented to candidate: "We are adding an LLM feature to our product. There are dozens of models out there, from tiny cheap ones to frontier models. Walk me through how you would decide which model to use, and how you would know you picked right."
What a strong answer should cover:
- Start from the task and its constraints, not from a leaderboard: required quality, latency budget (time to first token and total), cost at the expected volume, context length, and must-have features (tool calling, structured output, vision, data residency)
- Hard constraints filter first (a model without tool calling or over the latency budget is out no matter how smart it is); the remaining candidates are compared on your own eval set, not on public benchmarks
- The rule: pick the cheapest, fastest model that clears the eval bar, with cost worked out per request and per month from real token counts
- Routing and cascades: send easy traffic to a small model and escalate hard or low-confidence cases to a bigger one; know that a cascade only works if the escalation signal is reliable
- Treat the choice as reversible: keep a provider-neutral interface, pin model versions, re-run the evals when a new model ships or an old one is deprecated
Clarifying questions expected:
- What does "good enough" mean here, and do we have labelled examples to measure it?
- What volume and latency do we expect, and is the call user-facing or background?
- Are there data constraints (PII, region, on-prem) that rule out some providers?
Code / implementation expected: Optional โ a small selection harness (eval pass rate, cost per request, constraint filter) or a cost calculation is a strong signal; no model call is needed.