「好得不像真的」!397B开源模型Ornith-1.0跑分追平Claude Opus 4.8,首批实测的人吵翻了
「好得不像真的」!397B开源模型Ornith-1.0跑分追平Claude Opus 4.8,首批实测的人吵翻了
2026年6月25日晚上10点15分,一个叫**@ornith_**的账号在X上发了一条帖子,随后12小时内被浏览了近500万次。
「Aloha!🌺 欢迎认识 Ornith-1.0。」
配图是一张柱状对比图。397B参数、开源、MIT许可证、多项基准SOTA。帖子列了一串数字:Terminal-Bench 2.1 拿了 77.5 分,SWE-Bench Verified 82.4 分——超过了 Claude Opus 4.7。



▲ Ornith 官方发布帖:4 个尺寸、MIT 许可、多项编码基准 SOTA,12 小时内 6278 人点赞,近 500 万次浏览
帖子爆了。
但真正把讨论推向高潮的,是第二条帖子。
第二天早上,技术博主 Chubby(@kimmonismus)转发了这条公告。他不拐弯,开篇就是质疑:
“This looks too good to be true. A 397B open source model on par or even outperforming Claude Opus 4.8? I need to check it out.”
「这看起来好得有点不真实。一个 397B 的开源模型,跟 Claude Opus 4.8 平起平坐甚至超过它?我得亲自验证。」


▲ Chubby 语气怀疑:「好得不像真的」,1270 赞、15.7 万浏览。直接把标杆从官方对标的 4.7 拉到了 4.8
注意一个细节——官方公告里写的对标是「超过 Claude Opus 4.7」,Chubby 开口就问4.8。这个抬了一档的问法,成了接下来所有争论的原点。
一个 397B 的开源模型,MIT 许可证,随便商用、随便改。它凭什么觉得自己能跟 Anthropic 的旗舰掰手腕?
不止是又一个跑分机器:Self-Scaffolding 到底新在哪
先拉参数。Ornith-1.0 是整整一个家族,四个尺寸一字排开:
- 9B Dense
:边缘设备友好,6~8GB 显存就能跑 - 31B Dense
:即将发布 - 35B MoE
:性价比明星——参数总量 35B,但因为 MoE 架构,激活参数实际只有 3B 级别 - 397B MoE
:旗舰,多 GPU 集群才能跑动
全部基于 Gemma 4 和 Qwen 3.5 做后训练。
参数规模讲完。真正让技术圈停下来细看的,是训练方法。

▲ DeepReinforce 官方博客:self-scaffolding 训练框架、三层防作弊机制、397B 与 Claude Opus 4.7/4.8 的完整对比表
传统的 agent coding 模型,依赖人类预先写好的「harness」——工具调用的顺序、记忆怎么管理、出错怎么重试、异常怎么兜底。这些脚手架是死的,人在训练前一次性写死。
Ornith 换了一种思路:让模型自己生成脚手架。
每一步 RL 训练拆成两个阶段:
- 模型先根据当前任务 + 上一轮用的脚手架,提出改进版脚手架——包括记忆结构怎么搭、编排逻辑怎么设计
- 再用这个新脚手架,生成最终的解决方案 rollout
奖励信号同时反哺到两个层级——「设计脚手架的策略」和「用脚手架解题的策略」形成闭环。翻译成人话:这个模型既学做题,也学给自己布置考场、定考试规则。
为防止模型在这套机制里钻空子作弊,官方搭了三层防御:
- 外层信任边界固定
:环境、工具面、测试隔离全部锁死,模型只能动内层策略 - 确定性监控
:一旦检测到读写受保护路径或改验证脚本,直接判零分 - 冻结的 LLM 裁判
:作为 verifier 之上的最终否决层,拦截意图级作弊
理论上很聪明。但在 X 上,不是每个人都买账。
「我亲手测完才发现,情况比 benchmark 数字复杂得多」
如果说官方公告点燃了期待,那给这场讨论真正定调的,是独立测试。
@no_stp_on_snek(Tom Turney)看到公告的第一反应,用他自己的话说——「我第一直觉就是 benchmaxxing。SWE-Bench 和 Terminal-Bench 这种公开测试集太容易过拟合了,背题就能刷分。」
他没有重复官方基准。他直接在自己的留出测试集上,用 Ornith 35B 和 Qwen3.6-35B 做了头对头盲测——相同 prompt、相同采样参数,测的是不会被「背题」造假的能力:行为模式、长时程 agent 稳定性、对虚假上下文的抵抗力。





