
2026/06/30 2:16
Ornith-1.0:エージェンティックコーディング用自己改善型オープンソースモデル
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
以下の改良された要約は、すべての欠落要素を取り込みつつ明瞭性を維持しています:
Ornith-1.0 は、MIT ライセンスのもとグローバルなアクセス可能性を確保すべく公開され、特定のエイジェントコーディングタスク向けに設計されたオープンソースの自己改善型 AI モデルファミリーです。このスイートには 4 つの異なるサイズのモデルが含まれており、9B-Dense モデル(単一 GPU マシン向けに最適化)および 35B および 397B パラメータを持つ MoE ベースの変種(マルチノードクラスター向け)が備わっています。すべてのモデルは Gemma 4 と Qwen 3.5 のアーキテクチャを基盤としており、Terminal-Bench 2.1、SWE-bench、NL2Repo、OpenClaw といったエイジェントコーディングベンチマークにおいて最先端の性能を発揮しています。これは、ソリューションロールアウトとコードスキャフォールドを同時に最適化する強化学習フレームワークによって達成されています。例えば、397B の変種は Terminal-Bench 2.1 で 77.5、SWE-bench Verified で 82.4 というトップクラスの結果を達成し、9B モデルは Terminal-Bench 2.1 で 43.1 というスコアを得ています。モデルは最大 256K のコンテキストウィンドウをサポートし、llama.cpp/Ollama を介したローカル推論のために bf16、FP8、GGUF クアンタIZED バージョン等多种の形式で利用可能です。統合は大規模なエイジェントフレームワーク(OpenHands や Hermes Agent など)と標準的な OpenAI 互換インターフェースまたは MCP サーバーを通じてシームレスに行われ、最近のランタイム(Transformers ≥ 5.8.1 および vLLM ≥ 0.19.1)のみが必要です。現在のデフォルト動作は最終回答前に推論ブロックを含めて明瞭性を高めるものであり、今後のアップデートではこの分離の refinement を目指しています。
本文
Ornith-1.0:エージェント型コーディング用オープンソースモデル
Ornith-1.0 は、自律的なコード作成(エージェント型コーディング)に向けた自己改善型のオープンソースモデルです。
ハイライト
- 最先端の性能: Gemma 4 および Qwen 3.5 を基盤に後トレーニングされ、Terminal-Bench 2.1やSWE-Benchなど主要なベンチマークでトップクラスのパフォーマンスを記録しています。
- 提供されているバージョン:9B-Dense、31B-Dense、35B-MoE、397B-MoE の 4 つ。
- 自己改善型フレームワーク: 強化学習(RL)を用いて、単なるコード実行だけでなく、**スカルフォールド(構造的なサポート手順書)**も同時に学習・最適化します。これにより高品質なソリューションが生成されます。
- 利用制限なし: MIT ライセンスであり、世界中で自由に利用・アクセス可能です。
ベンチマーク結果
各モデルはサイズに相応しい基準モデルと比較して評価されています(全ての評価に同じ設定を使用)。
Ornith-1.0-9B
Ornith-1.0-9B は Qwen3.5 や Gemma4 の 9B/31B モデルを上回り、SWE-bench Verified で69.4%、Claw-eval Avg で**63.1%**のスコアを達成。
| モデル | SWE-bench Verified | SWE-bench Pro | Claw-eval Avg |
|---|---|---|---|
| Ornith-1.0-9B | 69.4 | 42.9 | 63.1 |
| Qwen3.5-35B | 70.0 | 44.2 | 65.4 |
| Gemma4-31B | 52.0 | 35.7 | 48.5 |
Ornith-1.0-35B
Ornith-1.0-35B は同等クラスの Qwen3.5-35B または Gemma4-31B を凌ぎ、SWE-bench Verified で75.6%、Claw-eval Avg で**69.8%**のスコアを記録。
| モデル | SWE-bench Verified | SWE-bench Pro | Claw-eval Avg |
|---|---|---|---|
| Ornith-1.0-35B | 75.6 | 50.4 | 69.8 |
| Qwen3.5-397B | 76.4 | 51.6 | 70.7 |
| GLM-5.2-744B | - | 62.1 | - |
Ornith-1.0-397B
超大規模モデルとして、Claude Opus 4.8 に次ぐ SWE-bench Verified スコアを記録。SWE Atlas RF で**42.6%**という高スコアを発揮しました。
| モデル | SWE-bench Verified | SWE-bench Pro | SWE Atlas - RF |
|---|---|---|---|
| Ornith-1.0-397B | 82.4 | 62.2 | 42.6 |
| Qwen3.5-397B | 76.4 | 51.6 | 18.4 |
| Claude Opus 4.8 | 87.6 | 69.2 | - |
注: Terminal-Bench, SWE-bench, NL2Repo など、主要ベンチマークの詳細数値と評価設定については公式データ表を参照してください。
クイックスタート
環境要件(インストール) 推論モデルを使用するため、以下の最新ランタイムが必要です。
≥ 5.8.1Transformers
≥ 0.19.1vLLM
≥ 0.5.9SGLang
推奨パラメータ ベンチマークを再現するには
temperature=1.0 ですが、通常推論では temperature=0.6 が推奨されます。
: 0.95top_p
: 20top_k
チェックポイントの種類
| チェックポイント | アーキテクチャ | 用途・特徴 |
|---|---|---|
| Dense (~9B) | シングル GPU でのサービス・ファインチューニング |
| GGUF (量子化) | / によるローカル推論 |
| MoE (35B) | フル精度マルチ GPU サービス |
| FP8 | メモリ使用量を約半減(FP8 対応 GPU) |
| MoE (397B) | マルチ GPU ノードでのフル精度サービス |
| FP8 | メモリ効率的な超大規模モデル推論 |
サービス提供(サービング)
OpenAI 互換インターフェースで、以下のレシピを参照して起動してください。VRAM 制限がある場合は
-FP8 バージョンを使用します。
vLLM サーバー起動
MODEL=deepreinforce-ai/Ornith-1.0-397B # MoE モデルの場合は --tensor-parallel-size を指定 (Dense モデルは除外) vllm serve $MODEL \ --served-model-name Ornith-1.0 \ --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
SGLang サーバー起動
MODEL=deepreinforce-ai/Ornith-1.0-397B python -m sglang.launch_server \ --model-path $MODEL \ --served-model-name Ornith-1.0 \ --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
ローカル推論(Transformers)
最新の Python スクリプトやオフラインテストに便利です。
from transformers import AutoModelForCausalLM, AutoTokenizer model_name = "deepreinforce-ai/Ornith-1.0-9B" # または -35B / -397B tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForCausalLM.from_pretrained( model_name, dtype="auto", device_map="auto", ) messages = [ {"role": "user", "content": "is_prime(n) という Python 関数を短いものを書く。"} ] 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) output_ids = generated[0][inputs.input_ids.shape[1]:] content = tokenizer.decode(output_ids, skip_special_tokens=True) print(content)
Chat Completions API とツール連携
vLLM や SGLang サーバーを起動し、任意の OpenAI 互換クライアントからアクセス可能です。
基本的なチャット機能
推論トレース (
reasoning_content) と最終回答 (content) が分離された形式で出力されます。
from openai import OpenAI client = OpenAI( base_url="http://localhost:8000/v1", api_key="EMPTY" ) response = client.chat.completions.create( model="Ornith-1.0", messages=[{"role": "user", "content": "数を 2 乗する Python の lambda 式を書いてください。"}], temperature=0.6, top_p=0.95, max_tokens=1024, ) print("reasoning:", getattr(response.choices[0].message, "reasoning_content", None)) print("answer:", response.choices[0].message.content)
ツール呼び出し(Tool Calls)
モデルは標準的な
tool_calls フィールドで関数呼び出しを出力します。
tools = [ { "type": "function", "function": { "name": "get_weather", "description": "都市の現在の天気を取得する", "parameters": { "type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"] } } } ] response = client.chat.completions.create( model="Ornith-1.0", messages=[{"role": "user", "content": "今のパリの天気はどうですか?"}], tools=tools, tool_choice="auto", 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"}
エージェント型使い方 (Agentic Usage)
Ornith-1.0 はツール呼び出し能力に優れ、標準のエージェントフレームワークとすぐに連携できます。
MCP サーバー経由の接続例
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": "シェルコマンドを実行し、その出力を返す。", "parameters": {"type": "object", "properties": {"command": {"type": "string"}}, "required": ["command"]} } } ] response = client.chat.completions.create( model="Ornith-1.0", messages=[{"role": "user", "content": "現在のディレクトリの Python ファイルをリストしてください。"}], tools=tools, temperature=0.6 ) print(response.choices[0].message)
既存のエージェントハネスとの互換性
以下のツールは OpenAI 互換エンドポイントをそのまま利用可能です。
- Hermes Agent:
を設定するだけで利用可能。OPENAI_BASE_URL - OpenHands:
というプレフィックスで指定。openai/Ornith-1.0pip install openhands-ai export LLM_MODEL="openai/Ornith-1.0" export LLM_BASE_URL="http://localhost:8000/v1" - llama.cpp / Ollama: GGUF バージョン(9B, 35B)を直接ロード。
# llama.cpp llama-server -hf deepreinforce-ai/Ornith-1.0-9B-GGUF --port 8000 -c 262144 # Ollama ollama run hf.co/deepreinforce-ai/Ornith-1.0-9B-GGUF - Unsloth Studio: ローカルでの高速推論・ファインチューニング。
- OpenClaw: オープンソースエージェントとして利用可能。
コーディング向け CLI: OpenCode
ローカルエンドポイントをプロバイダーとして登録し、大規模コードベースを理解・自動化します。
// ~/.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": { "Ornith-1.0": { "name": "Ornith-1.0" } } } } }
引用(Citation)
本研究成果を引用する際は、以下を参照してください。
@misc{ornith-1.0, title = {{Ornith-1.0}: エージェント型コーディング、全員向け}, url = {https://deep-reinforce.com/ornith_1_0.html}, author = {{DeepReinforce チーム}}, year = {2026} }