CoolFace
Modelpublic

DaoCloud/Ornith-1.5-35B-A3B-DFlash2-2.6B-A0.3B-NVFP4

sourceHugging Faceapache-2.0updated 18d agoView on Hugging Face
0likes2.9kdownloads
Model Card

Ornith-1.5-35B-A3B-DFlash2-2.6B-A0.3B-NVFP4

An NVFP4 Mixture-of-Experts DFlash2 drafter for `ornith-ai/Ornith-1.5-35B-A3B` with a trained confidence head. The routed experts are quantized to NVFP4; every other module stays BF16.

Results

SettingValue
EnginevLLM
HardwareNVIDIA H200, TP1
Evaluation workers8 independent endpoints
Concurrency1 request per endpoint
Thinking modeenabled
Samplingtemperature=0.6, top_p=0.95, top_k=20
Max new tokens4,096
Contextnative 262,144
Draft tokens7 per verification step

All results below use this NVFP4 drafter. Each benchmark is measured twice: once against the BF16 target `ornith-ai/Ornith-1.5-35B-A3B`, and once against the NVFP4 target `ornith-ai/Ornith-1.5-35B-A3B-NVFP4`.

BenchmarkSamplesTargetp0p1p2p3p4p5p6AL
AA-LCR100BF160.8590.6690.5220.4160.3320.2650.2074.268
NVFP40.8650.6780.5260.4210.3350.2690.2084.301
AIME2630BF160.8280.6590.5200.4040.3170.2440.1854.157
NVFP40.8190.6520.5140.4020.3120.2420.1844.126
GSM8K1,319BF160.8690.7380.6240.5260.4430.3650.2974.862
NVFP40.8700.7410.6240.5250.4430.3640.2984.865
HumanEval164BF160.8580.7250.6100.5190.4410.3790.3224.855
NVFP40.8550.7190.6050.5110.4350.3720.3164.812
LiveCodeBench1,055BF160.7900.5980.4500.3400.2580.1970.1503.782
NVFP40.7880.5950.4460.3350.2540.1930.1463.756
LongBench-v2402BF160.8030.5760.4090.2990.2220.1630.1183.591
NVFP40.7960.5670.4010.2920.2160.1580.1143.543
MATH500500BF160.8660.7280.6050.5000.4130.3380.2714.722
NVFP40.8660.7260.6020.4970.4110.3360.2704.707
MBPP257BF160.8190.6530.5170.4110.3280.2620.2084.199
NVFP40.8130.6390.4990.3940.3110.2470.1944.096
MMSpec600BF160.7260.5010.3450.2420.1740.1240.0873.198
NVFP40.7230.4990.3440.2410.1720.1230.0873.189
MT-Bench80BF160.7090.4820.3350.2390.1750.1300.0953.166
NVFP40.6990.4710.3270.2350.1710.1260.0913.120
SWE-bench Pro731BF160.7350.5190.3710.2670.1940.1400.1003.327
NVFP40.7310.5150.3670.2640.1900.1370.0973.300
SpeedBench / coding80BF160.8110.6400.5090.4070.3290.2670.2154.178
NVFP40.8100.6330.4960.3930.3150.2550.2054.108
SpeedBench / humanities80BF160.7010.4740.3180.2140.1460.1000.0663.019
NVFP40.6980.4690.3180.2160.1490.1000.0663.017
SpeedBench / math80BF160.7780.5720.4210.3110.2290.1670.1183.596
NVFP40.7580.5590.4090.3030.2240.1650.1183.537
SpeedBench / multilingual80BF160.7810.6010.4590.3520.2680.1990.1433.803
NVFP40.7730.5910.4540.3470.2650.1990.1483.778
SpeedBench / qa80BF160.6850.4440.2890.1870.1190.0770.0472.848
NVFP40.6880.4560.2980.1970.1290.0860.0542.909
SpeedBench / rag80BF160.8180.6370.4950.3870.3050.2350.1774.054
NVFP40.8160.6370.4960.3880.3020.2290.1744.042
SpeedBench / reasoning80BF160.7500.5380.3890.2810.2050.1490.1073.419
NVFP40.7530.5450.3930.2860.2080.1510.1083.444
SpeedBench / roleplay80BF160.5820.3060.1620.0890.0490.0270.0162.233
NVFP40.5710.2920.1490.0820.0460.0250.0142.180
SpeedBench / stem80BF160.7340.5130.3540.2470.1710.1180.0813.220
NVFP40.7320.5110.3560.2480.1740.1230.0853.229
SpeedBench / summarization80BF160.7780.5710.4080.2960.2060.1360.0803.476
NVFP40.7700.5650.4090.2900.2060.1370.0853.462
SpeedBench / writing80BF160.6380.3790.2330.1510.1030.0700.0472.621
NVFP40.6330.3750.2280.1460.0960.0640.0432.586

Accepted length is calculated from the raw serving counters, p_i is the fraction of draft rounds that survive through draft position i:

text
p_i = accepted_per_pos[i] / draft_rounds
accepted_length = 1 + sum_i p_i

Quantization

SettingValue
ToolNVIDIA TensorRT Model Optimizer 0.46.0
AlgorithmW4A16_NVFP4, weight-only
Block size16
Calibrationnone required (algorithm: max)
Quantized modulesrouted experts only, layers.*.mlp.experts.*.{gate,up,down}_proj
Everything elseBF16
Checkpoint size1,805,028,242 B, down from 5,277,111,386 B (-65.8%)

Architecture

SettingValue
Draft layers3
Auxiliary hidden-state IDs[3, 12, 21, 30, 39]
Hidden size2,048
MoE FFN256 routed experts, top-8 routing
Routed expert intermediate512
Shared expert1 expert, intermediate size 512
Routersoftmax, top-k normalization
Shared-expert gatesigmoid
Attention32 Q heads / 4 KV heads
Head dimension128
Attention windowsliding window 2,048
Draft attentionnon-causal inside the draft block
RoPE theta1e7
Norm / activationRMSNorm eps 1e-6 / SiLU
Dynamic convolutionkernel 2, group 16
Candidate selectorrank 256, top-k 16
Confidence headincluded
Block7 draft tokens, sample_from_anchor=true
Draft vocabulary248,320
Parameters2,638,552,065 total / 298,130,433 activated per token
PrecisionNVFP4 routed experts, BF16 elsewhere

Example: Run with vLLM

This is a drafter checkpoint, not a standalone language model. Pair it with Ornith-1.5-35B-A3B or a compatible quantized version:

bash
vllm serve ornith-ai/Ornith-1.5-35B-A3B-NVFP4 \
  --tensor-parallel-size 1 \
  --enable-prefix-caching \
  --enable-auto-tool-choice \
  --tool-call-parser qwen3_xml \
  --reasoning-parser qwen3 \
  --speculative-config '{
    "method": "dflash",
    "model": "DaoCloud/Ornith-1.5-35B-A3B-DFlash2-2.6B-A0.3B-NVFP4",
    "num_speculative_tokens": 7
  }'

The checkpoint currently requires a vLLM build containing:

Checkpoint

The checkpoint contains 6,971 tensors and 2,638,552,065 parameters.

FileSHA256
model.safetensors2f87b58b3f7491faf39a84b3074a2ff63e93d3f7c053cf6d59916f3088a1dfc7

Acknowledgements

This work builds on `ornith-ai/Ornith-1.5-35B-A3B`, vllm-project/speculators, vllm-project/vllm, and NVIDIA/TensorRT-Model-Optimizer.

License

Apache-2.0.