ornith-1.0-35b-p150

Ornith-1.0-35B is an agentic reasoning and coding model served through an OpenAI-compatible vLLM endpoint on Tenstorrent Blackhole hardware.

Capabilities: tool calling โ€” yes (qwen3_xml); reasoning parsing โ€” yes (qwen3).

Runs on p150 or p150x2 or p150x4 โ€” see the serve profiles below.

Packaged and published with tt-model-manager 0.1.0 (manifest schema 5.1).

Quickstart

tt-model pull  tt-hous/ornith-1.0-35b-p150 --with-weights
tt-model serve tt-hous/ornith-1.0-35b-p150

pull --with-weights downloads the Docker image and the ornith-ai/Ornith-1.0-35B weights at 5df2ed3f675c7beaa490328cc70bb573b65fb660 (into your HF cache; they are not in the image). serve starts an OpenAI-compatible server on port 7890; the first start compiles kernels for your device, which takes several minutes, and the server is ready when it logs Server ready at.

Select a serve profile

tt-model serve tt-hous/ornith-1.0-35b-p150 --profile p150 --follow
tt-model serve tt-hous/ornith-1.0-35b-p150 --profile p150x2 --follow
tt-model serve tt-hous/ornith-1.0-35b-p150 --profile p150x4 --follow

The API listens at http://127.0.0.1:7890/v1. All three profiles enable Qwen3 reasoning and Qwen3 XML tool-call parsing. tt-model pull --with-weights downloads the 70 GB Hugging Face snapshot. The first serve loads it onto the device and compiles kernels into the persistent model cache; later starts reuse that cache.

OpenCode

Configure an OpenAI-compatible provider with base URL http://127.0.0.1:7890/v1 and model ornith-ai/Ornith-1.0-35B.

Measured endpoint performance

Measured with vllm bench serve against the packaged server settings on this two-P300C host: one ASIC for p150, both ASICs of one board for p150x2, and all four ASICs across both boards for p150x4. Each row is the p50 of three sequential requests with exact random input/output lengths, concurrency 1, greedy sampling, and EOS ignored. Decode tokens/s is derived as 1000 / p50 TPOT.

P150

Input tokens Output tokens TTFT (ms) Decode tokens/s TPOT (ms)
128 128 253 11.59 86.25
2,048 128 2,601 11.57 86.45
8,192 128 10,409 11.53 86.72
32,768 128 42,786 11.41 87.61

P150x2

Input tokens Output tokens TTFT (ms) Decode tokens/s TPOT (ms)
128 128 153 33.27 30.06
2,048 128 1,404 33.16 30.16
8,192 128 5,912 32.90 30.40
32,768 128 24,468 32.01 31.24

P150x4

Input tokens Output tokens TTFT (ms) Decode tokens/s TPOT (ms)
128 128 160 43.03 23.24
2,048 128 801 42.67 23.44
8,192 128 3,475 42.33 23.62
32,768 128 14,450 40.75 24.54
65,536 128 29,950 38.84 25.74
131,072 128 65,211 35.78 27.95
262,016 128 149,229 30.41 32.88

The final P150x4 row uses 262,016 input tokens plus 128 output tokens, exactly filling the configured 262,144-token context window.

Serve profiles

One image serves every profile below; pick one with --profile.

profile hardware mesh max_num_seqs max_model_len
p150 p150 P150 1 262144
p150x2 p150x2 P150x2 1 262144
p150x4 (default) p150x4 P150x4 1 262144

Provenance

The exact sources the image was built from โ€” code/ in this repo is byte-identical to the model code inside the image:

component built from
tt-metal f7662055fe4ae3d66509335d96a7c74acd53911b
vLLM a887998646dc4e6f192bce8d485bf89f4596ca2f
code/ digest 9f145dc234915ade (sha256, first 16 hex digits)
built 2026-09-04T15:53:45+00:00 by tt-model 0.1.0
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support