Skip to content

Ornith: The Open-Source Coding Dark Horse Built on Self-Improvement RL

Aug 26, 2026 1 min
TL;DR DeepReinforce's Ornith 1.5 family, trained with self-improvement RL: the 397B flagship scores 86.0 on SWE-bench Verified, matching Claude Opus 4.8; the 35B-A3B activates only 3B parameters per token yet leads every coding benchmark in its class; the 9B runs on phones. MIT-licensed, fully open-source.
Table of Contents
  1. The Team and Its Thesis
  2. Training: From Self-Scaffolding to Self-Improvement
  3. Model Family Specifications
  4. Benchmark Comparison
    1. Flagship 397B vs Closed-Source Leaders
    2. 35B-A3B: The Real Surprise
    3. 9B: A Coding Agent on Your Phone
  5. Practical Usage
  6. Is It Worth Watching?
  7. References

🌏 中文版

DeepReinforce is not a big lab. Not Alibaba, not Meta, not Google — it's a small team focused on agentic coding and reinforcement learning. Yet their Ornith 1.5 family, released in August 2026, matches or beats Claude Opus 4.8 on multiple coding benchmarks, all under an MIT license. Here's how they did it and whether it's worth paying attention to.

The Team and Its Thesis

DeepReinforce (deep-reinforce.com, product page at ornith.ai) argues that instead of hand-designing agent scaffolds and training data, models should learn to build their own scaffolds and generate their own training problems.

They don't pretrain base models from scratch. Ornith is built on top of Qwen3.5 and Gemma 4 through continued pretraining (CPT), mid-training, and post-training, then refined with a proprietary self-improvement RL framework. This lets a small team produce competitive models without thousands of GPUs.

Training: From Self-Scaffolding to Self-Improvement

The training methodology is Ornith's most interesting contribution.

Ornith 1.0 introduced self-scaffolding: the model learns not only to solve problems but also to construct the scaffolds it uses — tool-calling strategies, code structures, reasoning frameworks. Scaffolds and solution rollouts are jointly optimized via GRPO.

Ornith 1.5 extends this into a full self-improvement loop with three jointly optimized stages:

  1. Task Generation — the model creates its own problems. Rewards are based on validity (the task is well-formed), frontier difficulty (just at the edge of the model's capability), and novelty (not repeating previously seen tasks)
  2. Scaffold Construction — the model designs a problem-solving scaffold for each task
  3. Solution Rollout — the model executes the solution within the scaffold; the rollout reward propagates back to the first two stages

From the official Ornith technical report: "Repeated over training, this creates a closed self-improvement loop in which stronger policies enable the generation of harder and more informative tasks, evolving scaffolds discover better ways to elicit the model's capabilities, and higher-quality rollouts provide increasingly effective learning signals."

In short: stronger model → harder problems → smarter scaffolds → better solutions → even stronger model. This positive feedback loop doesn't depend on human-annotated datasets and can, in theory, drive continuous improvement.

Model Family Specifications

Ornith 1.5 comes in three scales, all MIT-licensed with weights on Hugging Face:

ModelArchitectureTotal ParamsActive per TokenNotes
Ornith 1.5-397BMoE397BUndisclosedFlagship, matches closed-source leaders
Ornith 1.5-35B-A3BMoE35B~3BEfficiency champion, class leader
Ornith 1.5-9BDense9B9BQuantized mobile version available

The 9B offers an Ornith-1.5-9B-Mobile quantized variant that can run on iPhone and Android devices.

Benchmark Comparison

All data below comes from the official Ornith technical report. All Ornith scores are averages of five independent runs.

Flagship 397B vs Closed-Source Leaders

BenchmarkOrnith 1.5-397BClaude Opus 4.8GLM-5.2DeepSeek-V4-Flash
Terminal-Bench 2.186.185.082.782.7
SWE-bench Verified86.085.8
DeepSWE56.059.046.254.4
GPQA Diamond92.8
BrowseComp86.6

The 397B edges out Claude Opus 4.8 on Terminal-Bench and SWE-bench, loses slightly on DeepSWE. Overall, it trades blows with the strongest closed-source models — a remarkable achievement for an open-source model.

35B-A3B: The Real Surprise

The 35B-A3B is the family's standout member. Activating only ~3B parameters per token, it leads every coding benchmark in its weight class and even surpasses much larger models:

BenchmarkOrnith 1.5-35BQwen3.6-35BGemma 4-31BMuse Glimmer-30BQwen3.5-397B
SWE-bench Verified79.073.452.076.076.4
SWE-bench Pro59.649.535.7
SWE-bench Multilingual71.467.269.3
Terminal-Bench 2.1 (Terminus-2)67.852.542.151.753.5
Terminal-Bench 2.1 (Claude Code)68.549.243.4
DeepSWE22001
NL2Repo46.229.436.8
GPQA Diamond89.286.088.4

Key takeaways:

  • SWE-bench Verified 79.0 is the only score above 79 in the 30B–35B class, surpassing even the 11× larger Qwen3.5-397B (76.4)
  • DeepSWE 22 vs 0 — Qwen3.6-35B and Gemma 4-31B both score zero on this benchmark, making it the most dramatic gap
  • On general reasoning (HLE with tools), the 35B's 33.4 still trails Qwen3.5-397B's 48.3 — scale still matters for general reasoning

9B: A Coding Agent on Your Phone

BenchmarkOrnith 1.5-9BQwen3.5-9B
Terminal-Bench 2.146.221.3

The 9B more than doubles Qwen3.5-9B on Terminal-Bench. The team claims the 9B matches or exceeds models several times its size, including Gemma 4-31B and Qwen 3.6-35B.

Practical Usage

Ornith is compatible with the OpenAI API format and can be deployed with vLLM or SGLang. Per the GitHub repo, it plugs directly into agentic coding CLIs like Claude Code and OpenCode:

from openai import OpenAI

client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
response = client.chat.completions.create(
    model="Ornith-1.5-35B-A3B",
    messages=[{"role": "user", "content": "Fix the bug in this function..."}]
)

The 35B-A3B's inference cost is far lower than models with comparable scores, since only 3B parameters activate per token. Community members have reported running the 35B locally on a single A100. The quantized 9B runs on consumer GPUs (12 GB+) or even smartphones.

Is It Worth Watching?

Yes, for three reasons:

  1. Methodological significance — the self-improvement loop trains without human annotation and can, in principle, keep improving. If this path is viable, small teams can compete with big labs' proprietary data advantages
  2. Efficiency demonstration — the 35B-A3B achieves SWE-bench 79 at ~3B inference cost, making "self-hosted open-source agentic coding" a practical option rather than a theoretical one
  3. Fully open — MIT license, weights and code all public, no "open but non-commercial" restrictions

Caveats:

  • Benchmark scores come from Ornith's own testing; large-scale independent reproductions are still underway
  • General reasoning (HLE, MATH) still lags behind closed-source models at comparable scale — Ornith's strength is concentrated in coding and agentic tasks
  • The team is small; long-term model maintenance and iteration cadence are unknowns

References