AI Engineer World's Fair 2026
Preferences Over Benchmarks: Model Routing — Archana Kamath & Tyler Gillam, DigitalOcean
Read the talk
Preferences Over Benchmarks: Model Routing
Archana Kamath and Tyler Gillam show how per-request routing can trade a small amount of measured quality for lower cost and latency, while adding failover and an evaluation loop that a single-model setup lacks.
From a talk by Archana Kamath and Tyler Gillam
At a glance
Ideas worth remembering
Choose models per request rather than per application: task, tools, cost, latency, risk, and user preference all affect what “right” means.
Separate task matching from model selection. After identifying the task, apply its eligible model pool, optimization policy, and failover order.
Do not confuse a convincing side-by-side demo with proof. Use representative evaluations to compare quality, tokens, latency, and cost, and preserve uncertainty in LLM-judged scores.
In the demonstrated coding session, routing reduced cost from $0.25 to $0.08 after the initial build and from $0.44 to $0.14 after tests and documentation, with subjectively similar output.
Routing is a foundation layer. Evaluations, caching, and personalization determine whether it improves a real workload over time.
Why one model is the wrong unit of choice
The familiar model-selection habit starts with a leaderboard: find the highest-ranked model and send every request to it. Archana Kamath argues that this optimizes the wrong unit. An application does not have one uniform workload; it receives individual requests with different difficulty, latency requirements, and consequences for failure.
Three pressures break the one-model habit. Cost: paying frontier-model rates for routine work wastes inference budget. Fit: classification, code generation, and security review do not demand the same capabilities. Risk: when one provider or model degrades, a product built around that single dependency has no failover path. Kamath compares the emerging discipline of model orchestration with FinOps because teams must actively govern where inference spending goes rather than treating every token as equivalent.
Her examples establish a rough capability ladder. Classification and labeling may fit a small open model. Code generation and bug fixing may work well on a mid-sized open-weight model. Accuracy-sensitive work such as code review or security analysis may justify a frontier model. Inline code completion adds another constraint: even an accurate answer can be unsuitable if routing and generation are too slow for an interactive editor.
A public benchmark cannot encode the complete decision because the model is only one component of the deployed system. The relevant variables include the request’s task, the system prompt and tools around the model, the acceptable cost, the required latency, and the end user’s preferences. Routing turns those application-level requirements into a per-request model-selection problem.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Turn preferences into routing policy
Tyler Gillam begins with the main objection to automatic routing: a black box can make a poor choice without giving builders a practical way to correct it. DigitalOcean’s proposed answer sends each request through the open-source Plano-based routing architecture. A purpose-built routing model interprets the request against configured tasks, while explicit preferences and rules constrain what it may choose.
Builders can describe tasks in natural language, set priorities such as cost, latency, or quality, name preferred models, and add hard decision-tree rules. Presets provide a starting point, but the important feature is editability: the routing policy can be changed and then tested against the application’s own evaluation set. Gillam describes the operating loop as route, evaluate, adjust, and feed the result back into the policy.
The software-engineering configuration makes the two-stage decision concrete. First, the router matches the request to a task such as bug fixing, code generation, or test writing. Then the task’s policy selects from its eligible model pool. A manual ranking can prefer one model and use another only as failover. A fastest policy can instead choose whichever eligible model has been fastest during roughly the previous 30 minutes.
This separation matters. Intent matching answers, “What kind of work is this?” Selection policy answers, “Given this task and its allowed models, what should we optimize now?” Keeping those decisions distinct lets a team change model availability, priority, or failover behavior without rewriting the calling application’s task logic.
Includes the prompt and surrounding workflow context.
The router first identifies the task, then applies that task’s model pool and selection policy.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
A playground shows behavior; an evaluation tests it
The first side-by-side demonstration sends three related prompts through a fixed premium model and the software-engineering router. “Write a basic Fibonacci function” matches a code-snippets task and goes to a comparatively inexpensive model. “Optimize my function” matches performance optimization and takes a different route. “Write some unit tests” matches test writing and code verification, selecting yet another configured model.
The playground makes the mechanism visible: related turns in one coding conversation need not use the same model. It also displays cost and speed per request. But Gillam calls the output comparison a “vibe check,” which is the right limitation to preserve. A few plausible-looking answers can reveal routing behavior; they cannot establish dependable quality.
The accompanying evaluation compares the router with the fixed premium model over a dataset. The router scores 90% correctness and the single model scores 95%. Gillam characterizes the difference as close to the uncertainty of the LLM-based judge, while the router uses substantially fewer tokens and returns faster. That interpretation should remain conditional: the talk does not provide the dataset size, judge calibration, repeated-run variance, or task-level breakdown needed to establish statistical equivalence.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
The session-level cost gap compounds across agent steps
The larger demonstration moves from isolated prompts to two coding-agent sessions. Both receive the same request: “Build me a spinning wheel app.” The left terminal uses a fixed premium-model configuration; the right sends requests to the software-engineering router. A lower observability panel reports token use, selected models, matched tasks, and accumulating cost as the agents work.
On the routed side, code-generation requests go to the model configured for that task, and the session uses two models over the course of the initial build. On the fixed side, requests largely continue to the premium model, although Gillam notes that the coding tool itself appears to make an occasional different-model choice. That caveat means the comparison is not a perfectly isolated experiment between a literally single-model agent and a router; it is a live comparison between the two demonstrated configurations.
Both builds finish at a similar time, and Gillam judges their visible output as comparable, while explicitly acknowledging the subjectivity of that assessment. After the first feature request, the routed session has spent $0.08 and the other session $0.25—about a threefold difference at that point. This is useful evidence of the session’s observed economics, not proof that every coding workload will preserve the same ratio or quality.
The next prompt asks both agents to write unit tests. The router recognizes test writing and code verification, then uses the model configured for that task. A final prompt asks for README documentation. After those additional steps, the routed session totals $0.14 and the comparison session totals $0.44. The absolute savings are small in one short demo, but agent workflows multiply requests; repeated per-step savings can therefore accumulate across sessions and users.
Most requests retain premium-model cost and latency; demonstrated final session cost: $0.44.
The demonstrated router changes models by task, while the comparison configuration sends most work to one premium model.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Routing is the foundation, not the finish line
Kamath closes with the implementation claims that make routing practical in an application’s request path: a decision in under 200 milliseconds per request, a purpose-built mixture-of-experts routing model, no application-code changes beyond adopting the router configuration, and no additional router charge. The routing components are presented as open source through Plano, allowing teams to inspect or operate the mechanism rather than depending entirely on an opaque proprietary selector.
Routing alone only chooses where work goes. Kamath places three layers above it. Evaluations test whether those choices work for the application. Caching avoids paying repeatedly for an answer that can be reused. Personalization adapts routing toward what works for a particular team. Together they turn static configuration into a proposed improvement loop rather than a one-time model-picking exercise.
The strongest version of the talk’s conclusion is also the most bounded: benchmarks remain useful signals, but they describe only part of a deployed system. A router still needs representative evaluations, well-written task descriptions, sensible model pools, and explicit cost and latency goals. The live demo shows promising savings and comparable-looking output under its conditions; it does not remove the need to measure failures, judge uncertainty, or verify quality on the workload that will actually ship.
That leaves a practical replacement for leaderboard climbing: define what “right” means for each request, route within those constraints, evaluate the results, and revise the policy. There may be no single best model, but there can be a measured selection process that reflects the application’s real preferences.
Describe tasks, cost and latency priorities, model pools, and hard rules.
Routing becomes more useful when observed results change future configuration and behavior.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
Further reading
A first-party technical article expanding on Plano, intent matching, model ranking, selection policies, failover, routing models, and the proxy request path discussed in the presentation.
Related talks
- The State of Model Routing — NVIDIA, Cognition, OpenRouter
Extends the discussion to application quality, inference cost, local hardware, context compaction, KV-cache-aware routing, and collaborative agents.
- 20 days of compute vs 7 hours: rethinking what state-of-the-art means — Bertrand Charpentier, Pruna AI
Develops the same critique of single-metric leaderboards through a Pareto-front view of task quality, latency, cost, and efficiency.
- LLM Evals That Work IRL
Explains how application-specific evaluations and trace inspection can replace subjective output checks when comparing models and routing behavior.
Read the complete timestamped transcript
- 0:01
[music]
- 0:12
>> Hello everyone.
- 0:14
So, preferences over benchmarks.
- 0:17
The talk today is about model routing
- 0:20
and specifically why the way most people
- 0:23
think about picking a model, which
- 0:25
usually is chasing, you know, to the top
- 0:26
of a benchmark, is actually the wrong
- 0:29
instinct.
- 0:32
I'm Archana, VP of engineering for
- 0:34
inference engine and AI infrastructure
- 0:36
at DigitalOcean. And I'll be joined by
- 0:38
Tyler, who built parts of the router and
- 0:41
will actually do a live demo for us
- 0:42
today.
- 0:44
We both work on the managed agent
- 0:45
orchestration and inference engine
- 0:47
products at DigitalOcean.
- 0:52
So, you may know DigitalOcean as
- 0:54
droplets, databases, and app platform.
- 0:57
All of that is true. We are also the AI
- 0:59
native cloud.
- 1:01
This is five integrated layers, starting
- 1:04
from infrastructure all the way up to
- 1:06
the managed agents, with the inference
- 1:08
engine right in the middle.
- 1:10
And that's why we are here talking about
- 1:12
inference router. The routing lives in
- 1:14
the inference engine, and if you want to
- 1:16
know more about our stack and the full
- 1:17
story, please come find us at the booth.
- 1:24
So, everybody is reaching out for the
- 1:25
model routing. And let's look at three
- 1:28
reasons why the three reasons that are
- 1:30
breaking the one model habit for most
- 1:32
users.
- 1:33
The first one I want to talk about is
- 1:35
cost.
- 1:36
Spend is exploding, and even companies
- 1:38
like Walmart, Uber, Microsoft, they're
- 1:41
actively capping usage to control the
- 1:43
inference bills.
- 1:46
Second one is fit.
- 1:48
One model for every task is likely an
- 1:50
overkill.
- 1:51
You're essentially paying frontier rates
- 1:53
for a work that a much smaller model
- 1:55
will be able to handle really well.
- 1:58
And the third one, which for me is the
- 1:59
most important one, is the risk.
- 2:02
The risk associated with one single
- 2:04
model.
- 2:05
Models can go down, and if you bet your
- 2:07
entire product and production on one
- 2:10
model, you have no failover when
- 2:12
something degrades.
- 2:16
And model orchestration is actually the
- 2:18
new FinOps.
- 2:20
As you all know, cloud cost optimization
- 2:23
took us about 15 years for it to
- 2:25
actually become a real good discipline
- 2:27
and for companies to get it right.
- 2:29
This one actually is arriving in months
- 2:31
and not years. And here's the premise
- 2:33
that I think everybody gets wrong about
- 2:35
this.
- 2:37
We all think of like what is the best
- 2:39
model for a job. Here's the thing. There
- 2:42
is no single best model.
- 2:45
The right one depends on the actual
- 2:47
request.
- 2:48
For example, if you're doing
- 2:50
classification and labeling,
- 2:52
a small open model may very well work
- 2:54
really well for you and will give you
- 2:56
really good cost optimizations.
- 2:58
However, if you're running code
- 3:00
completion in line, you will likely need
- 3:03
really fast routing, and that is where a
- 3:05
faster, larger routing model comes into
- 3:08
picture.
- 3:09
Think about code generation and bug
- 3:11
fixing. You're likely good with an mid
- 3:13
open weight model, uh and again, it'll
- 3:16
bring you like really good cost
- 3:17
optimizations over using a frontier for
- 3:19
something that is likely an overkill in
- 3:21
this situation.
- 3:23
But then you're looking at like really
- 3:24
accuracy-critical tasks, like code
- 3:27
review and security, you're likely going
- 3:29
to lean towards a frontier model.
- 3:33
So, essentially, what makes a model
- 3:35
right for a request?
- 3:37
It's a mix that no public leaderboard
- 3:40
can actually encode for you.
- 3:42
Because it's the task itself. What are
- 3:44
you actually trying to achieve? What is
- 3:45
your model trying to achieve?
- 3:47
The system prompts and tools around it,
- 3:49
that is the methodology by which you're
- 3:51
getting something done using a model.
- 3:54
The cost you're willing to spend, this
- 3:55
is a very, very important aspect.
- 3:58
And latency the use case needs, not all
- 4:01
use cases need the same amount of
- 4:03
latency. So, depending on what you're
- 4:04
trying to do, this can vary widely. And
- 4:07
finally, the end user preference. All of
- 4:08
this is driven by what the end user
- 4:10
really wants out of your application.
- 4:13
So, I'm going to welcome Tyler onto
- 4:15
stage so that he can actually show you
- 4:17
the Inference Light Router live in
- 4:19
action and show you how it can really
- 4:21
help with all of these key aspects that
- 4:24
I'm calling out here.
- 4:31
>> Testing. All right. Thank you, Archana.
- 4:35
Okay. So, many builders
- 4:38
have tried auto routing before.
- 4:40
But the problem was that it feels like a
- 4:42
black box.
- 4:44
The router makes a choice, and if that
- 4:45
choice results in poor performance, you
- 4:47
really have no way of improving it.
- 4:49
We built ours differently.
- 4:51
At the architecture level, which is what
- 4:53
you can see on the screen,
- 4:54
a request runs through our open proxy
- 4:56
planner
- 4:57
and our purpose-built routing model,
- 4:59
both open source.
- 5:01
There's no vendor lock-in, which is a
- 5:03
key DigitalOcean value.
- 5:06
You describe what matters for your
- 5:07
workflow,
- 5:09
costs, latency, quality, preferred
- 5:12
models,
- 5:14
or hardware. Then the router uses that
- 5:16
context to pick the right model per
- 5:19
request.
- 5:20
Because the routing model is specialized
- 5:22
for this job, it's super fast, under 200
- 5:24
milliseconds, and it costs customers
- 5:26
nothing extra. In our evaluations, it
- 5:29
actually has beaten frontier models like
- 5:30
the GPT-5 series models at routing tasks
- 5:33
itself with a fraction of the latency.
- 5:37
So, the difference is simple.
- 5:39
This is routing you can customize,
- 5:40
evaluate, and improve without vendor
- 5:43
lock-in.
- 5:48
So, you bring your preferences and we
- 5:50
honor them. You describe a task in
- 5:52
natural language and set what matters,
- 5:54
cost, latency, and task description. You
- 5:57
bring your rules and we execute them
- 5:59
intelligently.
- 6:01
Layer decision tree rules on top, start
- 6:03
from presets, change anything you want
- 6:06
in a single line of code.
- 6:08
And you validate with your own
- 6:09
evaluations, not someone else's
- 6:10
leaderboard. Route, evaluate, adjust,
- 6:15
then feed that back in. That loop is
- 6:17
key.
- 6:19
Okay, we're going to switch gears here.
- 6:21
We're going to do a live demo.
- 6:25
Bear with me here.
- 6:29
All right, I'm going to show you a
- 6:30
couple of things. First, I'll show you
- 6:31
router configuration in the UI, how to
- 6:34
use it, and then how you can use
- 6:35
evaluations to measure and improve your
- 6:38
router's performance.
- 6:39
And then I'll show you a real router
- 6:41
that I created inside a coding agent
- 6:43
workflow.
- 6:45
So I'm here in the cloud console, the
- 6:47
DigitalOcean cloud console. And you can
- 6:49
see my routers. We have several presets.
- 6:51
You can see software engineering in
- 6:52
general writing,
- 6:54
knowledge bases and document
- 6:55
intelligence. In this case, I've
- 6:57
actually created my own. So I I
- 6:59
customized our preset software
- 7:00
engineering. Uh if we click into this,
- 7:03
we can see that I have several several
- 7:05
different tasks here.
- 7:06
I have bug fixing, code generation, test
- 7:09
writing, and a few others.
- 7:11
This also shows that you can specify
- 7:13
more than one model per task
- 7:15
in the bug fixing case and code
- 7:16
generation case.
- 7:18
Um in the code generation, I have GLM
- 7:20
5.2 and GPT 5.2.
- 7:22
And because I really want to always
- 7:24
route to GLM 5.2 unless it's down, I use
- 7:27
this manual ranking option. So it'll
- 7:28
always go to GLM 5.2. If GLM fails,
- 7:31
it'll fail over to GPT 5.2.
- 7:35
In the bug fixing one, you can see a
- 7:36
little bit of a different one. In this
- 7:37
case, I have selection policy fastest.
- 7:40
So out of this model pool, if it matches
- 7:43
to bug fixing, it'll pick whichever
- 7:44
one's been fastest in about the last 30
- 7:46
minutes.
- 7:48
Okay, let's do this in action a little
- 7:49
bit. Here's our playground. We're all
- 7:51
show a couple of examples side by side.
- 7:54
First, I'll start with this is a simple
- 7:56
prompt, write a basic Fibonacci
- 7:57
function.
- 8:01
And as this runs, we can see on the left
- 8:03
we're writing to Opus.
- 8:05
On the right we're using our software
- 8:06
engineering router that I just showed
- 8:07
you.
- 8:08
And you're going to see that it picks
- 8:09
different models on the right. So, in
- 8:11
this case, it matched to the code
- 8:12
snippets task and just used the llama
- 8:15
format router model that I had
- 8:16
configured for that one. And if we
- 8:18
scroll down, I mean this is this is
- 8:19
obvious, right? But this model is
- 8:21
extremely fast and extremely cheap
- 8:23
compared to Opus.
- 8:27
Now, let's say optimize my function.
- 8:30
And we'll see the same thing happen. In
- 8:32
this case, it matched to the code
- 8:33
performance optimization task using
- 8:35
GPT-5.2.
- 8:36
And again, it's obviously significantly
- 8:38
faster. If we scroll down here, we can
- 8:40
also see that it's significantly
- 8:42
cheaper.
- 8:44
We'll do one more, write some unit
- 8:45
tests.
- 8:50
Okay, and in this case it matched to
- 8:52
Claude 5 Summit on the test writing and
- 8:53
code verification.
- 8:56
And again, we're going to see faster and
- 8:57
cheaper.
- 8:58
So, it's a pattern. It matches my, you
- 9:00
know, vibe check, right? It still vibes
- 9:02
though. How you actually prove it is
- 9:04
working it through evaluations.
- 9:07
So, I have an evaluation that I ran
- 9:09
here.
- 9:10
Comparing Opus on the left or actually
- 9:13
on the right hand side to my router on
- 9:15
the left hand side.
- 9:17
You can see that the scores, 90% for my
- 9:19
router, 95% correctness for Opus, are
- 9:22
very, very close. In fact, that's pretty
- 9:24
much within oh, it was a judge uh margin
- 9:27
of error.
- 9:29
But we what's really interesting is if
- 9:30
we scroll down here,
- 9:32
we can see that the router used
- 9:34
significantly less tokens and was
- 9:37
significantly faster than Opus.
- 9:41
Okay, let's jump into a real workflow
- 9:43
here. This is where the inference router
- 9:45
really becomes impactful.
- 9:47
Here I have two terminals running open
- 9:49
code.
- 9:50
On the left, I have a single model
- 9:51
approach using quad Opus. So, I have
- 9:53
Opus set up or open code set up with
- 9:55
Opus.
- 9:56
On the right, I've configured open code
- 9:58
to send requests to our software
- 9:59
engineering router
- 10:00
that I just showed you configure.
- 10:03
Um below, I kind of have this custom
- 10:04
built open code where you'll be able to
- 10:06
see live uh
- 10:08
observability essentially.
- 10:09
So, let's go go ahead and get these
- 10:10
started. It's just a simple
- 10:12
feature request preloaded into here.
- 10:14
Build me a spinning wheel app.
- 10:16
I'll run the same prompt in both.
- 10:18
And as this runs, we can focus on the
- 10:20
bottom panel. So, it'll start to show up
- 10:22
here. Hopefully, you can see that on the
- 10:23
screen.
- 10:24
Uh you'll be able to see token usage in
- 10:25
real time, which models are being
- 10:27
selected,
- 10:28
what task those map to, and the cost
- 10:30
accumulating live.
- 10:32
So, on the right, we can already see
- 10:33
that we're starting to route to Gemini
- 10:35
5.2 because our requests are starting to
- 10:38
match the code generation.
- 10:40
And on the left, of course, we're just
- 10:41
routing to quad Opus. I think open code
- 10:43
sometimes routes to to Haiku by itself.
- 10:45
So, that's what you see there.
- 10:48
And we'll notice the latency, too, how
- 10:49
quickly things start to come back. In
- 10:51
this case, it wants me to
- 10:54
create a temporary directory.
- 10:58
So, the key difference here is that on
- 10:59
the left, we'll see every single request
- 11:01
that I write goes to the same premium
- 11:03
model. Cost and latency are going to
- 11:05
stay high for pretty much every single
- 11:06
task. On the right, the router is
- 11:09
selecting models based on the task.
- 11:13
>> [snorts]
- 11:13
>> So, we're optimizing both cost and
- 11:15
speed.
- 11:16
And we can see that uh our software
- 11:17
engineering router already finished. And
- 11:19
if we look here, it actually matched to
- 11:21
two models throughout. So, let's go
- 11:22
ahead and open this app and see how it
- 11:23
looks.
- 11:25
Okay, this actually looks really solid
- 11:26
to me. And Opus 4.7 finished at a
- 11:29
similar time. Let's take a look at that.
- 11:32
We can compare them. I mean, it's This
- 11:33
is a vibe check, right? But honestly, I
- 11:35
would say the software engineer router
- 11:36
did better cuz this is an interesting
- 11:38
approach that you
- 11:39
I'm not even sure it works too well. So,
- 11:41
in this case,
- 11:42
the router did a little bit better.
- 11:45
So, now that last step is done, you
- 11:46
know, we get similar outputs, but if we
- 11:48
look here,
- 11:50
the software engineer router has only
- 11:52
spent 8 cents on the session,
- 11:54
while Opus directly has spent 25 cents.
- 11:56
So, we have a about a 3x in cost and
- 11:59
very, very similar quality so far.
- 12:03
Let's try another another prompt here.
- 12:05
What What comes next in a software
- 12:06
engineering life cycle? Probably writing
- 12:08
some unit tests, right?
- 12:12
So, we'll write this in both.
- 12:16
Start with this first. On
- 12:17
[clears throat] the right, we have the
- 12:19
router again. And we can see that it got
- 12:21
matched to the test writing and code
- 12:23
verification, which picked the Claude 5
- 12:25
Sonnet
- 12:27
model because that's what I configured
- 12:28
earlier.
- 12:29
And we'll see the same pattern. It's
- 12:30
going to be significantly cheaper
- 12:32
overall across the entire session than
- 12:34
going straight to Opus.
- 12:37
So, we'll let this finish here.
- 12:42
Okay, and that one finished. Let's just
- 12:44
queue up one more. Write some
- 12:46
documentation in a read me.
- 12:54
And then we'll compare
- 12:56
the total session cost.
- 13:03
Okay, and as this runs, we'll wait and
- 13:05
see what it does.
- 13:09
Okay, it created the read me. And well,
- 13:11
if we look here, we can see that the
- 13:13
total session cost
- 13:14
for the router was 14 cents, while the
- 13:17
total session cost for Opus was 44
- 13:19
cents.
- 13:21
So, at this point, we can see the cost
- 13:22
is significantly lower,
- 13:24
latency is optimized per step,
- 13:26
and the quality remains pretty similar
- 13:28
across. So, you can see as you scale
- 13:30
this, the cost
- 13:32
performance really add up.
- 13:35
Okay. Archana, thank you.
- 13:41
>> [applause]
- 13:44
>> Thank you so much, Tyler. And that was
- 13:47
actually a live demo that we ran here.
- 13:49
So, thanks to Tyler for setting it up
- 13:51
and taking us through that.
- 13:53
So,
- 13:54
now that you've seen it work, let's look
- 13:56
at some quick facts.
- 13:58
Routing decision in under 200
- 14:00
milliseconds per request.
- 14:03
It runs on a custom mixture of experts
- 14:05
model purpose-built for routing.
- 14:08
Zero application code changes needed
- 14:10
from you to get it to adopt.
- 14:12
And it's free and included, so you do
- 14:13
not have to roll out your own router.
- 14:16
And we open source the whole routing
- 14:18
model via plain old, so you can actually
- 14:20
check how that looks as well.
- 14:24
The last thing I wanted to talk about
- 14:26
was a bit about
- 14:27
routing is the foundation layer. It's
- 14:29
not really the destination.
- 14:31
And there are three things that we
- 14:32
usually build on top of it.
- 14:34
The first one is evals to prove that the
- 14:37
right model works with your use case and
- 14:39
your test well.
- 14:41
Caching, so that you can stop paying
- 14:43
twice or more for the same answer each
- 14:46
time.
- 14:47
And personalization, so that the router
- 14:49
learns what works for your team over
- 14:52
time.
- 14:53
This is a continuous improvement loop
- 14:55
maturing over time. That means that the
- 14:57
more you route and evaluate, the better
- 15:00
the router does for your workload.
- 15:04
So, to summarize, where does this leave
- 15:06
you?
- 15:07
There is no single best model. There's
- 15:09
only the right model for the request.
- 15:12
And benchmarks will only tell you part
- 15:14
of the story. Your preferences will tell
- 15:16
you the rest.
- 15:17
And we built the router to honor your
- 15:19
preferences and stay open, so that
- 15:21
you're never locked into a single stack.
- 15:24
And that's how teams actually built.
- 15:27
We are DigitalOcean, any i-native cloud.
- 15:30
Come find us at the booth and route your
- 15:32
next workload with us. Thank you so much
- 15:33
for being here.
- 15:36
>> [applause]