Literature review · Pluralis · Part IX · September 2026

Domain-Adapted Drafters

Every paper, engineering blog, repo and model release we could find that trains, adapts, selects or benchmarks draft models specialised to a domain, task, language, user, or fine-tuned target. Four search passes, ~100 queries, ~150 page fetches; every arXiv ID resolved against arxiv.org unless marked (unverified). The thesis the evidence supports: a generalist drafter loses a quarter to a third of its acceptance out of domain, the fix is almost entirely a matter of which prompts you regenerate with the target, and for multi-domain serving a pool of specialists plus a router beats one mixed head.

88
entries — 60 papers/benchmarks, 28 blogs, repos and model zoos, all linked
−28–38%
acceptance lost by a generic drafter on a domain-tuned target (SambaNova, biology / Chinese)
τ 1.2 → 4.8
a drafter on a fine-tuned target before vs after private-expert re-adaptation (EDA)
29% → 76%
draft hit rate, generic vs per-customer speculator (Fireworks, code-gen)
01

Headline findings

The domain-shift penalty is large and well quantified. A generalist drafter loses roughly a quarter to a third of its acceptance when the workload or the target moves out of its training distribution. SambaNova measured a generic Llama-3.2-1B drafter falling from 60.7% to 37.5% token acceptance on a biology-tuned target and from 49.6% to 35.7% on Chinese (2503.07807). TAPS measured HASS heads at accepted length 5.02 vs 4.09 on GSM8K depending on whether they were trained on MathInstruct or ShareGPT, and 3.98 vs 2.90 on MT-Bench the other way round (2603.27027). HedgeSpec's specialist pool shows a Python drafter at 7.89 mean accepted tokens on Python but 2.86 on biology (2510.20064). The worst case is a fine-tuned target: an EAGLE-style drafter trained for Qwen2.5-7B collapses to τ ≈ 1.2–2.2 on Qwen2.5-Math / -Coder / Meditron3 variants, versus 4.0–4.8 after re-adaptation (EDA, 2603.09527). Even for a single generic head, per-domain accepted length spreads ~1.5× (SPEED-Bench: coding/math ≈ 3.0–3.5 vs roleplay/writing ≈ 1.9–2.5).

One lever dominates: regenerate responses with the exact target, in the served mode. Every 2025–26 production recipe (SpecForge, Red Hat Speculators, NVIDIA ModelOpt/NeMo, Baseten, Nebius, Modal, AMD, Together, AngelSpec) converges on: take prompts from the deployment domain (production logs or a representative open set), have the target itself write the responses greedily in the reasoning mode that will be served, and train on that. SpecForge v0.3 calls this "the single largest lever on final acceptance". Synthetic prompts (Magpie) reach 80–93% of what real user queries give (2503.07807). Domain adaptation is a change of prompt set, not of algorithm.

Offline white-box KD > black-box SFT > online distillation, when a corpus exists (SambaNova: offline beats online by 11–25%, white-box beats black-box by 2–10%). On-policy distillation under real verification (Draft-OPD, 2605.29343) then breaks the offline plateau (+23% over EAGLE-3 on thinking models). Online adaptation is best framed as drift insurance — NVIDIA's NeMo-RL ablation shows it adds almost nothing with a good domain init (1.77× → 1.78×) but recovers a poor init (1.51× → 1.63×).

Serving many domains: pool + router beats one mixed head; weight-merging fails. TAPS shows checkpoint averaging of two domain heads is worse than either (τ ≈ 2.6), while confidence routing (4.8) or merged-tree verification (5.1) recovers the specialist number. MetaSD (UCB bandit), TaskSpec (prompt classifier), HedgeSpec (full-information no-regret) and OnlineSPEC's Ens-Eagle (Hedge ensemble) all instantiate the pool design. Parameter-efficient specialisation (EDA's private expert at 27.5% of params, TaskSpec's per-task LoRA, the vLLM DFlash-LoRA RFC at ~28× smaller, Turbo LoRA's per-adapter speculator) makes a per-domain drafter cheap enough to ship with every fine-tune.

