Glossary
Model selection is choosing which AI model should handle a given request. Automatic model selection makes that choice per request from the request's own signals and the candidates' measured quality, cost and latency, instead of once in configuration.
Every call to a language model selects a model. Manual selection fixes the choice in configuration or code and is right for the requests the developer had in mind when they made it. Automatic selection defers the choice to request time, when the request can be read: a one-line rewrite and a forty-page analysis arrive at the same endpoint and leave for different models.
The selection needs two inputs. From the request: task type, complexity, domain, language, presence of personal data or code, expected output length - extracted in microseconds as hashed features. For each candidate: a quality estimate for this kind of task, built from published benchmarks, declared capabilities, a small routing model trained on outcomes and the caller's own feedback; the price at this length; the measured latency. An objective - balanced, cheapest, best, fastest or custom weights - turns those into one score.
Two safeguards keep automatic selection honest. A quality floor removes candidates whose estimate for this task is below what the caller accepts, so cost never wins on its own. A confidence floor with a fallback target handles the decision itself: when the router is not sure, the request goes to the model the caller named rather than to the router's best guess. Both are visible in the trace, and both are the reason a selected answer can be trusted more than a guessed one.
Questions people ask
OpenSmartRoute is open source and the free plan keeps the full trace of every decision. Type a request in the playground and read the ranked candidates.
Free plan, no card. Fifteen thousand decisions a month with the full trace.