AI Engineer Europe 2026
What Lies Beneath the API — Benjamin Cowen, Modal
Read the talk
What Lies Beneath the API
Fine-tuning becomes worth considering when a product needs its own economics, performance targets, and business logic—and when its data and evaluations can support the move.
From a talk by Benjamin Cowen
Before you start: Familiarity with model APIs, basic Python, and evaluating AI application outputs will help you follow the training and serving examples.
When does your application become a custom domain?
When does an application become specialized enough that fine-tuning is worth the effort? A general-purpose model can get a product started quickly, but a maturing product may need better performance on a narrower task or a different cost structure. That is the decision Benjamin Cowen opens with: when to move from consuming a model to shaping one around the service you provide.
Cowen approaches this question through his work at Modal, a general-purpose serverless compute platform providing functions and hardened sandboxes for code execution. The workloads span physics simulations, quantum chemistry, voice processing, LLMs, and agents. Growing demand for large-scale reinforcement learning adds another reason to think about where an application sits on the spectrum between a managed model API and a fully custom stack.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
From caveman mode to infrastructure ownership
Frontier APIs make it possible to build useful applications exceptionally quickly, without first operating model infrastructure. In the API-only setup Cowen describes, prompting is the main customization surface; the contrast is with controlling training and serving yourself, rather than a claim that every hosted model service lacks fine-tuning.
Consider his caveman-mode example: ask the model to speak tersely, and shorter answers consume fewer tokens. That can reduce spending, but it does not establish that the economics will survive a startup growing a hundredfold or a thousandfold. An enterprise contract can also introduce specific latency and throughput requirements—or a quality metric that encodes the customer's business logic. Those requirements reach beyond the wording of a prompt.
Traditionally, gaining that control meant jumping to the other end of the spectrum. Training has different compute and scaling characteristics from production inference. Running both on a large cluster requires isolating training resources from serving resources, then assigning infrastructure work to infrastructure engineers—or to AI engineers and scientists who would otherwise work on the model.
| Approach | What it makes easy | What you take on |
|---|---|---|
| Frontier API | Fast application development | Provider constraints on customization and capacity |
| Self-managed cluster | Deep model and runtime control | Resource isolation and stack operations |
| Serverless custom workloads | Custom compute without managing a cluster | Training and serving decisions |
The emerging middle ground is a cloud platform that makes custom workloads easier to operate. Its purpose is to reduce the infrastructure responsibility attached to model differentiation.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Optimize for the service you actually provide
Cowen reports that Intercom's fine-tuned model beat its frontier API baseline at one-fifth the cost. He does not specify the evaluation, workload, or cost-accounting conditions, so this is an attributed customer example rather than a general performance guarantee. His Pinterest example likewise invokes orders-of-magnitude savings without an exact multiplier; that comparison concerns cost, not an orders-of-magnitude improvement in model quality.
The rationale he attributes to Decagon is more broadly useful than either number: frontier labs pursue models that perform well across many tasks, while a business needs its model to excel at its own service. The objective is business-specific performance, which may involve a particular workflow, response behavior, or operational constraint.
Open-source training libraries make the algorithm accessible without requiring the same team to manage a cluster. Combined with managed compute, they offer a way to reach toward custom training while retaining the fast iteration that made APIs attractive in the first place. Algorithm control and iteration speed are the two properties Cowen wants to preserve together.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Separate the reason to train from readiness to train
Cowen's expectation is that a differentiated product will eventually develop domain-specific requirements. That is a judgment about product development, not a universal deadline. The useful question is which observable signals would justify customization for your application.
- Unit economics: API spending exceeds what customers pay, even after reducing unnecessary output. A customized inference endpoint becomes worth investigating.
- Latency and throughput: The service needs performance characteristics that the current endpoint cannot deliver.
- Evaluation progress: Results have plateaued, suggesting that further prompting may not produce the improvement the product needs.
These signals identify a problem worth solving; they do not by themselves establish that fine-tuning is the solution.
Data and mature evaluations are prerequisites. If you have not been collecting useful data and cannot reliably evaluate the result, Cowen advises against training yet. Poor inputs remain poor inputs after a training run.
Existing product work can supply much of what is missing. An agent harness provides an environment in which a model can practice delivering the service through reinforcement learning. Evaluations and records of what worked or failed provide potential training data. The harness supplies interactions; the evaluation process supplies evidence about their outcomes.
Modern libraries also remove much of the need to calculate gradients or implement linear algebra by hand. Managed infrastructure reduces another part of the burden. The opportunity is to build on the product's existing harness, data, and evaluations rather than treating training as an entirely separate engineering discipline.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Start small, then fan out training experiments
The training example begins with code slides after the embedded video fails to play. Cowen describes a supervised fine-tuning setup in roughly 300 lines of Python. That is the size of the example, not an estimate of all the work required to curate data, evaluate a model, and operate it. With curated data and an account on Modal or another serverless platform, the setup becomes a practical starting point; he points to the Modal examples repository.
Serverless scaling is useful for more than inference. In hyperparameter search, different configurations can run in separate containers requested on demand. Instead of treating every minute on a fixed cluster as scarce, the team can launch parallel trials and stop the ones that cease to look promising.
A small Python example makes the pruning decision concrete. Suppose three running trials report the same evaluation metric at a comparable checkpoint, where higher is better:
python
from dataclasses import dataclass, replace
@dataclass(frozen=True)
class Trial:
name: str
learning_rate: float
eval_score: float
status: str = "running"
def propose_pruning(trials: list[Trial], minimum_score: float) -> list[Trial]:
return [
replace(trial, status="stop_requested")
if trial.status == "running" and trial.eval_score < minimum_score
else trial
for trial in trials
]
trials = [
Trial("a", 1e-5, 0.72),
Trial("b", 3e-5, 0.41),
Trial("c", 1e-4, 0.68),
]
for trial in propose_pruning(trials, minimum_score=0.60):
print(trial.name, trial.status)
Trial b becomes stop_requested; a and c remain running. This records a proposed action. The orchestration layer must actually terminate the selected container to stop its compute consumption. The search-and-prune loop is what Cowen likens to a meta evolutionary algorithm: explore alternatives, discard weak candidates, and keep resources on promising ones.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Reinforcement learning creates a parallel execution workload
Reinforcement learning is longstanding, but its current tooling makes it accessible to engineers who did not previously specialize in it. Cowen describes an RL example in roughly 300 lines of code. As with the supervised example, the claim concerns a compact setup built on libraries, not the total effort of developing a reliable training system.
The execution pattern explains why serverless infrastructure is useful here. A model needs repeated opportunities to practice. These interactions and evaluations form rollouts, many of which can run independently. Modal exposes unified APIs for sandboxes and GPU containers or clusters, bringing the environments used for practice and the compute used for model work into the same programming surface. The slide presents this as a GRPO reinforcement-learning example.
Cowen reports customers scaling to 50,000–100,000 sandboxes for reinforcement learning during the preceding quarter. He does not specify whether those counts were concurrent, how long they ran, or a measured throughput result. The architectural point is the large parallel demand created by rollouts, with open-source example code available to illustrate the setup.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Serve the model—and prepare before you need to train
Training leaves one essential job unfinished: serving the model. The inference slide presents a vLLM example in 200 lines of code. Cowen also names SGLang, Triton Inference Server, and custom Python inference workflows as options. These perform the serving role hidden behind a frontier API; he explicitly does not claim to know whether frontier providers use vLLM.
On Modal or another suitable serverless platform, the serving workload can autoscale with incoming traffic. This completes the lifecycle: train the model, put it behind an inference service, and scale that service to demand. It also returns to the original decision. Having an accessible path through the stack is not a reason to train immediately.
The practical horizon may be six months or a year rather than a distant future project. Those are planning examples, not deadlines. Decide how you will recognize the moment when customization is justified, then collect the data and develop the evaluations that will let you act on that decision. Preparation makes training an available option before cost, latency, or product quality turns it into an urgent one.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
Official Python examples for running applications on Modal, with installation and execution instructions.
Further reading
Examples covering fine-tuning, reinforcement learning, parallel evaluations, hyperparameter searches, and model serving.
Intercom's account of deploying a specialized answering model for Fin's customer-service conversations.
Page 9 discusses early cost comparisons between fine-tuned open-source models and proprietary models for Pinterest's visual-AI workloads.
A case study combining specialized model training, speculative decoding, and serving-engine optimization for voice agents.
Updates since the talk
A July 2026 engineering account of rebuilding sandbox scheduling and demonstrating one million concurrent sandboxes.
Read the complete timestamped transcript
- 0:00
[upbeat music] Yeah.
- 0:15
So good afternoon, and thanks for coming to this session. I know there's a lot to choose from. Uh, my name is Ben Cowen. I'm a Forward Deployed Machine Learning Engineer in Modal.
- 0:25
And, uh, I wanna talk about an interesting pattern that we've been seeing, uh, in AI application development. I'll give you the punchline now. Um, it's about, uh, as companies mature and their products mature and specialize, we're seeing more and more turn to fine-tuning to get impr- increased performance, better cost, and so forth.
- 0:47
So this brings up an interesting question of when does your application step over the line into a custom domain? When is fine-tuning worth it?
- 1:00
Um, so if you're not familiar with Modal, uh, we're a general purpose serverless compute platform. Uh, we provide sort of basic building blocks, like serverless functions and, uh, like hardened sandboxes for code execution.
- 1:15
And so as an FDE on a general purpose platform, I, I've had the opportunity to work with sort of a extremely wide range of AI applications. So from physics simulations to, uh, quantum chemistry and of course like voice processing, LLMs and agents.
- 1:34
A really interesting, um, one that's been really blowing up is large-scale reinforcement learning. Um, and so we've started to think about, um, some of these customers as where, where are they on the model spectrum?
- 1:50
So on one side of the spectrum is the frontier API. And the frontier APIs, uh, I think everyone here would agree has unlocked a completely new era of s-- uh, you know, accelerated growth.
- 2:06
Um, people can build basically anything exceptionally fast. Um, they're amazing. Um, but, uh, you can't customize it at all, uh, beyond prompt engineering. And so, um, you might y-- I mean, uh, I love the, uh, the whole caveman mode thing.
- 2:23
If you tell your LLM to speak like a caveman, you can reduce your tokens by like a lot. But that's not gonna scale if your startup, you know, hundred Xs or a thousand Xs, right?
- 2:36
Um, another, uh, kind of interesting thing we see is when, uh, startups win large enterprise contracts with very specific latency or throughput requirements. Um, there's very little ability to customize for those things, let alone if you have a custom metric that encapsulates your business logic.
- 2:57
Okay. So to get this model differentiation, a lot of companies turn to fine-tuning. And what that has meant traditionally is this huge jump to the other end of the spectrum, right?
- 3:11
We-- Training has a very different like scaling and compute characteristic to most production workloads. So if you wanna train and serve a production workload, in the past you have to get a big cluster.
- 3:24
Now you have to isolate that, those resources from your production resources. You're gonna need infrastructure engineers, or your AI engineers are gonna be working on infrastructure, maybe even your scientists.
- 3:37
So with this kind of extremely customized, uh, you know, powerful option, you also have this massive responsibility for the entire stack. Um, and so, uh, you might g-have a guess who I would recommend for this, but there's sort of a middle ground that's emerging.
- 3:57
There's a new type of cloud provider that makes this a lot easier. And, um, you know, we're, we're building this to address, uh, this problem that we're seeing, right?
- 4:10
So leader after leader in the space are announcing or publishing that they've fine-tuned and gotten incredible results. Okay. So Intercom is beating their frontier API at one-fifth the cost.
- 4:27
Um, Pinterest says orders of magnitude. I wish I knew the exact amount. But I think, uh, one of our customers, Decagon, has summed this up really well, which is that, um, basically the frontier labs probably don't have the exact same goal as you, right?
- 4:44
They want their models to win on everything possible. And, um, we want our models to win at our business logic, right? You wanna be the best at what you provide your customer.
- 4:57
Um, and so, yeah, I'm happy to announce that it's actually a lot easier than you might think to train a model. Um, with-- There's some incredible open source libraries out there now that make this extremely accessible.
- 5:14
They give you, uh, full control over the algorithm, right? So you get to kind of reach across the spectrum to doing it yourself at the algorithm level without having to also manage the cluster and so forth.
- 5:29
And the most important thing is that this retains the fast iteration cycles of the frontier end of the spectrum. Um, so that's basically our entire mission is to give you algorithm control and fast iteration.
- 5:47
Um, so this is my hot take that it's just a matter of time until your product steps into being domain specific, right? So in some sense, like if you have a differentiated product, it is custom, right?
- 6:02
So, uh- When exactly you cross that line, that's s- a decision you have to make, but it's something we'd love to talk to you about. Um, so I, I have here a few signals that might indicate that, you know, you're getting close to that time.
- 6:20
So if you've, uh, moved to caveman mode and you're still paying more for your API than your customers are paying you, that might be a signal that your economics aren't scaling, right?
- 6:32
And that you, you could probably benefit from a customized inference endpoint. Um,
- 6:39
same for latency and throughput, right? So if you, if you are plateauing on your evals, that is a-- that's a signal that you might get something out of fine-tuning a model.
- 6:50
Um, there's a decades-old adage in training that if you have garbage data, it's garbage in, garbage out. So if you haven't been collecting data and you don't have mature evals, it's probably not time to train.
- 7:05
You need to collect the data. Um, that said, uh, this is one of the main takeaways that I'd love for everyone here to walk out with, is that if you have built a product, you probably have at least touched all of the things you need to train if you haven't already done it.
- 7:24
Okay? If you've built an agent harness, then you have what you need to have a new model, you know, learn through reinforcement learning how to provide your service, right?
- 7:36
So if you're evaluating your products, um, and collecting that data on what's working and what's not, then you have training data to train your model. Um, and with, you know, the advent of, uh, serverless compute platforms and, uh, these open source libraries, I don't know, like, uh, a lot of us when we started training models, we were
- 8:00
taping the gradient by hand and like implementing the linear algebra. You don't, you don't have to do that anymore unless you have a freaky model, um, which if you do, I'd love to talk to you about it.
- 8:12
Um, but yeah, you don't need the infrastructure experts, um, and so forth. So this is an exciting time.
- 8:21
Um, I knew the vi-video wouldn't play. Anyway, so, uh, the next couple slides are just some snippets of code. I don't expect-- Yeah, you can't even really read it, but the-- I just wanna, uh, k-kind of illustrate what it looks like to set up a training algorithm today.
- 8:39
It's not, uh, a gigantic monorepo with thousands of lines of code. You can do supervised fine-tuning in three hundred lines of Python.
- 8:49
Okay, so once you have your data curated, uh, once you have an account on Modal or some other serverless platform, you can get started really fast, and this code is on our examples repository.
- 9:02
Um, the, the thing in this video, it's just showing how, um, we can scale containers really fast. And so just to bridge, bridge these concepts a little bit, people usually associate serverless with, uh, inference.
- 9:18
But with training it can be really, really handy too, uh, for doing something like hyperparameter tuning, right? You, you can-- You don't have to, uh, you know, every minute on your cluster isn't sacred anymore.
- 9:33
You can fan out to a bunch of containers, get them on demand. As soon as it's not promising, kill it. And y- It's kind of, uh, almost like an, a meta evolutionary algorithm at that point.
- 9:47
Um, so it's, it's a exciting time to be doing that. And the same goes for reinforcement learning. Um, a lot of us who got our, you know, graduate degrees in machine learning in the last ten years, uh, didn't do reinforcement learning, right?
- 10:01
This is relatively, I mean, it's actually really old, but the stuff we're using today is pr- kind of new. But they have these libraries too. Um, you can do it in three hundred lines of code.
- 10:13
Um, and something interesting about Modal part- in particular is we have sort of unified APIs for sandboxes and GPU containers or clusters. Um, so what this means in a nutshell, when you're training a model with RL, it needs to sort of practice a lot and so this is massively embarrassingly parallel kind of evaluation thing called a rollout.
- 10:38
And so we have one of the most amazing things in the last quarter has been customers scaling up to fifty thousand, a hundred thousand sandboxes just to do RL.
- 10:48
Um, and you can do it too. Uh, the code is open source.
- 10:55
And then I'd be remiss not to mention what comes after the training. You have to serve the model, right? And this is what the a-- the frontier API is doing, you know, under the hood.
- 11:07
Um, well, they pro-- I don't know if they use vLLM, but my point is that you can do it too, and it's actually not that much code. vLLM, SGLang, Trident Inference Server, or a custom inference workflow with just Python, um, on Modal or other, you know, serverless platforms, you can autoscale all of this stuff, uh, to match
- 11:30
your traffic as it's coming in. So yeah. So, uh, just to kind of sum everything up what I'm saying here, I'm not saying go train your model right now.
- 11:42
I'm saying it's not something that is like, "Oh, I'll do that in ten years." You might, you might wanna train your model in one year, right? You might wanna do it in six months.
- 11:53
So start thinking about what is... when am I gonna know, okay, it's time to train my model, and how can I prepare for that moment by collecting data, developing your evals.
- 12:06
And yeah, I'd love to, you know, come by our booth. We're like at kind of the end over on that side. Uh, love to talk to you more about this, or you can reach out, uh, at my email here.
- 12:18
That's it. [clapping] [outro music]