Measured business numbers for workload-specific drafters. Fireworks: 29% → 76% draft hit rate (generic → custom), ~2× latency on Cursor code-gen. Together: +1.23–1.45× decode speed over the base speculator from 10–50M tokens of customer traffic, 23–26% fewer GPU-hours. Baseten: +20% median acceptance from live training. Nebius LK losses: +8–10% accepted length from the loss alone. Counter-example: Thoughtworks found a custom EAGLE-3 for a domain-adapted Nemotron 3.5 Lightning "could only match" the co-trained native MTP head.

Which domains are easy and hard. Code, math and structured output (JSON, SQL, function calling) give the longest accepted spans; open chat, roleplay, creative writing, summarisation, and low-resource languages the shortest. Language is a domain in its own right: per-language drafters give 1.89× vs 1.18× for a generic one (2406.16758), a 13% acceptance gap separates the fastest and slowest MGSM languages (2510.02128), and task-distilled low-resource-language drafters overfit (α 0.60 in-task but 0.43 off-task, 2605.30580). Long context and RL rollouts are also "domains" — EAGLE-3's accepted length drops from ~5.8 to 1.28 on long inputs (OWL, 2510.07535), and RL policy drift stales a fixed drafter within an epoch (ReSpec, TLT).

02

Papers — offline domain-drafter training and distillation

