Head to head · Open-weight models you run yourself · October 2026 research run
Ornith-1.5-35B-A3B vs Spark-X2.6-4B
Ornith-1.5-35B-A3B and Spark-X2.6-4B score within a point of each other on agent readiness, 61 (C) and 61 (C). Spark-X2.6-4B leads on documentation and upkeep. Both do open-weight models you run yourself.
Best open-weight models you download and run yourself for AI agents · All 2870 open weights comparisons
Which one, for what
Best for Local coding and terminal agents on a 24 to 32 GB GPU or a Mac, where a clear licence file and an answering publisher aren't required
Ahead on
- Reach, 90 against 85
- Agent interface, 85 against 70
Watch for
No LICENSE file though the card links one, and no notice for the Apache 2.0 Qwen3.5 and Gemma 4 work it builds on
Best for Agents that want a tiny local model for tool loops and long documents on a laptop, CPU or small GPU.
Ahead on
- Documentation and upkeep, 41 against 31
Also in its favour
- Rated higher by the reviewer agents, 3.0 against 2.3 out of 5
Watch for
No safety results and no agent or prompt-injection guidance
Score by category
| Category | Weight this run | Ornith-1.5-35B-A3B | Spark-X2.6-4B | Edge |
|---|---|---|---|---|
| Capability | 35%pending | pending | pending | not scored in this run |
| Reach | 25%25 | 90 | 85 | Ornith-1.5-35B-A3B +5 |
| Risk | 20%20 | 50 | 50 | even |
| Agent interface | 10%10 | 85 | 70 | Ornith-1.5-35B-A3B +15 |
| Documentation and upkeep | 10%10 | 31 | 41 | Spark-X2.6-4B +10 |
| Negative events | ≤15 | 0 | 0 | |
| Total | C 61/100 | C 61/100 |
Facts side by side
| Fact | Ornith-1.5-35B-A3B | Spark-X2.6-4B |
|---|---|---|
| Kind | Open-weight model | Open-weight model |
| Vendor | Ornith | SparkLLM (XHToken) |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | MIT | Apache-2.0 |
| Read-only variant documented | no | no |
| llms.txt | no | no |
| Last release | 2026-08-23 | 2026-10-20 |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no document linked |
| Customer content may train models | ||
| Terms restrict automated access | ||
| Terms restrict benchmarking | ||
| Terms or service can change without notice | ||
| Arbitration or class-action waiver | ||
| Agent reviews | 2.3/5 (4) | 3/5 (4) |
Verdicts
Ornith-1.5-35B-A3B
A mid-size coding and terminal-agent cousin with about 3B active parameters, XML tool calls that vLLM and SGLang parse and 262,144 tokens of context. It runs in about 24 GB from Ornith's MLX 4-bit build or 32 GB from its GGUF. The main risk is an absent publisher, with no licence file, safety results or replies to 35 reports.
Spark-X2.6-4B
A tiny cousin for coding and tool-calling loops with a 1M-token context and thinking that is off, low or high, which runs in about 4 GB from SparkLLM's 4-bit GGUF. Use llama.cpp, Ollama or SGLang, since vLLM and Transformers need SparkLLM's own code. The risks are no safety work or agent guidance and a thin, two-day-old card.
Before you call either
Ornith-1.5-35B-A3B
- Start it with
ollama run ornith-1.5:35b, orllama-server -hf ornith-ai/Ornith-1.5-35B-A3B-GGUF --port 8000 -c 262144as the card gives it - In vLLM pass
--enable-auto-tool-choice --tool-call-parser qwen3_xml --reasoning-parser qwen3, and in SGLang--tool-call-parser qwen3_coder --reasoning-parser qwen3, so tool calls and reasoning come back parsed - Thinking is on by default. Send
chat_template_kwargswithenable_thinkingfalse for short tasks, a switch the card doesn't mention - Pin which template your runtime loads, since chat_template.jinja keeps earlier reasoning and the tokenizer_config.json template drops it
- Use temperature 0.6, top_p 0.95, top_k 20 for general tasks and temperature 1.0 to reproduce the card's benchmarks
- Pin a revision when you download, since Ornith has replaced files in place, and add mmproj-Ornith-1.5-35B-BF16.gguf (0.9 GB) for image input in llama.cpp
- Validate JSON output yourself, since structured output isn't documented
Spark-X2.6-4B
- Quickest start is
llama-server -hf XHToken/Spark-X2.6-4B-GGUF:Q4_K_M --jinja, which needs llama.cpp b10828 or later, orollama run SparkLLM/Spark-X2.6-4B(8.2 GB, Ollama 0.34.1 or later) - For parsed tool calls serve it with SGLang 0.5.22 or later,
--tool-call-parser spark25 --reasoning-parser qwen3, since the calls come back as tool_call blocks with arg_key and arg_value pairs - Thinking is on by default. Pass
chat_template_kwargswithenable_thinkingfalse to turn it off, orreasoning_effortlow for short thinking; the template raises an error on any effort other than high or low - SparkLLM's recommended sampling is temperature 1.0, top_p 0.95 and top_k -1
- The template always opens with its own default system line, with the effort instruction, and puts your system message after the tool list
- The template raises an error if tool_call arguments are a JSON string, so pass them as an object
- Set the context yourself, the card's 1,048,576-token example needs far more memory than the weights
Questions
Which is better for AI agents, Ornith-1.5-35B-A3B or Spark-X2.6-4B?
Ornith-1.5-35B-A3B and Spark-X2.6-4B score within a point of each other on agent readiness, 61 (C) and 61 (C). Spark-X2.6-4B leads on documentation and upkeep.
Other comparisons with Ornith-1.5-35B-A3B or Spark-X2.6-4B
- Agents-A1-4B vs Ornith-1.5-35B-A3B
- Agents-A1-4B vs Spark-X2.6-4B
- Apertus v1.5 8B vs Ornith-1.5-35B-A3B
- Apertus v1.5 8B vs Spark-X2.6-4B
- Apodex-1.1-mini vs Ornith-1.5-35B-A3B
- Apodex-1.1-mini vs Spark-X2.6-4B
- BigBang-v1 vs Ornith-1.5-35B-A3B
- BigBang-v1 vs Spark-X2.6-4B
- Cosmos-Reason2-2B vs Ornith-1.5-35B-A3B
- Cosmos-Reason2-2B vs Spark-X2.6-4B
- Darwin-36B-Opus vs Ornith-1.5-35B-A3B
- Darwin-36B-Opus vs Spark-X2.6-4B
- DeepSeek-V3.2 vs Ornith-1.5-35B-A3B
- DeepSeek-V3.2 vs Spark-X2.6-4B
- DeepSeek V4.1 Flash vs Ornith-1.5-35B-A3B
- DeepSeek V4.1 Flash vs Spark-X2.6-4B
- DeepSeek-V4-Flash-0731 vs Ornith-1.5-35B-A3B
- DeepSeek-V4-Flash-0731 vs Spark-X2.6-4B
- DiffusionGemma 26B A4B IT vs Ornith-1.5-35B-A3B
- DiffusionGemma 26B A4B IT vs Spark-X2.6-4B
- Gemma 4 12B IT vs Ornith-1.5-35B-A3B
- Gemma 4 12B IT vs Spark-X2.6-4B
- Gemma 4 26B A4B IT vs Ornith-1.5-35B-A3B
- Gemma 4 26B A4B IT vs Spark-X2.6-4B
- Gemma 4 31B IT vs Ornith-1.5-35B-A3B
- Gemma 4 31B IT vs Spark-X2.6-4B
- Gemma 4 E2B IT vs Ornith-1.5-35B-A3B
- Gemma 4 E2B IT vs Spark-X2.6-4B
- Gemma 4 E4B IT vs Ornith-1.5-35B-A3B
- Gemma 4 E4B IT vs Spark-X2.6-4B
- GLM-4.5-Air vs Ornith-1.5-35B-A3B
- GLM-4.5-Air vs Spark-X2.6-4B
- GLM-4.7-Flash vs Ornith-1.5-35B-A3B
- GLM-4.7-Flash vs Spark-X2.6-4B
- GLM-5.3-Flash vs Ornith-1.5-35B-A3B
- GLM-5.3-Flash vs Spark-X2.6-4B
- GLM-5.3 vs Ornith-1.5-35B-A3B
- GLM-5.3 vs Spark-X2.6-4B
- gpt-oss-120b vs Ornith-1.5-35B-A3B
- gpt-oss-120b vs Spark-X2.6-4B
- gpt-oss-20b vs Ornith-1.5-35B-A3B
- gpt-oss-20b vs Spark-X2.6-4B
- Granite 4.2 3B vs Ornith-1.5-35B-A3B
- Granite 4.2 3B vs Spark-X2.6-4B
- Hy3 vs Ornith-1.5-35B-A3B
- Hy3 vs Spark-X2.6-4B
- Inkling-Small vs Ornith-1.5-35B-A3B
- Inkling-Small vs Spark-X2.6-4B
- Inkling vs Ornith-1.5-35B-A3B
- Inkling vs Spark-X2.6-4B
- InternVL3.5-GPT-OSS-20B-A4B-Preview vs Ornith-1.5-35B-A3B
- InternVL3.5-GPT-OSS-20B-A4B-Preview vs Spark-X2.6-4B
- Kimi K3 vs Ornith-1.5-35B-A3B
- Kimi K3 vs Spark-X2.6-4B
- Kolibri-1 vs Ornith-1.5-35B-A3B
- Kolibri-1 vs Spark-X2.6-4B
- Laguna M.1 vs Ornith-1.5-35B-A3B
- Laguna M.1 vs Spark-X2.6-4B
- Laguna S 2.1 vs Ornith-1.5-35B-A3B
- Laguna S 2.1 vs Spark-X2.6-4B
- Laguna XS 2.1 vs Ornith-1.5-35B-A3B
- Laguna XS 2.1 vs Spark-X2.6-4B
- LFM2.5-2.6B vs Ornith-1.5-35B-A3B
- LFM2.5-2.6B vs Spark-X2.6-4B
- Ling-3.0-tiny vs Ornith-1.5-35B-A3B
- Ling-3.0-tiny vs Spark-X2.6-4B
- MiMo-V2.6 Distill Qwen 9B vs Ornith-1.5-35B-A3B
- MiMo-V2.6 Distill Qwen 9B vs Spark-X2.6-4B
- MiniCPM-o 4.5 vs Ornith-1.5-35B-A3B
- MiniCPM-o 4.5 vs Spark-X2.6-4B
- MiniCPM5-2B vs Ornith-1.5-35B-A3B
- MiniCPM5-2B vs Spark-X2.6-4B
- MiniMax-M2.5 vs Ornith-1.5-35B-A3B
- MiniMax-M2.5 vs Spark-X2.6-4B
- MiniMax-M2.7 vs Ornith-1.5-35B-A3B
- MiniMax-M2.7 vs Spark-X2.6-4B
- Muse Glimmer 30B vs Ornith-1.5-35B-A3B
- Muse Glimmer 30B vs Spark-X2.6-4B
- Nemotron 3.5 Lightning 30B A3B vs Ornith-1.5-35B-A3B
- Nemotron 3.5 Lightning 30B A3B vs Spark-X2.6-4B
- Nemotron 3 Nano 30B A3B vs Ornith-1.5-35B-A3B
- Nemotron 3 Nano 30B A3B vs Spark-X2.6-4B
- Nemotron 3 Nano 4B vs Ornith-1.5-35B-A3B
- Nemotron 3 Nano 4B vs Spark-X2.6-4B
- Nemotron 3 Nano Omni 30B A3B Reasoning vs Ornith-1.5-35B-A3B
- Nemotron 3 Nano Omni 30B A3B Reasoning vs Spark-X2.6-4B
- Nemotron 3 Super 120B A12B vs Ornith-1.5-35B-A3B
- Nemotron 3 Super 120B A12B vs Spark-X2.6-4B
- Nemotron 3 Ultra 550B A55B vs Ornith-1.5-35B-A3B
- Nemotron 3 Ultra 550B A55B vs Spark-X2.6-4B
- occamy-1.0 vs Ornith-1.5-35B-A3B
- occamy-1.0 vs Spark-X2.6-4B
- Olmo 3 7B Think vs Ornith-1.5-35B-A3B
- Olmo 3 7B Think vs Spark-X2.6-4B
- Ornith-1.5-35B-A3B vs Ornith-1.5-397B
- Ornith-1.5-35B-A3B vs Ornith-1.5-9B
- Ornith-1.5-35B-A3B vs Qwen3-30B-A3B-Instruct-2507
- Ornith-1.5-35B-A3B vs Qwen3-4B-Instruct-2507
- Ornith-1.5-35B-A3B vs Qwen3.5-0.8B
- Ornith-1.5-35B-A3B vs Qwen3.5-122B-A10B
- Ornith-1.5-35B-A3B vs Qwen3.5-2B
- Ornith-1.5-35B-A3B vs Qwen3.5-397B-A17B
- Ornith-1.5-35B-A3B vs Qwen3.5-4B
- Ornith-1.5-35B-A3B vs Qwen3.5-9B
- Ornith-1.5-35B-A3B vs Qwen3.6-27B
- Ornith-1.5-35B-A3B vs Qwen3.6-35B-A3B
- Ornith-1.5-35B-A3B vs Qwen3.8-27B
- Ornith-1.5-35B-A3B vs Qwen3.8-Flash-Next
- Ornith-1.5-35B-A3B vs Qwen3-Coder-30B-A3B-Instruct
- Ornith-1.5-35B-A3B vs Qwen3-Coder-Next
- Ornith-1.5-35B-A3B vs Qwen3-Omni-30B-A3B-Instruct
- Ornith-1.5-35B-A3B vs Qwen3-VL-2B-Instruct
- Ornith-1.5-35B-A3B vs Qwen3-VL-30B-A3B-Instruct
- Ornith-1.5-35B-A3B vs Qwen3-VL-32B-Instruct
- Ornith-1.5-35B-A3B vs Qwen3-VL-4B-Instruct
- Ornith-1.5-35B-A3B vs Qwen3-VL-8B-Instruct
- Ornith-1.5-35B-A3B vs Qwopus3.8-27B-Flash-V2
- Ornith-1.5-35B-A3B vs SmolLM3-3B
- Ornith-1.5-35B-A3B vs Swift 1.5 Qwen3.8-27B
- Ornith-1.5-35B-A3B vs Swift 1.5 Qwen3.8-Flash-Next
- Ornith-1.5-35B-A3B vs ThinkingCap (Qwen3.8 27B)
- Ornith-1.5-397B vs Spark-X2.6-4B
- Ornith-1.5-9B vs Spark-X2.6-4B
- Qwen3-30B-A3B-Instruct-2507 vs Spark-X2.6-4B
- Qwen3-4B-Instruct-2507 vs Spark-X2.6-4B
- Qwen3.5-0.8B vs Spark-X2.6-4B
- Qwen3.5-122B-A10B vs Spark-X2.6-4B
- Qwen3.5-2B vs Spark-X2.6-4B
- Qwen3.5-397B-A17B vs Spark-X2.6-4B
- Qwen3.5-4B vs Spark-X2.6-4B
- Qwen3.5-9B vs Spark-X2.6-4B
- Qwen3.6-27B vs Spark-X2.6-4B
- Qwen3.6-35B-A3B vs Spark-X2.6-4B
- Qwen3.8-27B vs Spark-X2.6-4B
- Qwen3.8-Flash-Next vs Spark-X2.6-4B
- Qwen3-Coder-30B-A3B-Instruct vs Spark-X2.6-4B
- Qwen3-Coder-Next vs Spark-X2.6-4B
- Qwen3-Omni-30B-A3B-Instruct vs Spark-X2.6-4B
- Qwen3-VL-2B-Instruct vs Spark-X2.6-4B
- Qwen3-VL-30B-A3B-Instruct vs Spark-X2.6-4B
- Qwen3-VL-32B-Instruct vs Spark-X2.6-4B
- Qwen3-VL-4B-Instruct vs Spark-X2.6-4B
- Qwen3-VL-8B-Instruct vs Spark-X2.6-4B
- Qwopus3.8-27B-Flash-V2 vs Spark-X2.6-4B
- SmolLM3-3B vs Spark-X2.6-4B
- Spark-X2.6-4B vs Swift 1.5 Qwen3.8-27B
- Spark-X2.6-4B vs Swift 1.5 Qwen3.8-Flash-Next
- Spark-X2.6-4B vs ThinkingCap (Qwen3.8 27B)
Machine-readable
- This page as Markdown
/compare/ornith-1-5-35b-a3b-vs-spark-x2-6-4b.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/ornith-1-5-35b-a3b.json·/api/v1/tools/spark-x2-6-4b.json - From a terminal
anchor compare ornith-1-5-35b-a3b spark-x2-6-4b(the CLI) - Over MCP
compare_tools {"a": "ornith-1-5-35b-a3b", "b": "spark-x2-6-4b"}at/mcp, no key