Instructions to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- llama-cpp-python
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1", filename="ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf", )
llm.create_chat_completion( messages = [ { "role": "user", "content": "What is the capital of France?" } ] ) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M # Run inference directly in the terminal: llama cli -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M # Run inference directly in the terminal: llama cli -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Use Docker
docker model run hf.co/LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
- Ollama
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with Ollama:
ollama run hf.co/LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
- Unsloth Studio
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 to start chatting
- Pi
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Run Hermes
hermes
- Atomic Chat new
- OpenClaw new
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- Docker Model Runner
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with Docker Model Runner:
docker model run hf.co/LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
- Lemonade
How to use LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1 with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull LordNeel/Ornith-1.0-35B-GGUF-llamacpp-tp1:Q4_K_M
Run and chat with the model
lemonade run user.Ornith-1.0-35B-GGUF-llamacpp-tp1-Q4_K_M
List all available models
lemonade list
Add SWE-bench quant and reasoning metrics
Browse files- MODEL_RELEASE_REPORT.md +450 -0
- README.md +407 -240
- benchmarks/raw/swebench/ornith-q6-think-verified100-summary.json +67 -0
- benchmarks/raw/swebench/ornith_iq4_xs_mtp_graft_verified_mini.json +170 -0
- benchmarks/raw/swebench/ornith_iq4_xs_verified_mini.json +167 -0
- benchmarks/raw/swebench/ornith_q3_k_m_verified_mini.json +169 -0
- benchmarks/raw/swebench/ornith_q4_k_m_verified_mini.json +170 -0
- benchmarks/raw/swebench/ornith_q5_k_m_verified_mini.json +171 -0
- benchmarks/raw/swebench/ornith_q6_k_verified_mini.json +170 -0
- benchmarks/raw/swebench/ornith_q8_0_verified_mini.json +169 -0
- benchmarks/swebench-agent-evals.md +75 -0
MODEL_RELEASE_REPORT.md
ADDED
|
@@ -0,0 +1,450 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Ornith-1.0-35B GGUF Release Report
|
| 2 |
+
|
| 3 |
+
Date: 2026-06-28
|
| 4 |
+
|
| 5 |
+
Hardware for reported GPU numbers: one NVIDIA RTX PRO 6000 Blackwell Max-Q
|
| 6 |
+
96GB, `tp=1`, llama.cpp CUDA server. The release policy is single-GPU serving
|
| 7 |
+
only: one model copy per GPU, no tensor-parallel serving profile.
|
| 8 |
+
|
| 9 |
+
## Executive Summary
|
| 10 |
+
|
| 11 |
+
This release turns Ornith-1.0-35B into a practical llama.cpp GGUF stack with
|
| 12 |
+
validated serving profiles, locally produced smaller quants, quantitative KLD
|
| 13 |
+
quality checks, and a working native MTP path.
|
| 14 |
+
|
| 15 |
+
Recommended use:
|
| 16 |
+
|
| 17 |
+
| Use case | Artifact | Why |
|
| 18 |
+
|---|---|---|
|
| 19 |
+
| Default serving speed | `ornith-1.0-35b-Q4_K_M.gguf` | Fastest validated c16 profile, 655.6 tok/s, 21.31 GiB loaded VRAM |
|
| 20 |
+
| Lowest memory | `ornith-1.0-35b-Q3_K_M.gguf` | 15.61 GiB on disk, 17.27 GiB loaded VRAM, behavior gate passed |
|
| 21 |
+
| Middle footprint | `ornith-1.0-35b-IQ4_XS.gguf` | 17.64 GiB on disk, lower KLD drift than Q3_K_M |
|
| 22 |
+
| Quality/footprint | `ornith-1.0-35b-Q6_K.gguf` | 0.0165 mean top-64 KLD nats and 32/32 top-1 match |
|
| 23 |
+
| Native low-concurrency MTP | `ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf` | c1 MTP speedup with high acceptance; adaptive policy avoids saturated c16 loss |
|
| 24 |
+
|
| 25 |
+
Key result: Q4_K_M is the production default. The integrated IQ4_XS-MTP graft is
|
| 26 |
+
the MTP release candidate for low-concurrency/single-user experiments. Always-on
|
| 27 |
+
MTP is not recommended for saturated c16 server traffic because target-only
|
| 28 |
+
decoding already saturates the GPU more efficiently.
|
| 29 |
+
|
| 30 |
+
## Quantization Work
|
| 31 |
+
|
| 32 |
+
### What Was Built
|
| 33 |
+
|
| 34 |
+
Two main-body GGUF quants were produced locally from the upstream BF16 GGUF:
|
| 35 |
+
|
| 36 |
+
| Artifact | Quant | Quantization detail |
|
| 37 |
+
|---|---|---|
|
| 38 |
+
| `ornith-1.0-35b-Q3_K_M.gguf` | Q3_K_M | `llama-quantize ornith-1.0-35b-bf16.gguf ornith-1.0-35b-Q3_K_M.gguf Q3_K_M`; source 66,152.24 MiB / 16.01 BPW, output 15,977.65 MiB / 3.87 BPW |
|
| 39 |
+
| `ornith-1.0-35b-IQ4_XS.gguf` | IQ4_XS | `llama-quantize ornith-1.0-35b-bf16.gguf ornith-1.0-35b-IQ4_XS.gguf IQ4_XS 32`; no importance matrix; source 66,152.24 MiB / 16.01 BPW, output 18,051.46 MiB / 4.37 BPW |
|
| 40 |
+
|
| 41 |
+
The existing upstream GGUFs were mirrored and validated:
|
| 42 |
+
|
| 43 |
+
| Artifact | Quant | Release status |
|
| 44 |
+
|---|---|---|
|
| 45 |
+
| `ornith-1.0-35b-Q4_K_M.gguf` | Q4_K_M | validated, production default |
|
| 46 |
+
| `ornith-1.0-35b-Q5_K_M.gguf` | Q5_K_M | validated, higher-quality mid option |
|
| 47 |
+
| `ornith-1.0-35b-Q6_K.gguf` | Q6_K | validated, quality/footprint option |
|
| 48 |
+
| `ornith-1.0-35b-Q8_0.gguf` | Q8_0 | validated, closest to BF16 by mean KLD |
|
| 49 |
+
|
| 50 |
+
MTP-specific artifacts were also produced or published:
|
| 51 |
+
|
| 52 |
+
| Artifact | Type | Purpose |
|
| 53 |
+
|---|---|---|
|
| 54 |
+
| `ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf` | integrated target + MTP block | native `draft-mtp` low-concurrency profile |
|
| 55 |
+
| `ornith-1.0-35b-mtp-bootstrap-layer39-IQ4_XS.gguf` | bootstrap external draft | proved MTP plumbing, not recommended |
|
| 56 |
+
| `ornith-1.0-35b-mtp-chaincorr-h2r9fw125-h1r2-h3r6ce375-lr5e7-Q6_K.gguf` | trained external draft | MTP development and regression testing |
|
| 57 |
+
| `ornith-1.0-35b-mtp-chaincorr-h2r9fw125-h1r2-h3r6ce375-lr5e7-Q5_K_M.gguf` | trained external draft | smaller draft variant |
|
| 58 |
+
| `ornith-1.0-35b-mtp-chaincorr-h2r9fw125-h1r2-h3r6ce375-lr5e7-IQ4_XS.gguf` | trained external draft | smallest trained draft, lower acceptance |
|
| 59 |
+
|
| 60 |
+
### Footprint Chart
|
| 61 |
+
|
| 62 |
+
Loaded VRAM is from the short-context throughput profile
|
| 63 |
+
`CTX_SIZE=8192 PARALLEL=16`.
|
| 64 |
+
|
| 65 |
+
| Quant | GGUF GiB | Loaded VRAM GiB | Disk vs Q4_K_M | VRAM vs Q4_K_M |
|
| 66 |
+
|---|---:|---:|---:|---:|
|
| 67 |
+
| Q3_K_M | 15.61 | 17.27 | -20.8% | -19.0% |
|
| 68 |
+
| IQ4_XS | 17.64 | 19.34 | -10.5% | -9.2% |
|
| 69 |
+
| Q4_K_M | 19.71 | 21.31 | baseline | baseline |
|
| 70 |
+
| Q5_K_M | 23.03 | 24.65 | +16.8% | +15.7% |
|
| 71 |
+
| Q6_K | 26.56 | 28.03 | +34.8% | +31.5% |
|
| 72 |
+
| Q8_0 | 34.37 | 35.72 | +74.4% | +67.6% |
|
| 73 |
+
|
| 74 |
+
Footprint bar, loaded VRAM:
|
| 75 |
+
|
| 76 |
+
| Quant | Loaded VRAM chart |
|
| 77 |
+
|---|---|
|
| 78 |
+
| Q3_K_M | `################# 17.27 GiB` |
|
| 79 |
+
| IQ4_XS | `################### 19.34 GiB` |
|
| 80 |
+
| Q4_K_M | `##################### 21.31 GiB` |
|
| 81 |
+
| Q5_K_M | `######################### 24.65 GiB` |
|
| 82 |
+
| Q6_K | `############################ 28.03 GiB` |
|
| 83 |
+
| Q8_0 | `#################################### 35.72 GiB` |
|
| 84 |
+
|
| 85 |
+
### Throughput Chart
|
| 86 |
+
|
| 87 |
+
Aggregate output tokens/second from `scripts/bench_openai.py --stream
|
| 88 |
+
--max-tokens 256`; all rows had 0 failed requests.
|
| 89 |
+
|
| 90 |
+
| Quant | c1 tok/s | c4 tok/s | c8 tok/s | c16 tok/s | c16 p95 TTFT ms |
|
| 91 |
+
|---|---:|---:|---:|---:|---:|
|
| 92 |
+
| Q3_K_M | 240.5 | 422.0 | 464.4 | 493.0 | 493.7 |
|
| 93 |
+
| IQ4_XS | 234.1 | 297.7 | 411.5 | 476.0 | 541.5 |
|
| 94 |
+
| Q4_K_M | 243.3 | 458.3 | 615.0 | 655.6 | 650.0 |
|
| 95 |
+
| Q5_K_M | 236.7 | 311.0 | 439.0 | 638.6 | 620.4 |
|
| 96 |
+
| Q6_K | 225.9 | 295.8 | 409.6 | 603.3 | 657.4 |
|
| 97 |
+
| Q8_0 | 208.5 | 281.5 | 405.8 | 601.4 | 725.8 |
|
| 98 |
+
|
| 99 |
+
c16 throughput bar:
|
| 100 |
+
|
| 101 |
+
| Quant | c16 tok/s chart |
|
| 102 |
+
|---|---|
|
| 103 |
+
| Q4_K_M | `################################################################ 655.6` |
|
| 104 |
+
| Q5_K_M | `############################################################## 638.6` |
|
| 105 |
+
| Q6_K | `########################################################### 603.3` |
|
| 106 |
+
| Q8_0 | `########################################################### 601.4` |
|
| 107 |
+
| Q3_K_M | `################################################ 493.0` |
|
| 108 |
+
| IQ4_XS | `############################################### 476.0` |
|
| 109 |
+
|
| 110 |
+
### KLD Quality Chart
|
| 111 |
+
|
| 112 |
+
KLD method: next-token top-64 approximate `KL(P_bf16 || P_quant)` over 32
|
| 113 |
+
coding prompts, native llama.cpp `/completion`, `n_predict=1`, `temperature=-1`,
|
| 114 |
+
`n_probs=64`, token-ID matching. Lower is better.
|
| 115 |
+
|
| 116 |
+
| Quant | Mean KLD nats | Mean KLD bits | P95 nats | Max nats | Top-1 match |
|
| 117 |
+
|---|---:|---:|---:|---:|---:|
|
| 118 |
+
| Q3_K_M | 0.3620 | 0.5223 | 1.1077 | 1.3730 | 27/32 (84.4%) |
|
| 119 |
+
| IQ4_XS | 0.1426 | 0.2057 | 0.3195 | 0.6586 | 27/32 (84.4%) |
|
| 120 |
+
| Q4_K_M | 0.0864 | 0.1247 | 0.2877 | 0.4503 | 29/32 (90.6%) |
|
| 121 |
+
| Q5_K_M | 0.0354 | 0.0510 | 0.0943 | 0.2497 | 30/32 (93.8%) |
|
| 122 |
+
| Q6_K | 0.0165 | 0.0238 | 0.0513 | 0.0586 | 32/32 (100.0%) |
|
| 123 |
+
| Q8_0 | 0.0108 | 0.0156 | 0.0440 | 0.0590 | 31/32 (96.9%) |
|
| 124 |
+
|
| 125 |
+
Mean KLD drift bar, lower is better:
|
| 126 |
+
|
| 127 |
+
| Quant | Mean KLD chart |
|
| 128 |
+
|---|---|
|
| 129 |
+
| Q8_0 | `# 0.0108` |
|
| 130 |
+
| Q6_K | `## 0.0165` |
|
| 131 |
+
| Q5_K_M | `#### 0.0354` |
|
| 132 |
+
| Q4_K_M | `######### 0.0864` |
|
| 133 |
+
| IQ4_XS | `############## 0.1426` |
|
| 134 |
+
| Q3_K_M | `#################################### 0.3620` |
|
| 135 |
+
|
| 136 |
+
Interpretation:
|
| 137 |
+
|
| 138 |
+
- Q4_K_M is the speed release target.
|
| 139 |
+
- Q3_K_M is valid for minimum memory, but has the largest KLD drift.
|
| 140 |
+
- IQ4_XS is useful as a middle-footprint body and as the MTP graft base.
|
| 141 |
+
- Q5_K_M, Q6_K, and Q8_0 improve distribution fidelity but cost more VRAM.
|
| 142 |
+
|
| 143 |
+
### SWE-bench Agent Scores
|
| 144 |
+
|
| 145 |
+
Full report: `benchmarks/swebench-agent-evals.md`.
|
| 146 |
+
|
| 147 |
+
The full 100-task SWE-bench Verified run used Q6_K with reasoning enabled,
|
| 148 |
+
`temperature=1.0`, `top_p=1.0`, and no explicit thinking budget:
|
| 149 |
+
|
| 150 |
+
| Profile | Dataset slice | Reasoning | Resolved | Score |
|
| 151 |
+
|---|---|---|---:|---:|
|
| 152 |
+
| Q6_K GGUF | `SWE-bench/SWE-bench_Verified` test `0:100` | on | 69/100 | 69.0% |
|
| 153 |
+
|
| 154 |
+
The multi-quant sweep used `MariusHobbhahn/swe-bench-verified-mini`, split
|
| 155 |
+
`test`, 50 tasks:
|
| 156 |
+
|
| 157 |
+
| Quant/profile | Resolved | Score | Completed | Empty patch | Errors |
|
| 158 |
+
|---|---:|---:|---:|---:|---:|
|
| 159 |
+
| Q6_K | 33/50 | 66.0% | 48/50 | 2 | 0 |
|
| 160 |
+
| Q3_K_M | 32/50 | 64.0% | 47/50 | 3 | 0 |
|
| 161 |
+
| Q5_K_M | 32/50 | 64.0% | 49/50 | 1 | 0 |
|
| 162 |
+
| Q4_K_M | 31/50 | 62.0% | 48/50 | 2 | 0 |
|
| 163 |
+
| IQ4_XS | 30/50 | 60.0% | 45/50 | 5 | 0 |
|
| 164 |
+
| IQ4_XS-MTP-graft-headQ6 | 30/50 | 60.0% | 48/50 | 2 | 0 |
|
| 165 |
+
| Q8_0 | 29/50 | 58.0% | 47/50 | 3 | 0 |
|
| 166 |
+
|
| 167 |
+
## MTP Work
|
| 168 |
+
|
| 169 |
+
### Starting Problem
|
| 170 |
+
|
| 171 |
+
The upstream Ornith config advertises one MTP/NextN layer, but the released HF
|
| 172 |
+
weights and plain GGUF files do not contain a loadable MTP head. In practice,
|
| 173 |
+
the plain model cannot simply be started with llama.cpp `--spec-type draft-mtp`.
|
| 174 |
+
The work therefore split into two lines:
|
| 175 |
+
|
| 176 |
+
1. Make a loadable MTP draft path for experimentation.
|
| 177 |
+
2. Find a release artifact and serving policy that gives real single-user speed.
|
| 178 |
+
|
| 179 |
+
### Bootstrap Draft
|
| 180 |
+
|
| 181 |
+
The first bootstrap created a minimal external MTP draft by cloning trunk layer
|
| 182 |
+
39 into the expected MTP layout, adding the missing MTP projection/norm tensors,
|
| 183 |
+
converting with `convert_hf_to_gguf.py --mtp`, and quantizing the draft to
|
| 184 |
+
IQ4_XS.
|
| 185 |
+
|
| 186 |
+
Result:
|
| 187 |
+
|
| 188 |
+
| Profile | Loaded VRAM GiB | c16 tok/s | Acceptance | Verdict |
|
| 189 |
+
|---|---:|---:|---:|---|
|
| 190 |
+
| IQ4_XS target only | 19.34 | 476.0 | n/a | baseline |
|
| 191 |
+
| Bootstrap IQ4_XS MTP draft, `n_max=1` | 21.32 | 162.7 | 1.21% | not recommended |
|
| 192 |
+
|
| 193 |
+
This proved the server plumbing and artifact layout but did not provide useful
|
| 194 |
+
acceptance.
|
| 195 |
+
|
| 196 |
+
### Trained External Drafts
|
| 197 |
+
|
| 198 |
+
The second line trained chain-corrected Qwen3.5 MoE MTP drafts from target
|
| 199 |
+
hidden-state captures. The goal was to train a draft that predicts future tokens
|
| 200 |
+
from the target hidden state and can be exported as a separate MTP GGUF.
|
| 201 |
+
|
| 202 |
+
Best external draft family:
|
| 203 |
+
|
| 204 |
+
| Draft artifact | Quant | Loaded VRAM GiB | c16/128 tok/s | Acceptance | Acceptance by position |
|
| 205 |
+
|---|---|---:|---:|---:|---|
|
| 206 |
+
| `...h2r9fw125...Q6_K.gguf` | Q6_K | 22.44 | 286.77 | 67.22% | `(0.719, 0.621)` |
|
| 207 |
+
| `...h2r9fw125...Q5_K_M.gguf` | Q5_K_M | 22.16 | 285.32 | 66.61% | `(0.715, 0.613)` |
|
| 208 |
+
| `...h2r9fw125...IQ4_XS.gguf` | IQ4_XS | 21.53 | 265.06 | 59.20% | `(0.640, 0.541)` |
|
| 209 |
+
|
| 210 |
+
The Q6_K draft reached the requested development acceptance band, but the
|
| 211 |
+
serving path remained slower than the target-only matched baseline:
|
| 212 |
+
|
| 213 |
+
| Profile | c1 tok/s | c4 tok/s | c8 tok/s | c16 tok/s |
|
| 214 |
+
|---|---:|---:|---:|---:|
|
| 215 |
+
| IQ4_XS target only, no prompt cache | 239.91 | 431.95 | 470.81 | 595.89 |
|
| 216 |
+
| IQ4_XS + Q6_K trained MTP draft, `n_max=2`, per-head contexts | 235.99 | 245.28 | 247.82 | 288.67 |
|
| 217 |
+
| IQ4_XS + Q6_K trained MTP draft, sequential verify | 192.48 | 165.63 | 167.47 | 169.24 |
|
| 218 |
+
|
| 219 |
+
Conclusion: the external draft quality became good enough for development, but
|
| 220 |
+
the separate-draft runtime path was not a production speedup.
|
| 221 |
+
|
| 222 |
+
### Integrated IQ4_XS-MTP Graft
|
| 223 |
+
|
| 224 |
+
The release MTP path is the integrated graft:
|
| 225 |
+
|
| 226 |
+
`ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf`
|
| 227 |
+
|
| 228 |
+
This file was made by starting from the MIT-licensed
|
| 229 |
+
`wang-yang/Ornith-1.0-35B-MTP-GGUF` Q6_K graft and requantizing the body to
|
| 230 |
+
IQ4_XS while preserving the appended `blk.40.*` MTP block at Q6_K/F16/F32:
|
| 231 |
+
|
| 232 |
+
```bash
|
| 233 |
+
llama-quantize --allow-requantize \
|
| 234 |
+
--tensor-type-file runs/tensor-types-mtp-blk40-preserve.txt \
|
| 235 |
+
Ornith-1.0-35B-Q6_K-MTP.gguf \
|
| 236 |
+
ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf \
|
| 237 |
+
IQ4_XS 24
|
| 238 |
+
```
|
| 239 |
+
|
| 240 |
+
Structural verification:
|
| 241 |
+
|
| 242 |
+
| Key | Value |
|
| 243 |
+
|---|---|
|
| 244 |
+
| `general.architecture` | `qwen35moe` |
|
| 245 |
+
| `qwen35moe.block_count` | `41` |
|
| 246 |
+
| `qwen35moe.nextn_predict_layers` | `1` |
|
| 247 |
+
| MTP tensors | appended `blk.40.*` block with `blk.40.nextn.*` tensors |
|
| 248 |
+
| Body quant | IQ4_XS |
|
| 249 |
+
| MTP block quant | preserved Q6_K/F16/F32 |
|
| 250 |
+
| File size | 19.6 GB decimal, about 0.69 GB over plain IQ4_XS |
|
| 251 |
+
|
| 252 |
+
The integrated graft reproduced the high-acceptance behavior reported by the
|
| 253 |
+
wang-yang reference and avoided the heavy external draft context.
|
| 254 |
+
|
| 255 |
+
Low-concurrency results:
|
| 256 |
+
|
| 257 |
+
| Profile | Shape | tok/s | Speedup | Draft acceptance |
|
| 258 |
+
|---|---|---:|---:|---:|
|
| 259 |
+
| Integrated graft, target-only AR | c1/128 | 221.80 | 1.00x | n/a |
|
| 260 |
+
| Integrated graft, `draft-mtp n_max=2` | c1/128 | 279.36 | 1.26x | high |
|
| 261 |
+
| Integrated graft, adaptive MTP throttle | c1/128 | 319.53 | 1.44x | `(0.953, 0.865)` |
|
| 262 |
+
|
| 263 |
+
Adaptive c1 server counters:
|
| 264 |
+
|
| 265 |
+
| Counter | Value |
|
| 266 |
+
|---|---:|
|
| 267 |
+
| Generated speculative tokens | 339 |
|
| 268 |
+
| Accepted speculative tokens | 309 |
|
| 269 |
+
| Mean accepted length | 2.82 |
|
| 270 |
+
| Acceptance by position | `(0.953, 0.865)` |
|
| 271 |
+
|
| 272 |
+
Saturated c16 results:
|
| 273 |
+
|
| 274 |
+
| Profile | Shape | tok/s | Ratio vs AR | Notes |
|
| 275 |
+
|---|---|---:|---:|---|
|
| 276 |
+
| Target-only AR | c16/64 | 568.57 | 1.00x | matched control |
|
| 277 |
+
| Always-on active MTP, `n_max=2` | c16/64 | 323.12 | 0.57x | high acceptance but slower |
|
| 278 |
+
| Adaptive MTP throttle, `LLAMA_SPEC_MAX_DRAFTING_SLOTS=1` | c16/64 | 564.48 | 0.99x | MTP disabled while saturated |
|
| 279 |
+
|
| 280 |
+
The final serving policy is therefore adaptive MTP: enable MTP for a single
|
| 281 |
+
active request and disable drafting when the server is saturated.
|
| 282 |
+
|
| 283 |
+
Threshold sweep:
|
| 284 |
+
|
| 285 |
+
| `LLAMA_SPEC_MAX_DRAFTING_SLOTS` | c1 tok/s | c2 tok/s | c4 tok/s | c8 tok/s | c16 tok/s |
|
| 286 |
+
|---:|---:|---:|---:|---:|---:|
|
| 287 |
+
| 1 | 271.12 | 316.46 | 424.14 | 564.24 | 592.45 |
|
| 288 |
+
| 2 | 267.04 | 313.25 | 422.88 | 558.17 | 592.39 |
|
| 289 |
+
| 4 | 269.23 | 313.06 | 328.45 | 547.56 | 591.50 |
|
| 290 |
+
|
| 291 |
+
Recommended default: `LLAMA_SPEC_MAX_DRAFTING_SLOTS=1`.
|
| 292 |
+
|
| 293 |
+
### Dedicated MTP KLD and Sequence Evaluation
|
| 294 |
+
|
| 295 |
+
See [benchmarks/mtp-dedicated-kld-evaluation.md](benchmarks/mtp-dedicated-kld-evaluation.md)
|
| 296 |
+
for raw paths and full details.
|
| 297 |
+
|
| 298 |
+
Next-token top-64 KLD over 32 coding prompts:
|
| 299 |
+
|
| 300 |
+
| Candidate | Mean KLD nats | Mean KLD bits | P95 nats | Max nats | Top-1 match |
|
| 301 |
+
|---|---:|---:|---:|---:|---:|
|
| 302 |
+
| Integrated IQ4_XS-MTP graft, target-only | 0.0731382442 | 0.1055161823 | 0.1593743642 | 0.3348258511 | 29/32 |
|
| 303 |
+
| Integrated IQ4_XS-MTP graft, active `draft-mtp` | 0.0731382442 | 0.1055161823 | 0.1593743642 | 0.3348258511 | 29/32 |
|
| 304 |
+
| Active `draft-mtp` vs target-only graft | 0.0 | 0.0 | 0.0 | 0.0 | 32/32 |
|
| 305 |
+
|
| 306 |
+
The one-token API-visible distribution is clean: active `draft-mtp` returns the
|
| 307 |
+
same next-token distribution as the graft running target-only. The integrated
|
| 308 |
+
graft also measured lower drift than the prior plain IQ4_XS capture
|
| 309 |
+
(0.0731382442 vs 0.1425748206 mean KLD nats).
|
| 310 |
+
|
| 311 |
+
The longer 8 prompt x 64 token single-user sequence probe exercised real native
|
| 312 |
+
MTP drafting:
|
| 313 |
+
|
| 314 |
+
| Runtime | Client aggregate tok/s | Draft acceptance | Exact 64-token sequences | Token-position match |
|
| 315 |
+
|---|---:|---:|---:|---:|
|
| 316 |
+
| Target-only graft | 172.57 | n/a | 8/8 baseline | n/a |
|
| 317 |
+
| Fast active `draft-mtp`, `n_max=2` | 233.81 | 310/378 = 82.01%; `(0.884, 0.747)` by position | 6/8 | 478/512 = 93.36% |
|
| 318 |
+
| `LLAMA_SPEC_VERIFY_SEQUENTIAL=1` | 164.34 | 313/375 = 83.47%; `(0.884, 0.772)` by position | 5/8 | 455/512 = 88.87% |
|
| 319 |
+
|
| 320 |
+
This means the native graft remains an experimental low-concurrency speed
|
| 321 |
+
profile, not a strict target-equivalent deterministic serving mode. Also,
|
| 322 |
+
llama.cpp omitted candidate top-logprobs for most accepted speculative tokens
|
| 323 |
+
in sequence responses: 500/512 positions were missing candidate top-logprobs in
|
| 324 |
+
the fast active run. Comparable same-emitted-token positions had near-zero KLD
|
| 325 |
+
(0.0011215739 mean nats, 0.0040239103 max), but full sequence KLD is not valid
|
| 326 |
+
without runtime support for returning verifier logprobs on accepted draft tokens.
|
| 327 |
+
|
| 328 |
+
### Runtime Engineering Done
|
| 329 |
+
|
| 330 |
+
The MTP work included artifact surgery and runtime work:
|
| 331 |
+
|
| 332 |
+
| Area | Work completed | Impact |
|
| 333 |
+
|---|---|---|
|
| 334 |
+
| Missing MTP tensors | Built bootstrap MTP draft from trunk layer 39 and added required projection/norm tensors | Made llama.cpp `draft-mtp` loadable for local experiments |
|
| 335 |
+
| Hidden-state capture | Added/used capture paths for target hidden rows and token positions | Enabled trained external MTP draft experiments |
|
| 336 |
+
| Chain-corrected training | Trained h2/h1/h3 chain-corrected drafts and exported Q6_K/Q5_K_M/IQ4_XS GGUFs | Raised external-draft acceptance from about 1% to about 67% |
|
| 337 |
+
| Integrated graft requantization | Requantized a Q6_K integrated MTP graft to IQ4_XS while preserving `blk.40.*` MTP tensors | Produced a 19.6 GB native MTP artifact |
|
| 338 |
+
| Fast backend sampling | Added a fast path for unambiguous backend top-k=1 draft sampling | Reduced sampling overhead in the native graft path |
|
| 339 |
+
| Qwen35MoE recurrent row index | Patched recurrent-state writes and rollback snapshots to use runtime row-index tensors rather than graph-baked head offsets | Fixed graph/recurrent mismatch across MTP head changes |
|
| 340 |
+
| Per-head MTP contexts | Added optional `LLAMA_MTP_PER_HEAD_CONTEXT=1` path for trained external drafts | Improved graph reuse but did not make external drafts faster than target-only |
|
| 341 |
+
| Sequential verification | Added `LLAMA_SPEC_VERIFY_SEQUENTIAL=1` correctness guard | Made temperature-0 MTP output match target-only in deterministic probes |
|
| 342 |
+
| Adaptive throttling | Added/validated `LLAMA_SPEC_MAX_DRAFTING_SLOTS=1` policy | Keeps c1 MTP speedup while avoiding saturated c16 regression |
|
| 343 |
+
|
| 344 |
+
Important correctness note: the external trained-draft path can diverge from
|
| 345 |
+
target-only output without sequential verification. The sequential verifier
|
| 346 |
+
matches target-only output but is slower, so it is a debug/correctness guard, not
|
| 347 |
+
the production profile. The integrated graft's release value is low-concurrency
|
| 348 |
+
speed with adaptive throttling.
|
| 349 |
+
|
| 350 |
+
### MTP Recommendation
|
| 351 |
+
|
| 352 |
+
Use this single-GPU command for the integrated MTP profile:
|
| 353 |
+
|
| 354 |
+
```bash
|
| 355 |
+
export CUDA_VISIBLE_DEVICES=0
|
| 356 |
+
export LLAMA_SPEC_MAX_DRAFTING_SLOTS=1
|
| 357 |
+
export LLAMA_MTP_FAST_BACKEND_SAMPLE=1
|
| 358 |
+
export LLAMA_MTP_DRAFT_TOP_K=1
|
| 359 |
+
export LLAMA_MTP_DRAFT_TOP_P=1
|
| 360 |
+
export LLAMA_MTP_DRAFT_TEMP=1
|
| 361 |
+
|
| 362 |
+
llama-server \
|
| 363 |
+
-m ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf \
|
| 364 |
+
--alias Ornith-1.0-35B-GGUF-IQ4_XS-MTP \
|
| 365 |
+
--host 127.0.0.1 --port 8002 \
|
| 366 |
+
-c 131072 -np 1 -b 4096 -ub 512 -ngl 99 \
|
| 367 |
+
--flash-attn on \
|
| 368 |
+
--reasoning off --reasoning-format deepseek \
|
| 369 |
+
--spec-type draft-mtp \
|
| 370 |
+
--spec-draft-ngl 99 \
|
| 371 |
+
--spec-draft-n-max 2 \
|
| 372 |
+
--spec-draft-n-min 0 \
|
| 373 |
+
--spec-draft-backend-sampling \
|
| 374 |
+
--cont-batching \
|
| 375 |
+
--metrics
|
| 376 |
+
```
|
| 377 |
+
|
| 378 |
+
For multi-slot server traffic, keep `LLAMA_SPEC_MAX_DRAFTING_SLOTS=1` so MTP is
|
| 379 |
+
used only when the server has a small active batch. For a single-user agentic
|
| 380 |
+
workload, this is the preferred MTP profile.
|
| 381 |
+
|
| 382 |
+
## Pi-Agent Coding Smoke
|
| 383 |
+
|
| 384 |
+
A Pi-agent smoke was run against the single-user integrated MTP profile with
|
| 385 |
+
`CTX_SIZE=131072`, `PARALLEL=1`, and model alias `ornith-pi-agent-mtp`.
|
| 386 |
+
|
| 387 |
+
| Test | Result |
|
| 388 |
+
|---|---|
|
| 389 |
+
| Calculator tool smoke | pass |
|
| 390 |
+
| Ledger parser/summary repo-edit task | pass, 3/3 tests |
|
| 391 |
+
| TTL cache repo-edit task | pass, 3/3 tests |
|
| 392 |
+
| Router dispatch repo-edit task | pass, 4/4 tests |
|
| 393 |
+
|
| 394 |
+
Serving counters from that Pi-agent run:
|
| 395 |
+
|
| 396 |
+
| Metric | Value |
|
| 397 |
+
|---|---:|
|
| 398 |
+
| Prompt throughput | 3460.27 tok/s |
|
| 399 |
+
| Decode throughput | 339.23 tok/s |
|
| 400 |
+
| MTP generated draft tokens | 1234 |
|
| 401 |
+
| MTP accepted draft tokens | 1114 |
|
| 402 |
+
| Aggregate draft acceptance | 90.3% |
|
| 403 |
+
| Acceptance by position | `(0.929, 0.877)` |
|
| 404 |
+
| Mean accepted length | 2.81 |
|
| 405 |
+
| Peak observed loaded VRAM | about 22.65 GiB |
|
| 406 |
+
|
| 407 |
+
## Pi-Agent Quant Flappy Bird Test
|
| 408 |
+
|
| 409 |
+
Each published serving profile was loaded as a single-user llama.cpp server and
|
| 410 |
+
attached to Pi-agent with the same vanilla HTML/CSS/JS Flappy Bird prompt. The
|
| 411 |
+
generated games are not hand-edited; Q3_K_M required three Pi-agent repair
|
| 412 |
+
passes, and the other profiles passed on the first agent run.
|
| 413 |
+
|
| 414 |
+
Full report: `benchmarks/pi-agent-flappy-quant-test.md`.
|
| 415 |
+
Raw evidence: `probes/pi-agent-flappy/`.
|
| 416 |
+
|
| 417 |
+
| Quant/Profile | Result | Decode TPS on Pi-agent task |
|
| 418 |
+
|---|---:|---:|
|
| 419 |
+
| Q3_K_M | pass after 3 Pi-agent repair passes | 250.88 |
|
| 420 |
+
| IQ4_XS | pass first run | 242.44 |
|
| 421 |
+
| Q4_K_M | pass first run | 249.59 |
|
| 422 |
+
| Q5_K_M | pass first run | 239.67 |
|
| 423 |
+
| Q6_K | pass first run | 226.51 |
|
| 424 |
+
| Q8_0 | pass first run | 212.98 |
|
| 425 |
+
| IQ4_XS-MTP-graft-headQ6 | pass first run | 320.91 |
|
| 426 |
+
|
| 427 |
+
Interaction checks loaded every generated page, verified one canvas, pressed
|
| 428 |
+
Space, captured an after-input screenshot, and observed zero page errors for all
|
| 429 |
+
7 profiles.
|
| 430 |
+
|
| 431 |
+
The MTP profile's cumulative server log for this agent workload reports 3,452
|
| 432 |
+
accepted draft tokens out of 3,882 generated draft tokens, 88.92% draft-token
|
| 433 |
+
acceptance, mean acceptance length 2.78, and per-position acceptance
|
| 434 |
+
`(0.936, 0.843)`.
|
| 435 |
+
|
| 436 |
+
## Evidence Index
|
| 437 |
+
|
| 438 |
+
- Quant benchmarks: `benchmarks/llamacpp-quant-benchmarks.md`
|
| 439 |
+
- Quant KLD probe: `benchmarks/kld-quant-vs-bf16-top64.md`
|
| 440 |
+
- Integrated MTP profile: `benchmarks/llamacpp-iq4-xs-mtp-graft-adaptive-profile.md`
|
| 441 |
+
- SWE-bench agent evaluations: `benchmarks/swebench-agent-evals.md`
|
| 442 |
+
- Pi-agent quant Flappy Bird test: `benchmarks/pi-agent-flappy-quant-test.md`
|
| 443 |
+
with raw logs and metrics in `probes/pi-agent-flappy/`
|
| 444 |
+
- Trained MTP profile: `benchmarks/llamacpp-iq4-xs-mtp-chaincorr-profile.md`
|
| 445 |
+
- MTP profile catalog: `configs/mtp_profiles.yaml`
|
| 446 |
+
- Quant artifact catalog: `configs/quant_artifacts.yaml`
|
| 447 |
+
- Serving profile catalog: `configs/serving_profiles.yaml`
|
| 448 |
+
- Runtime patches: `patches/llamacpp-qwen35moe-mtp-recurrent-row-index.patch`,
|
| 449 |
+
`patches/llamacpp-mtp-adaptive-serving-and-recurrent-rollback.patch`, and
|
| 450 |
+
`patches/llamacpp-server-mtp-seqverify-and-perhead.patch`
|
README.md
CHANGED
|
@@ -16,270 +16,437 @@ tags:
|
|
| 16 |
- tp1
|
| 17 |
---
|
| 18 |
|
| 19 |
-
# Ornith
|
| 20 |
|
| 21 |
-
|
| 22 |
-
The supported serving policy is `tp=1` — one model copy per GPU. Multi-GPU
|
| 23 |
-
tensor-parallel serving is intentionally out of scope for this version.
|
| 24 |
|
| 25 |
-
|
| 26 |
-
IQ4_XS-MTP graft** that adds a native multi-token-prediction (MTP) draft head for
|
| 27 |
-
low-concurrency speculative decode. Quant quality is measured against the upstream
|
| 28 |
-
BF16 GGUF with a native llama.cpp next-token top-64 KL-divergence probe over 32
|
| 29 |
-
coding prompts.
|
| 30 |
|
| 31 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
|
| 33 |
| Use case | Recommended artifact | Key numbers |
|
| 34 |
|---|---|---|
|
| 35 |
| Default serving speed | `ornith-1.0-35b-Q4_K_M.gguf` | 19.71 GiB on disk, 21.31 GiB loaded VRAM, 243.3 tok/s c1, 655.6 tok/s c16 |
|
| 36 |
| Lowest memory | `ornith-1.0-35b-Q3_K_M.gguf` | 15.61 GiB on disk, 17.27 GiB loaded VRAM, 240.5 tok/s c1, 493.0 tok/s c16 |
|
| 37 |
| Middle footprint | `ornith-1.0-35b-IQ4_XS.gguf` | 17.64 GiB on disk, 19.34 GiB loaded VRAM, 0.1426 mean top-64 KLD nats |
|
| 38 |
-
|
|
| 39 |
-
| Native low-concurrency MTP | `ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf` | 19.6 GB decimal,
|
| 40 |
-
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
##
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
|
| 155 |
-
|
| 156 |
-
|
| 157 |
-
so saturated batches fall back to target-only throughput. The MTP catalog
|
| 158 |
-
validates the published MTP profiles.
|
| 159 |
-
|
| 160 |
-
### Next-token quality
|
| 161 |
-
|
| 162 |
-
Active MTP **does not change** the one-token, API-visible next-token
|
| 163 |
-
distribution. Mean BF16 KLD is **0.0731382442 nats** over the 32-prompt top-64
|
| 164 |
-
probe (P50 0.0492811974 / P95 0.1593743642 / Max 0.3348258511), top-1 29/32. The
|
| 165 |
-
active `draft-mtp` vs target-only graft next-token KLD is **0.0 (32/32 identical)**.
|
| 166 |
-
|
| 167 |
-
### Sequence-level behavior
|
| 168 |
-
|
| 169 |
-
A deterministic **8 prompt × 64 token** probe (`n_predict=64, temperature=-1,
|
| 170 |
-
n_probs=64`) compares the same GGUF running active native `draft-mtp` against
|
| 171 |
-
target-only.
|
| 172 |
-
|
| 173 |
-
| Runtime | Client agg tok/s | Server decode tok/s | Draft acceptance | Exact 64-tok seqs | Token-position match |
|
| 174 |
-
|---|---:|---|---|---:|---|
|
| 175 |
-
| Target-only graft | 172.57 | ~210 (per-request timing) | n/a | 8/8 baseline | n/a |
|
| 176 |
-
| Fast active `draft-mtp`, `n_max=2` | 233.81 | 325.70 (/metrics) | 310/378 = 82.01%; per-position `(0.884, 0.747)` | 6/8 | 478/512 = 93.36% |
|
| 177 |
-
| `LLAMA_SPEC_VERIFY_SEQUENTIAL=1` | 164.34 | 204.88 (/metrics) | 313/375 = 83.47%; per-position `(0.884, 0.772)` | 5/8 | 455/512 = 88.87% |
|
| 178 |
-
|
| 179 |
-