# Work Link Venue / year Drafter type Domain(s) Adaptation method Headline result Code
1Training Domain Draft Models for SD: Best Practices and Insights (Hong et al., SambaNova)2503.07807ICLR'25 SCOPE wkshpIndependent (Llama-3.2-1B)Function calling, biology, ChineseOffline vs online KD; white- vs black-box; synthetic (Magpie) vs real logsGeneric drafter −28–38% acceptance OOD; domain KD lifts function calling 60.3→82.6%; offline > online by 11–25%; synthetic reaches 80–93% of real—
2DistillSpec (Zhou et al., Google)2310.08461ICLR 2024Independent (T5 / GPT-2)XSum, GSM8K, CNN/DM, WMTOn-policy KD per task, divergence matched to decoding mode10–45% over standard SD; GSM8K-distilled drafter still +26% avg on 23 unseen BBH tasks—
3FastDraft: How to Train Your Draft (Zafrir et al., Intel)2411.11055ACL'25 FindingsIndependent 50–150M, pretrained from scratchCode vs textPretrain ~10B tokens (code+text mix), then align on target-synthesised dataUp to 3× memory-bound on code, 2× on text; <24 h on 8× Gaudi-2OpenVINO HF collection
4EDA: Efficiently Aligning Draft Models via Parameter- and Data-Efficient Adaptation (Lin et al., Xiamen/TeleAI)2603.09527arXiv Mar 2026EAGLE-style, shared + private expertsFine-tuned targets: math, code, medical (Meditron3)Retrain only private expert (27.5% params) on target-regenerated data + Mahalanobis sample selectionTraining-free transfer collapses to τ 1.19–2.15; EDA restores 4.30–5.35 at 39–61% of full-retrain costGitHub
5TAPS: Task-Aware Proposal Distributions (Zbib et al., KAUST/AUB)2603.27027arXiv Mar 2026EAGLE-2 / HASS heads on Llama-3-8BMath vs chatSeparate domain heads; compare weight averaging, confidence routing, merged-tree verificationIn/OOD gap ≈25–30% τ; averaging fails (2.6), routing 4.8, merged tree 5.1GitHub · HF
6Towards Fast Multilingual LLM Inference: SD and Specialized Drafters (Yi et al., KAIST/KT)2406.16758EMNLP 2024Independent, per languageDe/Fr/Ru/Ja/Zh→En translationTargeted pretrain-then-finetune per languageSpecialised 1.89× vs generic 1.18×; cross-language transfer loses 15–37%; log-linear in finetune tokensGitHub
7Speculative Decoding Across Languages (Paudel et al., U. Colorado)2605.30580arXiv May 2026Distilled small models + n-gram11 low-resource languagesTask-specific vs general distillation vs n-gramTranslation α 0.40→0.60 (task-distilled) but 0.43 on story gen (overfits); n-gram best wall-clock 1.30×promised
8The Disparate Impacts of Speculative Decoding (Sandler et al., UVA/Cohere)2510.02128arXiv Oct 2025IndependentMultilingual (MGSM)Stochastic corrective drafter fine-tuning (s-CDF) reweighting under-fit languages13% acceptance gap across languages; s-CDF +12% fairness metric—
9EfficientEdit (Wang et al., Beihang/Huawei)2506.02780ASE 2025Independent code model (Qwen2.5-Coder-7B)Code editingEdit-oriented fine-tune, loss masks reused tokensUp to 8.26× (CanItEdit), 13.09× (CodeIF-Bench)GitHub
10Direct Alignment of Draft Model for SD with Chat-Fine-tuned LLMs (Goel et al., Qualcomm)2403.00858arXiv 2024Independent 115MChat (Llama-2-Chat-7B)Train on target-generated instruction data with TVD++ loss2.3× block efficiency, 2.4× speedup—
11Draft-OPD: On-Policy Distillation for Draft Models (Lei et al., SJTU/Shanghai AI Lab)2605.29343arXiv May 2026DFlash / EAGLE-3 headsThinking-mode reasoning, code, SWE-BenchRollouts under real SD verification; fwd-KL on accepted, rev-KL on rejected>5× lossless on Qwen3 thinking; +23% vs EAGLE-3; math 5.55×, code 4.85×, chat 3.18×GitHub
12AngelSpec (Liu et al., Tencent)2607.25852arXiv Jul 2026MTP for chat; block-diffusion for code/mathChat, QA, math, code, agent, long code-agent tracesDomain-matched drafter architecture + target-regenerated dataAcceptance decays fast with depth in chat, sustains in code/math—
13Temperature-Centric Investigation of SD with KD (Ouyang et al.)2410.10141EMNLP'24 FindingsIndependentCross-domain × temperatureDistil at serving temperatureDomain and temperature mismatch compound; KD at deployment T is the fixGitHub
14AdaSPEC: Selective KD for drafters (Hu et al., Berkeley/Tsinghua)2510.19779arXiv Oct 2025IndependentPer-datasetToken-selective KD+0.4–15% acceptance per dataset, largest on MBPPGitHub
15Flatter Tokens Are More Valuable for Draft Training (Fan et al.)2601.18902arXiv Jan 2026EAGLE-2Data selectionKeep high-entropy (flat) samples50% data → 2.02× faster training, within 4% of full-data speedup—
16SD² Self-Distilled Sparse Drafters (Lasby et al., Cerebras)2504.08838arXiv Apr 2025Independent sparse 1.5–3BGeneral (UAG to Llama-3.1-70B)Self-data distillation + sparsification1.59× MAL vs layer-pruned, 44% fewer MACs—
17Scaling Laws for SD (Scylla) (Yan et al.)2505.07858arXiv May 2025EAGLE-styleCross-taskScale drafter pretraining tokens/sizeLog-linear acceptance; largest gains on summarisation & QA (weakest domains)promised
18LK Losses: Direct Acceptance-Rate Optimisation (Samarin et al., Nebius)2602.23881arXiv Feb 2026EAGLE-3 / Medusa / MLPGeneral (660K Infinity-Instruct, target completions)Acceptance-optimising loss+8–10% AL (MT-Bench/HumanEval/GSM8K)SpecForge PR #492
19SpecForge paper (Li et al., SGLang/LMSYS)2603.18567arXiv Mar 2026EAGLE-3Data-mix effectShareGPT+UltraChat (320K) vs Perfect-Blend (1.4M, code/math-heavy)Math500 τ 2.82 → 3.48 (+23%) from broader mix aloneGitHub
20LongSpec (Yang et al., Sea AI Lab)2502.17421ACL 2025EAGLE-like, constant KVLong context, long reasoningPosition-index scheme; train past 4K3.26× on 5 long-context sets; 2.25× on AIME24 (QwQ)GitHub
21OWL (Lee et al., Snowflake/SNU/CMU)2510.07535arXiv Oct 2025LSTM drafter on last hidden stateLong-context inputsContext-independent drafter architectureEAGLE-3 AL 5.79 → 1.28 on long inputs; OWL holds 4.0–4.1anon repo
22P-EAGLE (Hui et al., AWS)2602.01469arXiv Feb 2026Parallel-draft EAGLEReasoning / long outputs (gpt-oss, Qwen3-Coder)Scalable training on long sequences1.10–1.36× over AR EAGLE-3Speculators
23TSS: Target-Side Sparsification for Domain-Specific LLMs (Hu et al.)2609.26100arXiv Aug 2026Any (drafter unchanged)Translation etc.Per-domain target layer-skip mapTranslation AL 2.70 → 4.53, 1.68× throughput—
03