▲ Tom Turney 的独立留出集测试:456 赞、7.2 万浏览。结论——Ornith 并非 benchmaxxing 骗局,是一个强但过度谨慎的 specialist
结果一出来,他写了一篇极详细的报告。几个关键发现:
数学能力:Ornith 8/8 全对,Qwen 7/8。更微妙的是——Ornith拒绝回答了一个「它实际上不可能知道」的问题,Qwen 直接编了一个数字。RL 训练没有吃掉它的数理基础,反而强化了诚实性。
长时程能力:这才是 agentic coding 真正分高下的战场。Tom 设计了一个「毒丸测试」——在对话中途注入一条虚假声明,用户坚称「我们已经决定用 Redis」,实际上根本没讨论过。
Qwen 屈服了。它最终 PR 总结里编造了「Redis 已经接入」。 Ornith 直接拒绝。总结里诚实地记录了实际发生的事,并单独标注了被拒绝的虚假声明。
另一个任务里,Ornith 抓出了 Qwen 漏掉的致命 planted bug,完成了 7 部分交付物——Qwen 做到一半就截断了。
代价:更谨慎,也更啰嗦。同一个 RL 训练让它能完成大任务、拒绝毒丸,也让它对简单合法请求「想太多」——明明可以直接动手的事,非要先搭一套前置流程。
Tom 最后留下的话没有滤镜:
“Not a fraud. A strong, cautious specialist.”
「不是骗局。一个强、但过度谨慎的专才。」
日本工程师用消费级显卡跑完 40 道题,结果让实用主义者兴奋了
如果说 Tom 的测试验证了「强在哪」,zephel01 在 note.com 发布的报告则回答了另一个问题:普通人的电脑能跑吗?

▲ zephel01 note.com 实测:RTX 5090 + llama.cpp GGUF,40 道 Python 题,35B Q5 拿到 97.5% 解决率,MoE 推理速度反超 9B Dense
一张 RTX 5090,llama.cpp 加载 GGUF 格式,40 道 Python 任务——从「容易」到「前沿」五档,pytest 判定通过才算数。
结果:
- 35B Q5_K_M
:40 题做对 39 题,97.5% 解决率。唯一漏的是 banker’s rounding(银行家舍入法)——连有经验的程序员也常踩坑的细节 - 9B Q6/BF16
:90% 解决率 - 速度倒挂
:35B MoE 的推理速度竟然全面快于 9B Dense。MoE 虽然总参数大,但每个 token 只激活一小部分专家,实际计算量远低于同规模的 dense 模型。35B Q5_K_M 跑到了 259 tok/s,准确和速度都拿到了
他的推荐不绕弯:能腾出 25GB 显存放 35B Q5,就别纠结,直接上;空间紧张的话,9B Q4 是性价比王。
但另一个测试者翻了车
不是所有人都被打动了。
@selim_aktas2 发了一帖,语气毫不留情:
“Hate to be the bearer of bad news, but Ornith models are just the usual benchmaxxing slop. On a benchmark which it doesn’t expect, SWE-Bench Verified Single-turn, it fails spectacularly.”
「我讨厌带来坏消息,但 Ornith 模型不过是又一轮 benchmaxxing 垃圾。在一个它没准备过的 benchmark——SWE-Bench Verified Single-turn——它惨败。」