|
| 180 |
-
|
| 181 |
-
- Fast active MTP gives **~1.35× client throughput** (233.81 vs 172.57) and
|
| 182 |
-
server decode 325.70 vs ~210, with **82.01%** draft acceptance.
|
| 183 |
-
- It matches **6/8** sequences exactly and **478/512 = 93.36%** of token
|
| 184 |
-
positions; the two non-exact sequences first diverge at positions **60** and
|
| 185 |
-
**34**.
|
| 186 |
-
- The `LLAMA_SPEC_VERIFY_SEQUENTIAL=1` variant is both **slower** (164.34 /
|
| 187 |
-
204.88) **and** matches less (5/8, 88.87%; divergences at 25, 43, 60) — i.e. the
|
| 188 |
-
fast verifier is here both faster and more target-matching.
|
| 189 |
-
|
| 190 |
-
> **Note:** MTP self-speculation is **not bit-exact to target-only over long
|
| 191 |
-
> deterministic generations**. For workloads that require exact target
|
| 192 |
-
> reproduction, run target-only; for throughput on open-ended work, MTP wins.
|
| 193 |
-
> MTP is a single-user / low-concurrency win — it is not faster on saturated
|
| 194 |
-
> batches, which is why the adaptive throttle falls back to target-only.
|
| 195 |
-
|
| 196 |
-
### Sequence logprob comparability (API limitation)
|
| 197 |
|
| 198 |
-
|
| 199 |
-
|
| 200 |
-
|
| 201 |
-
also matches, KLD is **≈ 0.001 nats** (near zero):
|
| 202 |
|
| 203 |
-
|
| 204 |
-
|---|---:|---:|---:|---:|---:|
|
| 205 |
-
| Fast active `draft-mtp` vs target-only | 512 | 12 | 500 | 0.0011215739 | 0.0040239103 |
|
| 206 |
-
| Sequential verifier vs target-only | 512 | 10 | 502 | 0.0012293172 | 0.0040239103 |
|
| 207 |
-
|
| 208 |
-
Full sequence KLD cannot be computed without changing the runtime to return
|
| 209 |
-
target verifier logprobs for accepted speculative tokens.
|
| 210 |
|
| 211 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 212 |
|
| 213 |
-
|
| 214 |
-
against cached target hidden states**, not standard base-model next-token KLD.
|
| 215 |
-
The draft head was trained and **measurably improved** across checkpoints —
|
| 216 |
-
teacher KL fell 1.92 → 1.50 → 0.76 and teacher argmax top-1 rose 0.54 → 0.69 →
|
| 217 |
-
0.89.
|
| 218 |
|
| 219 |
-
|
| 220 |
-
|
| 221 |
-
|
| 222 |
-
|
| 223 |
-
| `snapshots-iq4-live-allrows-b/step-1000` | 32,264 | 2,048 | 0.7591610373 | 0.8908070915 | 0.9389722291 | 0.8076183982 |
|
| 224 |
|
| 225 |
-
|
| 226 |
|
| 227 |
-
|
| 228 |
-
KLD). These training artifacts live under `artifacts/mtp/` locally and are
|
| 229 |
-
referenced by name as provenance — they are not committed in this HF repo.*
|
| 230 |
|
| 231 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 232 |
|
| 233 |
-
|
| 234 |
|
| 235 |
```bash
|
| 236 |
-
|
| 237 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 238 |
```
|
| 239 |
|
| 240 |
-
|
| 241 |
-
adaptive throttling so saturated batches fall back to target-only):
|
| 242 |
|
| 243 |
```bash
|
| 244 |
-
|
| 245 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 246 |
scripts/serve_llamacpp_gpu0.sh
|
| 247 |
```
|
| 248 |
|
| 249 |
-
|
| 250 |
-
|
| 251 |
-
|
| 252 |
-
|
| 253 |
-
|
| 254 |
-
|
| 255 |
-
|
| 256 |
-
|
| 257 |
-
|
| 258 |
-
|
| 259 |
-
|
| 260 |
-
|
| 261 |
-
|
| 262 |
-
|
| 263 |
-
|
| 264 |
-
|
| 265 |
-
|
| 266 |
-
-
|
| 267 |
-
|
| 268 |
-
|
| 269 |
-
|
| 270 |
-
|
| 271 |
-
|
| 272 |
-
-
|
| 273 |
-
|
| 274 |
-
|
| 275 |
-
|
| 276 |
-
-
|
| 277 |
-
-
|
| 278 |
-
-
|
| 279 |
-
|
| 280 |
-
|
| 281 |
-
|
| 282 |
-
|
| 283 |
-
|
| 284 |
-
|
| 285 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
- tp1
|
| 17 |
---
|
| 18 |
|
| 19 |
+
# Ornith 35B Lab
|
| 20 |
|
| 21 |
+
This workspace tracks optimization work for `deepreinforce-ai/Ornith-1.0-35B`.
|
|
|
|
|
|
|
| 22 |
|
| 23 |
+
## Release Summary
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24 |
|
| 25 |
+
Full release writeup: [MODEL_RELEASE_REPORT.md](MODEL_RELEASE_REPORT.md).
|
| 26 |
+
|
| 27 |
+
This release is a single-GPU llama.cpp GGUF package for Ornith-1.0-35B. The
|
| 28 |
+
supported serving policy is `tp=1`, one model copy per GPU. Multi-GPU tensor
|
| 29 |
+
parallel serving is intentionally out of scope for this version.
|
| 30 |
|
| 31 |
| Use case | Recommended artifact | Key numbers |
|
| 32 |
|---|---|---|
|
| 33 |
| Default serving speed | `ornith-1.0-35b-Q4_K_M.gguf` | 19.71 GiB on disk, 21.31 GiB loaded VRAM, 243.3 tok/s c1, 655.6 tok/s c16 |
|
| 34 |
| Lowest memory | `ornith-1.0-35b-Q3_K_M.gguf` | 15.61 GiB on disk, 17.27 GiB loaded VRAM, 240.5 tok/s c1, 493.0 tok/s c16 |
|
| 35 |
| Middle footprint | `ornith-1.0-35b-IQ4_XS.gguf` | 17.64 GiB on disk, 19.34 GiB loaded VRAM, 0.1426 mean top-64 KLD nats |
|
| 36 |
+
| Quality/footprint | `ornith-1.0-35b-Q6_K.gguf` | 26.56 GiB on disk, 28.03 GiB loaded VRAM, 0.0165 mean top-64 KLD nats, 32/32 top-1 match |
|
| 37 |
+
| Native low-concurrency MTP | `ornith-1.0-35b-IQ4_XS-MTP-graft-headQ6.gguf` | 19.6 GB decimal, c1/128 adaptive MTP 319.53 tok/s, acceptance `(0.953, 0.865)` |
|
| 38 |
+
|
| 39 |
+
Quant quality was measured against the upstream BF16 GGUF with a native
|
| 40 |
+
llama.cpp next-token top-64 KLD probe over 32 coding prompts. MTP work includes
|
| 41 |
+
a bootstrapped external draft, trained chain-corrected draft artifacts, a
|
| 42 |
+
requantized integrated IQ4_XS-MTP graft, and patched llama.cpp runtime support
|
| 43 |
+
for recurrent row-index handling, fast backend sampling, sequential verification,
|
| 44 |
+
per-head contexts, and adaptive MTP throttling. The release MTP recommendation
|
| 45 |
+
is adaptive: use MTP for low-concurrency/single-user requests and keep
|
| 46 |
+
`LLAMA_SPEC_MAX_DRAFTING_SLOTS=1` so saturated batches fall back to target-only
|
| 47 |
+
throughput.
|
| 48 |
+
|
| 49 |
+
Dedicated MTP KLD/sequence evaluation is available at
|
| 50 |
+
[benchmarks/mtp-dedicated-kld-evaluation.md](benchmarks/mtp-dedicated-kld-evaluation.md).
|
| 51 |
+
The integrated IQ4_XS-MTP graft measured 0.073138 mean top-64
|
| 52 |
+
`KL(P_bf16 || P_candidate)` nats over 32 prompts. In an 8 prompt x 64 token
|
| 53 |
+
single-user sequence probe, fast native `draft-mtp` reached 82.01% draft-token
|
| 54 |
+
acceptance and 233.81 client tok/s vs 172.57 target-only, but matched only
|
| 55 |
+
478/512 generated token positions, so the active MTP path remains an
|
| 56 |
+
experimental low-concurrency speed profile rather than a strict target-equivalent
|
| 57 |
+
serving mode.
|
| 58 |
+
|
| 59 |
+
## SWE-bench Agent Scores
|
| 60 |
+
|
| 61 |
+
Full report and raw score JSON:
|
| 62 |
+
[benchmarks/swebench-agent-evals.md](benchmarks/swebench-agent-evals.md).
|
| 63 |
+
|
| 64 |
+
Full SWE-bench Verified 100-task slice, reasoning mode enabled:
|
| 65 |
+
|
| 66 |
+
| Profile | Dataset slice | Reasoning | Resolved | Score |
|
| 67 |
+
|---|---|---|---:|---:|
|
| 68 |
+
| Q6_K GGUF | `SWE-bench/SWE-bench_Verified` test `0:100` | on | 69/100 | 69.0% |
|
| 69 |
+
|
| 70 |
+
Verified-mini quant sweep, 50 tasks:
|
| 71 |
+
|
| 72 |
+
| Quant/profile | Resolved chart | Score |
|
| 73 |
+
|---|---|---:|
|
| 74 |
+
| Q6_K | `##################################################################` | 66.0% |
|
| 75 |
+
| Q3_K_M | `################################################################` | 64.0% |
|
| 76 |
+
| Q5_K_M | `################################################################` | 64.0% |
|
| 77 |
+
| Q4_K_M | `##############################################################` | 62.0% |
|
| 78 |
+
| IQ4_XS | `############################################################` | 60.0% |
|
| 79 |
+
| IQ4_XS-MTP-graft-headQ6 | `############################################################` | 60.0% |
|
| 80 |
+
| Q8_0 | `##########################################################` | 58.0% |
|
| 81 |
+
|
| 82 |
+
## Scope
|
| 83 |
+
|
| 84 |
+
- Serving is single GPU only: `tp=1`, one model copy per GPU.
|
| 85 |
+
- GPU0 is the serving speed lane.
|
| 86 |
+
- GPU1 is an independent experiment lane for quantization, fine-tuning, or audit jobs.
|
| 87 |
+
- Multi-GPU serving profiles are intentionally out of scope for this model version.
|
| 88 |
+
|
| 89 |
+
## Initial Tracks
|
| 90 |
+
|
| 91 |
+
1. Baseline and tune single-GPU serving with SGLang, vLLM, and llama.cpp GGUF.
|
| 92 |
+
2. Build a reusable model audit harness for tokenizer, chat template, special-token, reasoning, and tool-call issues.
|
| 93 |
+
3. Evaluate existing GGUF quantizations, then test smaller or higher-throughput formats.
|
| 94 |
+
4. Prepare a coding-data fine-tuning and post-training pipeline.
|
| 95 |
+
|
| 96 |
+
Current reusable workflow: [MODEL_INVESTIGATION_HARNESS.md](MODEL_INVESTIGATION_HARNESS.md).
|
| 97 |
+
Detailed quant/MTP/model-release report: [MODEL_RELEASE_REPORT.md](MODEL_RELEASE_REPORT.md).
|
| 98 |
+
Pi-agent quant coding task report:
|
| 99 |
+
[benchmarks/pi-agent-flappy-quant-test.md](benchmarks/pi-agent-flappy-quant-test.md)
|
| 100 |
+
with raw evidence under [probes/pi-agent-flappy/](probes/pi-agent-flappy/).
|
| 101 |
+
Dedicated MTP KLD/sequence evaluation:
|
| 102 |
+
[benchmarks/mtp-dedicated-kld-evaluation.md](benchmarks/mtp-dedicated-kld-evaluation.md)
|
| 103 |
+
with raw evidence under [benchmarks/raw/](benchmarks/raw/).
|
| 104 |
+
SWE-bench agent evaluation:
|
| 105 |
+
[benchmarks/swebench-agent-evals.md](benchmarks/swebench-agent-evals.md)
|
| 106 |
+
with raw score reports under [benchmarks/raw/swebench/](benchmarks/raw/swebench/).
|
| 107 |
+
Current requirement audit: [PROJECT_STATUS_AUDIT.md](PROJECT_STATUS_AUDIT.md).
|
| 108 |
+
SFT remediation plan: [SFT_REMEDIATION_PLAN.md](SFT_REMEDIATION_PLAN.md).
|
| 109 |
+
Serving profile catalog: [configs/serving_profiles.yaml](configs/serving_profiles.yaml)
|
| 110 |
+
with validation report [probes/serving-profile-validation.md](probes/serving-profile-validation.md).
|
| 111 |
+
Quant artifact catalog: [configs/quant_artifacts.yaml](configs/quant_artifacts.yaml)
|
| 112 |
+
with validation report [probes/quant-artifact-validation.md](probes/quant-artifact-validation.md).
|
| 113 |
+
MTP profile catalog: [configs/mtp_profiles.yaml](configs/mtp_profiles.yaml)
|
| 114 |
+
with validation report [probes/mtp-profile-validation.md](probes/mtp-profile-validation.md).
|
| 115 |
+
Project requirement catalog: [configs/project_requirements.yaml](configs/project_requirements.yaml)
|
| 116 |
+
with validation report [probes/project-requirement-validation.md](probes/project-requirement-validation.md).
|
| 117 |
+
Idle-state policy: [configs/idle_state_policy.yaml](configs/idle_state_policy.yaml)
|
| 118 |
+
with validation report [probes/idle-state-validation.md](probes/idle-state-validation.md).
|
| 119 |
+
CPU validation suite: [scripts/run_cpu_validation_suite.py](scripts/run_cpu_validation_suite.py)
|
| 120 |
+
with report [probes/cpu-validation-suite.md](probes/cpu-validation-suite.md).
|
| 121 |
+
Goal completion audit: [scripts/build_goal_completion_audit.py](scripts/build_goal_completion_audit.py)
|
| 122 |
+
with report [probes/goal-completion-audit.md](probes/goal-completion-audit.md).
|
| 123 |
+
Release-reference consistency: [scripts/validate_release_references.py](scripts/validate_release_references.py)
|
| 124 |
+
with report [probes/release-reference-validation.md](probes/release-reference-validation.md).
|
| 125 |
+
Behavior regression matrix: [probes/behavior-regression-matrix.md](probes/behavior-regression-matrix.md)
|
| 126 |
+
via [scripts/summarize_behavior_matrix.py](scripts/summarize_behavior_matrix.py).
|
| 127 |
+
Release readiness report: [probes/release-readiness-report.md](probes/release-readiness-report.md)
|
| 128 |
+
via [scripts/build_release_readiness_report.py](scripts/build_release_readiness_report.py).
|
| 129 |
+
HF release verification: [probes/hf-release-verification.json](probes/hf-release-verification.json)
|
| 130 |
+
via [scripts/verify_hf_release.py](scripts/verify_hf_release.py). Latest local
|
| 131 |
+
run passed 48 checks with 0 failures and 3 expected incomplete-project warnings;
|
| 132 |
+
the exact verified commit is recorded in `remote.sha` in the JSON report.
|
| 133 |
+
Publishing a verifier report can leave the staged published report one metadata
|
| 134 |
+
commit behind the newest remote head; `scripts/validate_release_references.py`
|
| 135 |
+
and `scripts/build_goal_completion_audit.py` record both published and latest
|
| 136 |
+
local verifier evidence to prevent stale completion claims.
|
| 137 |
+
When the same script runs from a fresh HF repo clone, `hf_upload/...` defaults
|
| 138 |
+
fall back to repo-root paths; a missing local latest-verifier run is a warning,
|
| 139 |
+
not a failure.
|
| 140 |
+
|
| 141 |
+
## Current Serving Baseline
|
| 142 |
+
|
| 143 |
+
- Best current GGUF serving profile: llama.cpp `Q4_K_M` `tp=1` with `REASONING=off`.
|
| 144 |
+
- Integrated MTP serving profile: `IQ4_XS-MTP-graft-headQ6` with adaptive throttling, `LLAMA_SPEC_MAX_DRAFTING_SLOTS=1`; this keeps low-concurrency MTP speedups and avoids the saturated c16 loss. The MTP catalog validates all 8 published MTP GGUF artifacts.
|
| 145 |
+
- Pi-agent Flappy Bird quant test: all 7 tested profiles generated a runnable vanilla HTML/CSS/JS canvas game. `IQ4_XS-MTP-graft-headQ6` was fastest on this agent workload at 320.91 decode tok/s, with 88.92% MTP draft-token acceptance (`3452/3882`) and per-position acceptance `(0.936, 0.843)`. Q3_K_M passed only after 3 Pi-agent repair passes; all other profiles passed on the first run.
|
| 146 |
+
- Earlier vLLM BF16 `tp=1` and SGLang BF16 `tp=1` profiles are preserved as baseline notes, but the publishable model package is the llama.cpp GGUF stack.
|
| 147 |
+
- The default llama.cpp script uses `REASONING=off` because the model otherwise spends simple coding prompts in `reasoning_content` before producing final `content`.
|
| 148 |
+
- Custom Q3_K_M `tp=1` is now validated as the lowest-memory GGUF option: 15.61 GiB on disk, 17.27 GiB loaded VRAM in the short-context benchmark profile, and 0 behavior-suite issues. Q4_K_M remains faster.
|
| 149 |
+
- Custom IQ4_XS `tp=1` is validated as the middle-footprint GGUF option and is the base body for the integrated MTP graft artifact.
|
| 150 |
+
- vLLM GGUF Q4_K_M currently loads but has broken output and is not benchmark-valid.
|
| 151 |
+
- Profile notes: `runs/vllm-initial-profile.md` and `runs/sglang-initial-profile.md`.
|
| 152 |
+
- Quantized control note: `runs/llamacpp-q4-control.md`.
|
| 153 |
+
- GGUF/vLLM materialization audit: `runs/gguf-vllm-materialization-q4.md`.
|
| 154 |
+
- Reusable benchmark summary:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 155 |
|
| 156 |
+
```bash
|
| 157 |
+
.venv-lab/bin/python scripts/summarize_benchmarks.py runs/*-seq-c*-256.jsonl
|
| 158 |
+
```
|
|
|
|
| 159 |
|
| 160 |
+
## GPU1 Experiment Lane
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 161 |
|
| 162 |
+
- Lane config: `configs/experiment_lanes.yaml`.
|
| 163 |
+
- Quantization matrix: `configs/quantization_matrix.yaml`.
|
| 164 |
+
- Custom Q3_K_M profile: `runs/llamacpp-q3-k-m-profile.md`.
|
| 165 |
+
- Training plan: `configs/training_plan.yaml`.
|
| 166 |
+
- Source-backed run note: `runs/gpu1-quant-train-plan.md`.
|
| 167 |
|
| 168 |
+
## Hardware Baseline
|
|
|
|
|
|
|
|
|
|
|
|
|
| 169 |
|
| 170 |
+
- GPU0: NVIDIA RTX PRO 6000 Blackwell Max-Q Workstation Edition, 97,887 MiB VRAM.
|
| 171 |
+
- GPU1: NVIDIA RTX PRO 6000 Blackwell Max-Q Workstation Edition, 97,887 MiB VRAM.
|
| 172 |
+
- Driver: 580.159.03, CUDA runtime reported by driver: 13.0.
|
| 173 |
+
- Host had no `nvcc` and no `cmake` at project start. A local `.venv-build` now provides CMake, Ninja, and CUDA 13.2 wheels for the llama.cpp CUDA build.
|
|
|
|
| 174 |
|
| 175 |
+
## Quick Start
|
| 176 |
|
| 177 |
+
Create the lightweight lab environment:
|
|
|
|
|
|
|
| 178 |
|
| 179 |
+
```bash
|
| 180 |
+
cd /home/ripper/ornith-35b-lab
|
| 181 |
+
uv venv .venv-lab --python 3.12
|
| 182 |
+
source .venv-lab/bin/activate
|
| 183 |
+
uv pip install -r requirements-lab.txt
|
| 184 |
+
```
|
| 185 |
|
| 186 |
+
Run the metadata audit without downloading full model weights:
|
| 187 |
|
| 188 |
```bash
|
| 189 |
+
python scripts/audit_model.py --output runs/audit-ornith-35b.json
|
| 190 |
+
.venv-lab/bin/python scripts/check_audit_gates.py runs/audit-ornith-35b.json
|
| 191 |
+
```
|
| 192 |
+
|
| 193 |
+
Run the combined reusable investigation report:
|
| 194 |
+
|
| 195 |
+
```bash
|
| 196 |
+
.venv-lab/bin/python scripts/run_model_investigation.py \
|
| 197 |
+
--output runs/investigation-ornith-metadata.json
|
| 198 |
+
.venv-lab/bin/python scripts/summarize_investigation.py \
|
| 199 |
+
runs/investigation-ornith-metadata.json \
|
| 200 |
+
--output runs/investigation-ornith-metadata.md
|
| 201 |
+
```
|
| 202 |
+
|
| 203 |
+
Add `--base-url` and `--served-model` when a live OpenAI-compatible backend is
|
| 204 |
+
running to include the behavior suite in the same report.
|
| 205 |
+
|
| 206 |
+
Verify the published HF release and local staged support-file hashes:
|
| 207 |
+
|
| 208 |
+
```bash
|
| 209 |
+
.venv-lab/bin/python scripts/verify_hf_release.py \
|
| 210 |
+
--output runs/hf-release-verification.json
|
| 211 |
+
```
|
| 212 |
+
|
| 213 |
+
When running from a clone of the HF repo rather than this lab workspace, pass
|
| 214 |
+
`--local-dir . --manifest ARTIFACT_MANIFEST.json`.
|
| 215 |
+
|
| 216 |
+
Run the local CPU-only validation suite:
|
| 217 |
+
|
| 218 |
+
```bash
|
| 219 |
+
.venv-lab/bin/python scripts/run_cpu_validation_suite.py \
|
| 220 |
+
--root . \
|
| 221 |
+
--output runs/cpu-validation-suite.json \
|
| 222 |
+
--markdown-output runs/cpu-validation-suite.md \
|
| 223 |
+
--fail-on-error
|
| 224 |
+
```
|
| 225 |
+
|
| 226 |
+
This runs idle-state, serving profile, quant artifact, MTP profile,
|
| 227 |
+
release-readiness, release-reference, project-requirement, and goal-completion validation in
|
| 228 |
+
dependency order. It does not start model serving, SFT, quantization, or eval
|
| 229 |
+
workloads. Its summary includes both failed steps and report-level warnings so
|
| 230 |
+
expected incomplete-project warnings stay visible without failing the suite.
|
| 231 |
+
|
| 232 |
+
Build the CPU-only release-readiness report:
|
| 233 |
+
|
| 234 |
+
```bash
|
| 235 |
+
.venv-lab/bin/python scripts/build_release_readiness_report.py \
|
| 236 |
+
--allow-unreleased-sft \
|
| 237 |
+
--serving-profile-validation hf_upload/probes/serving-profile-validation.json \
|
| 238 |
+
--quant-artifact-validation hf_upload/probes/quant-artifact-validation.json \
|
| 239 |
+
--mtp-profile-validation hf_upload/probes/mtp-profile-validation.json \
|
| 240 |
+
--required-doc hf_upload/README.md \
|
| 241 |
+
--required-doc hf_upload/RELEASE_AUDIT.md \
|
| 242 |
+
--required-doc hf_upload/PROJECT_STATUS_AUDIT.md \
|
| 243 |
+
--required-doc hf_upload/MODEL_INVESTIGATION_HARNESS.md \
|
| 244 |
+
--required-doc hf_upload/SFT_REMEDIATION_PLAN.md \
|
| 245 |
+
--output runs/release-readiness-report.json \
|
| 246 |
+
--markdown-output runs/release-readiness-report.md \
|
| 247 |
+
--fail-on-serving-not-ready
|
| 248 |
+
```
|
| 249 |
+
|
| 250 |
+
The current readiness report passes the GGUF serving release and marks the full
|
| 251 |
+
project incomplete because no SFT/post-training adapter is released.
|
| 252 |
+
|
| 253 |
+
Validate the machine-readable serving profiles:
|
| 254 |
+
|
| 255 |
+
```bash
|
| 256 |
+
.venv-lab/bin/python scripts/validate_serving_profiles.py \
|
| 257 |
+
--catalog configs/serving_profiles.yaml \
|
| 258 |
+
--manifest hf_upload/ARTIFACT_MANIFEST.json \
|
| 259 |
+
--hf-root hf_upload \
|
| 260 |
+
--output runs/serving-profile-validation.json \
|
| 261 |
+
--markdown-output runs/serving-profile-validation.md \
|
| 262 |
+
--fail-on-error
|
| 263 |
+
```
|
| 264 |
+
|
| 265 |
+
Validate the machine-readable quant artifacts:
|
| 266 |
+
|
| 267 |
+
```bash
|
| 268 |
+
.venv-lab/bin/python scripts/validate_quant_artifacts.py \
|
| 269 |
+
--catalog configs/quant_artifacts.yaml \
|
| 270 |
+
--manifest hf_upload/ARTIFACT_MANIFEST.json \
|
| 271 |
+
--hf-root hf_upload \
|
| 272 |
+
--output runs/quant-artifact-validation.json \
|
| 273 |
+
--markdown-output runs/quant-artifact-validation.md \
|
| 274 |
+
--fail-on-error
|
| 275 |
+
```
|
| 276 |
+
|
| 277 |
+
Validate the machine-readable MTP profiles:
|
| 278 |
+
|
| 279 |
+
```bash
|
| 280 |
+
.venv-lab/bin/python scripts/validate_mtp_profiles.py \
|
| 281 |
+
--catalog configs/mtp_profiles.yaml \
|
| 282 |
+
--manifest hf_upload/ARTIFACT_MANIFEST.json \
|
| 283 |
+
--hf-root hf_upload \
|
| 284 |
+
--output runs/mtp-profile-validation.json \
|
| 285 |
+
--markdown-output runs/mtp-profile-validation.md \
|
| 286 |
+
--fail-on-error
|
| 287 |
+
```
|
| 288 |
+
|
| 289 |
+
Validate the project-level requirement status:
|
| 290 |
+
|
| 291 |
+
```bash
|
| 292 |
+
.venv-lab/bin/python scripts/validate_project_requirements.py \
|
| 293 |
+
--catalog configs/project_requirements.yaml \
|
| 294 |
+
--root . \
|
| 295 |
+
--output runs/project-requirement-validation.json \
|
| 296 |
+
--markdown-output runs/project-requirement-validation.md \
|
| 297 |
+
--fail-on-error
|
| 298 |
+
```
|
| 299 |
+
|
| 300 |
+
This report intentionally separates `serving_release_status=pass` from
|
| 301 |
+
`full_project_status=incomplete` until a release-candidate SFT/post-training
|
| 302 |
+
adapter exists.
|
| 303 |
+
|
| 304 |
+
Validate the stopped/idle runtime state:
|
| 305 |
+
|
| 306 |
+
```bash
|
| 307 |
+
.venv-lab/bin/python scripts/validate_idle_state.py \
|
| 308 |
+
--config configs/idle_state_policy.yaml \
|
| 309 |
+
--root . \
|
| 310 |
+
--output runs/idle-state-validation.json \
|
| 311 |
+
--markdown-output runs/idle-state-validation.md \
|
| 312 |
+
--fail-on-error
|
| 313 |
+
```
|
| 314 |
+
|
| 315 |
+
This is a live local guard: it checks the saved SFT stop record, `nvidia-smi`
|
| 316 |
+
GPU utilization and compute apps, and known training/server/quant process names.
|
| 317 |
+
|
| 318 |
+
Run reusable behavior probes against any OpenAI-compatible backend:
|
| 319 |
+
|
| 320 |
+
```bash
|
| 321 |
+
.venv-lab/bin/python scripts/probe_model_behavior.py \
|
| 322 |
+
--base-url http://localhost:8000/v1 \
|
| 323 |
+
--model Ornith-1.0-35B \
|
| 324 |
+
--output runs/behavior-vllm-bf16.json
|
| 325 |
+
```
|
| 326 |
+
|
| 327 |
+
The suite lives in `configs/model_behavior_suite.yaml` and is designed to be
|
| 328 |
+
copied to other models. It turns model bugs into named, repeatable checks for
|
| 329 |
+
coding correctness, JSON following, chat-template leakage, decode corruption,
|
| 330 |
+
and optional tool-call handling.
|
| 331 |
+
|
| 332 |
+
Run the GGUF/vLLM materialization audit for a quantized artifact:
|
| 333 |
+
|
| 334 |
+
```bash
|
| 335 |
+
.venv-lab/bin/python scripts/audit_gguf_vllm_materialization.py \
|
| 336 |
+
--model deepreinforce-ai/Ornith-1.0-35B \
|
| 337 |
+
--gguf deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M \
|
| 338 |
+
--output runs/gguf-vllm-materialization-q4.json
|
| 339 |
```
|
| 340 |
|
| 341 |
+
Start one serving backend on GPU0 after installing that backend in its own environment:
|
|
|
|
| 342 |
|
| 343 |
```bash
|
| 344 |
+
CUDA_VISIBLE_DEVICES=0 scripts/serve_vllm_gpu0.sh
|
| 345 |
+
CUDA_VISIBLE_DEVICES=0 scripts/serve_sglang_gpu0.sh
|
| 346 |
+
CUDA_VISIBLE_DEVICES=0 scripts/serve_llamacpp_gpu0.sh
|
| 347 |
+
```
|
| 348 |
+
|
| 349 |
+
Serve the custom local Q3_K_M GGUF:
|
| 350 |
+
|
| 351 |
+
```bash
|
| 352 |
+
QUANT=Q3_K_M PORT=8002 CTX_SIZE=8192 PARALLEL=16 \
|
| 353 |
scripts/serve_llamacpp_gpu0.sh
|
| 354 |
```
|
| 355 |
|
| 356 |
+
Run a smoke benchmark against an OpenAI-compatible server:
|
| 357 |
+
|
| 358 |
+
```bash
|
| 359 |
+
python scripts/bench_openai.py \
|
| 360 |
+
--base-url http://localhost:8000/v1 \
|
| 361 |
+
--model Ornith-1.0-35B \
|
| 362 |
+
--concurrency 1 \
|
| 363 |
+
--max-tokens 256 \
|
| 364 |
+
--output runs/smoke-bench.jsonl
|
| 365 |
+
```
|
| 366 |
+
|
| 367 |
+
Probe the OpenAI-compatible server contract after each backend/profile change:
|
| 368 |
+
|
| 369 |
+
```bash
|
| 370 |
+
.venv-lab/bin/python scripts/probe_openai_contract.py \
|
| 371 |
+
--base-url http://localhost:8000/v1 \
|
| 372 |
+
--model Ornith-1.0-35B \
|
| 373 |
+
--output runs/server-contract.json
|
| 374 |
+
```
|
| 375 |
+
|
| 376 |
+
Prepare and gate SFT data before launching GPU training:
|
| 377 |
+
|
| 378 |
+
```bash
|
| 379 |
+
.venv-train/bin/python scripts/render_sft_jsonl.py \
|
| 380 |
+
--input data/train/coding_sft_messages.jsonl \
|
| 381 |
+
--output data/train/coding_sft.jsonl
|
| 382 |
+
|
| 383 |
+
.venv-train/bin/python scripts/validate_sft_jsonl.py \
|
| 384 |
+
--train-jsonl data/train/coding_sft.jsonl \
|
| 385 |
+
--eval-jsonl data/eval/coding_sft_eval.jsonl \
|
| 386 |
+
--output runs/sft-data-validation.json
|
| 387 |
+
```
|
| 388 |
+
|
| 389 |
+
`scripts/train_sft_lora.py` runs the same validation before importing Torch and
|
| 390 |
+
loading the 35B model unless `--skip-data-validation` is passed.
|
| 391 |
+
|
| 392 |
+
The production SFT run was stopped at user request. Latest durable checkpoint:
|
| 393 |
+
`artifacts/train/ornith-35b-coding-lora-prod-20k/checkpoint-8000`; stop record:
|
| 394 |
+
`runs/ornith-35b-coding-lora-prod-20k.stopped.json`.
|
| 395 |
+
|
| 396 |
+
CPU-side SFT remediation is prepared but not running. The repair path is defined
|
| 397 |
+
in `configs/sft_repair_blend.yaml` and uses:
|
| 398 |
+
|
| 399 |
+
- `scripts/build_sft_repair_set.py`
|
| 400 |
+
- `scripts/build_sft_code_only_from_fences.py`
|
| 401 |
+
- `scripts/build_sft_blend.py`
|
| 402 |
+
- `data/train/coding_sft_prod_repair_strong.jsonl`
|
| 403 |
+
- `data/eval/coding_sft_prod_repair_strong_eval.jsonl`
|
| 404 |
+
- `runs/sft-data-validation-prod-repair-strong.json`
|
| 405 |
+
- `runs/sft-format-audit-prod-repair-strong.json`
|
| 406 |
+
- `runs/sft-format-gate-code-only-extract.json`
|
| 407 |
+
- `runs/sft-format-gate-prod-repair-strong.json`
|
| 408 |
+
- `runs/sft-resume-preflight-strong.json`
|
| 409 |
+
- `runs/sft-format-gate-strict-repair.json`
|
| 410 |
+
- `runs/sft-format-gate-prod-repair.json`
|
| 411 |
+
|
| 412 |
+
The recommended strong repair split has 44,096 train rows, 2,312 eval rows, and
|
| 413 |
+
no blocking validation issues. It reduces train message code fences to 54.43%
|
| 414 |
+
and `Here's`/`Here is` preambles to 30.49%. The code-only extraction gate passes
|
| 415 |
+
8/8 checks, and the strong blended repair gate passes 10/10 checks. Do not
|
| 416 |
+
resume SFT unless explicitly requested.
|
| 417 |
+
|
| 418 |
+
Before any future resume, run the report-only guard:
|
| 419 |
+
|
| 420 |
+
```bash
|
| 421 |
+
.venv-lab/bin/python scripts/preflight_sft_resume.py \
|
| 422 |
+
--output runs/sft-resume-preflight-strong.json
|
| 423 |
+
```
|
| 424 |
+
|
| 425 |
+
The current preflight passes 16/16 checks and includes the exact resume command
|
| 426 |
+
preview without launching training.
|
| 427 |
+
|
| 428 |
+
Run the production SFT monitor only for a resumed run:
|
| 429 |
+
|
| 430 |
+
```bash
|
| 431 |
+
scripts/monitor_sft_prod.sh
|
| 432 |
+
```
|
| 433 |
+
|
| 434 |
+
Start the automatic checkpoint behavior gate watcher only for a resumed run:
|
| 435 |
+
|
| 436 |
+
```bash
|
| 437 |
+
scripts/watch_sft_checkpoint_gate.sh
|
| 438 |
+
```
|
| 439 |
+
|
| 440 |
+
Evaluate a LoRA checkpoint against the reusable behavior suite:
|
| 441 |
+
|
| 442 |
+
```bash
|
| 443 |
+
CUDA_VISIBLE_DEVICES=0 \
|
| 444 |
+
.venv-train/bin/python scripts/eval_lora_behavior.py \
|
| 445 |
+
--base-model deepreinforce-ai/Ornith-1.0-35B \
|
| 446 |
+
--adapter artifacts/train/ornith-35b-coding-lora-prod-20k/checkpoint-<step> \
|
| 447 |
+
--suite configs/model_behavior_suite.yaml \
|
| 448 |
+
--output runs/eval-lora-behavior-checkpoint-<step>.json
|
| 449 |
+
```
|
| 450 |
+
|
| 451 |
+
The LoRA evaluator defaults to final-answer mode, matching llama.cpp
|
| 452 |
+
`REASONING=off`. Add `--enable-thinking` only for explicit reasoning-mode tests.
|
benchmarks/raw/swebench/ornith-q6-think-verified100-summary.json
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"run": "ornith_q6_think_verified100",
|
| 3 |
+
"date": "2026-06-29",
|
| 4 |
+
"model": "Ornith-1.0-35B Q6_K GGUF",
|
| 5 |
+
"reasoning": {
|
| 6 |
+
"enabled": true,
|
| 7 |
+
"enable_thinking": true,
|
| 8 |
+
"preserve_thinking": true,
|
| 9 |
+
"auto_disable_thinking_with_tools": false,
|
| 10 |
+
"explicit_thinking_budget": null
|
| 11 |
+
},
|
| 12 |
+
"sampling": {
|
| 13 |
+
"temperature": 1.0,
|
| 14 |
+
"top_p": 1.0,
|
| 15 |
+
"max_output_tokens": 8192
|
| 16 |
+
},
|
| 17 |
+
"dataset": {
|
| 18 |
+
"name": "SWE-bench/SWE-bench_Verified",
|
| 19 |
+
"split": "test",
|
| 20 |
+
"slice": "0:100"
|
| 21 |
+
},
|
| 22 |
+
"score": {
|
| 23 |
+
"resolved": 69,
|
| 24 |
+
"total": 100,
|
| 25 |
+
"resolved_pct": 69.0,
|
| 26 |
+
"unresolved": 25,
|
| 27 |
+
"empty_patch_or_timeout": 6,
|
| 28 |
+
"infra_errors_after_rerun": 0
|
| 29 |
+
},
|
| 30 |
+
"original_harness_report": {
|
| 31 |
+
"path": "/home/ripper/dsv4-local/eval/swebench/reports/ornith_q6_think_verified100.json",
|
| 32 |
+
"resolved": 69,
|
| 33 |
+
"unresolved": 23,
|
| 34 |
+
"empty_patch": 6,
|
| 35 |
+
"infra_errors": 2,
|
| 36 |
+
"note": "The wrapper's total_instances=500 / metric_value=13.80 is not the intended 100-task slice score because the first harness invocation did not pass instance filters."
|
| 37 |
+
},
|
| 38 |
+
"rerun_report_for_original_errors": {
|
| 39 |
+
"path": "/home/ripper/dsv4-local/eval/swebench/reports/ornith_q6_think_verified100_rerun_errors.json",
|
| 40 |
+
"instances": [
|
| 41 |
+
"astropy__astropy-8707",
|
| 42 |
+
"astropy__astropy-8872"
|
| 43 |
+
],
|
| 44 |
+
"resolved": 0,
|
| 45 |
+
"unresolved": 2,
|
| 46 |
+
"infra_errors": 0
|
| 47 |
+
},
|
| 48 |
+
"prediction_artifacts": {
|
| 49 |
+
"merged_predictions": "/home/ripper/ornith-35b-lab/runs/reasoning-verified100-20260629/predictions/q6_think_verified100_merged/preds.json",
|
| 50 |
+
"merge_manifest": "/home/ripper/ornith-35b-lab/runs/reasoning-verified100-20260629/predictions/q6_think_verified100_merged/merge_manifest.json"
|
| 51 |
+
},
|
| 52 |
+
"trace_reliability": {
|
| 53 |
+
"path": "/home/ripper/ornith-35b-lab/runs/reasoning-verified100-20260629/trace_reliability_q6_think_verified100.json",
|
| 54 |
+
"trajectory_count": 100,
|
| 55 |
+
"assistant_turns": 6821,
|
| 56 |
+
"assistant_tool_call_turns": 6821,
|
| 57 |
+
"assistant_no_tool_call_turns": 0,
|
| 58 |
+
"finish_reason_length_turns": 0,
|
| 59 |
+
"format_error_no_tool_calls": 23,
|
| 60 |
+
"duplicate_tool_call_turns": 2,
|
| 61 |
+
"hidden_reasoning_repeat_turns": 0,
|
| 62 |
+
"visible_think_tag_turns": 1,
|
| 63 |
+
"visible_tool_tag_turns": 1,
|
| 64 |
+
"submitted": 94,
|
| 65 |
+
"time_exceeded": 6
|
| 66 |
+
}
|
| 67 |
+
}
|
benchmarks/raw/swebench/ornith_iq4_xs_mtp_graft_verified_mini.json
ADDED
|
@@ -0,0 +1,170 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"total_instances": 50,
|
| 3 |
+
"submitted_instances": 50,
|
| 4 |
+
"completed_instances": 48,
|
| 5 |
+
"resolved_instances": 30,
|
| 6 |
+
"unresolved_instances": 18,
|
| 7 |
+
"empty_patch_instances": 2,
|
| 8 |
+
"error_instances": 0,
|
| 9 |
+
"completed_ids": [
|
| 10 |
+
"django__django-11790",
|
| 11 |
+
"django__django-11815",
|
| 12 |
+
"django__django-11848",
|
| 13 |
+
"django__django-11880",
|
| 14 |
+
"django__django-11885",
|
| 15 |
+
"django__django-11951",
|
| 16 |
+
"django__django-11964",
|
| 17 |
+
"django__django-11999",
|
| 18 |
+
"django__django-12039",
|
| 19 |
+
"django__django-12050",
|
| 20 |
+
"django__django-12143",
|
| 21 |
+
"django__django-12155",
|
| 22 |
+
"django__django-12193",
|
| 23 |
+
"django__django-12209",
|
| 24 |
+
"django__django-12262",
|
| 25 |
+
"django__django-12273",
|
| 26 |
+
"django__django-12276",
|
| 27 |
+
"django__django-12304",
|
| 28 |
+
"django__django-12308",
|
| 29 |
+
"django__django-12325",
|
| 30 |
+
"django__django-12406",
|
| 31 |
+
"django__django-12708",
|
| 32 |
+
"django__django-12713",
|
| 33 |
+
"django__django-12774",
|
| 34 |
+
"django__django-9296",
|
| 35 |
+
"sphinx-doc__sphinx-10323",
|
| 36 |
+
"sphinx-doc__sphinx-10435",
|
| 37 |
+
"sphinx-doc__sphinx-10466",
|
| 38 |
+
"sphinx-doc__sphinx-10673",
|
| 39 |
+
"sphinx-doc__sphinx-11510",
|
| 40 |
+
"sphinx-doc__sphinx-7590",
|
| 41 |
+
"sphinx-doc__sphinx-7748",
|
| 42 |
+
"sphinx-doc__sphinx-7757",
|
| 43 |
+
"sphinx-doc__sphinx-7985",
|
| 44 |
+
"sphinx-doc__sphinx-8035",
|
| 45 |
+
"sphinx-doc__sphinx-8056",
|
| 46 |
+
"sphinx-doc__sphinx-8265",
|
| 47 |
+
"sphinx-doc__sphinx-8269",
|
| 48 |
+
"sphinx-doc__sphinx-8475",
|
| 49 |
+
"sphinx-doc__sphinx-8548",
|
| 50 |
+
"sphinx-doc__sphinx-8551",
|
| 51 |
+
"sphinx-doc__sphinx-8638",
|
| 52 |
+
"sphinx-doc__sphinx-8721",
|
| 53 |
+
"sphinx-doc__sphinx-9230",
|
| 54 |
+
"sphinx-doc__sphinx-9281",
|
| 55 |
+
"sphinx-doc__sphinx-9320",
|
| 56 |
+
"sphinx-doc__sphinx-9367",
|
| 57 |
+
"sphinx-doc__sphinx-9698"
|
| 58 |
+
],
|
| 59 |
+
"incomplete_ids": [],
|
| 60 |
+
"empty_patch_ids": [
|
| 61 |
+
"sphinx-doc__sphinx-9229",
|
| 62 |
+
"sphinx-doc__sphinx-9461"
|
| 63 |
+
],
|
| 64 |
+
"submitted_ids": [
|
| 65 |
+
"django__django-11790",
|
| 66 |
+
"django__django-11815",
|
| 67 |
+
"django__django-11848",
|
| 68 |
+
"django__django-11880",
|
| 69 |
+
"django__django-11885",
|
| 70 |
+
"django__django-11951",
|
| 71 |
+
"django__django-11964",
|
| 72 |
+
"django__django-11999",
|
| 73 |
+
"django__django-12039",
|
| 74 |
+
"django__django-12050",
|
| 75 |
+
"django__django-12143",
|
| 76 |
+
"django__django-12155",
|
| 77 |
+
"django__django-12193",
|
| 78 |
+
"django__django-12209",
|
| 79 |
+
"django__django-12262",
|
| 80 |
+
"django__django-12273",
|
| 81 |
+
"django__django-12276",
|
| 82 |
+
"django__django-12304",
|
| 83 |
+
"django__django-12308",
|
| 84 |
+
"django__django-12325",
|
| 85 |
+
"django__django-12406",
|
| 86 |
+
"django__django-12708",
|
| 87 |
+
"django__django-12713",
|
| 88 |
+
"django__django-12774",
|
| 89 |
+
"django__django-9296",
|
| 90 |
+
"sphinx-doc__sphinx-10323",
|
| 91 |
+
"sphinx-doc__sphinx-10435",
|
| 92 |
+
"sphinx-doc__sphinx-10466",
|
| 93 |
+
"sphinx-doc__sphinx-10673",
|
| 94 |
+
"sphinx-doc__sphinx-11510",
|
| 95 |
+
"sphinx-doc__sphinx-7590",
|
| 96 |
+
"sphinx-doc__sphinx-7748",
|
| 97 |
+
"sphinx-doc__sphinx-7757",
|
| 98 |
+
"sphinx-doc__sphinx-7985",
|
| 99 |
+
"sphinx-doc__sphinx-8035",
|
| 100 |
+
"sphinx-doc__sphinx-8056",
|
| 101 |
+
"sphinx-doc__sphinx-8265",
|
| 102 |
+
"sphinx-doc__sphinx-8269",
|
| 103 |
+
"sphinx-doc__sphinx-8475",
|
| 104 |
+
"sphinx-doc__sphinx-8548",
|
| 105 |
+
"sphinx-doc__sphinx-8551",
|
| 106 |
+
"sphinx-doc__sphinx-8638",
|
| 107 |
+
"sphinx-doc__sphinx-8721",
|
| 108 |
+
"sphinx-doc__sphinx-9229",
|
| 109 |
+
"sphinx-doc__sphinx-9230",
|
| 110 |
+
"sphinx-doc__sphinx-9281",
|
| 111 |
+
"sphinx-doc__sphinx-9320",
|
| 112 |
+
"sphinx-doc__sphinx-9367",
|
| 113 |
+
"sphinx-doc__sphinx-9461",
|
| 114 |
+
"sphinx-doc__sphinx-9698"
|
| 115 |
+
],
|
| 116 |
+
"resolved_ids": [
|
| 117 |
+
"django__django-11815",
|
| 118 |
+
"django__django-11880",
|
| 119 |
+
"django__django-11951",
|
| 120 |
+
"django__django-11964",
|
| 121 |
+
"django__django-11999",
|
| 122 |
+
"django__django-12039",
|
| 123 |
+
"django__django-12050",
|
| 124 |
+
"django__django-12143",
|
| 125 |
+
"django__django-12155",
|
| 126 |
+
"django__django-12193",
|
| 127 |
+
"django__django-12209",
|
| 128 |
+
"django__django-12262",
|
| 129 |
+
"django__django-12276",
|
| 130 |
+
"django__django-12304",
|
| 131 |
+
"django__django-12708",
|
| 132 |
+
"django__django-12713",
|
| 133 |
+
"django__django-12774",
|
| 134 |
+
"django__django-9296",
|
| 135 |
+
"sphinx-doc__sphinx-10466",
|
| 136 |
+
"sphinx-doc__sphinx-7757",
|
| 137 |
+
"sphinx-doc__sphinx-8035",
|
| 138 |
+
"sphinx-doc__sphinx-8269",
|
| 139 |
+
"sphinx-doc__sphinx-8475",
|
| 140 |
+
"sphinx-doc__sphinx-8551",
|
| 141 |
+
"sphinx-doc__sphinx-8721",
|
| 142 |
+
"sphinx-doc__sphinx-9230",
|
| 143 |
+
"sphinx-doc__sphinx-9281",
|
| 144 |
+
"sphinx-doc__sphinx-9320",
|
| 145 |
+
"sphinx-doc__sphinx-9367",
|
| 146 |
+
"sphinx-doc__sphinx-9698"
|
| 147 |
+
],
|
| 148 |
+
"unresolved_ids": [
|
| 149 |
+
"django__django-11790",
|
| 150 |
+
"django__django-11848",
|
| 151 |
+
"django__django-11885",
|
| 152 |
+
"django__django-12273",
|
| 153 |
+
"django__django-12308",
|
| 154 |
+
"django__django-12325",
|
| 155 |
+
"django__django-12406",
|
| 156 |
+
"sphinx-doc__sphinx-10323",
|
| 157 |
+
"sphinx-doc__sphinx-10435",
|
| 158 |
+
"sphinx-doc__sphinx-10673",
|
| 159 |
+
"sphinx-doc__sphinx-11510",
|
| 160 |
+
"sphinx-doc__sphinx-7590",
|
| 161 |
+
"sphinx-doc__sphinx-7748",
|
| 162 |
+
"sphinx-doc__sphinx-7985",
|
| 163 |
+
"sphinx-doc__sphinx-8056",
|
| 164 |
+
"sphinx-doc__sphinx-8265",
|
| 165 |
+
"sphinx-doc__sphinx-8548",
|
| 166 |
+
"sphinx-doc__sphinx-8638"
|
| 167 |
+
],
|
| 168 |
+
"error_ids": [],
|
| 169 |
+
"schema_version": 2
|
| 170 |
+
}
|
benchmarks/raw/swebench/ornith_iq4_xs_verified_mini.json
ADDED
|
@@ -0,0 +1,167 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"total_instances": 50,
|
| 3 |
+
"submitted_instances": 50,
|
| 4 |
+
"completed_instances": 45,
|
| 5 |
+
"resolved_instances": 30,
|
| 6 |
+
"unresolved_instances": 15,
|
| 7 |
+
"empty_patch_instances": 5,
|
| 8 |
+
"error_instances": 0,
|
| 9 |
+
"completed_ids": [
|
| 10 |
+
"django__django-11790",
|
| 11 |
+
"django__django-11815",
|
| 12 |
+
"django__django-11848",
|
| 13 |
+
"django__django-11880",
|
| 14 |
+
"django__django-11885",
|
| 15 |
+
"django__django-11951",
|
| 16 |
+
"django__django-11999",
|
| 17 |
+
"django__django-12039",
|
| 18 |
+
"django__django-12050",
|
| 19 |
+
"django__django-12143",
|
| 20 |
+
"django__django-12155",
|
| 21 |
+
"django__django-12193",
|
| 22 |
+
"django__django-12262",
|
| 23 |
+
"django__django-12273",
|
| 24 |
+
"django__django-12276",
|
| 25 |
+
"django__django-12304",
|
| 26 |
+
"django__django-12308",
|
| 27 |
+
"django__django-12325",
|
| 28 |
+
"django__django-12406",
|
| 29 |
+
"django__django-12708",
|
| 30 |
+
"django__django-12713",
|
| 31 |
+
"django__django-12774",
|
| 32 |
+
"django__django-9296",
|
| 33 |
+
"sphinx-doc__sphinx-10323",
|
| 34 |
+
"sphinx-doc__sphinx-10435",
|
| 35 |
+
"sphinx-doc__sphinx-10466",
|
| 36 |
+
"sphinx-doc__sphinx-11510",
|
| 37 |
+
"sphinx-doc__sphinx-7590",
|
| 38 |
+
"sphinx-doc__sphinx-7748",
|
| 39 |
+
"sphinx-doc__sphinx-7757",
|
| 40 |
+
"sphinx-doc__sphinx-7985",
|
| 41 |
+
"sphinx-doc__sphinx-8035",
|
| 42 |
+
"sphinx-doc__sphinx-8056",
|
| 43 |
+
"sphinx-doc__sphinx-8265",
|
| 44 |
+
"sphinx-doc__sphinx-8269",
|
| 45 |
+
"sphinx-doc__sphinx-8475",
|
| 46 |
+
"sphinx-doc__sphinx-8548",
|
| 47 |
+
"sphinx-doc__sphinx-8551",
|
| 48 |
+
"sphinx-doc__sphinx-8638",
|
| 49 |
+
"sphinx-doc__sphinx-8721",
|
| 50 |
+
"sphinx-doc__sphinx-9230",
|
| 51 |
+
"sphinx-doc__sphinx-9281",
|
| 52 |
+
"sphinx-doc__sphinx-9320",
|
| 53 |
+
"sphinx-doc__sphinx-9367",
|
| 54 |
+
"sphinx-doc__sphinx-9698"
|
| 55 |
+
],
|
| 56 |
+
"incomplete_ids": [],
|
| 57 |
+
"empty_patch_ids": [
|
| 58 |
+
"django__django-11964",
|
| 59 |
+
"django__django-12209",
|
| 60 |
+
"sphinx-doc__sphinx-10673",
|
| 61 |
+
"sphinx-doc__sphinx-9229",
|
| 62 |
+
"sphinx-doc__sphinx-9461"
|
| 63 |
+
],
|
| 64 |
+
"submitted_ids": [
|
| 65 |
+
"django__django-11790",
|
| 66 |
+
"django__django-11815",
|
| 67 |
+
"django__django-11848",
|
| 68 |
+
"django__django-11880",
|
| 69 |
+
"django__django-11885",
|
| 70 |
+
"django__django-11951",
|
| 71 |
+
"django__django-11964",
|
| 72 |
+
"django__django-11999",
|
| 73 |
+
"django__django-12039",
|
| 74 |
+
"django__django-12050",
|
| 75 |
+
"django__django-12143",
|
| 76 |
+
"django__django-12155",
|
| 77 |
+
"django__django-12193",
|
| 78 |
+
"django__django-12209",
|
| 79 |
+
"django__django-12262",
|
| 80 |
+
"django__django-12273",
|
| 81 |
+
"django__django-12276",
|
| 82 |
+
"django__django-12304",
|
| 83 |
+
"django__django-12308",
|
| 84 |
+
"django__django-12325",
|
| 85 |
+
"django__django-12406",
|
| 86 |
+
"django__django-12708",
|
| 87 |
+
"django__django-12713",
|
| 88 |
+
"django__django-12774",
|
| 89 |
+
"django__django-9296",
|
| 90 |
+
"sphinx-doc__sphinx-10323",
|
| 91 |
+
"sphinx-doc__sphinx-10435",
|
| 92 |
+
"sphinx-doc__sphinx-10466",
|
| 93 |
+
"sphinx-doc__sphinx-10673",
|
| 94 |
+
"sphinx-doc__sphinx-11510",
|
| 95 |
+
"sphinx-doc__sphinx-7590",
|
| 96 |
+
"sphinx-doc__sphinx-7748",
|
| 97 |
+
"sphinx-doc__sphinx-7757",
|
| 98 |
+
"sphinx-doc__sphinx-7985",
|
| 99 |
+
"sphinx-doc__sphinx-8035",
|
| 100 |
+
"sphinx-doc__sphinx-8056",
|
| 101 |
+
"sphinx-doc__sphinx-8265",
|
| 102 |
+
"sphinx-doc__sphinx-8269",
|
| 103 |
+
"sphinx-doc__sphinx-8475",
|
| 104 |
+
"sphinx-doc__sphinx-8548",
|
| 105 |
+
"sphinx-doc__sphinx-8551",
|
| 106 |
+
"sphinx-doc__sphinx-8638",
|
| 107 |
+
"sphinx-doc__sphinx-8721",
|
| 108 |
+
"sphinx-doc__sphinx-9229",
|
| 109 |
+
"sphinx-doc__sphinx-9230",
|
| 110 |
+
"sphinx-doc__sphinx-9281",
|
| 111 |
+
"sphinx-doc__sphinx-9320",
|
| 112 |
+
"sphinx-doc__sphinx-9367",
|
| 113 |
+
"sphinx-doc__sphinx-9461",
|
| 114 |
+
"sphinx-doc__sphinx-9698"
|
| 115 |
+
],
|
| 116 |
+
"resolved_ids": [
|
| 117 |
+
"django__django-11790",
|
| 118 |
+
"django__django-11848",
|
| 119 |
+
"django__django-11880",
|
| 120 |
+
"django__django-11951",
|
| 121 |
+
"django__django-11999",
|
| 122 |
+
"django__django-12039",
|
| 123 |
+
"django__django-12050",
|
| 124 |
+
"django__django-12143",
|
| 125 |
+
"django__django-12155",
|
| 126 |
+
"django__django-12262",
|
| 127 |
+
"django__django-12276",
|
| 128 |
+
"django__django-12304",
|
| 129 |
+
"django__django-12708",
|
| 130 |
+
"django__django-12713",
|
| 131 |
+
"django__django-12774",
|
| 132 |
+
"django__django-9296",
|
| 133 |
+
"sphinx-doc__sphinx-10466",
|
| 134 |
+
"sphinx-doc__sphinx-7757",
|
| 135 |
+
"sphinx-doc__sphinx-8035",
|
| 136 |
+
"sphinx-doc__sphinx-8265",
|
| 137 |
+
"sphinx-doc__sphinx-8269",
|
| 138 |
+
"sphinx-doc__sphinx-8475",
|
| 139 |
+
"sphinx-doc__sphinx-8548",
|
| 140 |
+
"sphinx-doc__sphinx-8551",
|
| 141 |
+
"sphinx-doc__sphinx-8721",
|
| 142 |
+
"sphinx-doc__sphinx-9230",
|
| 143 |
+
"sphinx-doc__sphinx-9281",
|
| 144 |
+
"sphinx-doc__sphinx-9320",
|
| 145 |
+
"sphinx-doc__sphinx-9367",
|
| 146 |
+
"sphinx-doc__sphinx-9698"
|
| 147 |
+
],
|
| 148 |
+
"unresolved_ids": [
|
| 149 |
+
"django__django-11815",
|
| 150 |
+
"django__django-11885",
|
| 151 |
+
"django__django-12193",
|
| 152 |
+
"django__django-12273",
|
| 153 |
+
"django__django-12308",
|
| 154 |
+
"django__django-12325",
|
| 155 |
+
"django__django-12406",
|
| 156 |
+
"sphinx-doc__sphinx-10323",
|
| 157 |
+
"sphinx-doc__sphinx-10435",
|
| 158 |
+
"sphinx-doc__sphinx-11510",
|
| 159 |
+
"sphinx-doc__sphinx-7590",
|
| 160 |
+
"sphinx-doc__sphinx-7748",
|
| 161 |
+
"sphinx-doc__sphinx-7985",
|
| 162 |
+
"sphinx-doc__sphinx-8056",
|
| 163 |
+
"sphinx-doc__sphinx-8638"
|
| 164 |
+
],
|
| 165 |
+
"error_ids": [],
|
| 166 |
+
"schema_version": 2
|
| 167 |
+
}
|
benchmarks/raw/swebench/ornith_q3_k_m_verified_mini.json
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"total_instances": 50,
|
| 3 |
+
"submitted_instances": 50,
|
| 4 |
+
"completed_instances": 47,
|
| 5 |
+
"resolved_instances": 32,
|
| 6 |
+
"unresolved_instances": 15,
|
| 7 |
+
"empty_patch_instances": 3,
|
| 8 |
+
"error_instances": 0,
|
| 9 |
+
"completed_ids": [
|
| 10 |
+
"django__django-11790",
|
| 11 |
+
"django__django-11815",
|
| 12 |
+
"django__django-11848",
|
| 13 |
+
"django__django-11880",
|
| 14 |
+
"django__django-11951",
|
| 15 |
+
"django__django-11964",
|
| 16 |
+
"django__django-11999",
|
| 17 |
+
"django__django-12039",
|
| 18 |
+
"django__django-12050",
|
| 19 |
+
"django__django-12143",
|
| 20 |
+
"django__django-12155",
|
| 21 |
+
"django__django-12193",
|
| 22 |
+
"django__django-12209",
|
| 23 |
+
"django__django-12262",
|
| 24 |
+
"django__django-12276",
|
| 25 |
+
"django__django-12304",
|
| 26 |
+
"django__django-12308",
|
| 27 |
+
"django__django-12325",
|
| 28 |
+
"django__django-12406",
|
| 29 |
+
"django__django-12708",
|
| 30 |
+
"django__django-12713",
|
| 31 |
+
"django__django-12774",
|
| 32 |
+
"django__django-9296",
|
| 33 |
+
"sphinx-doc__sphinx-10323",
|
| 34 |
+
"sphinx-doc__sphinx-10435",
|
| 35 |
+
"sphinx-doc__sphinx-10466",
|
| 36 |
+
"sphinx-doc__sphinx-10673",
|
| 37 |
+
"sphinx-doc__sphinx-11510",
|
| 38 |
+
"sphinx-doc__sphinx-7590",
|
| 39 |
+
"sphinx-doc__sphinx-7748",
|
| 40 |
+
"sphinx-doc__sphinx-7757",
|
| 41 |
+
"sphinx-doc__sphinx-7985",
|
| 42 |
+
"sphinx-doc__sphinx-8035",
|
| 43 |
+
"sphinx-doc__sphinx-8056",
|
| 44 |
+
"sphinx-doc__sphinx-8265",
|
| 45 |
+
"sphinx-doc__sphinx-8269",
|
| 46 |
+
"sphinx-doc__sphinx-8475",
|
| 47 |
+
"sphinx-doc__sphinx-8548",
|
| 48 |
+
"sphinx-doc__sphinx-8551",
|
| 49 |
+
"sphinx-doc__sphinx-8638",
|
| 50 |
+
"sphinx-doc__sphinx-8721",
|
| 51 |
+
"sphinx-doc__sphinx-9230",
|
| 52 |
+
"sphinx-doc__sphinx-9281",
|
| 53 |
+
"sphinx-doc__sphinx-9320",
|
| 54 |
+
"sphinx-doc__sphinx-9367",
|
| 55 |
+
"sphinx-doc__sphinx-9461",
|
| 56 |
+
"sphinx-doc__sphinx-9698"
|
| 57 |
+
],
|
| 58 |
+
"incomplete_ids": [],
|
| 59 |
+
"empty_patch_ids": [
|
| 60 |
+
"django__django-11885",
|
| 61 |
+
"django__django-12273",
|
| 62 |
+
"sphinx-doc__sphinx-9229"
|
| 63 |
+
],
|
| 64 |
+
"submitted_ids": [
|
| 65 |
+
"django__django-11790",
|
| 66 |
+
"django__django-11815",
|
| 67 |
+
"django__django-11848",
|
| 68 |
+
"django__django-11880",
|
| 69 |
+
"django__django-11885",
|
| 70 |
+
"django__django-11951",
|
| 71 |
+
"django__django-11964",
|
| 72 |
+
"django__django-11999",
|
| 73 |
+
"django__django-12039",
|
| 74 |
+
"django__django-12050",
|
| 75 |
+
"django__django-12143",
|
| 76 |
+
"django__django-12155",
|
| 77 |
+
"django__django-12193",
|
| 78 |
+
"django__django-12209",
|
| 79 |
+
"django__django-12262",
|
| 80 |
+
"django__django-12273",
|
| 81 |
+
"django__django-12276",
|
| 82 |
+
"django__django-12304",
|
| 83 |
+
"django__django-12308",
|
| 84 |
+
"django__django-12325",
|
| 85 |
+
"django__django-12406",
|
| 86 |
+
"django__django-12708",
|
| 87 |
+
"django__django-12713",
|
| 88 |
+
"django__django-12774",
|
| 89 |
+
"django__django-9296",
|
| 90 |
+
"sphinx-doc__sphinx-10323",
|
| 91 |
+
"sphinx-doc__sphinx-10435",
|
| 92 |
+
"sphinx-doc__sphinx-10466",
|
| 93 |
+
"sphinx-doc__sphinx-10673",
|
| 94 |
+
"sphinx-doc__sphinx-11510",
|
| 95 |
+
"sphinx-doc__sphinx-7590",
|
| 96 |
+
"sphinx-doc__sphinx-7748",
|
| 97 |
+
"sphinx-doc__sphinx-7757",
|
| 98 |
+
"sphinx-doc__sphinx-7985",
|
| 99 |
+
"sphinx-doc__sphinx-8035",
|
| 100 |
+
"sphinx-doc__sphinx-8056",
|
| 101 |
+
"sphinx-doc__sphinx-8265",
|
| 102 |
+
"sphinx-doc__sphinx-8269",
|
| 103 |
+
"sphinx-doc__sphinx-8475",
|
| 104 |
+
"sphinx-doc__sphinx-8548",
|
| 105 |
+
"sphinx-doc__sphinx-8551",
|
| 106 |
+
"sphinx-doc__sphinx-8638",
|
| 107 |
+
"sphinx-doc__sphinx-8721",
|
| 108 |
+
"sphinx-doc__sphinx-9229",
|
| 109 |
+
"sphinx-doc__sphinx-9230",
|
| 110 |
+
"sphinx-doc__sphinx-9281",
|
| 111 |
+
"sphinx-doc__sphinx-9320",
|
| 112 |
+
"sphinx-doc__sphinx-9367",
|
| 113 |
+
"sphinx-doc__sphinx-9461",
|
| 114 |
+
"sphinx-doc__sphinx-9698"
|
| 115 |
+
],
|
| 116 |
+
"resolved_ids": [
|
| 117 |
+
"django__django-11815",
|
| 118 |
+
"django__django-11848",
|
| 119 |
+
"django__django-11880",
|
| 120 |
+
"django__django-11951",
|
| 121 |
+
"django__django-11964",
|
| 122 |
+
"django__django-11999",
|
| 123 |
+
"django__django-12039",
|
| 124 |
+
"django__django-12050",
|
| 125 |
+
"django__django-12143",
|
| 126 |
+
"django__django-12155",
|
| 127 |
+
"django__django-12193",
|
| 128 |
+
"django__django-12209",
|
| 129 |
+
"django__django-12262",
|
| 130 |
+
"django__django-12276",
|
| 131 |
+
"django__django-12304",
|
| 132 |
+
"django__django-12708",
|
| 133 |
+
"django__django-12713",
|
| 134 |
+
"django__django-12774",
|
| 135 |
+
"django__django-9296",
|
| 136 |
+
"sphinx-doc__sphinx-10466",
|
| 137 |
+
"sphinx-doc__sphinx-10673",
|
| 138 |
+
"sphinx-doc__sphinx-7757",
|
| 139 |
+
"sphinx-doc__sphinx-8035",
|
| 140 |
+
"sphinx-doc__sphinx-8265",
|
| 141 |
+
"sphinx-doc__sphinx-8269",
|
| 142 |
+
"sphinx-doc__sphinx-8475",
|
| 143 |
+
"sphinx-doc__sphinx-8551",
|
| 144 |
+
"sphinx-doc__sphinx-8721",
|
| 145 |
+
"sphinx-doc__sphinx-9281",
|
| 146 |
+
"sphinx-doc__sphinx-9320",
|
| 147 |
+
"sphinx-doc__sphinx-9367",
|
| 148 |
+
"sphinx-doc__sphinx-9698"
|
| 149 |
+
],
|
| 150 |
+
"unresolved_ids": [
|
| 151 |
+
"django__django-11790",
|
| 152 |
+
"django__django-12308",
|
| 153 |
+
"django__django-12325",
|
| 154 |
+
"django__django-12406",
|
| 155 |
+
"sphinx-doc__sphinx-10323",
|
| 156 |
+
"sphinx-doc__sphinx-10435",
|
| 157 |
+
"sphinx-doc__sphinx-11510",
|
| 158 |
+
"sphinx-doc__sphinx-7590",
|
| 159 |
+
"sphinx-doc__sphinx-7748",
|
| 160 |
+
"sphinx-doc__sphinx-7985",
|
| 161 |
+
"sphinx-doc__sphinx-8056",
|
| 162 |
+
"sphinx-doc__sphinx-8548",
|
| 163 |
+
"sphinx-doc__sphinx-8638",
|
| 164 |
+
"sphinx-doc__sphinx-9230",
|
| 165 |
+
"sphinx-doc__sphinx-9461"
|
| 166 |
+
],
|
| 167 |
+
"error_ids": [],
|
| 168 |
+
"schema_version": 2
|
| 169 |
+
}
|
benchmarks/raw/swebench/ornith_q4_k_m_verified_mini.json
ADDED
|
@@ -0,0 +1,170 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"total_instances": 50,
|
| 3 |
+
"submitted_instances": 50,
|
| 4 |
+
"completed_instances": 48,
|
| 5 |
+
"resolved_instances": 31,
|
| 6 |
+
"unresolved_instances": 17,
|
| 7 |
+
"empty_patch_instances": 2,
|
| 8 |
+
"error_instances": 0,
|
| 9 |
+
"completed_ids": [
|
| 10 |
+
"django__django-11790",
|
| 11 |
+
"django__django-11815",
|
| 12 |
+
"django__django-11848",
|
| 13 |
+
"django__django-11880",
|
| 14 |
+
"django__django-11885",
|
| 15 |
+
"django__django-11951",
|
| 16 |
+
"django__django-11964",
|
| 17 |
+
"django__django-11999",
|
| 18 |
+
"django__django-12039",
|
| 19 |
+
"django__django-12050",
|
| 20 |
+
"django__django-12143",
|
| 21 |
+
"django__django-12155",
|
| 22 |
+
"django__django-12193",
|
| 23 |
+
"django__django-12262",
|
| 24 |
+
"django__django-12273",
|
| 25 |
+
"django__django-12276",
|
| 26 |
+
"django__django-12304",
|
| 27 |
+
"django__django-12308",
|
| 28 |
+
"django__django-12325",
|
| 29 |
+
"django__django-12406",
|
| 30 |
+
"django__django-12708",
|
| 31 |
+
"django__django-12713",
|
| 32 |
+
"django__django-12774",
|
| 33 |
+
"django__django-9296",
|
| 34 |
+
"sphinx-doc__sphinx-10323",
|
| 35 |
+
"sphinx-doc__sphinx-10435",
|
| 36 |
+
"sphinx-doc__sphinx-10466",
|
| 37 |
+
"sphinx-doc__sphinx-10673",
|
| 38 |
+
"sphinx-doc__sphinx-11510",
|
| 39 |
+
"sphinx-doc__sphinx-7590",
|
| 40 |
+
"sphinx-doc__sphinx-7748",
|
| 41 |
+
"sphinx-doc__sphinx-7757",
|
| 42 |
+
"sphinx-doc__sphinx-7985",
|
| 43 |
+
"sphinx-doc__sphinx-8035",
|
| 44 |
+
"sphinx-doc__sphinx-8056",
|
| 45 |
+
"sphinx-doc__sphinx-8265",
|
| 46 |
+
"sphinx-doc__sphinx-8269",
|
| 47 |
+
"sphinx-doc__sphinx-8475",
|
| 48 |
+
"sphinx-doc__sphinx-8548",
|
| 49 |
+
"sphinx-doc__sphinx-8551",
|
| 50 |
+
"sphinx-doc__sphinx-8638",
|
| 51 |
+
"sphinx-doc__sphinx-8721",
|
| 52 |
+
"sphinx-doc__sphinx-9230",
|
| 53 |
+
"sphinx-doc__sphinx-9281",
|
| 54 |
+
"sphinx-doc__sphinx-9320",
|
| 55 |
+
"sphinx-doc__sphinx-9367",
|
| 56 |
+
"sphinx-doc__sphinx-9461",
|
| 57 |
+
"sphinx-doc__sphinx-9698"
|
| 58 |
+
],
|
| 59 |
+
"incomplete_ids": [],
|
| 60 |
+
"empty_patch_ids": [
|
| 61 |
+
"django__django-12209",
|
| 62 |
+
"sphinx-doc__sphinx-9229"
|
| 63 |
+
],
|
| 64 |
+
"submitted_ids": [
|
| 65 |
+
"django__django-11790",
|
| 66 |
+
"django__django-11815",
|
| 67 |
+
"django__django-11848",
|
| 68 |
+
"django__django-11880",
|
| 69 |
+
"django__django-11885",
|
| 70 |
+
"django__django-11951",
|
| 71 |
+
"django__django-11964",
|
| 72 |
+
"django__django-11999",
|
| 73 |
+
"django__django-12039",
|
| 74 |
+
"django__django-12050",
|
| 75 |
+
"django__django-12143",
|
| 76 |
+
"django__django-12155",
|
| 77 |
+
"django__django-12193",
|
| 78 |
+
"django__django-12209",
|
| 79 |
+
"django__django-12262",
|
| 80 |
+
"django__django-12273",
|
| 81 |
+
"django__django-12276",
|
| 82 |
+
"django__django-12304",
|
| 83 |
+
"django__django-12308",
|
| 84 |
+
"django__django-12325",
|
| 85 |
+
"django__django-12406",
|
| 86 |
+
"django__django-12708",
|
| 87 |
+
"django__django-12713",
|
| 88 |
+
"django__django-12774",
|
| 89 |
+
"django__django-9296",
|
| 90 |
+
"sphinx-doc__sphinx-10323",
|
| 91 |
+
"sphinx-doc__sphinx-10435",
|
| 92 |
+
"sphinx-doc__sphinx-10466",
|
| 93 |
+
"sphinx-doc__sphinx-10673",
|
| 94 |
+
"sphinx-doc__sphinx-11510",
|
| 95 |
+
"sphinx-doc__sphinx-7590",
|
| 96 |
+
"sphinx-doc__sphinx-7748",
|
| 97 |
+
"sphinx-doc__sphinx-7757",
|
| 98 |
+
"sphinx-doc__sphinx-7985",
|
| 99 |
+
"sphinx-doc__sphinx-8035",
|
| 100 |
+
"sphinx-doc__sphinx-8056",
|
| 101 |
+
"sphinx-doc__sphinx-8265",
|
| 102 |
+
"sphinx-doc__sphinx-8269",
|
| 103 |
+
"sphinx-doc__sphinx-8475",
|
| 104 |
+
"sphinx-doc__sphinx-8548",
|
| 105 |
+
"sphinx-doc__sphinx-8551",
|
| 106 |
+
"sphinx-doc__sphinx-8638",
|
| 107 |
+
"sphinx-doc__sphinx-8721",
|
| 108 |
+
"sphinx-doc__sphinx-9229",
|
| 109 |
+
"sphinx-doc__sphinx-9230",
|
| 110 |
+
"sphinx-doc__sphinx-9281",
|
| 111 |
+
"sphinx-doc__sphinx-9320",
|
| 112 |
+
"sphinx-doc__sphinx-9367",
|
| 113 |
+
"sphinx-doc__sphinx-9461",
|
| 114 |
+
"sphinx-doc__sphinx-9698"
|
| 115 |
+
],
|
| 116 |
+
"resolved_ids": [
|
| 117 |
+
"django__django-11815",
|
| 118 |
+
"django__django-11848",
|
| 119 |
+
"django__django-11880",
|
| 120 |
+
"django__django-11951",
|
| 121 |
+
"django__django-11964",
|
| 122 |
+
"django__django-11999",
|
| 123 |
+
"django__django-12039",
|
| 124 |
+
"django__django-12050",
|
| 125 |
+
"django__django-12143",
|
| 126 |
+
"django__django-12155",
|
| 127 |
+
"django__django-12262",
|
| 128 |
+
"django__django-12273",
|
| 129 |
+
"django__django-12276",
|
| 130 |
+
"django__django-12304",
|
| 131 |
+
"django__django-12708",
|
| 132 |
+
"django__django-12713",
|
| 133 |
+
"django__django-12774",
|
| 134 |
+
"django__django-9296",
|
| 135 |
+
"sphinx-doc__sphinx-10466",
|
| 136 |
+
"sphinx-doc__sphinx-7757",
|
| 137 |
+
"sphinx-doc__sphinx-8035",
|
| 138 |
+
"sphinx-doc__sphinx-8269",
|
| 139 |
+
"sphinx-doc__sphinx-8475",
|
| 140 |
+
"sphinx-doc__sphinx-8548",
|
| 141 |
+
"sphinx-doc__sphinx-8551",
|
| 142 |
+
"sphinx-doc__sphinx-8721",
|
| 143 |
+
"sphinx-doc__sphinx-9230",
|
| 144 |
+
"sphinx-doc__sphinx-9281",
|
| 145 |
+
"sphinx-doc__sphinx-9320",
|
| 146 |
+
"sphinx-doc__sphinx-9367",
|
| 147 |
+
"sphinx-doc__sphinx-9698"
|
| 148 |
+
],
|
| 149 |
+
"unresolved_ids": [
|
| 150 |
+
"django__django-11790",
|
| 151 |
+
"django__django-11885",
|
| 152 |
+
"django__django-12193",
|
| 153 |
+
"django__django-12308",
|
| 154 |
+
"django__django-12325",
|
| 155 |
+
"django__django-12406",
|
| 156 |
+
"sphinx-doc__sphinx-10323",
|
| 157 |
+
"sphinx-doc__sphinx-10435",
|
| 158 |
+
"sphinx-doc__sphinx-10673",
|
| 159 |
+
"sphinx-doc__sphinx-11510",
|
| 160 |
+
"sphinx-doc__sphinx-7590",
|
| 161 |
+
"sphinx-doc__sphinx-7748",
|
| 162 |
+
"sphinx-doc__sphinx-7985",
|
| 163 |
+
"sphinx-doc__sphinx-8056",
|
| 164 |
+
"sphinx-doc__sphinx-8265",
|
| 165 |
+
"sphinx-doc__sphinx-8638",
|
| 166 |
+
"sphinx-doc__sphinx-9461"
|
| 167 |
+
],
|
| 168 |
+
"error_ids": [],
|
| 169 |
+
"schema_version": 2
|
| 170 |
+
}
|
benchmarks/raw/swebench/ornith_q5_k_m_verified_mini.json
ADDED
|
@@ -0,0 +1,171 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"total_instances": 50,
|
| 3 |
+
"submitted_instances": 50,
|
| 4 |
+
"completed_instances": 49,
|
| 5 |
+
"resolved_instances": 32,
|
| 6 |
+
"unresolved_instances": 17,
|
| 7 |
+
"empty_patch_instances": 1,
|
| 8 |
+
"error_instances": 0,
|
| 9 |
+
"completed_ids": [
|
| 10 |
+
"django__django-11790",
|
| 11 |
+
"django__django-11815",
|
| 12 |
+
"django__django-11848",
|
| 13 |
+
"django__django-11880",
|
| 14 |
+
"django__django-11885",
|
| 15 |
+
"django__django-11951",
|
| 16 |
+
"django__django-11964",
|
| 17 |
+
"django__django-11999",
|
| 18 |
+
"django__django-12039",
|
| 19 |
+
"django__django-12050",
|
| 20 |
+
"django__django-12143",
|
| 21 |
+
"django__django-12155",
|
| 22 |
+
"django__django-12193",
|
| 23 |
+
"django__django-12209",
|
| 24 |
+
"django__django-12262",
|
| 25 |
+
"django__django-12273",
|
| 26 |
+
"django__django-12276",
|
| 27 |
+
"django__django-12304",
|
| 28 |
+
"django__django-12308",
|
| 29 |
+
"django__django-12325",
|
| 30 |
+
"django__django-12406",
|
| 31 |
+
"django__django-12708",
|
| 32 |
+
"django__django-12713",
|
| 33 |
+
"django__django-12774",
|
| 34 |
+
"django__django-9296",
|
| 35 |
+
"sphinx-doc__sphinx-10323",
|
| 36 |
+
"sphinx-doc__sphinx-10435",
|
| 37 |
+
"sphinx-doc__sphinx-10466",
|
| 38 |
+
"sphinx-doc__sphinx-10673",
|
| 39 |
+
"sphinx-doc__sphinx-11510",
|
| 40 |
+
"sphinx-doc__sphinx-7590",
|
| 41 |
+
"sphinx-doc__sphinx-7748",
|
| 42 |
+
"sphinx-doc__sphinx-7757",
|
| 43 |
+
"sphinx-doc__sphinx-7985",
|
| 44 |
+
"sphinx-doc__sphinx-8035",
|
| 45 |
+
"sphinx-doc__sphinx-8056",
|
| 46 |
+
"sphinx-doc__sphinx-8265",
|
| 47 |
+
"sphinx-doc__sphinx-8269",
|
| 48 |
+
"sphinx-doc__sphinx-8475",
|
| 49 |
+
"sphinx-doc__sphinx-8548",
|
| 50 |
+
"sphinx-doc__sphinx-8551",
|
| 51 |
+
"sphinx-doc__sphinx-8638",
|
| 52 |
+
"sphinx-doc__sphinx-8721",
|
| 53 |
+
"sphinx-doc__sphinx-9230",
|
| 54 |
+
"sphinx-doc__sphinx-9281",
|
| 55 |
+
"sphinx-doc__sphinx-9320",
|
| 56 |
+
"sphinx-doc__sphinx-9367",
|
| 57 |
+
"sphinx-doc__sphinx-9461",
|
| 58 |
+
"sphinx-doc__sphinx-9698"
|
| 59 |
+
],
|
| 60 |
+
"incomplete_ids": [],
|
| 61 |
+
"empty_patch_ids": [
|
| 62 |
+
"sphinx-doc__sphinx-9229"
|
| 63 |
+
],
|
| 64 |
+
"submitted_ids": [
|
| 65 |
+
"django__django-11790",
|
| 66 |
+
"django__django-11815",
|
| 67 |
+
"django__django-11848",
|
| 68 |
+
"django__django-11880",
|
| 69 |
+
"django__django-11885",
|
| 70 |
+
"django__django-11951",
|
| 71 |
+
"django__django-11964",
|
| 72 |
+
"django__django-11999",
|
| 73 |
+
"django__django-12039",
|
| 74 |
+
"django__django-12050",
|
| 75 |
+
"django__django-12143",
|
| 76 |
+
"django__django-12155",
|
| 77 |
+
"django__django-12193",
|
| 78 |
+
"django__django-12209",
|
| 79 |
+
"django__django-12262",
|
| 80 |
+
"django__django-12273",
|
| 81 |
+
"django__django-12276",
|
| 82 |
+
"django__django-12304",
|
| 83 |
+
"django__django-12308",
|
| 84 |
+
"django__django-12325",
|
| 85 |
+
"django__django-12406",
|
| 86 |
+
"django__django-12708",
|
| 87 |
+
"django__django-12713",
|
| 88 |
+
"django__django-12774",
|
| 89 |
+
"django__django-9296",
|
| 90 |
+
"sphinx-doc__sphinx-10323",
|
| 91 |
+
"sphinx-doc__sphinx-10435",
|
| 92 |
+
"sphinx-doc__sphinx-10466",
|
| 93 |
+
"sphinx-doc__sphinx-10673",
|
| 94 |
+
"sphinx-doc__sphinx-11510",
|
| 95 |
+
"sphinx-doc__sphinx-7590",
|
| 96 |
+
"sphinx-doc__sphinx-7748",
|
| 97 |
+
"sphinx-doc__sphinx-7757",
|
| 98 |
+
"sphinx-doc__sphinx-7985",
|
| 99 |
+
"sphinx-doc__sphinx-8035",
|
| 100 |
+
"sphinx-doc__sphinx-8056",
|
| 101 |
+
"sphinx-doc__sphinx-8265",
|
| 102 |
+
"sphinx-doc__sphinx-8269",
|
| 103 |
+
"sphinx-doc__sphinx-8475",
|
| 104 |
+
"sphinx-doc__sphinx-8548",
|
| 105 |
+
"sphinx-doc__sphinx-8551",
|
| 106 |
+
"sphinx-doc__sphinx-8638",
|
| 107 |
+
"sphinx-doc__sphinx-8721",
|
| 108 |
+
"sphinx-doc__sphinx-9229",
|
| 109 |
+
"sphinx-doc__sphinx-9230",
|
| 110 |
+
"sphinx-doc__sphinx-9281",
|
| 111 |
+
"sphinx-doc__sphinx-9320",
|
| 112 |
+
"sphinx-doc__sphinx-9367",
|
| 113 |
+
"sphinx-doc__sphinx-9461",
|
| 114 |
+
"sphinx-doc__sphinx-9698"
|
| 115 |
+
],
|
| 116 |
+
"resolved_ids": [
|
| 117 |
+
"django__django-11815",
|
| 118 |
+
"django__django-11848",
|
| 119 |
+
"django__django-11880",
|
| 120 |
+
"django__django-11951",
|
| 121 |
+
"django__django-11964",
|
| 122 |
+
"django__django-11999",
|
| 123 |
+
"django__django-12039",
|
| 124 |
+
"django__django-12050",
|
| 125 |
+
"django__django-12143",
|
| 126 |
+
"django__django-12155",
|
| 127 |
+
"django__django-12209",
|
| 128 |
+
"django__django-12262",
|
| 129 |
+
"django__django-12276",
|
| 130 |
+
"django__django-12304",
|
| 131 |
+
"django__django-12708",
|
| 132 |
+
"django__django-12713",
|
| 133 |
+
"django__django-12774",
|
| 134 |
+
"django__django-9296",
|
| 135 |
+
"sphinx-doc__sphinx-10466",
|
| 136 |
+
"sphinx-doc__sphinx-10673",
|
| 137 |
+
"sphinx-doc__sphinx-7757",
|
| 138 |
+
"sphinx-doc__sphinx-8035",
|
| 139 |
+
"sphinx-doc__sphinx-8265",
|
| 140 |
+
"sphinx-doc__sphinx-8269",
|
| 141 |
+
"sphinx-doc__sphinx-8475",
|
| 142 |
+
"sphinx-doc__sphinx-8551",
|
| 143 |
+
"sphinx-doc__sphinx-8721",
|
| 144 |
+
"sphinx-doc__sphinx-9230",
|
| 145 |
+
"sphinx-doc__sphinx-9281",
|
| 146 |
+
"sphinx-doc__sphinx-9320",
|
| 147 |
+
"sphinx-doc__sphinx-9367",
|
| 148 |
+
"sphinx-doc__sphinx-9698"
|
| 149 |
+
],
|
| 150 |
+
"unresolved_ids": [
|
| 151 |
+
"django__django-11790",
|
| 152 |
+
"django__django-11885",
|
| 153 |
+
"django__django-12193",
|
| 154 |
+
"django__django-12273",
|
| 155 |
+
"django__django-12308",
|
| 156 |
+
"django__django-12325",
|
| 157 |
+
"django__django-12406",
|
| 158 |
+
"sphinx-doc__sphinx-10323",
|
| 159 |
+
"sphinx-doc__sphinx-10435",
|
| 160 |
+
"sphinx-doc__sphinx-11510",
|
| 161 |
+
"sphinx-doc__sphinx-7590",
|
| 162 |
+
"sphinx-doc__sphinx-7748",
|
| 163 |
+
"sphinx-doc__sphinx-7985",
|
| 164 |
+
"sphinx-doc__sphinx-8056",
|
| 165 |
+
"sphinx-doc__sphinx-8548",
|
| 166 |
+
"sphinx-doc__sphinx-8638",
|
| 167 |
+
"sphinx-doc__sphinx-9461"
|
| 168 |
+
],
|
| 169 |
+
"error_ids": [],
|
| 170 |
+
"schema_version": 2
|
| 171 |
+
}
|
benchmarks/raw/swebench/ornith_q6_k_verified_mini.json
ADDED
|
@@ -0,0 +1,170 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"total_instances": 50,
|
| 3 |
+
"submitted_instances": 50,
|
| 4 |
+
"completed_instances": 48,
|
| 5 |
+
"resolved_instances": 33,
|
| 6 |
+
"unresolved_instances": 15,
|
| 7 |
+
"empty_patch_instances": 2,
|
| 8 |
+
"error_instances": 0,
|
| 9 |
+
"completed_ids": [
|
| 10 |
+
"django__django-11790",
|
| 11 |
+
"django__django-11815",
|
| 12 |
+
"django__django-11848",
|
| 13 |
+
"django__django-11880",
|
| 14 |
+
"django__django-11951",
|
| 15 |
+
"django__django-11964",
|
| 16 |
+
"django__django-11999",
|
| 17 |
+
"django__django-12039",
|
| 18 |
+
"django__django-12050",
|
| 19 |
+
"django__django-12143",
|
| 20 |
+
"django__django-12155",
|
| 21 |
+
"django__django-12193",
|
| 22 |
+
"django__django-12209",
|
| 23 |
+
"django__django-12262",
|
| 24 |
+
"django__django-12273",
|
| 25 |
+
"django__django-12276",
|
| 26 |
+
"django__django-12304",
|
| 27 |
+
"django__django-12308",
|
| 28 |
+
"django__django-12325",
|
| 29 |
+
"django__django-12406",
|
| 30 |
+
"django__django-12708",
|
| 31 |
+
"django__django-12713",
|
| 32 |
+
"django__django-12774",
|
| 33 |
+
"django__django-9296",
|
| 34 |
+
"sphinx-doc__sphinx-10323",
|
| 35 |
+
"sphinx-doc__sphinx-10435",
|
| 36 |
+
"sphinx-doc__sphinx-10466",
|
| 37 |
+
"sphinx-doc__sphinx-10673",
|
| 38 |
+
"sphinx-doc__sphinx-11510",
|
| 39 |
+
"sphinx-doc__sphinx-7590",
|
| 40 |
+
"sphinx-doc__sphinx-7748",
|
| 41 |
+
"sphinx-doc__sphinx-7757",
|
| 42 |
+
"sphinx-doc__sphinx-7985",
|
| 43 |
+
"sphinx-doc__sphinx-8035",
|
| 44 |
+
"sphinx-doc__sphinx-8056",
|
| 45 |
+
"sphinx-doc__sphinx-8265",
|
| 46 |
+
"sphinx-doc__sphinx-8269",
|
| 47 |
+
"sphinx-doc__sphinx-8475",
|
| 48 |
+
"sphinx-doc__sphinx-8548",
|
| 49 |
+
"sphinx-doc__sphinx-8551",
|
| 50 |
+
"sphinx-doc__sphinx-8638",
|
| 51 |
+
"sphinx-doc__sphinx-8721",
|
| 52 |
+
"sphinx-doc__sphinx-9230",
|
| 53 |
+
"sphinx-doc__sphinx-9281",
|
| 54 |
+
"sphinx-doc__sphinx-9320",
|
| 55 |
+
"sphinx-doc__sphinx-9367",
|
| 56 |
+
"sphinx-doc__sphinx-9461",
|
| 57 |
+
"sphinx-doc__sphinx-9698"
|
| 58 |
+
],
|
| 59 |
+
"incomplete_ids": [],
|
| 60 |
+
"empty_patch_ids": [
|
| 61 |
+
"django__django-11885",
|
| 62 |
+
"sphinx-doc__sphinx-9229"
|
| 63 |
+
],
|
| 64 |
+
"submitted_ids": [
|
| 65 |
+
"django__django-11790",
|
| 66 |
+
"django__django-11815",
|
| 67 |
+
"django__django-11848",
|
| 68 |
+
"django__django-11880",
|
| 69 |
+
"django__django-11885",
|
| 70 |
+
"django__django-11951",
|
| 71 |
+
"django__django-11964",
|
| 72 |
+
"django__django-11999",
|
| 73 |
+
"django__django-12039",
|
| 74 |
+
"django__django-12050",
|
| 75 |
+
"django__django-12143",
|
| 76 |
+
"django__django-12155",
|
| 77 |
+
"django__django-12193",
|
| 78 |
+
"django__django-12209",
|
| 79 |
+
"django__django-12262",
|
| 80 |
+
"django__django-12273",
|
| 81 |
+
"django__django-12276",
|
| 82 |
+
"django__django-12304",
|
| 83 |
+
"django__django-12308",
|
| 84 |
+
"django__django-12325",
|
| 85 |
+
"django__django-12406",
|
| 86 |
+
"django__django-12708",
|
| 87 |
+
"django__django-12713",
|
| 88 |
+
"django__django-12774",
|
| 89 |
+
"django__django-9296",
|
| 90 |
+
"sphinx-doc__sphinx-10323",
|
| 91 |
+
"sphinx-doc__sphinx-10435",
|
| 92 |
+
"sphinx-doc__sphinx-10466",
|
| 93 |
+
"sphinx-doc__sphinx-10673",
|
| 94 |
+
"sphinx-doc__sphinx-11510",
|
| 95 |
+
"sphinx-doc__sphinx-7590",
|
| 96 |
+
"sphinx-doc__sphinx-7748",
|
| 97 |
+
"sphinx-doc__sphinx-7757",
|
| 98 |
+
"sphinx-doc__sphinx-7985",
|
| 99 |
+
"sphinx-doc__sphinx-8035",
|
| 100 |
+
"sphinx-doc__sphinx-8056",
|
| 101 |
+
"sphinx-doc__sphinx-8265",
|
| 102 |
+
"sphinx-doc__sphinx-8269",
|
| 103 |
+
"sphinx-doc__sphinx-8475",
|
| 104 |
+
"sphinx-doc__sphinx-8548",
|
| 105 |
+
"sphinx-doc__sphinx-8551",
|
| 106 |
+
"sphinx-doc__sphinx-8638",
|
| 107 |
+
"sphinx-doc__sphinx-8721",
|
| 108 |
+
"sphinx-doc__sphinx-9229",
|
| 109 |
+
"sphinx-doc__sphinx-9230",
|
| 110 |
+
"sphinx-doc__sphinx-9281",
|
| 111 |
+
"sphinx-doc__sphinx-9320",
|
| 112 |
+
"sphinx-doc__sphinx-9367",
|
| 113 |
+
"sphinx-doc__sphinx-9461",
|
| 114 |
+
"sphinx-doc__sphinx-9698"
|
| 115 |
+
],
|
| 116 |
+
"resolved_ids": [
|
| 117 |
+
"django__django-11815",
|
| 118 |
+
"django__django-11848",
|
| 119 |
+
"django__django-11880",
|
| 120 |
+
"django__django-11951",
|
| 121 |
+
"django__django-11999",
|
| 122 |
+
"django__django-12039",
|
| 123 |
+
"django__django-12050",
|
| 124 |
+
"django__django-12143",
|
| 125 |
+
"django__django-12155",
|
| 126 |
+
"django__django-12193",
|
| 127 |
+
"django__django-12209",
|
| 128 |
+
"django__django-12262",
|
| 129 |
+
"django__django-12276",
|
| 130 |
+
"django__django-12304",
|
| 131 |
+
"django__django-12708",
|
| 132 |
+
"django__django-12713",
|
| 133 |
+
"django__django-12774",
|
| 134 |
+
"django__django-9296",
|
| 135 |
+
"sphinx-doc__sphinx-10466",
|
| 136 |
+
"sphinx-doc__sphinx-10673",
|
| 137 |
+
"sphinx-doc__sphinx-7757",
|
| 138 |
+
"sphinx-doc__sphinx-8035",
|
| 139 |
+
"sphinx-doc__sphinx-8056",
|
| 140 |
+
"sphinx-doc__sphinx-8265",
|
| 141 |
+
"sphinx-doc__sphinx-8269",
|
| 142 |
+
"sphinx-doc__sphinx-8475",
|
| 143 |
+
"sphinx-doc__sphinx-8551",
|
| 144 |
+
"sphinx-doc__sphinx-8721",
|
| 145 |
+
"sphinx-doc__sphinx-9230",
|
| 146 |
+
"sphinx-doc__sphinx-9281",
|
| 147 |
+
"sphinx-doc__sphinx-9320",
|
| 148 |
+
"sphinx-doc__sphinx-9367",
|
| 149 |
+
"sphinx-doc__sphinx-9698"
|
| 150 |
+
],
|
| 151 |
+
"unresolved_ids": [
|
| 152 |
+
"django__django-11790",
|
| 153 |
+
"django__django-11964",
|
| 154 |
+
"django__django-12273",
|
| 155 |
+
"django__django-12308",
|
| 156 |
+
"django__django-12325",
|
| 157 |
+
"django__django-12406",
|
| 158 |
+
"sphinx-doc__sphinx-10323",
|
| 159 |
+
"sphinx-doc__sphinx-10435",
|
| 160 |
+
"sphinx-doc__sphinx-11510",
|
| 161 |
+
"sphinx-doc__sphinx-7590",
|
| 162 |
+
"sphinx-doc__sphinx-7748",
|
| 163 |
+
"sphinx-doc__sphinx-7985",
|
| 164 |
+
"sphinx-doc__sphinx-8548",
|
| 165 |
+
"sphinx-doc__sphinx-8638",
|
| 166 |
+
"sphinx-doc__sphinx-9461"
|
| 167 |
+
],
|
| 168 |
+
"error_ids": [],
|
| 169 |
+
"schema_version": 2
|
| 170 |
+
}
|
benchmarks/raw/swebench/ornith_q8_0_verified_mini.json
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"total_instances": 50,
|
| 3 |
+
"submitted_instances": 50,
|
| 4 |
+
"completed_instances": 47,
|
| 5 |
+
"resolved_instances": 29,
|
| 6 |
+
"unresolved_instances": 18,
|
| 7 |
+
"empty_patch_instances": 3,
|
| 8 |
+
"error_instances": 0,
|
| 9 |
+
"completed_ids": [
|
| 10 |
+
"django__django-11790",
|
| 11 |
+
"django__django-11815",
|
| 12 |
+
"django__django-11848",
|
| 13 |
+
"django__django-11880",
|
| 14 |
+
"django__django-11885",
|
| 15 |
+
"django__django-11951",
|
| 16 |
+
"django__django-11964",
|
| 17 |
+
"django__django-11999",
|
| 18 |
+
"django__django-12039",
|
| 19 |
+
"django__django-12050",
|
| 20 |
+
"django__django-12143",
|
| 21 |
+
"django__django-12155",
|
| 22 |
+
"django__django-12193",
|
| 23 |
+
"django__django-12262",
|
| 24 |
+
"django__django-12273",
|
| 25 |
+
"django__django-12276",
|
| 26 |
+
"django__django-12304",
|
| 27 |
+
"django__django-12308",
|
| 28 |
+
"django__django-12325",
|
| 29 |
+
"django__django-12406",
|
| 30 |
+
"django__django-12708",
|
| 31 |
+
"django__django-12713",
|
| 32 |
+
"django__django-12774",
|
| 33 |
+
"django__django-9296",
|
| 34 |
+
"sphinx-doc__sphinx-10435",
|
| 35 |
+
"sphinx-doc__sphinx-10466",
|
| 36 |
+
"sphinx-doc__sphinx-10673",
|
| 37 |
+
"sphinx-doc__sphinx-11510",
|
| 38 |
+
"sphinx-doc__sphinx-7590",
|
| 39 |
+
"sphinx-doc__sphinx-7748",
|
| 40 |
+
"sphinx-doc__sphinx-7757",
|
| 41 |
+
"sphinx-doc__sphinx-7985",
|
| 42 |
+
"sphinx-doc__sphinx-8035",
|
| 43 |
+
"sphinx-doc__sphinx-8056",
|
| 44 |
+
"sphinx-doc__sphinx-8265",
|
| 45 |
+
"sphinx-doc__sphinx-8269",
|
| 46 |
+
"sphinx-doc__sphinx-8475",
|
| 47 |
+
"sphinx-doc__sphinx-8548",
|
| 48 |
+
"sphinx-doc__sphinx-8551",
|
| 49 |
+
"sphinx-doc__sphinx-8638",
|
| 50 |
+
"sphinx-doc__sphinx-8721",
|
| 51 |
+
"sphinx-doc__sphinx-9230",
|
| 52 |
+
"sphinx-doc__sphinx-9281",
|
| 53 |
+
"sphinx-doc__sphinx-9320",
|
| 54 |
+
"sphinx-doc__sphinx-9367",
|
| 55 |
+
"sphinx-doc__sphinx-9461",
|
| 56 |
+
"sphinx-doc__sphinx-9698"
|
| 57 |
+
],
|
| 58 |
+
"incomplete_ids": [],
|
| 59 |
+
"empty_patch_ids": [
|
| 60 |
+
"django__django-12209",
|
| 61 |
+
"sphinx-doc__sphinx-10323",
|
| 62 |
+
"sphinx-doc__sphinx-9229"
|
| 63 |
+
],
|
| 64 |
+
"submitted_ids": [
|
| 65 |
+
"django__django-11790",
|
| 66 |
+
"django__django-11815",
|
| 67 |
+
"django__django-11848",
|
| 68 |
+
"django__django-11880",
|
| 69 |
+
"django__django-11885",
|
| 70 |
+
"django__django-11951",
|
| 71 |
+
"django__django-11964",
|
| 72 |
+
"django__django-11999",
|
| 73 |
+
"django__django-12039",
|
| 74 |
+
"django__django-12050",
|
| 75 |
+
"django__django-12143",
|
| 76 |
+
"django__django-12155",
|
| 77 |
+
"django__django-12193",
|
| 78 |
+
"django__django-12209",
|
| 79 |
+
"django__django-12262",
|
| 80 |
+
"django__django-12273",
|
| 81 |
+
"django__django-12276",
|
| 82 |
+
"django__django-12304",
|
| 83 |
+
"django__django-12308",
|
| 84 |
+
"django__django-12325",
|
| 85 |
+
"django__django-12406",
|
| 86 |
+
"django__django-12708",
|
| 87 |
+
"django__django-12713",
|
| 88 |
+
"django__django-12774",
|
| 89 |
+
"django__django-9296",
|
| 90 |
+
"sphinx-doc__sphinx-10323",
|
| 91 |
+
"sphinx-doc__sphinx-10435",
|
| 92 |
+
"sphinx-doc__sphinx-10466",
|
| 93 |
+
"sphinx-doc__sphinx-10673",
|
| 94 |
+
"sphinx-doc__sphinx-11510",
|
| 95 |
+
"sphinx-doc__sphinx-7590",
|
| 96 |
+
"sphinx-doc__sphinx-7748",
|
| 97 |
+
"sphinx-doc__sphinx-7757",
|
| 98 |
+
"sphinx-doc__sphinx-7985",
|
| 99 |
+
"sphinx-doc__sphinx-8035",
|
| 100 |
+
"sphinx-doc__sphinx-8056",
|
| 101 |
+
"sphinx-doc__sphinx-8265",
|
| 102 |
+
"sphinx-doc__sphinx-8269",
|
| 103 |
+
"sphinx-doc__sphinx-8475",
|
| 104 |
+
"sphinx-doc__sphinx-8548",
|
| 105 |
+
"sphinx-doc__sphinx-8551",
|
| 106 |
+
"sphinx-doc__sphinx-8638",
|
| 107 |
+
"sphinx-doc__sphinx-8721",
|
| 108 |
+
"sphinx-doc__sphinx-9229",
|
| 109 |
+
"sphinx-doc__sphinx-9230",
|
| 110 |
+
"sphinx-doc__sphinx-9281",
|
| 111 |
+
"sphinx-doc__sphinx-9320",
|
| 112 |
+
"sphinx-doc__sphinx-9367",
|
| 113 |
+
"sphinx-doc__sphinx-9461",
|
| 114 |
+
"sphinx-doc__sphinx-9698"
|
| 115 |
+
],
|
| 116 |
+
"resolved_ids": [
|
| 117 |
+
"django__django-11815",
|
| 118 |
+
"django__django-11848",
|
| 119 |
+
"django__django-11880",
|
| 120 |
+
"django__django-11951",
|
| 121 |
+
"django__django-11999",
|
| 122 |
+
"django__django-12039",
|
| 123 |
+
"django__django-12050",
|
| 124 |
+
"django__django-12143",
|
| 125 |
+
"django__django-12155",
|
| 126 |
+
"django__django-12262",
|
| 127 |
+
"django__django-12276",
|
| 128 |
+
"django__django-12304",
|
| 129 |
+
"django__django-12708",
|
| 130 |
+
"django__django-12713",
|
| 131 |
+
"django__django-12774",
|
| 132 |
+
"django__django-9296",
|
| 133 |
+
"sphinx-doc__sphinx-10466",
|
| 134 |
+
"sphinx-doc__sphinx-7757",
|
| 135 |
+
"sphinx-doc__sphinx-7985",
|
| 136 |
+
"sphinx-doc__sphinx-8035",
|
| 137 |
+
"sphinx-doc__sphinx-8265",
|
| 138 |
+
"sphinx-doc__sphinx-8269",
|
| 139 |
+
"sphinx-doc__sphinx-8475",
|
| 140 |
+
"sphinx-doc__sphinx-8551",
|
| 141 |
+
"sphinx-doc__sphinx-8721",
|
| 142 |
+
"sphinx-doc__sphinx-9281",
|
| 143 |
+
"sphinx-doc__sphinx-9320",
|
| 144 |
+
"sphinx-doc__sphinx-9367",
|
| 145 |
+
"sphinx-doc__sphinx-9698"
|
| 146 |
+
],
|
| 147 |
+
"unresolved_ids": [
|
| 148 |
+
"django__django-11790",
|
| 149 |
+
"django__django-11885",
|
| 150 |
+
"django__django-11964",
|
| 151 |
+
"django__django-12193",
|
| 152 |
+
"django__django-12273",
|
| 153 |
+
"django__django-12308",
|
| 154 |
+
"django__django-12325",
|
| 155 |
+
"django__django-12406",
|
| 156 |
+
"sphinx-doc__sphinx-10435",
|
| 157 |
+
"sphinx-doc__sphinx-10673",
|
| 158 |
+
"sphinx-doc__sphinx-11510",
|
| 159 |
+
"sphinx-doc__sphinx-7590",
|
| 160 |
+
"sphinx-doc__sphinx-7748",
|
| 161 |
+
"sphinx-doc__sphinx-8056",
|
| 162 |
+
"sphinx-doc__sphinx-8548",
|
| 163 |
+
"sphinx-doc__sphinx-8638",
|
| 164 |
+
"sphinx-doc__sphinx-9230",
|
| 165 |
+
"sphinx-doc__sphinx-9461"
|
| 166 |
+
],
|
| 167 |
+
"error_ids": [],
|
| 168 |
+
"schema_version": 2
|
| 169 |
+
}
|
benchmarks/swebench-agent-evals.md
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# SWE-bench Agent Evaluations
|
| 2 |
+
|
| 3 |
+
Date: 2026-06-29
|
| 4 |
+
|
| 5 |
+
Harness: mini-SWE-agent plus the SWE-bench evaluation harness from
|
| 6 |
+
`/home/ripper/dsv4-local/eval/swebench`.
|
| 7 |
+
|
| 8 |
+
## Full SWE-bench Verified 100-task Slice
|
| 9 |
+
|
| 10 |
+
This is the faithful 100-task run requested for reasoning mode. The run used
|
| 11 |
+
`SWE-bench/SWE-bench_Verified`, split `test`, slice `0:100`.
|
| 12 |
+
|
| 13 |
+
| Profile | Reasoning | Temperature | Resolved | Score |
|
| 14 |
+
|---|---|---:|---:|---:|
|
| 15 |
+
| Q6_K GGUF | on | 1.0 | 69/100 | 69.0% |
|
| 16 |
+
|
| 17 |
+
Score chart:
|
| 18 |
+
|
| 19 |
+
| Profile | Resolved chart |
|
| 20 |
+
|---|---|
|
| 21 |
+
| Q6_K reasoning-on | `##################################################################### 69.0%` |
|
| 22 |
+
|
| 23 |
+
Notes:
|
| 24 |
+
|
| 25 |
+
- `enable_thinking=true`, `preserve_thinking=true`.
|
| 26 |
+
- No explicit thinking budget was enforced.
|
| 27 |
+
- `top_p=1.0`, `max_output_tokens=8192`.
|
| 28 |
+
- 94/100 tasks submitted patches.
|
| 29 |
+
- 6/100 ended as empty patch or timeout.
|
| 30 |
+
- Rerunning the two original infrastructure-error cases produced 0 remaining
|
| 31 |
+
infra errors.
|
| 32 |
+
- The original harness wrapper row can look like `69/500 = 13.80%` because the
|
| 33 |
+
first invocation did not pass the intended instance filters. The corrected
|
| 34 |
+
intended score for the slice is `69/100 = 69.0%`.
|
| 35 |
+
|
| 36 |
+
Raw summary:
|
| 37 |
+
[`benchmarks/raw/swebench/ornith-q6-think-verified100-summary.json`](raw/swebench/ornith-q6-think-verified100-summary.json).
|
| 38 |
+
|
| 39 |
+
## SWE-bench Verified Mini Quant Sweep
|
| 40 |
+
|
| 41 |
+
This sweep used `MariusHobbhahn/swe-bench-verified-mini`, split `test`, with the
|
| 42 |
+
same mini-SWE-agent setup across quants. These are 50-task verified-mini scores,
|
| 43 |
+
not the full 100-task slice above.
|
| 44 |
+
|
| 45 |
+
| Quant/profile | Resolved | Score | Completed | Empty patch | Errors |
|
| 46 |
+
|---|---:|---:|---:|---:|---:|
|
| 47 |
+
| Q6_K | 33/50 | 66.0% | 48/50 | 2 | 0 |
|
| 48 |
+
| Q3_K_M | 32/50 | 64.0% | 47/50 | 3 | 0 |
|
| 49 |
+
| Q5_K_M | 32/50 | 64.0% | 49/50 | 1 | 0 |
|
| 50 |
+
| Q4_K_M | 31/50 | 62.0% | 48/50 | 2 | 0 |
|
| 51 |
+
| IQ4_XS | 30/50 | 60.0% | 45/50 | 5 | 0 |
|
| 52 |
+
| IQ4_XS-MTP-graft-headQ6 | 30/50 | 60.0% | 48/50 | 2 | 0 |
|
| 53 |
+
| Q8_0 | 29/50 | 58.0% | 47/50 | 3 | 0 |
|
| 54 |
+
|
| 55 |
+
Resolved chart:
|
| 56 |
+
|
| 57 |
+
| Quant/profile | Resolved chart |
|
| 58 |
+
|---|---|
|
| 59 |
+
| Q6_K | `################################################################## 66.0%` |
|
| 60 |
+
| Q3_K_M | `################################################################ 64.0%` |
|
| 61 |
+
| Q5_K_M | `################################################################ 64.0%` |
|
| 62 |
+
| Q4_K_M | `############################################################## 62.0%` |
|
| 63 |
+
| IQ4_XS | `############################################################ 60.0%` |
|
| 64 |
+
| IQ4_XS-MTP-graft-headQ6 | `############################################################ 60.0%` |
|
| 65 |
+
| Q8_0 | `########################################################## 58.0%` |
|
| 66 |
+
|
| 67 |
+
Raw reports:
|
| 68 |
+
|
| 69 |
+
- [`ornith_q6_k_verified_mini.json`](raw/swebench/ornith_q6_k_verified_mini.json)
|
| 70 |
+
- [`ornith_q3_k_m_verified_mini.json`](raw/swebench/ornith_q3_k_m_verified_mini.json)
|
| 71 |
+
- [`ornith_q5_k_m_verified_mini.json`](raw/swebench/ornith_q5_k_m_verified_mini.json)
|
| 72 |
+
- [`ornith_q4_k_m_verified_mini.json`](raw/swebench/ornith_q4_k_m_verified_mini.json)
|
| 73 |
+
- [`ornith_iq4_xs_verified_mini.json`](raw/swebench/ornith_iq4_xs_verified_mini.json)
|
| 74 |
+
- [`ornith_iq4_xs_mtp_graft_verified_mini.json`](raw/swebench/ornith_iq4_xs_mtp_graft_verified_mini.json)
|
| 75 |
+
- [`ornith_q8_0_verified_mini.json`](raw/swebench/ornith_q8_0_verified_mini.json)
|