Papers — online, continual, and RL-drift adaptation

# Work Link Venue / year Drafter type Adaptation signal Granularity Headline result Code
24Online Speculative Decoding (OSD) (Liu et al., Berkeley/UCSD)2310.07177ICML 2024Independent small LMsVerifier rejections + target logits, KD with spare serving computeFleet / query streamAcceptance +0.1–0.65 abs; 1.42–2.17× latency cut; topic-switch experimentsGitHub
25When Drafts Evolve: SD Meets Online Learning (OnlineSPEC) (Qian et al., Nanjing/UCSD)2603.12617ICML 2026EAGLE / Hydra headsVerifier feedback as online-learning game; dynamic regret ↔ speedupPer-request streamUp to 24% over prior online methods; Ens-Eagle = Hedge-weighted head ensembleGitHub
26Test-Time Speculation (TTS) (Kumar, Sanghavi, Das, UT Austin)2605.09329arXiv May 2026EAGLE-styleTarget logits from verification, distilled every few roundsWithin one generation+41% avg / +72% max accepted length; grows with output length—
27Draft, Verify & Improve (DVI) (Bhansali, Heck, Georgia Tech)2510.05421arXiv Oct 2025LoRA self-drafter headAccept/reject → KL then reward-masked CEContinuous2.16× on Spec-Bench from 2K prompt exposures (vs 2.4M for EAGLE)on publication
28TIDE: Temporal Incremental Draft Engine (Park et al., Moreh)2602.05145arXiv Feb 2026EAGLE-styleDual-timescale EMA of acceptance triggers async retrain; gated redeployFleetUp to 1.15× throughput vs static; 1.67× less retrain time—
29OmniDraft (Kinattinkara Ramakrishnan et al., Qualcomm)2507.02659arXiv Jul 2025Llama-68M + online n-gram vocab cacheOn-policy user traffic; rev-KL + NLL hybridPer-device / per-userGSM8K α 0.10→0.42, code 0.09→0.27; 1.5–2× across 3 targets—
30Steering Pretrained Drafters (Berdoz et al., ETH)2511.09844AAAI 2026Any frozen drafterSteering vector from verifier hidden states, no weight updatePer-request+35% accepted (sampling), +22% (greedy)—
31TLT: Taming the Long-Tail (Hu et al., MIT/NVIDIA/ETH)2511.16665ASPLOS 2026EAGLE-styleContinual training on idle GPUs during long-tail rolloutsPer RL step>1.7× e2e RL speedup; deployable drafter as byproductfastrl
32ReSpec (Chen et al., NTU/SGLang)2510.26475MLSys 2026EAGLE-styleKD from updating actor, reward-weightedPer RL stepUp to 4.5× rollout on Qwen 3–14B—
33FastGRPO (Zhang et al.)2509.21792arXiv Sep 2025EAGLECached hidden states/logits each GRPO iter (2–3% overhead)Per RL step2.35–2.72× e2e on mathGitHub
34SpecRoll (Pham et al., VNU/Viettel)2608.04962arXiv Aug 2026EAGLE-styleFast gradient-free hidden-state correction + slow param update on persistent driftTwo timescales1.26–2.15× generation; beats FastGRPO 15/15anon repo
35RL Post-Training Rollouts via System-Integrated SD (Iso et al., NVIDIA NeMo-RL)2604.26779arXiv Apr 2026EAGLE-3Hidden states from policy-loss pass; online adaptation optionalPer RL step1.8× gen at 8B; online adds 1.77→1.78× with good init but 1.51→1.63× with weak initNeMo-RL docs
36EfficientRollout (Kim et al., FuriosaAI/Berkeley)2606.18967arXiv Jun 2026Quantised copy of current policyAdapts by construction (no training)Per RL step−19.6% rollout latencyGitHub
37DAS: Distribution-Aware SD for RL (Shao et al., Together/UCSD/Stanford)2511.13841MLSys 2026Suffix tree over recent rolloutsRecent rollouts (training-free)Per RL stepUp to 50% rollout-time cut, identical curves—
38RhymeRL / HistoSpec (He et al., SJTU/Huawei)2508.18588ASPLOS 2026Previous-epoch rollouts as draftsCross-epoch similarityPer epoch2.6× over prior RL systems—
39SPEC-RL (ShopeeLLM)2509.23232arXiv Sep 2025Prefix reuse, no drafterPrevious rolloutsPer epoch2–3× rollout time cut (PPO/GRPO/DAPO)GitHub
40Speculate While You Reason: Joint Agent–Speculator RL (Ji et al., UCSB/LinkedIn)2607.25816arXiv Jul 2026Tool-call speculator (not token-level)Co-trained with agent on own trajectoriesPer agentTool-call Hit@1 44.1→61.2 (Qwen3-4B)—
04

