Ornith-1.5 landed today, and it's the most interesting open-source model release in weeks — not because of the benchmarks (though those are impressive), but because of how it was built.
Ornith-1.5 extends the self-scaffolding framework from Ornith-1.0 into a complete, closed-loop self-improvement system. The model generates its own tasks, builds its own scaffolds (harnesses), rolls out solutions, scores them, and feeds the results back through GRPO. The loop is self-reinforcing: stronger policies generate harder tasks, which demand better scaffolds, which produce better rollouts.
The family spans three scales — 397B MoE, 35B MoE, and 9B dense — and the numbers are worth sitting with:
- Ornith-1.5-397B: 86.1 on Terminal-Bench 2.1, 56.0 on DeepSWE — on par with Claude Opus 4.8 (85.0 / 59.0) and ahead of DeepSeek-V4-Flash-0731 (82.7 / 54.4) and GLM-5.2 (82.7 / 46.2)
- Ornith-1.5-9B: 71.7 on Terminal-Bench 2.1 — outperforming Gemma 4-31B and Qwen 3.6-35B on agentic and coding benchmarks, despite activating only 3B parameters per token. The quantized Mobile version runs on-device on iPhone and Android
The 397B matching Opus 4.8 on Terminal-Bench is the headline, but the 9B is the sleeper story. A 3B-active model that clears 31B-class models means the distillation returns from a self-improving loop are real — and deployable.
What makes this worth watching isn't the specific benchmark scores. It's the architecture Ornith is validating: self-generated curricula as a training paradigm. If a model can bootstrap its own improvement by writing harder exams for itself, the scaling laws change. The limiting factor stops being "how much human-curated data" and starts being "how good is your self-evaluation signal."
Ornith-1.5 is available on Hugging Face.