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.

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 20000 (or the next free port, if that one is busy); 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

tt-model serve prints the endpoint when the server is ready; by default it is http://127.0.0.1:20000/v1 (tt-model picks the host port and moves up from 20000 if that port is busy). 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 the base URL that tt-model serve printed (by default http://127.0.0.1:20000/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 90bc8b5dba353464927ea4df0944b5bcab79c6a0
vLLM a887998646dc4e6f192bce8d485bf89f4596ca2f
code/ digest fe60775587d80f7d (sha256, first 16 hex digits)
built 2026-09-14T14:57:23+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