Papers — drafter pools, routing, and parameter-efficient specialisation

# Work Link Venue / year What is selected / adapted Signal Headline result Code
41Not-a-Bandit / HedgeSpec (Liu et al., Rice/AWS/UCSD)2510.20064arXiv Oct 2025One of 21 domain EAGLE drafters (7 domains: Python, math, bio, chem, medQA, CNN/DM, SQL)Full-information: all drafters scored on accepted tokens after each verify; HedgePython drafter 7.89 MAT in-domain vs 2.86 on bio; +46% MAT mixed, +83.7% tok/s SQL, +49% over BanditSpecHF drafters
42MetaSD (Kim, Jung, Yun, LG AI/KAIST)2604.05417ACL 2026 FindingsOne of 5 task drafters (68M black-box or EAGLE)UCB on block divergence (1−TV) rewardCode 2.3×, math 2.28×, summ 1.97×, QA 1.71×, transl 1.59×; beats one-for-allon publication
43TaskSpec (Ge et al., Beijing Normal U.)2505.08600ICPP 2025Per-task LoRA drafters (LLaMA-68M)Mamba prompt classifier (99.5% acc, 13.5 MB)Draft accuracy math 16→58%, transl 33→60%; 1.10–2.64×—
44BanditSpec (Hou et al., NUS/Sea/Yale)2505.15141ICML 2025SD config incl. which drafter, draft lengthThroughput bandit (UCBSpec / EXP3Spec)Near-oracle throughput on mixed prompts—
45SpecRouter (Wu et al., Tsinghua)2505.07680arXiv May 2025Per-request draft/verifier chainLatency profile + divergence similarityPreliminary—
46KNN-SSD (Song et al., PKU/PolyU)2505.16162EACL 2026 FindingsPer-domain skipped-layer set for self-draftingKNN on inputs1.3–1.6×; layer-skip drafters highly domain-sensitive—
47Speculative Streaming (Bhendawade et al., Apple)ACL AnthologyEMNLP 2025~8e4-param speculator per LoRA-adapted appMulti-stream attention in target2–3.5× on device—
48Turbo LoRA (Predibase)blogAug 2024 (no paper)Per-adapter linear speculator co-trained with each task LoRA—2–3×; NER 2.56× vs base—
49vLLM RFC: DFlash drafter LoRA adaptersvllm#520382026 RFCPer-domain r=64 LoRA on shared 0.8B DFlash drafter, swappable per request—Claims within ~2% of fully-trained per-domain drafter, ~28× smaller—
50Lossless SD for Heterogeneous Vocabularies (SLEM/TLI, "Universal Assisted Generation") (Timor et al., Intel/Weizmann)2502.05202ICML 2025 oralAny small model as drafter for any target—Up to 2.8×; solves pairing, not domain shiftHF blog
51TokenTiming (Xiao et al., Zhejiang U.)2510.15545arXiv Oct 2025Cross-vocab via DTW alignment—Per-language: French 2.23×, English 1.55×, Chinese 1.06×, Japanese 1.12×—
52Cross-Family SD for Polish LMs (Fonał, Wrocław UST)2604.16368arXiv Apr 2026UAG drafters on Bielik-11B—Negative result: α 22–45%, ≤1.06×GitHub
05

Benchmarks and analyses quantifying domain shift

