deepreinforce-ai/Ornith-1.0-9B
摘要
deepreinforce-ai 发布了 Ornith-1.0,一个开源编码代理模型系列,在编码基准测试上实现了最先进的性能,提供从 9B 到 397B 的参数规模,采用自我改进训练框架和 MIT 许可证。
任务: text-generation
标签: transformers, safetensors, qwen3_5, image-text-to-text, text-generation, conversational, license:mit, eval-results, endpoints_compatible, region:us
查看缓存全文
缓存时间: 2026/06/26 17:14
deepreinforce-ai/Ornith-1.0-9B · Hugging Face 源地址: https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B Ornith 博客 (https://deep-reinforce.com/ornith.html) 大家好!🌺 今天,我们发布了 Ornith-1.0,一个面向智能体编码的自我改进开源模型家族。亮点如下: - 最先进的编码智能体:提供 9B-Dense、31B-Dense、35B-MoE 和 397B-MoE 四种规格(基于 Gemma 4 和 Qwen 3.5 后训练),在 Terminal-Bench 2.1、SWE-Bench、NL2Repo 和 OpenClaw 等编码基准测试中,在同等规模开源模型中达到了最先进的性能。 - 自我改进训练框架:Ornith-1.0 使用强化学习(RL)不仅学习生成解决方案,还学习驱动这些解决方案的脚手架。通过联合优化脚手架和最终解决方案,模型发现了更好的搜索轨迹,生成了更高质量的解决方案。 - 许可证:采用 MIT 许可证,全球可访问,无地域限制。 Ornith 9B 基准测试结果 ## https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#ornith-10-9b-1Ornith 1.0 9B 本模型卡记录了 Ornith-1.0-9B,这是 Ornith 家族中最轻量的成员,专为高效单 GPU 部署而设计。 ### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#benchmarks基准测试 | 模型 | Ornith-1.0-9B | Qwen3.5-9B | Qwen3.5-35B | Gemma4-12B | Gemma4-31B | | :— | —: | —: | —: | —: | —: | | 智能体编码 | | | | | | | Terminal-Bench 2.1 (Terminus-2) | 43.1 | 21.3 | 41.4 | 21 | 42.1 | | Terminal-Bench 2.1 (Claude Code) | 40.6 | 18.9 | 38.9 | - | - | | SWE-bench Verified | 69.4 | 53.2 | 70 | 44.2 | 52 | | SWE-bench Pro | 42.9 | 31.3 | 44.6 | 27.6 | 35.7 | | SWE-bench Multilingual | 52 | 39.7 | 60.3 | 32.5 | 51.7 | | NL2Repo | 27.2 | 16.2 | 20.5 | 10.3 | 15.5 | | Claw-eval Avg | 63.1 | 53.2 | 65.4 | 32.5 | 48.5 | | SWE Atlas - QnA | 17.9 | 9.2 | 13.2 | - | - | | SWE Atlas - RF | 16.6 | 4.3 | 10.2 | - | - | | SWE Atlas - TW | 15.3 | 4.4 | 9.8 | - | - | * 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 对话模板以确保训练和推理之间的一致性 (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,参数为 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。 * 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,并启用反黑客过滤器。 * ClawEval:一个基于真实用户任务分布的智能体编码基准;参数为 temp=0.6,上下文窗口为 256K。 ## https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#quickstart快速上手 📝 注意 Ornith-1.0-9B 是一个推理模型:默认情况下,助手的回复会以 ... 代码块开头,然后才是最终答案。下面的服务配置启用了推理解析器,使思维链在独立的 reasoning_content 字段中返回;同时启用了工具调用解析器,使模型的 块以 OpenAI 风格的 `tool_calls` 形式呈现。 服务 Ornith-1.0-9B 需要较新的运行时: - **Transformers** ≥ 5.8.1 - **vLLM** ≥ 0.19.1 - **SGLang** ≥ 0.5.9 推荐的采样参数:`temperature=0.6`、`top_p=0.95`、`top_k=20`(使用 `temperature=1.0` 可复现报告的基准配置)。 ### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#serving-ornith-10-9b服务 Ornith-1.0-9B Ornith-1.0-9B 是一个密集的约 9B 模型(bf16 下约 19 GB),因此可以舒适地部署在**单个 80GB GPU** 上。下面的配置会启动一个 OpenAI 兼容的服务器;如果需要跨多个 GPU 分片,请添加 `--tensor-parallel-size` / `--tp` 参数。 #### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#vllmvLLM ``` vllm serve deepreinforce-ai/Ornith-1.0-9B \ --served-model-name Ornith-1.0-9B \ --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-9B#sglangSGLang ``` python -m sglang.launch_server \ --model-path deepreinforce-ai/Ornith-1.0-9B \ --served-model-name Ornith-1.0-9B \ --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-9B#hugging-face-transformersHugging Face Transformers 如需快速本地测试(或编写离线生成脚本),可直接使用 Transformers 加载模型。请确保安装了较新的版本——请参阅Transformers 安装指南 (https://huggingface.co/docs/transformers/installation);Ornith-1.0-9B 要求 `transformers >= 5.8.1`。 ``` from transformers import AutoModelForCausalLM, AutoTokenizer model_name = "deepreinforce-ai/Ornith-1.0-9B" 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-9B#using-ornith-10-9b-via-the-chat-completions-api通过 Chat Completions API 使用 Ornith-1.0-9B 一旦 vLLM 或 SGLang 服务器运行起来,即可使用任何 OpenAI 兼容的客户端与其通信。 #### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#basic-usage基本用法 from openai import OpenAI client = OpenAI( base_url="http://localhost:8000/v1", api_key="EMPTY", # any non-empty string works for a local server ) response = client.chat.completions.create( model="Ornith-1.0-9B", 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 holds the trace; content holds the final answer. print("reasoning:", getattr(message, "reasoning_content", None)) print("answer:", message.content) 您也可以进行流式传输,或者为模型提供工具——Ornith-1.0-9B 会输出格式良好的函数调用,服务器会将其解析为标准 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-9B", 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-9B#agentic-usage智能体使用 Ornith-1.0-9B 在工具调用和智能体编码能力方面表现出色。 ### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#agent-frameworks智能体框架 由于 Ornith-1.0-9B 暴露了支持工具调用的 OpenAI 兼容端点,它可以与标准智能体框架直接配合使用。下面是一个最小示例,通过 MCP 服务器将 Ornith-1.0-9B 连接到工具。 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-9B", 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-9B#hermes-agentHermes Agent # Hermes talks to any OpenAI-compatible endpoint — point it at your Ornith server. export OPENAI_BASE_URL="http://localhost:8000/v1" export OPENAI_API_KEY="EMPTY" export MODEL="deepreinforce-ai/Ornith-1.0-9B" #### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#atomicchat–ollama–llamacppAtomic.chat / Ollama / llama.cpp # Both runtimes load a GGUF build of Ornith (publish one at deepreinforce-ai/Ornith-1.0-9B-GGUF). # llama.cpp — serve an OpenAI-compatible API on port 8000. llama-server -hf deepreinforce-ai/Ornith-1.0-9B-GGUF --port 8000 -c 262144 # Ollama — pull and chat with the same GGUF straight from Hugging Face. ollama run hf.co/deepreinforce-ai/Ornith-1.0-9B-GGUF #### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#openclawOpenClaw # OpenClaw talks to any OpenAI-compatible endpoint — point it at your Ornith server. export OPENAI_BASE_URL="http://localhost:8000/v1" export OPENAI_API_KEY="EMPTY" export OPENAI_MODEL="deepreinforce-ai/Ornith-1.0-9B" #### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#unsloth-studioUnsloth Studio pip install unsloth # Load Ornith for fast local inference or fine-tuning (Python): # from unsloth import FastLanguageModel # model, tokenizer = FastLanguageModel.from_pretrained( # "deepreinforce-ai/Ornith-1.0-9B", # max_seq_length=262144, # load_in_4bit=True, # ) #### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#openhandsOpenHands pip install openhands-ai # OpenHands routes through LiteLLM; the "openai/" prefix selects the OpenAI-compatible path. export LLM_MODEL="openai/deepreinforce-ai/Ornith-1.0-9B" export LLM_BASE_URL="http://localhost:8000/v1" export LLM_API_KEY="EMPTY" # Launch the CLI (or run the official OpenHands Docker image with the same env vars). openhands ### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#coding-clis编码CLI Ornith-1.0-9B 针对基于终端的编码智能体进行了优化。将任何 OpenAI 兼容的编码 CLI 指向您的 Ornith-1.0-9B 端点(设置 OPENAI_BASE_URL 和 OPENAI_API_KEY),即可理解大型代码库、自动化繁琐工作并更快交付。 #### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#opencodeOpenCode # Register your local Ornith endpoint as a provider in ~/.config/opencode/opencode.json: # # { # "$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-9B": { "name": "Ornith-1.0-9B" } } # } # } # } opencode ### https://huggingface.co/deepreinforce-ai/Ornith-1.0-9B#citation引用 如果您觉得我们的工作有帮助,欢迎引用我们。 @misc{ornith_9b, title = {{Ornith-1.0-9B}: Agentic Coding, Open to All}, url = {https://deep-reinforce.com/ornith_1_0.html}, author = {{DeepReinforce Team}}, year = {2026} }
相似文章
deepreinforce-ai/Ornith-1.0-35B-GGUF
deepreinforce-ai 发布了 Ornith-1.0-35B-GGUF,这是一个最先进的开源编程智能体模型,它使用自我改进的强化学习来联合优化框架和解决方案生成,在编程基准测试上达到了SOTA性能。
DeepReinforce 发布 Ornith-1.0 开源编程模型(2分钟阅读)
DeepReinforce 开源了 Ornith-1.0,这是一系列自我改进的编程模型,参数从 9B 到 397B 不等,基于 Gemma 4 和 Qwen 3.5 基础模型训练,采用了一种新颖的强化学习方法,能够学习生成自己的脚手架。
@rohanpaul_ai: 又一个精彩的开源发布。DeepReinforce刚刚发布了Ornith-1.0,一个MIT许可的开源智能编码LLM系列…
DeepReinforce发布了Ornith-1.0,这是一个MIT许可的开源智能编码LLM系列,包含一个397B MoE模型,该模型在SWE-Bench和Terminal-Bench上超越了Claude Opus 4.7,采用了新颖的自我改进训练策略。
ornith-ai/Ornith-1.5-9B
Ornith-1.5-9B 是一款9B参数密集型AI模型,通过端到端自我改进来推进基础模型构建,并利用强化学习优化任务生成、框架构建和解决方案部署。它在与Qwen和Gemma等其他模型相比时,在各种基准测试上表现出竞争力性能。
ornith-ai/Ornith-1.5-35B-A3B-GGUF
Ornith-1.5-35B-A3B 是一款新的AI基础模型,通过采用端到端自我改进,在编码和代理基准测试上取得了卓越的性能,每个令牌仅激活约30亿个参数。