{"slug": "ornith-1-5-35b-a3b-a-self-improving-moe-model-for-coding-agents", "title": "Ornith-1.5-35B-A3B: A Self-Improving MoE Model for Coding Agents", "summary": "Ornith AI released Ornith-1.5-35B-A3B, a 35B-parameter mixture-of-experts model that activates about 3B parameters per token, trained via a self-improvement loop that jointly optimizes task generation, scaffold construction, and solution rollouts. On SWE-bench Verified, it scores 79, outperforming Qwen3.6-35B-A3B (73.4) and Qwen3.5-397B (76.4), and on Terminal-Bench 2.1 it reaches 67.8 with the Terminus-2 scaffold and 68.5 with Claude Code. The model is released under an MIT license on Hugging Face.", "body_md": "# Ornith-1.5-35B-A3B: A Self-Improving MoE Model for Coding Agents\n\nOrnith-1.5-35B-A3B is a 35B mixture-of-experts model trained via self-improvement loops that beats larger models on coding benchmarks.\n\n## What is Ornith-1.5-35B-A3B?\n\nOrnith-1.5-35B-A3B is an open-weight mixture-of-experts (MoE) language model built by Ornith AI for coding and agentic tasks. It has roughly 35 billion total parameters but activates only about 3 billion per token, which is what the “A3B” in its name refers to. Despite that small active-parameter footprint, it outperforms similarly sized models and even some larger dense models on coding benchmarks like SWE-bench Verified and Terminal-Bench 2.1, largely thanks to a training process built around self-improvement rather than fixed, human-curated datasets.\n\n## TL;DR\n\n**Ornith-1.5-35B-A3B** is a 35B-parameter MoE model that only activates around 3B parameters per token, keeping inference costs closer to a small dense model while retaining the capacity of a much larger network.- The model was trained using a\n**self-improvement loop** that jointly optimizes task generation, scaffold construction, and solution rollouts, rather than relying on static human-labeled training sets. - It builds on\n**Ornith-1.0**, which itself was developed on top of Qwen3.5 and Gemma4 through continued pretraining, mid-training, and post-training. - On\n**SWE-bench Verified**, Ornith-1.5-35B-A3B scores 79, ahead of Qwen3.6-35B-A3B (73.4) and even Qwen3.5-397B (76.4), a dense model roughly ten times its total size. - It posts strong results on\n**Terminal-Bench 2.1**, reaching 67.8 with the Terminus-2 scaffold and 68.5 with Claude Code, both well above Gemma-4-31B and Muse-Glimmer-30B. - On\n**agentic benchmarks** like MCP-Atlas and Toolathlon-Verified, it beats Qwen3.6-35B-A3B and Gemma-4-31B but trails Muse-Glimmer-30B and Qwen3.5-397B in some cases. - The model is released under an\n**MIT license** on Hugging Face, with weights split across 16 safetensor shards and support through the standard transformers library.\n\n## Remy doesn't build the plumbing. It inherits it.\n\nOther agents wire up auth, databases, models, and integrations from scratch every time you ask them to build something.\n\nRemy ships with all of it from MindStudio — so every cycle goes into the app you actually want.\n\n## How does the self-improvement training loop work?\n\nMost instruction-tuned coding models are trained on a mix of human-written problems, scraped GitHub issues, and hand-built agent scaffolds that define how the model interacts with tools, files, and terminals. Ornith-1.5 takes a different approach.\n\nAccording to Ornith AI, the model extends the training method used for Ornith-1.0 by expanding what gets optimized during reinforcement learning. Instead of just tuning the scaffold (the harness that governs how the model calls tools and executes code) and the rollouts (the actual attempted solutions), Ornith-1.5 also learns to generate its own training tasks. The loop jointly optimizes three things at once:\n\n**Task generation**: creating new problems for the model to solve, rather than depending solely on a fixed dataset.** Scaffold construction**: discovering effective harnesses and interaction patterns for tackling those tasks.** Solution rollouts**: producing and refining actual attempts, which then feed back into reinforcement learning to improve the policy.\n\nThe idea is that a model which can generate its own increasingly difficult and diverse training tasks, and then find good strategies for tackling them, can keep improving past the point where a static human-curated dataset runs out of useful signal. Ornith AI describes this as a step toward building foundation models through “end-to-end self-improvement,” with Ornith-1.5 representing a broader version of the loop first introduced in Ornith-1.0.\n\n## What are the benchmark results, and how do they compare to Qwen3.6 and Gemma 4?\n\nOrnith AI published a fairly extensive benchmark suite comparing Ornith-1.5-35B-A3B against its own predecessor (Ornith-1.0-35B-A3B), the similarly sized Qwen3.6-35B-A3B, Gemma-4-31B, Muse-Glimmer-30B, and the much larger Qwen3.5-397B dense model.\n\nOn coding tasks, the pattern is consistent: Ornith-1.5 leads its own weight class by a clear margin and frequently matches or beats models many times its size.\n\n**SWE-bench Verified**: 79 for Ornith-1.5, versus 73.4 for Qwen3.6-35B-A3B, 52 for Gemma-4-31B, 76 for Muse-Glimmer-30B, and 76.4 for the 397B-parameter Qwen3.5.**SWE-bench Pro**: 59.6, ahead of Qwen3.6-35B-A3B (49.5) and the 397B Qwen3.5 model (51.6).** Terminal-Bench 2.1**(Terminus-2 scaffold): 67.8, well above Qwen3.6-35B-A3B (52.5) and Gemma-4-31B (42.1).** Terminal-Bench 2.1**(Claude Code scaffold): 68.5, versus 49.2 for Qwen3.6-35B-A3B and 48.6 for Qwen3.5-397B.** NL2Repo**: 46.2, notably higher than Qwen3.6-35B-A3B (29.4) and the 397B Qwen3.5 (36.8).** DeepSWE**: 22, compared to 0 for both Ornith-1.0 and Qwen3.6-35B-A3B, and just 1 for Qwen3.5-397B. This is a case where most models score near zero and Ornith-1.5’s non-trivial score stands out.\n\nOn general reasoning benchmarks, the gains are smaller and more mixed. Ornith-1.5 improves over Ornith-1.0 on HLE (Humanity’s Last Exam) and GPQA Diamond, and edges out Qwen3.6-35B-A3B, but the much larger Qwen3.5-397B still leads on HLE with tools (48.3 versus 33.4).\n\nOn agentic benchmarks, results are more nuanced. Ornith-1.5 clearly beats Qwen3.6-35B-A3B and Gemma-4-31B on MCP-Atlas (70.2 versus 62.8 and 55) and Toolathlon-Verified (48.7 versus 41.7 and 40.8). But Muse-Glimmer-30B (75.5) and Qwen3.5-397B (72.3) both score higher than Ornith-1.5 on MCP-Atlas, suggesting the self-improvement approach closes most, but not all, of the gap with larger or differently trained models on multi-step tool-use tasks.\n\n## Is Ornith-1.5-35B-A3B worth using for coding agents?\n\nFor teams building coding assistants or autonomous agents, the appeal of Ornith-1.5-35B-A3B is the combination of strong SWE-bench and Terminal-Bench scores with a relatively low active-parameter count. Because it only activates about 3B parameters per token, it should be cheaper to run at inference time than a dense model with comparable total parameters, while still competing with, and often beating, dense models several times its size on coding-specific evaluations.\n\nThe trade-offs show up in the agentic and general-reasoning numbers, where Muse-Glimmer-30B and the much larger Qwen3.5-397B still hold an edge in specific benchmarks like MCP-Atlas and HLE with tools. That suggests Ornith-1.5 is most competitive when the task looks like real-world software engineering (bug fixes, repo-level changes, terminal-based work) rather than open-ended tool orchestration or broad knowledge reasoning.\n\nThe model is released under an MIT license, which removes typical licensing friction for commercial use, and it’s distributed through Hugging Face in the standard safetensors format compatible with the transformers library, spread across 16 shards for the full 35B-parameter weight set.\n\n## How does the MoE architecture affect performance and cost?\n\nMixture-of-experts models like Ornith-1.5-35B-A3B route each token through a small subset of specialized “expert” subnetworks rather than the entire model. This is why the model has 35 billion total parameters but only activates about 3 billion per forward pass. The practical effect is that inference compute and memory bandwidth requirements track closer to a 3B dense model, while the model retains much larger overall capacity and specialization from its full parameter count.\n\nThis architecture is part of why Ornith-1.5-35B-A3B can compete with, or beat, dense models like Gemma-4-31B or the considerably larger Qwen3.5-397B on specific benchmarks despite having a far smaller active compute budget per token. It’s the same general trade-off that has made MoE architectures popular in recent open model releases: more total knowledge and specialization capacity, without a proportional increase in serving cost.\n\n## Frequently Asked Questions\n\n### What does the “A3B” in Ornith-1.5-35B-A3B mean?\n\nIt indicates the model activates approximately 3 billion parameters per token out of a 35 billion total parameter mixture-of-experts architecture, keeping inference costs closer to a smaller dense model.\n\n### What models is Ornith-1.5 built on top of?\n\nOrnith-1.5 extends Ornith-1.0, which was developed on top of Qwen3.5 and Gemma4 through additional continued pretraining, mid-training, and post-training.\n\n### How does Ornith-1.5 compare to Qwen3.6-35B-A3B?\n\nOrnith-1.5-35B-A3B outperforms Qwen3.6-35B-A3B across all reported coding and agentic benchmarks, including SWE-bench Verified (79 vs. 73.4) and Terminal-Bench 2.1 with Claude Code (68.5 vs. 49.2).\n\n### Does Ornith-1.5 beat larger dense models?\n\nOn several coding benchmarks, yes. It scores higher than the much larger Qwen3.5-397B dense model on Terminal-Bench 2.1, SWE-bench Pro, and NL2Repo, though Qwen3.5-397B still leads on some reasoning and agentic benchmarks like HLE with tools and MCP-Atlas.\n\n### What license is Ornith-1.5-35B-A3B released under?\n\nIt is released under the MIT license and distributed on Hugging Face in safetensors format, compatible with the standard transformers library.", "url": "https://wpnews.pro/news/ornith-1-5-35b-a3b-a-self-improving-moe-model-for-coding-agents", "canonical_source": "https://www.mindstudio.ai/blog/ornith-1-5-moe-model-release/", "published_at": "2026-08-24 00:00:00+00:00", "updated_at": "2026-08-24 17:44:07.502915+00:00", "lang": "en", "topics": ["artificial-intelligence", "machine-learning", "large-language-models", "ai-research", "ai-products"], "entities": ["Ornith AI", "Ornith-1.5-35B-A3B", "Qwen3.6-35B-A3B", "Qwen3.5-397B", "Gemma-4-31B", "Muse-Glimmer-30B", "Hugging Face", "Terminus-2"], "alternates": {"html": "https://wpnews.pro/news/ornith-1-5-35b-a3b-a-self-improving-moe-model-for-coding-agents", "markdown": "https://wpnews.pro/news/ornith-1-5-35b-a3b-a-self-improving-moe-model-for-coding-agents.md", "text": "https://wpnews.pro/news/ornith-1-5-35b-a3b-a-self-improving-moe-model-for-coding-agents.txt", "jsonld": "https://wpnews.pro/news/ornith-1-5-35b-a3b-a-self-improving-moe-model-for-coding-agents.jsonld"}}