01 · What forty hours actually looks like
One machine, twenty-four attempts, one number
Forty hours. One rented GPU. About $170 of compute (DigitalOcean GPU Droplet pricing). Twenty-four attempts to make a language model better at the work my company actually sells. At hour thirty-eight I had one that worked. At hour forty I took it back.
I want to describe what those forty hours looked like, because I do not think most people have a picture of it. When you read that a company trained its own model, you probably imagine a laboratory. It is not that. It is one machine you rent by the hour, a list of recipes, a set of test questions you wrote yourself, and a lot of waiting. You start a run. You go do something else. You come back and look at a number.
Everything rests on that number. This is the piece where I tell you that for forty hours, my number was wrong.
Part one of this series named three levers, training, harness and evaluation, and argued that the cheapest lever on any given day is almost never the training lever (Three Levers, One Loop). That was the framework. This is what happened when we ran it long enough to catch it lying.
Read plainly: we could not tell our best trained model apart from the one we downloaded.
Under the ruler that ran the program, Round 11 landed at 0.65 on the production path and cleared a four-point promotion margin over the base model at 0.61. It was the only round in twenty-four that cleared anything.
Then we audited the ruler. It had four defects: ordinals counted as invented facts, five workbook cases forced onto a routing slot the candidate never sees, a pass-or-fail resolution too coarse to detect a real signal, and equivalent numeric forms counted as disagreement. Corrected for those four, the candidates land inside a two-case band, the base model sits inside that band, and Round 22, which the old ruler had recorded as sitting behind production, becomes the leader. The ranking reverses on a change to the instrument, not a change to the models.
Strictly, no comparison in the program was statistically significant, including the promotion. The Wilson 95 percent half-width on a 70 percent baseline at 48 cases is roughly 13 points (AI Evals · Statistical methods). The margin we were trying to steer with was 4. We were reading noise and calling it progress.
Part one said the loop should be built to earn one thing: the confidence to know when your own ruler is lying to you. The loop earned it. It cost forty hours and one deleted promotion.
A note on the foundation, before the rest of it
One thing to establish before the rest of it, because it is the part that gets said wrong most often.
We moved from Qwen to OLMo 3.1 this month. Not because Qwen had failed as an inference model. It had not. We moved because OLMo provides a substantially complete open model-development foundation. The weights, the checkpoints from every stage, the training code and the post-training stack are all accessible (Ai2 · OLMo 3). That is what lets us inspect the model, modify it, evaluate it, reproduce a result, and operate the whole thing through infrastructure we govern.
The OLMo foundation is open, and it stays open. We do not claim any part of it as proprietary. What matters is not ownership of OLMo. It is what we were able to build and learn because the complete development pathway was available. None of the forty hours in this essay happens without that.