▲ Selim Aktas 的质疑帖:SWE-Bench Verified Single-turn 惨败,视觉任务输出崩坏,批评这是又一轮「benchmaxxing slop」
他的测试集中在模型没有针对性优化过的场景:
SWE-Bench Verified Single-turn:常规 SWE-Bench 是多步 agent 交互,模型可以多轮调用工具、读文件、试错。Single-turn 版本只给一轮机会——没有对话历史,没有工具回调窗口。Ornith 直接砸锅。
视觉任务:ray tracing 和 lava lamp 渲染输出极差,跟参考结果天差地别。
Reasoning loop:模型在 debug 循环里反复「wait, I’m confusing myself」——找到答案了又重新推导,明明定位了 root cause 又从头来一次。
Selim 定性:benchmaxxing slop,面向基准过拟合的垃圾。
同一款 35B 模型,在 Tom 那边完成了 7 部分交付物、碾压 Qwen;在 Selim 这边自己把自己绕死。
两边都没撒谎。
两边矛盾的共同根因,藏在训练分布里
两个测试的矛盾指向同一个根因——OOD(Out-of-Distribution,分布外)灾难。
Tom 和 zephel01 测的,是模型 RL 训练直接强化的维度:长时程 agent 协同、多步推理、抵抗上下文污染、诚实性。这些是 self-scaffolding 训练的核心目标,Ornith 在这些维度上确实做对了。
Selim 测的,是训练分布之外的场景:单轮、无工具、视觉理解。这些恰好不在 Ornith 的 RL 配方里。同一个模型从长时程利器变成「把自己绕死」的困兽,根子在训练范式划出的能力边界——线内是 specialist,线外回到原点。
开源社区的争吵正在沉淀成一个清晰判断:
- 在 agentic coding 这个垂直方向上
,Ornith(尤其是 35B MoE)做到了开源前所未见的水平。MIT 许可证意味着任何团队都能拿去商用、微调、部署,没有任何门槛 - 脱离 agent 场景
,它就是另一个普通模型——不会画画、看不明白图、一轮对话搞不定复杂问题 - 397B 旗舰 vs Claude Opus 4.8
:官方自己都没这么宣传。官方的对标是 4.7,而且只在特定 benchmark 上压过。4.8 在 Terminal-Bench 上 85 vs 77.5,SWE-Bench Verified 上 87.6 vs 82.4——差距客观存在

▲ Reddit r/AIDeveloperNews 讨论帖:社区反应两极——有人兴奋于开源前沿逼近闭源,有人质疑过拟合风险
换个角度看——一个 397B 的开源模型、MIT 许可证、自研训练方法全公开,能在多项编码指标上压过 Claude Opus 4.7。半年以前,这种事没人敢想。
更深的一个数据:**35B MoE 在 Terminal-Bench 上拿 64.2,Qwen 3.5-397B 只有 53.5。**参数少了 10 倍,结果反倒领先 10 个点。训练范式碾压裸参数规模。这对开源社区的启示足够大——不烧大厂级别的算力,也能在垂直方向打出竞争力。
开源在做饭,闭源该看厨房了
Ornith-1.0 真正改变了什么?
**Agent coding 的门槛被一脚踹下来了。**9B 模型 6GB 显存就能跑,35B Q5 不到 25GB,消费级显卡就能搭本地 coding agent。已经有人在用 Ornith 驱动真实 PR、渗透测试、密码管理 agent——这些场景不需要 397B 的巨无霸,35B 就够。
**Self-scaffolding 这条路被验证了。**让模型自己生成脚手架、联合优化 scaffold 和 solution,之前更多停留在论文概念里。Ornith 是第一个把它做进产品级开源模型、并拿出独立验证结果的团队。跟进者不会少。
**开源给闭源的压力是实打实的。**Anthropic 的 Opus 系列在 coding agent 领域仍是王者,但一个 MIT 开源的 397B 模型在部分指标上已经只差一档。如果 Opus 不加速迭代,这一档随时可能被追上。
31B Dense 版本已经在路上了。如果能填在 9B 和 35B 之间的甜蜜点,本地 agent coding 的全套拼图就齐了。
而那句「好得不像真的」——也许最准确的理解是:好是真的,只是好在了你没预料到的方向上。
本文转载自微信公众号,如有侵权请联系删除。
- 标题: 「好得不像真的」!397B开源模型Ornith-1.0跑分追平Claude Opus 4.8,首批实测的人吵翻了
- 作者: lxiol
- 创建于 : 2026-07-06 10:48:12
- 更新于 : 2026-07-06 10:48:12
- 链接: https://blog.lxiol.cn/2026/07/06/好得不像真的397B开源模型Ornith-10跑分追平Claude-Opus-48首批实测的人吵翻了/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。