Sponsored by
Vmake Labs Video Enhancer
-Vmake Labs Video Enhancer uses AI to improve video quality, restore details, reduce blur, and upscale videos to 8K.
A
DFlash2 draft model
for speculative decoding with
Qwen/Qwen3.5-2B
as the verifier, trained with
speculators
. With a block size of 8, the drafter proposes 7 tokens at a time and the verifier checks them in one forward pass, so output is identical to running the verifier alone — a lossless speedup. Mean acceptance length is
2.38
tokens committed per verification step, up to
3.44
on math_reasoning.
Then query the OpenAI-compatible endpoint at
http://localhost:8000/v1
.
Details
4 Qwen3 layers (hidden size 2048, intermediate size 6144, 16 attention heads over 4 KV heads, head dim 128), with the first three layers using sliding-window attention (2048-token window) and the last using full attention. Block size 8 (7 draft tokens per step), aux hidden-state layers 1/5/9/13/17/21, bfloat16.
Training was configured for 4 epochs; this checkpoint was saved after epoch 2. Trained at lr 4e-4 (AdamW, cosine schedule with 4% warmup) on 100,000 filtered
Open PerfectBlend
prompts with responses regenerated by the verifier itself, split 96/4 into train and validation, with a
{"ce": 0.1, "tv": 0.9}
loss. Samples prepared at 1024 tokens; training sequence length 4096, up to 512 anchors per sample. Verifier hidden states were pulled on demand from a running vLLM server during training and deleted after use rather than staged to disk up front.
Evaluation
evaluate.py throughput
across the nine
RedHatAI/speculator_benchmarks
subsets.
acceptance_length
is mean tokens committed per verification step, including the bonus token — floor 1.0, ceiling 8.0 at block size 8 (7 draft tokens).
subset
acceptance_length
pos_0
pos_1
pos_2
pos_3
pos_4
pos_5
pos_6
math_reasoning
3.439
69.9%
50.9%
37.9%
29.4%
23.3%
18.2%
14.4%
HumanEval
2.644
58.4%
37.5%
25.2%
17.5%
12.3%
8.2%
5.4%
tool_call
2.205
50.1%
28.2%
16.6%
10.9%
7.3%
4.6%
2.8%
rag
2.163
52.0%
28.5%
15.9%
9.6%
5.6%
3.1%
1.6%
question
2.162
48.8%
25.8%
15.6%
10.5%
7.4%
5.0%
3.2%
writing
2.157
48.7%
26.0%
15.7%
10.4%
7.1%
4.7%
3.1%
qa
1.884
41.4%
19.9%
10.9%
7.2%
5.1%
2.7%
1.3%
translation
1.859
49.8%
23.4%
8.0%
2.5%
1.3%
0.6%
0.4%
summarization
1.798
43.4%
19.1%
9.0%
4.4%
2.3%
1.1%
0.5%
Weighted across all subsets: 2.379
over 229,381 verification steps.
Acceptance is highest where the verifier's next token is most predictable. math_reasoning is the only subset above 3.0 and still accepts more than one draft in seven at pos_6 (14.4%); HumanEval follows at 2.64 and stays above 10% through pos_4. The next four — tool_call, rag, question and writing — sit in a tight 2.16–2.21 band, with tool_call (2.21) only marginally ahead of open-ended writing (2.16), so the structure of a tool call is apparently not buying much predictability here. qa (1.88) and translation (1.86) come next; translation actually starts above the middle group at pos_0 (49.8%) but collapses after pos_1, falling to 8.0% at pos_2. It is also the smallest subset (1,169 steps), so treat its number as noisy. summarization (1.80) sits closest to the floor, accepting under 10% from pos_2 onward, so on that traffic the drafter contributes about four-fifths of an extra token per step.
First-position acceptance spans 41–70% across all nine subsets, and only math_reasoning and HumanEval remain above 10% at pos_4, so most of a 7-token draft goes unused outside math and code.
Limitations
Works only with
Qwen3.5-2B
and is not usable as a standalone model. The verifier is vision-language, but the drafter was trained on text-only prompts and was evaluated on text-only benchmarks, so acceptance on image inputs is untested. Acceptance falls off steeply past the first few positions on most traffic, so much of each 7-token draft is wasted outside math_reasoning and code — a shorter block would capture most of the same gain at lower drafting cost. On qa, translation and summarization, acceptance length is below 1.9, so gains there are likely smaller. Throughput has not been benchmarked for this checkpoint; real-world speedup depends on your hardware and traffic mix, and because verification is lossless, the verifier's own behavior and biases carry through unchanged.
License
Apache 2.0, inherited from the verifier. The
speculators
training code is Apache-2.0.
Runs of rasyosef Qwen3.5-2B-DFlash2 on huggingface.co
159
Total runs
4
24-hour runs
15
3-day runs
32
7-day runs
149
30-day runs
More Information About Qwen3.5-2B-DFlash2 huggingface.co Model
Qwen3.5-2B-DFlash2 huggingface.co is an AI model on huggingface.co that provides Qwen3.5-2B-DFlash2's model effect (), which can be used instantly with this rasyosef Qwen3.5-2B-DFlash2 model. huggingface.co supports a free trial of the Qwen3.5-2B-DFlash2 model, and also provides paid use of the Qwen3.5-2B-DFlash2. Support call Qwen3.5-2B-DFlash2 model through api, including Node.js, Python, http.
Qwen3.5-2B-DFlash2 huggingface.co is an online trial and call api platform, which integrates Qwen3.5-2B-DFlash2's modeling effects, including api services, and provides a free online trial of Qwen3.5-2B-DFlash2, you can try Qwen3.5-2B-DFlash2 online for free by clicking the link below.
rasyosef Qwen3.5-2B-DFlash2 online free url in huggingface.co:
Qwen3.5-2B-DFlash2 is an open source model from GitHub that offers a free installation service, and any user can find Qwen3.5-2B-DFlash2 on GitHub to install. At the same time, huggingface.co provides the effect of Qwen3.5-2B-DFlash2 install, users can directly use Qwen3.5-2B-DFlash2 installed effect in huggingface.co for debugging and trial. It also supports api for free installation.