# Work Link Venue / year What it measures Domain-relevant numbers Code / data
53SPEED-Bench (Abramovich et al., NVIDIA)2604.09557 · blogICML 202611 domains × 80 samples; AL and throughput in vLLM/TRT-LLMLlama-3.3-70B+EAGLE-3: coding 3.00, math 2.45, writing 2.63, roleplay 2.04; gpt-oss-120b: coding 2.46 vs roleplay 1.87; vocab pruning leaves 22% of tokens unreachable in multilingual; 1K-ISL-trained drafters degrade on long inputs; native MTP beats post-hoc EAGLE-3HF dataset · repo
54Spec-Bench (Xia et al.)2401.07851ACL'24 Findings6 subtasks (MT-bench, WMT, CNN/DM, NQ, GSM8K, RAG)Translation/summarisation lowest AL, code/math highest; Vicuna-13B EAGLE-3 3.02×, 5.71 tokensGitHub
55SpecDecode-Bench: Performance or Illusion? (Liu et al., Berkeley)2601.11580arXiv Dec 2025SD in vLLM across positions, requests, datasetsAL "varies markedly across output positions, requests, and datasets"site
56Acceptance Dynamics Across Cognitive Domains ("chat paradox") (Mahmoud)2604.14682arXiv Apr 202699,768 tree nodes, TinyLlama→Llama-2-7B-ChatUntrained drafter: chat 0.565 > code 0.538 > reasoning 0.532 > math 0.518 — ordering flips vs distilled drafters, i.e. training data decides which domain winsGitHub
57EAGLE-3 per-task table (Li et al.)2503.01840NeurIPS 2025Llama-3.1-8B-Instruct τ at T=0HumanEval 6.74, Alpaca 6.70, GSM8K 6.23, MT-bench 6.13, CNN/DM 5.34GitHub
58HASS per-task table (Zhang et al.)2408.15766ICLR 2025Llama-3-8B-Instruct τHumanEval 5.54, GSM8K 5.02, MT-bench 4.68GitHub
59AgentSpec (Wang et al.)2608.24004EMNLP 2026Agent-batch workloadsDiagnoses high rejection on agent traces; structure-isolated drafting—
60MagicDec (Sadhukhan et al., CMU/Together)2408.11049ICLR 2025Long-context, self-draft with sparse KVUp to 2.51× at batch 32–256; sidesteps drafter mis-alignmentsite
06

Blogs, repos, and model zoos

