@SlimTradeyBaby: 刚刚远程启动了 Ornith 35B Q4 在 5090 上…… 2329 prompt / 195 gen tok/s,在 32k 下稳定运行。快速测试仅...
摘要
DeepReinforce AI 发布了 Ornith-1.0,这是一个自优化的开源模型系列,专为智能代理编码而设计,包含一个 35B MoE 变体,在编码基准测试中达到了最先进的性能,并能在 5090 等单 GPU 上高效运行。
查看缓存全文
缓存时间: 2026/06/26 22:16
刚刚在5090上远程启动了Ornith 35B Q4模型… 2329 prompt / 195 gen tok/s,32k上下文下稳如磐石。这只是快速测试,完整跑等回家再搞,但这玩意儿看着很猛……我们可能又有一个能打平 qwen 3.6 35b 的新硬核对决者了。GGUF : https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF… — # deepreinforce-ai/Ornith-1.0-35B-GGUF · Hugging Face 来源:https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF Ornith 博客 (https://deep-reinforce.com/ornith.html) Aloha! 🌺 今天,我们发布 Ornith-1.0,这是一个自我改进的开源模型家族,专为智能体编程(agentic coding)打造。亮点包括:
- 最先进的编码智能体:提供 9B(密集)、31B(密集)、35B(MoE)和 397B(MoE)版本(基于 Gemma 4 和 Qwen 3.5 后训练),在 Terminal-Bench 2.1、SWE-Bench、NL2Repo 和 OpenClaw 等编程基准测试中,达到同级别开源模型的最优性能。
- 自我改进的训练框架:Ornith-1.0 采用强化学习(RL),不仅学习生成解决方案(rollout),还学习驱动这些 rollouts 的脚手架(scaffold)。通过联合优化脚手架和最终方案,模型能够发现更好的搜索轨迹并生成更高质量的解决方案。
- 许可证:采用 MIT 许可证,全球可访问,无地域限制。
Ornith 35B 基准测试结果
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#ornith-10-35b Ornith 1.0 35B
本模型卡文档描述 Ornith-1.0-35B,这是 Ornith 家族的轻量级成员,专为单 GPU 高效部署设计。
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#benchmarks 基准测试
| 测试项 | Ornith-1.0-35B | Qwen3.5-35B | Qwen3.6-35B | Gemma4-31B | Qwen3.5-397B |
|---|---|---|---|---|---|
| 智能体编程 | |||||
| Terminal-Bench 2.1 (Terminus-2) | 64.2 | 41.4 | 52.5 | 42.1 | 53.5 |
| Terminal-Bench 2.1 (Claude Code) | 62.8 | 38.9 | 49.2 | - | 48.6 |
| SWE-bench Verified | 75.6 | 70 | 73.4 | 52 | 76.4 |
| SWE-bench Pro | 50.4 | 44.6 | 49.5 | 35.7 | 51.6 |
| SWE-bench Multilingual | 69.3 | 60.3 | 67.2 | 51.7 | 69.3 |
| NL2Repo | 34.6 | 20.5 | 29.4 | 15.5 | 36.8 |
| Claw-eval Avg | 69.8 | 65.4 | 68.7 | 48.5 | 70.7 |
| SWE Atlas - QnA | 37.1 | 13.2 | 15.5 | - | 20.4 |
| SWE Atlas - RF | 29.7 | 10.2 | 11.4 | - | 18.4 |
| SWE Atlas - TW | 27.8 | 9.8 | 13.3 | - | 18.5 |
- Terminal-Bench 2.1 (Terminus-2):我们使用 Harbor/Terminus-2 框架评估 Terminal-Bench 2.1,解析器=json,温度=1.0,top_p=1.0,上下文窗口=128K。每次运行超时4小时,使用32核CPU和48GB内存,结果取5次运行的平均值。我们调整了 Qwen 聊天模板以确保训练和推理的一致性 (https://huggingface.co/deepreinforce-ai/Ornith-1.0-397B/blob/main/chat_template.jinja),并修改 Harbor 以对齐 vLLM 的 reasoning_content 键。
- Terminal-Bench 2.1 (Claude Code):我们使用 Claude Code 2.1.126 评估 Terminal-Bench 2.1,解析器=json,温度=1.0,top_p=1.0,max_new_tokens=131072。结果取5次运行的平均值。同样需要修改 Qwen 聊天模板。
- SWE-Bench Verified、Pro 和 Multilingual:使用 OpenHands 框架,温度=1.0,top_p=0.95,上下文窗口=256k。
- SWE Atlas QnA、RF、TW:使用 mini SWE agent 框架,温度=1.0,top_p=0.95,上下文窗口=128K。结果取5次运行的平均值。
- NL2Repo:温度=1.0,top_p=1.0,上下文=400K,输出=48K,启用反黑客过滤器。
- ClawEval:基于真实用户任务分布的智能体代码基准测试;温度=0.6,上下文=256K。
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#quickstart 快速开始
📝 注意:Ornith-1.0-35B 是一个 推理模型:默认情况下,助手回复在最终答案前会以 ... 代码块开头。下面的服务配置启用了推理解析器,以便将思维链(chain-of-thought)返回到单独的 reasoning_content 字段中,同时启用工具调用解析器,使模型输出的 `` 块以 OpenAI 风格的 tool_calls 形式呈现。
服务 Ornith-1.0-35B 需要较新版本的运行时:
- Transformers ≥ 5.8.1
- vLLM ≥ 0.19.1
- SGLang ≥ 0.5.9
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#serving-ornith-10-35b 服务 Ornith-1.0-35B
以下两种方法可在单个 8×80GB GPU 节点(tensor-parallel 8)上搭建 OpenAI 兼容服务器。请将 --tensor-parallel-size / --tp 调整为您拥有的 GPU 数量。
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#vllm vLLM
vllm serve deepreinforce-ai/Ornith-1.0-35B \
--served-model-name Ornith-1.0-35B \
--tensor-parallel-size 8 \
--host 0.0.0.0 --port 8000 \
--max-model-len 262144 \
--gpu-memory-utilization 0.90 \
--enable-prefix-caching \
--enable-auto-tool-choice --tool-call-parser qwen3_xml \
--reasoning-parser qwen3 \
--trust-remote-code
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#sglang SGLang
python -m sglang.launch_server \
--model-path deepreinforce-ai/Ornith-1.0-35B \
--served-model-name Ornith-1.0-35B \
--tp 8 \
--host 0.0.0.0 --port 8000 \
--context-length 262144 \
--mem-fraction-static 0.85 \
--tool-call-parser qwen3_coder \
--reasoning-parser qwen3
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#hugging-face-transformers Hugging Face Transformers
如需快速本地测试(或编写离线生成脚本),可直接使用 Transformers 加载模型。请确保安装了最新版本——参见 Transformers 安装指南(https://huggingface.co/docs/transformers/installation);Ornith-1.0-35B 需要 transformers >= 5.8.1。
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "deepreinforce-ai/Ornith-1.0-35B"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
dtype="auto",
device_map="auto",
)
messages = [
{"role": "user", "content": "Write a Python function is_prime(n). Keep it short."}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
generated = model.generate(
**inputs,
max_new_tokens=512,
do_sample=True,
temperature=0.6,
top_p=0.95,
top_k=20,
)
output_ids = generated[0][inputs.input_ids.shape[1]:]
# The reply contains a ... reasoning block followed by the answer.
content = tokenizer.decode(output_ids, skip_special_tokens=True)
print(content)
要分离推理过程和最终答案,请解析 ` 标记:
text = tokenizer.decode(output_ids, skip_special_tokens=True)
if "" in text:
reasoning, answer = text.split("", 1)
reasoning = reasoning.replace("", "").strip()
answer = answer.strip()
else:
reasoning, answer = "", text.strip()
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#using-ornith-10-35b-via-the-chat-completions-api 通过 Chat Completions API 使用 Ornith-1.0-35B
一旦 vLLM 或 SGLang 服务器运行起来,您就可以使用任何 OpenAI 兼容客户端与其交互。
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#basic-usage 基本用法
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:8000/v1",
api_key="EMPTY", # 本地服务器可接受任意非空字符串
)
response = client.chat.completions.create(
model="Ornith-1.0-35B",
messages=[
{"role": "user", "content": "Write a one-line Python lambda that squares a number."}
],
temperature=0.6,
top_p=0.95,
max_tokens=1024,
)
message = response.choices[0].message
# reasoning_content 包含推理过程;content 包含最终答案。
print("reasoning:", getattr(message, "reasoning_content", None))
print("answer:", message.content)
您还可以流式输出 token,或为模型提供工具——Ornith-1.0-35B 会生成格式良好的函数调用,服务器会将其解析为标准的 tool_calls 字段:
tools = [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get the current weather for a city",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"],
},
},
}
]
response = client.chat.completions.create(
model="Ornith-1.0-35B",
messages=[{"role": "user", "content": "What is the weather in Paris right now?"}],
tools=tools,
tool_choice="auto",
temperature=0.6,
max_tokens=2048,
)
tool_call = response.choices[0].message.tool_calls[0]
print(tool_call.function.name, tool_call.function.arguments)
# -> get_weather {"city": "Paris"}
您可以将任何 OpenAI 兼容 SDK(Python、Node.js 等)或 curl 指向同一个 /v1/chat/completions 端点。
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#agentic-usage 智能体用法
Ornith-1.0-35B 在工具调用和智能体编码方面表现出色。
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#agent-frameworks 智能体框架
由于 Ornith-1.0-35B 开放了带有工具调用的 OpenAI 兼容端点,它可以直接与标准智能体框架配合使用。以下是一个最小示例,通过 MCP 服务器将 Ornith-1.0-35B 连接到工具。
import os
from openai import OpenAI
client = OpenAI(
base_url=os.getenv("OPENAI_BASE_URL", "http://localhost:8000/v1"),
api_key=os.getenv("OPENAI_API_KEY", "EMPTY"),
)
tools = [
{
"type": "function",
"function": {
"name": "run_shell",
"description": "Run a shell command and return its output.",
"parameters": {
"type": "object",
"properties": {
"command": {"type": "string", "description": "The command to run"}
},
"required": ["command"],
},
},
}
]
messages = [{"role": "user", "content": "List the Python files in the current directory."}]
response = client.chat.completions.create(
model="deepreinforce-ai/Ornith-1.0-35B",
messages=messages,
tools=tools,
temperature=0.6,
top_p=0.95,
)
print(response.choices[0].message)
使用 Ornith 配合智能体框架的示例:
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#hermes-agent Hermes Agent
# Hermes 可与任何 OpenAI 兼容端点通信 —— 指向您的 Ornith 服务器。
export OPENAI_BASE_URL="http://localhost:8000/v1"
export OPENAI_API_KEY="EMPTY"
export MODEL="deepreinforce-ai/Ornith-1.0-35B"
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#atomicchat-ollama–llamacpp Atomic.chat / Ollama / llama.cpp
# 两种运行时均可加载 GGUF 版本的 Ornith(已在 deepreinforce-ai/Ornith-1.0-35B-GGUF 发布)。
# llama.cpp —— 在端口 8000 上提供 OpenAI 兼容 API。
llama-server -hf deepreinforce-ai/Ornith-1.0-35B-GGUF --port 8000 -c 262144
# Ollama —— 直接从 Hugging Face 拉取并聊天。
ollama run hf.co/deepreinforce-ai/Ornith-1.0-35B-GGUF
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#openclaw OpenClaw
# OpenClaw 可与任何 OpenAI 兼容端点通信 —— 指向您的 Ornith 服务器。
export OPENAI_BASE_URL="http://localhost:8000/v1"
export OPENAI_API_KEY="EMPTY"
export OPENAI_MODEL="deepreinforce-ai/Ornith-1.0-35B"
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#unsloth-studio Unsloth Studio
pip install unsloth
# 在 Python 中加载 Ornith 用于快速本地推理或微调:
# from unsloth import FastLanguageModel
# model, tokenizer = FastLanguageModel.from_pretrained(
# "deepreinforce-ai/Ornith-1.0-35B",
# max_seq_length=262144,
# load_in_4bit=True,
# )
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#openhands OpenHands
pip install openhands-ai
# OpenHands 通过 LiteLLM 路由;前缀 "openai/" 选择 OpenAI 兼容路径。
export LLM_MODEL="openai/deepreinforce-ai/Ornith-1.0-35B"
export LLM_BASE_URL="http://localhost:8000/v1"
export LLM_API_KEY="EMPTY"
# 启动 CLI(或使用相同环境变量运行官方 OpenHands Docker 镜像)。
openhands
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#coding-clis 编码 CLI
Ornith-1.0-35B 专为终端中的编码智能体进行了优化。将任何 OpenAI 兼容的编码 CLI 指向您的 Ornith-1.0-35B 端点(设置 OPENAI_BASE_URL 和 OPENAI_API_KEY),即可理解大型代码库、自动化繁琐工作并更快交付。
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#opencode OpenCode
# 在 ~/.config/opencode/opencode.json 中将您的本地 Ornith 端点注册为提供程序:
#
# {
# "$schema": "https://opencode.ai/config.json",
# "provider": {
# "ornith": {
# "npm": "@ai-sdk/openai-compatible",
# "name": "Ornith (local)",
# "options": { "baseURL": "http://localhost:8000/v1", "apiKey": "EMPTY" },
# "models": { "deepreinforce-ai/Ornith-1.0-35B": { "name": "Ornith-1.0-35B" } }
# }
# }
# }
opencode
https://huggingface.co/deepreinforce-ai/Ornith-1.0-35B-GGUF#citation 引用
如果您觉得我们的工作有帮助,欢迎引用。
@misc{ornith-35b,
title = {{Ornith-1.0-35B}: Agentic Coding, Open to All},
url = {https://deep-reinforce.com/ornith_1_0.html},
author = {{DeepReinforce Team}},
year = {2026}
}
相似文章
@malikwas1f: Ornith-1.0-35B:一个Qwen3.6-35B-A3B的编码微调版本,在真实编码上略优于基础模型(aider 15/30 vs 13)——完整262K…
宣布Ornith-1.0-35B,一个Qwen3.6-35B-A3B的编码微调版本,在aider基准测试上略优于基础模型。同时推广用于在RTX 3090上运行LLM的club-3090仓库。
@SlimTradeyBaby:刚读了 @no_stp_on_snek 对全新 Ornith-1.0 35B 编码器的评测,这绝对是我很久以来见过的最好的模型测评之一……
对全新 Ornith-1.0 35B 编码模型的评测,绕过公开基准,在真实代理任务上进行测试,突出其在长程编码和连贯性方面的优势,以及诸如冗长性等代价。
@no_stp_on_snek: 一款新的35B编码模型发布了(Ornith-1.0),一篇推广博客说它"碾压"了基准测试。我的第一直觉是这是benchmaxx……
一款新的35B编码模型Ornith-1.0与Qwen3.6-35B在自定义测试中进行了对比。用户发现Ornith-1.0在长期自主编码方面确实更强,能够抵抗不良上下文并完成大型任务,但它更加谨慎和冗长,有时会对简单请求过度限制。
@SlimTradeyBaby: 所有8-12GB GPU用户注意!这款全新的Ornith-1.0-9B看起来将成为小显存配置的强劲选手…
Ornith-1.0-9B是一款新的90亿参数AI模型,针对8-12GB GPU进行了优化,在智能体编码基准测试中表现出色,性能与大小为其2-3倍的模型相当甚至超越。
@sudoingX: 在dgx spark上运行Ornith,看看它到底是什么。这是一个来自@ornith_ / deepreinfor... 的新代理式编码模型。
Ornith-1.0是来自deepreinforce-ai的新一代开源代理式编码模型系列,采用强化学习训练,同时优化解决方案和脚手架。其35B MoE版本在编码基准测试中达到了最先进水平,并支持高效的单一GPU部署。