09 - Aug - 2026

Ornith 9B gave my 16GB laptop near-35B answers, and it reads images too

Ever since I made my own AI voice assistant for controlling my smart home, I’ve been on the lookout for better models I can run locally. There’s no shortage of powerful local LLMs around, but unless you’ve got a near-enterprise-grade server racked tucked away in your house, you’re likely going to have to settle for something that isn’t as smart as its cloud counterparts.

Ornith 9B, however, turned out to be different. It might be the smallest model in DeepReinforce’s Ornith 1.0 family, but this model gave my laptop nearly 35B answers, with media support.

A small model with big ambitions

Ornith 9B punches well above its size

As mentioned before, Ornith 9B is the smallest member of the Ornith 1.0 family of models, which also includes 31B dense, 35B mixture-of-experts, and a massive 397B mixture-of-experts variant. What sets the whole family apart, however, is a self-improving reinforcement learning recipe, post-trained on a Qwen 3.5 base, where the model learns to build and refine its own task-solving scaffold instead of relying on a fixed, human-written agent loop. That training philosophy, not raw parameter count, is the real reason why this 9B model punches above its weight class.

In full bf16 precision, Ornith 9B needs about 19BGB of memory, which is why DeepReinforce recommends an 80GB GPU for unquantized serving. The quantized GGUF builds made this test possible, and the same shift means you don’t need a beefy GPU to run local AI models anymore. At Q4_K_M quantization, the model shrinks to roughly 5.6GB, comfortably fitting inside a 16GB RAM budget once you leave room for the OS and a reasonable context window.

Ornith 9B fitting in VRAM.
Screenshot by Yadullah Abidi | No Attribution Required.

The 16GB figure is system RAM though, not the unified memory an Apple Silicon Mac’s GPU can draw from directly. My laptop pairs that RAM with an Nvidia RTX 4060 GPU carrying 8GB of VRAM, and picking your first local LLM comes down to exactly this: on a dedicated GPU, VRAM governs speed, not total RAM.

A 5.6GB quant doesn’t fit if you’ve got less VRAM, so Ollama offloads part of it to the CPU, running slower than what the GPU can process. This is one reason why Macs are better when it comes to running local AI models since that machine’s memory and GPU share one pool. It’ll still fit on your older laptops (and better so on newer ones), but fitting in RAM and running on the GPU are two different things.

Why everyone keeps saying “35B-class”

Performance rivals much larger models

Ornith 9B performance evaluation against other LLMs.
Hugging Face
Credit: Hugging Face

Ornith 9B can go toe-to-toe with models much larger than itself, including Gemma 4-31B and Qwen 3.6-35B. However, its own 35B mixture-of-experts sibling pulls meaningfully ahead on the same benchmarks.

On SWE-bench Verified, Ornith 9B scores 69.4%. On Terminal-Bench 2.1, it posts 43.1, a strong result for a model a third to a quarter the size of the peers it’s beating. A 9 billion parameter model matching results expected from 31B-class systems is a genuinely strong contender on its own.

It understands images too

Vision support makes it even more useful

Ornith 9b vision test.
Screenshot by Yadullah Abidi | No Attribution Required.

Yes, the Ornith 9B can read images, but it comes with an asterisk. The base Ornith-1.0-9B model card lists text as its primary modality, so if you grab the default GGUF or the standard Hugging Face weights, you won’t get image support out of the box. Vision support comes from a separate export, distributed on Ollama under a community tag, robit/ornith-vision:9b, not an official DeepReinforce release, layering vision and tool-calling on top of the same reasoning backbone.

Both Ollama and LM Studio handle multimodal models more smoothly now, which is why you can stop paying for ChatGPT and build a private AI setup that handles images without much fuss. At least one quantized MLX release also lists both text and image as supported modalities directly on its model card, confirming multimodal support is an add-on applied to specific builds, not universal across every Ornith 9B file out there. If you’re following along at home, pull the vision-tagged variant from its actual namespace, not the first Ornith 9B quant you find.

It’s not flawless

Complex reasoning still exposes its limits

Ornith 9b stalling.
Screenshot by Yadullah Abidi | No Attribution Required.

No small model is a flawless giant-killer, and Ornith 9B is no exception. The 9B variant can loop or stall on very long, multi-step agentic tasks in a way its bigger siblings handle more gracefully, which tracks with a smaller parameter budget under sustained loads.

On my hardware, that struggle shows up sooner, since part of the model runs on the CPU. Nvidia isn’t the only choice for local LLMs anymore, but a GPU with only a few gigabytes of VRAM hits this same ceiling regardless of brand. That’s a useful caveat to keep in mind if you’re expecting 35B-level consistency everywhere, since the wins concentrate on specific coding and terminal tasks rather than general-purpose reasoning.

A local AI worth paying attention to

It’s not a 35B model, but it gets surprisingly close

None of this needed inflating. Ornith 9B is a 9-billion-parameter model that beats systems three times its size on real coding benchmarks, runs on hardware most local-AI guides would call outdated, and reads images once you know which build to grab.

It’s a model built for a specific task, agentic coding, and that’s where it beats out the competition. As long as you’ve got enough VRAM to run it (or manage your expectations if you don’t), you’ll be sailing through coding tasks offline.

Leave a Reply

Your email address will not be published. Required fields are marked *