# Resource Link Owner · type · date What it provides for domain adaptation Headline numbers
61SpecForgeGitHub · docs · v0.3 blog · launchLMSYS/SGLang · repo+blog · Jul 2025 / Aug 202619 dataset presets (chat + code/math/reasoning); regenerate_train_data.py with --reasoning save / disable; custom JSONL; EAGLE3/P-EAGLE/DFlash/Domino/DSpark/MTP; 11 SpecBundle headsQwen3.6-27B Domino 5.72× MATH500, 4.98× HumanEval at bs=1; "regenerating with the target … single largest lever"
62SpeculatorsGitHub · v0.3 training blog · data-generation study · P-EAGLE · HFRed Hat / vLLM · library+blogs · Nov 2025–Sep 2026vLLM-native offline pipeline; self- vs same-family cross-distillation study (500K prompts, 7 workloads); per-domain AL on every cardSame-family cross-distil helps small targets (Qwen3-30B-A3B τ 2.77→3.05), self-distil wins at 120B (2.65 vs 2.40); gpt-oss-120b head HumanEval 3.01, math 3.29, MT-bench 2.61
63NVIDIA Model Optimizer speculative_decodingREADMENVIDIA · repo/docsEAGLE-1/3, Medusa, DFlash; synthetic-conversation script regenerating with target; online/offline/streaming hidden states; export to TRT-LLM/vLLM/SGLangPipeline behind all nvidia/*-Eagle3 heads
64NeMo AutoModel "Train an EAGLE Drafter, End-to-End"docsNVIDIA · docs · 2026Rule: assistant turns must come from the target; bring-your-own JSONL; MVP 1K samples/10 min on 1 A100, prod 200K/~2 h on 8×A100Target AL "3.0+"
65TorchSpecPyTorch blog · GitHub · datasetEAGLE-Research · repo+blog · Mar 2026Disaggregated online training via RDMA; any prompt set up to 200K context; open 600K-sample Kimi datasetKimi-K2.5 EAGLE3: +60/+30/+26% throughput at bs 1/8/16
66Baseten "How to train custom EAGLE-3 heads"blogBaseten · blog · Apr 2026Generic (UltraChat-200k regenerated) vs task-specific (production prompt–output pairs regenerated by target) recipes; 200–300K samples generic, ~100K narrow (JSON)T=1 costs 15–25% of speedup; 1.5–2.5× on code/agentic/structured; live training +20% median acceptance (X post, unverified)
67Nebius "Train the draft model for your workload"blog · service · LK paperNebius · blog+service · Jun 2026Customer logs → EAGLE-3 with LK losses → dedicated endpoint+8–10% AL from loss alone
68Together "Customized SD for DeepSeek-R1"blogTogether AI · blog · May 2025Fine-tune base speculator on customer R1 traffic (doc extraction, chat assistant, résumé screening)Custom vs base 1.23–1.45×; 1.85–2.97× vs none; 23–26% fewer GPU-h; 20M tokens → >1.10×, 50M → >1.20×
69Together ATLASblogTogether AI · blog · Oct 2025Static heavyweight + lightweight adaptive speculator learning from live traffic + confidence controllerDeepSeek-V3.1 500 tok/s on 4×B200 (2.65× vs static spec); RL workload acceptance <10%→>80%
70Fireworks FireOptimizerblog · docsFireworks · blog · Aug 2024Per-customer drafter from traced production dataHit rate 29% generic → 76% custom; ~2× (Cursor), up to 3×
71Snowflake Arctic Inference / SuffixDecodingMLP speculators · SuffixDecoding · GitHub · paperSnowflake · blog+repo · 2025YAML-recipe MLP/LSTM speculator training on target-synthesised UltraChat+MagiCoder; model-free suffix-tree drafting that adapts per requestSWE-Bench agentic 1.8–4.5× (MLP), SuffixDecoding up to 5.3× agentic, only 1.0–1.28× on SpecBench
72Modal "SOTA latencies with speculative decoding"blogModal · blog · Jun 2026DFlash speculator mid-trained on task-specific synthetic data (public prompts regenerated by target) with OOD monitoringp50 290→190 ms; DFlash >50% better than MTP baseline
73BentoML "3× faster inference with the right draft model"blogBentoML · blog · Aug 2025Own EAGLE-3 head on UltraChat+ShareGPT, 8×H200AL 3.02 @5; ~2×
74Thoughtworks Nemotron 3.5 Lightning testblog · HF headThoughtworks · blog · Aug 2026Negative result: custom EAGLE-3 on domain-adapted hybrid Mamba target only matched native MTPNative MTP 1.46–1.96× over 2,091 runs
75AMD MiniMax-M3 EAGLE3.1 on InstinctvLLM blogAMD · blog · Jul 2026On-policy chat + raw completions regenerated by MXFP4 target, streamed vLLM→FSDP2SPEED-Bench avg 2.80, coding 3.32 → roleplay 2.01; stable 1K→32K ctx
76NVIDIA Eagle3 HF releasesgpt-oss-120b-Eagle3-v3 · Llama-3.3-70B-Eagle3NVIDIA · model cards · Dec 2025–May 2026Variants by context regime (short/long/throughput); mix = 8 Nemotron-Post-Training-v3 subsets (science, IF, code, math, SWE, multilingual, agentic)gpt-oss AL@7: math 3.50, multilingual 3.39, coding 3.28, writing 2.52, roleplay 2.31
77z-lab DFlashGitHub · Qwen3-Coder-30B-A3B-DFlashz-lab · repo+models · Feb 2026Explicitly code-domain drafter: 289K samples (Nemotron-PT-v2 code, evol-codealpaca, ~2.8K Cline agent traces)HumanEval 3.5× / AL 8.09; MBPP 3.2×; LiveCodeBench 2.6×; ~3.1× at bs=32
78AngelSlim EAGLE3 collectionHFTencent · models · Jan 202615 heads incl. modality-specific (Qwen3-VL, HunyuanOCR, Qwen2-Audio, CosyVoice3 TTS)Qwen3-14B AL 1.74–1.87 (modest)
79lmsys / SpecBundle & community code headslmsys Qwen3-235B · SpecBundle blog · cm00cm Kimi-K2.7-CodeLMSYS / community · modelsCode-specialised targets now trained on Nemotron post-training mixes; vocab trimming 163K→32K (97.5% coverage)Qwen3-235B: GSM8K 3.54, MT-Bench 3.02
80Intel FastDraft / OpenVINO draft collectionHF collection · notebookIntel · models · 2024–25Phi-3-mini-50M, Llama-3.1-8B-150M, Phi-4-mini-120M drafters; code vs text reported separatelyCode 3×, text 2× (memory-bound)
81Meta LayerSkipGitHub · HF blog · Code Llama ckptMeta · repo+models · Nov 2024Self-speculative early-exit; recipe applies "during pretraining or domain-specific fine-tuning"; code-domain checkpoints1.8–2.06×
82EAGLE official repoGitHubSafeAILab · repotraineagle3 scripts; explicit note that Qwen2 head is English-only ShareGPT — "train with the corresponding data" for ChineseEAGLE-3 up to 5.6×
83MedusaGitHub · TGI tutorialFasterDecoding · repoMedusa-2 self-distillation "for fine-tuned LLMs without original training data" — the original domain-adaptation recipe2.2–3.6×
84HF Universal Assisted Generationblog · docsHugging Face · blog+docs · Oct 2024Use any off-the-shelf domain SLM (e.g. tiny_starcoder) as drafter without retrainingCodeLlama-13B + tiny_starcoder 1.90×
85RESTGitHub · paperPKU/Princeton · repo · NAACL 2024Datastore = the domain artifact; swap corpus to adapt1.62–2.36×
86SAM-DecodingGitHub · paperRenmin U. · repo · ACL 2025Static corpus + dynamic suffix automaton; falls back to EAGLE-2+3.3–11.1% over EAGLE-2
87Graft: Draft Less, Retrieve MorepaperZJU/Alibaba Qwen · May 2026EAGLE-3 tree slots filled from online successor matrix updated from verified tokens5.41× short-ctx (+21.8% over EAGLE-3, Qwen3-235B)
88Apple ReDrafterGitHubApple · repoTrainable (ShareGPT, ~1.5 h on 8×H100); no domain guidance—
07

Practical recipe distilled from the sources

Start from a well-initialised generalist head (SpecBundle / RedHatAI / NVIDIA release, or train one on Perfect-Blend-scale data, since breadth alone adds ~20% on math). Collect 100–300K prompts from the deployment domain — production logs if available, otherwise Magpie-style synthetic prompts, which recover 80–93% of the real-log benefit. Regenerate every response with the exact target, greedily, in the reasoning mode and at the temperature that will be served. Train offline with white-box KD (target hidden states and logits), keeping only assistant turns in the loss; for a fine-tuned target, retrain only a private expert or LoRA slice (25–30% of parameters) rather than the whole drafter. If a strict acceptance objective is available (LK losses, EAL/WTV) expect a further 4–10%. Then optionally run on-policy distillation under real verification to break the offline plateau. For multi-domain serving keep separate specialists and combine them at inference — Hedge/UCB routing or merged-tree verification — never by weight averaging. For non-stationary traffic (RL rollouts, new products, per-user sessions) add an online path: OSD/TIDE-style asynchronous retraining triggered by acceptance-rate drift, or a training-free suffix-tree/n-gram layer that adapts by construction. For repetitive agentic, SQL or code-edit traffic the training-free layer may beat any trained drafter outright.

08

Gaps

No verified legal- or finance-specific drafter papers exist; medical appears only via EDA's Meditron experiment. No public benchmark yet has an agentic/tool-calling split (AgentSpec and SambaNova's function-calling numbers are the only data). Explicitly domain-labelled open heads are rare — z-lab's Qwen3-Coder DFlash, LayerSkip Code Llama, AngelSlim's modality heads, and HedgeSpec's 21-drafter pool are the main ones; everything else is a chat mix with a per-domain eval table. Nobody has published a study of drafter adaptation under pipeline-parallel / WAN serving, where a domain drafter's higher acceptance translates directly into fewer verification round-trips; the numbers above (25–40% acceptance recovery, 1.2–1.5× extra decode speed) are the input for that estimate.

09

Not found / unverified

"SpecActor" (2511.16193) exists but drafter-training details are not in the abstract; "Speculative Decoding Meets Domain Shift" and "Redistributing Draft" do not resolve to papers; Baseten's live-training +20% figure comes from an X post; the vLLM DFlash-LoRA "within 2%" claim is an RFC, not a paper; SambaNova's SCOPE workshop venue is per the authors.