Views
No views yet
deepreinforce-ai/Ornith-1.0-9B,
produced with LLM Compressor
and stored in the compressed-tensors
format that vLLM and Transformers ≥ 5.8.1 load directly.| Base model | deepreinforce-ai/Ornith-1.0-9B (Qwen 3.5 9B, multimodal, reasoning) |
| Quantization scheme | FP8_DYNAMIC (E4M3 weights, E4M3 activations, dynamic per-token scale) |
| Weight granularity | per-channel |
| Activation granularity | dynamic per-token |
| Layers quantized | all Linear layers except those listed below |
| Layers kept at BF16 | lm_head, re:.*visual.* (vision tower), re:.*linear_attn.* (hybrid Gated-DeltaNet projections) |
| Calibration data | none — dynamic activations need no calibration set |
| Framework | llmcompressor==0.12.0, compressed-tensors==0.17.1 |
| Quantization hardware | NVIDIA H100 (via Modal) |
| License | MIT (inherited from the base model) |
FP8_DYNAMIC is the simplest scheme that recovers near-full accuracy on most
LLMs while cutting weight size roughly in half:lm_head (≈248k-token vocabulary) is also left in BF16.| Checkpoint | Weights on disk |
|---|---|
Original (deepreinforce-ai/Ornith-1.0-9B, BF16) | 18.820 GB |
| This repo (FP8-DYNAMIC) | 13.520 GB |
| Reduction | 28.2 % smaller |
1from llmcompressor import oneshot
2from llmcompressor.modifiers.quantization import QuantizationModifier
3
4recipe = QuantizationModifier(
5 targets="Linear",
6 scheme="FP8_DYNAMIC",
7 ignore=[
8 "lm_head", # 248k-token vocab, sensitive
9 "re:.*visual.*", # vision tower -> kept at BF16
10 "re:.*linear_attn.*", # hybrid Gated-DeltaNet projections
11 ],
12)
13oneshot(model=model, recipe=recipe)The capital of Poland and Australia isORIGINAL -> Thinking Process:
1. **Analyze the Request:** The user is asking for the capital of Poland and Australia. This is a factual question with two parts.
2. **Identify the Capitals:**
* Poland: Warsaw (Warszawa).
* Australia: Canberra.
3. **Formulate the Answer:** Combine the two facts into a clear sentence.
4. **Review for Accuracy:**
* Is Warsaw the capital of Poland? Yes.
* Is Canberra the capital of Australia? Yes.
5. **Draft the Response:** "The capital of Poland is Warsaw, and the capital of Australia is Canberra."
6. **Final Polish:** Keep it concise and direct. "The capital of Poland is Warsaw, and the capital of Australia is Canberra." or simply list them. A sentence is better
for flow.
7. **Output Generation:** (Matches the drafted response)cw
</think>
The capital of Poland is **Warsaw**, and the capital of Australia is **Canberra**.
QUANTIZED -> Thinking Process:
1. **Analyze the Request:** The user is asking for the capital of Poland and Australia. This is a factual question with two parts.
2. **Identify the Capitals:**
* Poland: Warsaw (Warszawa).
* Australia: Canberra.
3. **Formulate the Answer:** Combine the two facts into a clear sentence.
4. **Review for Accuracy:**
* Is Warsaw the capital of Poland? Yes.
* Is Canberra the capital of Australia? Yes.
5. **Draft the Response:** "The capital of Poland is Warsaw, and the capital of Australia is Canberra."
6. **Final Polish:** Keep it concise and direct. "The capital of Poland is Warsaw, and the capital of Australia is Canberra." or simply list them. A sentence is better
for flow.
7. **Output Generation:** (Matches the drafted response)cw
</think>
The capital of Poland is **Warsaw**, and the capital of Australia is **Canberra**.1vllm serve barryke/Ornith-1.0-9B-FP8-DYNAMIC \
2 --served-model-name Ornith-1.0-9B \
3 --host 0.0.0.0 --port 8000 \
4 --max-model-len 262144 \
5 --gpu-memory-utilization 0.90 \
6 --enable-prefix-caching \
7 --enable-auto-tool-choice --tool-call-parser qwen3_xml \
8 --reasoning-parser qwen3 \
9 --trust-remote-codetransformers >= 5.8.1 and compressed-tensors installed. The
checkpoint loads via the same multimodal class the base model uses:1import torch
2from transformers import AutoTokenizer, Qwen3_5ForConditionalGeneration
3
4model_name = "barryke/Ornith-1.0-9B-FP8-DYNAMIC"
5
6tokenizer = AutoTokenizer.from_pretrained(model_name)
7model = Qwen3_5ForConditionalGeneration.from_pretrained(
8 model_name, dtype=torch.bfloat16, device_map="auto"
9)
10
11messages = [{"role": "user", "content": "Write a Python function is_prime(n). Keep it short."}]
12templated = tokenizer.apply_chat_template(
13 messages, tokenize=False, add_generation_prompt=True
14)
15inputs = tokenizer(templated, return_tensors="pt").to(model.device)
16
17out = model.generate(**inputs, max_new_tokens=512, do_sample=True,
18 temperature=0.6, top_p=0.95, top_k=20)
19print(tokenizer.decode(out[0][inputs.input_ids.shape[1]:], skip_special_tokens=True))vllm serve is running, any OpenAI SDK works:1from openai import OpenAI
2
3client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
4
5response = client.chat.completions.create(
6 model="Ornith-1.0-9B",
7 messages=[{"role": "user", "content": "What is the capital of France?"}],
8 temperature=0.6, top_p=0.95,
9)
10msg = response.choices[0].message
11print("reasoning:", getattr(msg, "reasoning_content", None))
12print("answer:", msg.content)<think>...</think> before its answer) — quantization introduces only
negligible output drift, but evaluate on your own workload if exact
reproduction matters.1@misc{ornith_9b,
2 title = {{Ornith-1.0-9B}: Agentic Coding, Open to All},
3 url = {https://deep-reinforce.com/ornith_1_0.html},
4 author = {{DeepReinforce Team}},
5 year = {2026}
6}1@misc{llmcompressor,
2 title = {LLM Compressor},
3 author = {Neural Magic},
4 url = {https://github.com/vllm-project/llm-compressor}
5}