一、核心贡献
Ornith-1.5 提出了一种端到端的自我改进框架,让大语言模型能够通过持续自我生成任务、构建解决方案脚手架、产出训练数据,形成一个闭环的自我提升系统。这是 Ornith-1.0 自我脚手架搭建框架的重大升级。
二、技术核心:三阶段自我改进循环
每个训练周期包含三个环节,且奖励信号会反向传播到所有环节:
| 阶段 | 内容 | 作用 |
|---|---|---|
| 任务生成 | 模型基于当前能力和历史表现,提出比已解决任务更难的挑战,持续推动训练前沿 | 暴露能力短板,自动构建课程 |
| 脚手架生成 | 模型为每个任务生成或优化专属的指令、工具、分解策略和编排方案 | 更高效地激发模型能力 |
| 解决方案生成 | 模型产出具体的解决轨迹,用于强化学习训练 | 提供学习信号,驱动参数更新 |
三个环节通过 GRPO 算法联合优化,形成“更强策略→更难任务→更好脚手架→更优轨迹→更强策略”的正反馈循环。
三、任务奖励机制
生成任务时,系统综合评估三个信号:
有效性:任务是否合法、可验证
前沿难度:当前模型在该任务上的成功率越接近 20% 越好(既具挑战性,又能产出足够成功轨迹用于 RL 训练)
新颖性:与历史任务库的差异度,防止重复生成相似任务
四、模型规格
| 版本 | 架构 | 特点 |
|---|---|---|
| Ornith-1.5-397B | MoE(混合专家) | 旗舰版,对标 Claude Opus 4.8 |
| Ornith-1.5-35B | MoE(每令牌激活 3B) | 高效推理,性能大幅超越同尺寸密集模型 |
| Ornith-1.5-9B | Dense(密集模型) | 含量化移动版,可部署于手机端 |
三者均基于 Ornith-1.0(源自 Qwen3.5 + Gemma 4)进行额外的持续预训练、中期训练和后期训练。
五、核心性能表现
Ornith-1.5-397B(旗舰级)
| 基准测试 | Ornith-1.5 | Claude Opus 4.8 | DeepSeek-V4-Flash | GLM-5.2 |
|---|---|---|---|---|
| Terminal-Bench 2.1 | 86.1 | 85.0 | 82.7 | 82.7 |
| DeepSWE | 56.0 | 59.0 | 54.4 | 46.2 |
| SWE-bench Verified | 86.0 | 85.8 | 81.6 | 83.0 |
与 Claude Opus 4.8 持平,超越所有同规模开源模型
Ornith-1.5-35B(MoE)
在 Terminal-Bench 2.1 上达到68.5,远超 Gemma 4-31B(43.4)
在 SWE-bench Verified 上达到79.0,大幅领先 Muse Glimmer(76.0)
每令牌仅激活 30 亿参数,效率极高
Ornith-1.5-9B(端侧部署)
Terminal-Bench 2.1:47.0
SWE-bench Verified:70.6
性能达到甚至超越 Gemma 4-31B 和 Qwen 3.6-35B 等大模型
量化版可部署于 iPhone/Android
六、评估覆盖范围
论文在三大类基准上进行了全面评估:
编码类:Terminal-Bench 2.1、SWE-bench(Verified/Pro/Multilingual)、DeepSWE、NL2Repo、SWE Atlas 等
推理类:HLE(含/无工具)、GPQA Diamond
智能体类:MCP-Atlas、Toolathlon-Verified、WideSearch、BrowseComp、ClawEval
七、技术亮点
摆脱对人工数据与人工设计智能体的依赖:完全由模型自主生成任务和策略
课程自动演进:前沿难度随模型能力动态调整
反黑客保护:评估中移除 Git 历史、禁用网络、屏蔽外部仓库访问,防止奖励作弊
跨规模可扩展:从 9B 端侧模型到 397B 旗舰模型均验证有效
Ornith-1.5 的核心突破在于让模型成为自身进步的工程师——它自己出题、自己想解题思路、自己练题,形成可持续的自我进化闭环,在编码、推理和智能体任务上达到或超越当前最先进的闭源与开源模型。
今天,我们推出 Ornith-1.5,这是朝着通过端到端自我改进构建基础模型迈出的重要一步。Ornith-1.5 将 Ornith-1.0 中引入的自我脚手架搭建框架扩展为一个更完整的自我改进循环:模型提出新任务,生成针对特定任务的脚手架,并生成用于强化学习的解决方案轨迹,从而持续创造新的学习经验,并从中进行自我提升。
Ornith-1.5 涵盖三种模型规模:397B MoE、35B MoE 和 9B Dense。它是在 Ornith-1.0 的基础上扩展而来,后者基于 Qwen3.5 和 Gemma 4 开发,并进行了额外的持续预训练(CPT)、中期训练和后期训练。Ornith-1.5 在广泛的推理、编码和智能体基准测试中,在同等规模的开源模型中达到了最先进的性能。
2026/8/20 13:32 Ornith-1.5:从自我脚手架搭建到自我改进 | Ornith 博客
Ornith-1.5-397B 在 Terminal-Bench 2.1 上得分为 86.1,在 DeepSWE 上得分为 56.0,性能与 Claude Opus 4.8(85.0 和 59.0)相当,同时优于同规模领先的开源模型,包括 GLM-5.2(82.7 和 46.2)和 DeepSeek-V4-Flash-0731(82.7 和 54.4)。在另一端,Ornith-1.5-9B 及其量化版本 Ornith-1.5-9B-Mobile 可轻松部署在 iPhone 和 Android 设备上,同时性能显著优于 Gemma 4-31B 和 Qwen 3.6-35B 等更大规模的模型。
在旗舰级规模上,Ornith-1.5-397B 在 Terminal-Bench 2.1 上达到 86.1,在 DeepSWE 上达到 56,在两个基准测试中均与 Claude Opus 4.8 持平,并优于同尺寸的领先开源模型,包括 GLM-5.2 和 DeepSeek-V4-Flash-0731。
2026/8/20 13:32 Ornith-1.5:从自我脚手架搭建到自我改进 | Ornith 博客
Ornith-1.5-35B 在所有编码和智能体基准测试中均显著优于其同尺寸竞品 Qwen 3.6-35B。尽管每个令牌仅激活 30 亿参数,它在智能体编码任务上也大幅超越了密集模型——Gemma 4-31B 和 Meta 的 Muse Glimmer-30B(Terminal-Bench 2.1 得分为 68.5 对比 43.4 和 51.7;SWE-Bench Verified 得分为 79.0 对比 52.0 和 76.0)。
可边缘部署的 Ornith-1.5-9B 也交出了非常亮眼的成绩单,在 Terminal-Bench 2.1 上达到 47.0,在 SWE-Bench Verified 上达到 70.6。尽管是一个紧凑的 90 亿参数模型,它的表现却达到甚至超越了 Gemma 4-31B 和 Qwen 3.6-35B 等大得多的模型。
通过自生成任务、工具包和解决方案实现自我改进
Ornith-1.5 扩展了 Ornith-1.0,将自我改进循环从脚手架和轨迹优化扩展为联合优化任务生成、脚手架构建和解决方案轨迹生成。Ornith-1.5 不再依赖固定的人工策划任务集和手动设计的工具包,而是持续生成新的训练任务,发现解决这些任务的有效策略,并通过强化学习改进策略。
每个训练周期分为三个阶段。给定一个环境或代码库、关于任务类型的高级指令,以及模型先前任务解决历史的访问权限,系统会提出逐步更难的任务,这些任务超出了模型已能解决的范围,从而暴露能力差距,持续推动训练前沿。
对于每个任务,模型随后会生成或改进一个针对特定任务的脚手架——即用于处理该问题的指令、工具、分解策略和编排方案。以任务和脚手架为条件,策略生成一个解决方案轨迹。来自轨迹的奖励会反向传播到所有三个阶段,因此系统不仅学会产生更好的解决方案,还学会生成更有用的训练任务和构建更有效的脚手架。
通过反复训练,这就形成了一个封闭的自我改进循环:更强的策略能够生成更难、信息量更丰富的任务;不断演进的脚手架发现更好方法来激发模型能力;更高质量的轨迹提供越来越有效的学习信号。Ornith-1.5 不再依赖于静态的训练数据分布或人工设计的智能体方案,而是持续扩展自身的课程并调整其问题解决策略,从而在推理、编码和智能体任务上驱动持续的能力提升。
任务奖励
其中,V 衡量生成的任务和脚手架是否构成一个有效且可验证的学习环境,D 基于轨迹执行表现衡量任务是否位于模型当前能力前沿附近,N 衡量相对于先前生成或训练过的任务的新颖性。这种乘积形式的公式鼓励提议者生成同时满足所有三个属性的任务:有效、难度恰当且非冗余。
有效性与可验证性
一个有用的任务必须形成一个定义良好的学习环境。问题应当连贯且可解,而脚手架应当能够正确执行并可靠地评估候选解决方案。我们定义
V(q,s)∈[0,1]
基于以下检查:脚手架是否成功运行、高置信度解决方案是否通过、明显错误的解决方案是否失败,以及评估是否与任务规范一致。有效性也可以作为一个硬性门控条件:
V(q,s)=0 ⟹ Rtask=0.
这可以防止格式错误的任务或不可靠的脚手架仅仅因为看似困难而获得奖励。
前沿难度
在有效的任务中,最有用的那些既非微不足道,也非不可能完成。我们直接从模型的轨迹执行结果来估算难度。
对于每个任务,我们采样 N 条轨迹并计算经验成功率
新颖性与多样性
仅靠前沿难度可能导致模型反复生成相同任务的微小变体。因此,我们增加了一个新颖性项:
其中 B 是先前生成或训练过的任务的缓冲区。新颖性应当次于有效性和难度:其作用是减少冗余,而非奖励任意不寻常的任务。
这些信号共同鼓励提议者生成有效、可验证、具有挑战性但可学习且足够多样化的任务。由于前沿难度是使用当前模型自身的轨迹来衡量的,由此产生的课程将随模型能力自动演进。
工具包与轨迹奖励
对于生成的问题 q,工具包 h 因提供一个与任务对齐、忠实反映解决方案质量、且对奖励黑客行为具有抵抗力的评估环境而获得奖励:
其中,C 衡量工具包是否忠实地反映了任务规范,F 衡量其奖励是否能追踪候选方案的真实质量,H 衡量其对评估器失败、捷径和奖励黑客行为的抵抗能力。
每个轨迹 τi 由生成的工具包直接评分:
对于可验证的任务,这可以是一个二进制的通过/失败奖励;对于更丰富的环境,它可以结合正确性、任务完成度、效率和约束满足。问题生成、工具包生成和解决方案轨迹都使用各自的奖励通过 GRPO 进行优化,使得这三个阶段能够在同一个自我改进循环中共同提升。
结果评测
Ornith-1.5-397B
| Benchmark | Ornith-1.5 (397B) | DeepSeek-V4-Flash-0731 (284B) | GLM-5.2 (753B) | Claude Opus 4.8 | Kimi K3 (2.8T) | Ornith-1.0 (397B) |
|---|---|---|---|---|---|---|
| Coding | ||||||
| Terminal Bench 2.1 (Terminus-2) | 86.1 | 82.7 | 81 | 85 | 88.3 | 77.5 |
| Terminal Bench 2.1 (Claude Code) | 85.2 | 81.8 | 82.7 | 78.9 | – | 78.2 |
| SWE-bench Verified | 86 | 81.6 | 83 | 85.8 | 86.2 | 82.4 |
| SWE-bench Pro | 65.1 | 64.4 | 62.1 | 68 | – | 62.2 |
| SWE-bench Multilingual | 79.6 | 77.9 | 78.4 | 75.7 | – | 78.9 |
| DeepSWE | 56 | 54.4 | 46.2 | 59 | 67.5 | 8 |
| Frontier-Bench v0.1 | 13.5 | 6.1 | 5.1 | 21.1 | 23 | 2.7 |
| NL2Repo | 59.5 | 54.2 | 48.9 | 69.7 | – | 48.2 |
| SWE Atlas – QnA | 55.6 | 51.6 | 50 | 59.7 | 59.7 | 41.2 |
| Reasoning | ||||||
| HLE (no tools) | 44.6 | 35 | 40.5 | 49.8 | 43.5 | 30.2 |
| HLE (with tools) | 56.1 | 50.8 | 54.7 | 57.9 | 56 | 47.5 |
| GPQA Diamond | 92.8 | 91.4 | 91.2 | 93.6 | 93.5 | 88.1 |
| Agentic | ||||||
| MCP-Atlas | 80 | 74.6 | 77.8 | 82.2 | 82.3 | 76.4 |
| Toolathlon-Verified | 71.2 | 70.3 | 48.2 | 76.2 | 73.2 | 43.2 |
| WideSearch | 80.8 | 77.3 | 79 | 72.9 | – | 75.2 |
| BrowseComp | 86.6 | 84.8 | 85.6 | 84.3 | 91.2 | 79.7 |
| ClawEval | 81.4 | 77.6 | 78.8 | 80.2 | – | 77.1 |
Ornith-1.5-35B
| Benchmark | Ornith-1.5-35B-A3B | Ornith-1.0-35B-A3B | Qwen3.6-35B-A3B | Gemma-4-31B (dense) | Muse-Glimmer-30B (dense) | Qwen3.5-397B (397B) |
|---|---|---|---|---|---|---|
| Coding | ||||||
| Terminal Bench 2.1 (Terminus-2) | 67.8 | 64.2 | 52.5 | 42.1 | 51.7 | 53.5 |
| Terminal Bench 2.1 (Claude Code) | 68.5 | 62.8 | 49.2 | – | – | 48.6 |
| SWE-bench Verified | 79 | 75.6 | 73.4 | 52 | 76 | 76.4 |
| SWE-bench Pro | 59.6 | 50.4 | 49.5 | 35.7 | 51.2 | 51.6 |
| SWE-bench Multilingual | 71.4 | 69.3 | 67.2 | 51.7 | – | 69.3 |
| DeepSWE | 22 | 0 | 0 | – | – | 1 |
| Frontier-Bench v0.1 | 5.1 | 1.4 | 1.4 | – | – | 1.4 |
| NL2Repo | 46.2 | 34.6 | 29.4 | 15.5 | – | 36.8 |
| SWE Atlas – QnA | 39.8 | 37.1 | 15.5 | – | – | 20.4 |
| Reasoning | ||||||
| HLE (no tools) | 25.6 | 20.8 | 21.4 | 19.5 | 22 | 28.7 |
| HLE (with tools) | 33.4 | 30.1 | 28.9 | 26.5 | – | 48.3 |
| GPQA Diamond | 89.2 | 86.2 | 86 | 84.3 | 83.5 | 88.4 |
| Agentic | ||||||
| MCP-Atlas | 70.2 | 64.4 | 62.8 | 55 | 75.5 | 72.3 |
| Toolathlon-Verified | 48.7 | 42.4 | 41.7 | 40.8 | – | 38.3 |
| WideSearch | 67.8 | 63.4 | 60.1 | 54.2 | – | 74 |
| BrowseComp | 67.6 | 63.5 | 62 | – | – | 78.6 |
| ClawEval | 72.5 | 69.8 | 68.7 | 48.5 | – | 70.7 |
Ornith-1.5-9B
| Benchmark | Ornith-1.5-9B | Ornith-1.0-9B | Qwen3.5-9B | Qwen3.6-35B-A3B | Gemma-4-31B (dense) |
|---|---|---|---|---|---|
| Coding | |||||
| Terminal Bench 2.1 (Terminus-2) | 46.2 | 43.1 | 21.3 | 52.5 | 42.1 |
| Terminal Bench 2.1 (Claude Code) | 47 | 40.6 | 18.9 | 49.2 | – |
| SWE-bench Verified | 70.6 | 69.4 | 53.2 | 73.4 | 52 |
| SWE-bench Pro | 47.5 | 42.9 | 31.3 | 49.5 | 35.7 |
| SWE-bench Multilingual | 54.4 | 52 | 39.7 | 67.2 | 51.7 |
| NL2Repo | 32.4 | 27.2 | 16.2 | 29.4 | 15.5 |
| SWE Atlas – QnA | 20.6 | 17.9 | 9.2 | 15.5 | – |
| Reasoning | |||||
| HLE (no tools) | 20.2 | 16.8 | 14.7 | 21.4 | 19.5 |
| HLE (with tools) | 30.5 | 26.4 | 24.5 | 28.9 | 26.5 |
| GPQA Diamond | 86.4 | 82.5 | 81.7 | 86 | 84.3 |
| Agentic | |||||
| MCP-Atlas | 54.2 | 49.4 | 46.8 | 62.8 | 55 |
| Toolathlon-Verified | 41.2 | 33.4 | 29.6 | 41.7 | 52.8 |
| WideSearch | 59.5 | 55.8 | 53.6 | 60.1 | 54.2 |
| BrowseComp | 56.4 | 44.8 | 41.5 | 62 | – |
| ClawEval | 66.5 | 63.1 | 53.2 | 68.7 | 48.5 |
脚注
所有报告的 Ornith-1.5 结果是五次独立运行的平均值。
Terminal-Bench 2.1 (Terminus-2):我们使用 Harbor/Terminus-2 框架评估 Terminal-Bench 2.1,设置 parser=json,temperature=1.0,top_p=1.0,上下文窗口为 128K。每次运行使用 4 小时超时时间,配备 32 个 CPU 核心和 48GB RAM,结果取 5 次运行的平均值。我们调整了 Qwen 聊天模板以确保训练和推理之间的一致性,并修改了 Harbor 以适配 vLLM 的 reasoning_content 键。
Terminal-Bench 2.1 (Claude Code):我们使用 Claude Code 2.1.126 评估 Terminal-Bench 2.1,设置 parser=json,temperature=1.0,top_p=1.0,max_new_tokens=131072。结果取 5 次运行的平均值。同样,需要修改 Qwen 聊天模板。
SWE-Bench Verified, Pro 和 Multilingual:使用 OpenHands 工具包进行评估,设置 temp=1.0,top_p=0.95,上下文窗口为 256K。整个评估过程中应用了反黑客保护措施:从本地仓库镜像中移除 Git 历史记录,以防止模型访问先前的解决方案或提交记录;禁用网络访问,防止模型检索外部信息或资源。
DeepSWE:使用 Claude Code 工具包进行评估,设置 temperature=1.0,top_p=0.95,上下文窗口为 256K。
SWE Atlas QnA, RF, TW:使用 mini SWE agent 工具包进行评估,设置 temp=1.0,top_p=0.95,上下文窗口为 128K。结果取 5 次运行的平均值。
NL2Repo:设置 temperature=1.0,top_p=1.0,上下文窗口为 400K,输出长度为 48K。阻止访问指定的 GitHub 仓库和 pip 包,以防止奖励黑客行为。
HLE:使用 Claude 4.6 Opus 作为评判模型进行评估。
MCP-Atlas:所有模型均以思考模式在 500 个任务的公开子集上进行评估,每个任务超时时间为 10 分钟。我们使用 Claude 4.8 Opus 作为评判模型。
Tool-Decathlon:我们使用官方评估服务,最大令牌限制设为 128K。
ClawEval:一个基于真实用户任务分布的智能体编码基准测试;设置 temp=0.6,上下文窗口为 256K。