Understand the task
Task type, language, context length, and available tools form a request fingerprint. Simple rules are enough to start.
Not every request needs your most expensive model. Route agent tasks to the model most likely to get the job done — within your budget.
A plausible answer is only the beginning.
Think valid tool calls, correct JSON,
and tasks that actually get completed.
Task type, language, context length, and available tools form a request fingerprint. Simple rules are enough to start.
Compare each model’s historical success with its cost and latency. Your priorities determine how those trade-offs are weighted.
A validator checks the response. If it fails, a fallback provides another chance — and evidence for the next routing decision.
Explore how changing your priority
changes the model. Every choice explained.
“Find the customer’s order
and update the delivery address.”
Interactive demo · illustrative data.
Not benchmark results or current model pricing.
Balanced: a higher success rate than Qwen at a lower cost than Claude for this type of task.
GET /v1/routing/explainA familiar API with a routing layer underneath. Choose automatic selection or set a specific priority for each request.
fabryka/autofabryka/cheapfabryka/qualityfabryka/fastProposed Smart Router API. These model aliases and the Responses example describe the MVP design. For the current API, see the documentation.
import os
from openai import OpenAI
client = OpenAI(
base_url=os.environ["FABRYKA_BASE_URL"],
api_key=os.environ["FABRYKA_API_KEY"]
)
response = client.responses.create(
model="fabryka/auto",
input="Find the customer’s order…"
)Compare models on the same tasks. Set your quality threshold.
Then route traffic based on the evidence.