Classification Is (Often) All You Need
In 2026 we use AI tools such as Pi, OpenAI’s Codex or Claude Code to build the same kind of non-AI application we could build in 2019. When we first saw ChatGPT we immediately dreamt of putting these machines at the heart of our products. Fast forward four years and we now dream of using them to fire people and keep building the same stuff we always built. Transformational technology, indeed, but talk about a wasted opportunity.
A world in which AI was at the core of all products was the premise behind my startup, Outropy. After building one of the first AI-native applications, we pivoted into a platform so other developers could build their own. We realized that people weren’t building AI products because a good demo was easy, but taking that to production required a team that combined distributed systems and AI/ML knowledge.
Here’s a slide from our pitch deck:

Most of my work selling Outropy to investors and customers was trying to make them understand how hard it was to get an AI product to production. Our strategy was to use our own journey building our original application as a cautionary tale. I started a forever-unfinished series of articles explaining in detail both the distributed systems and the inference architecture we used. I wanted people to understand how complicated these things are so that they could appreciate how easy we made it.
And how easy did we make it? Here are some slides from our deck describing the two main features of the product: a task-based API and using Reinforcement Learning to continuously optimize the pipelines:


The blog series was well received, and for a while we were everywhere, from keynotes at conferences to podcasts to lectures at the Columbia University PhD program. The blog posts are truthful accounts of how we built the platform, with two major omissions. One was how we actually used Reinforcement Learning to do this, which we considered our core IP and not something we’d discuss in public.
The second is more interesting, and now that Outropy has folded I can talk about it. During our journey, we found out that almost every task we needed AI for boiled down to a different flavor of one thing: classification.
In the slide above, I present classification as one task among many. That was packaging—nobody writes a $3M seed check for a classifier. Generate and Contextualize were real, usually simple RAG pipelines, but everything else was just a starting template for the same classifier pipeline, which the RL engine kept improving. Recommend picked one option from a set. Predict assigned a probability to each possible outcome. Transform chose which transformation to apply from a known domain.
But these weren’t classifiers in the traditional machine learning sense, trained on a fixed set of labels. The labels were part of the input, defined at call time and different on every request. Purists might argue this isn’t a real classifier, but the contract is the same: options go in, a choice and confidence levels come out.
And this was honestly the hardest technical challenge we had at Outropy. When we first started, we thought the hard part was the RL engine, but it turns out that with the seasonality of data that a real-world application handles, optimizing to a good enough pipeline is pretty easy given enough iterations. The hard part of our architecture was how to build a fast, calibrated classifier on top of a slow, hallucinating Language Model.
We invented all sorts of tricks to handle this, but ultimately even a mature pipeline that had been optimized thousands of times by our Reinforcement Learning engine would still be slow. What made it usable at all was using the AI engine itself—guess what, a classifier!—to be very smart around caching intermediate work and saving trips to the LLM.
I haven’t worked on this problem in a while, and most companies in our space either folded, like us, or pivoted into some VC-friendly AI harness. So today’s announcement by TypeSafe AI of a new model architecture built specifically for fast, structured probabilistic decisions caught my attention.
Everything I described above—templates, caches, and RL loops—was shoehorning an LLM into doing something it was never meant to do. Their model does it natively, and they claim to be two orders of magnitude faster than an LLM for the same kind of task. We built it in userland. They built it into the kernel. They built the classifier we were emulating.
This is super dope.
I haven’t had access to their models yet or any more information than the public announcement, but I do hope that TypeSafe AI and other companies doing similar work will finally fulfill the 2022 dreams of building AI products instead of merely using AI to build products.