Views
No views yet
--spec-type draft-eagle3).| File | Size | Notes |
|---|---|---|
Tess-4-27B-EAGLE3-Q4_K_M.gguf | 403 MB | Recommended — acceptance is flat across draft quants, so the smallest draft wins on latency |
Tess-4-27B-EAGLE3-Q8_0.gguf | 629 MB | |
Tess-4-27B-EAGLE3-BF16.gguf | 1.22 GB | Direct converter output |
1llama-server \
2 -m Tess-4-27B-Q4_K_M.gguf \
3 --spec-type draft-eagle3 \
4 --spec-draft-model Tess-4-27B-EAGLE3-Q4_K_M.gguf \
5 --spec-draft-n-max 2--spec-draft-n-max 2 is the measured sweet spot on this head — deeper drafting is strictly worse (per-position acceptance decays; rejected drafts waste target verification). Speculative decoding is output-lossless: the target verifies every token, confirmed at benchmark granularity (150-scenario quality suite, within run-to-run noise of no-spec and of a DFlash draft).| Rig | Config | Acceptance | Throughput |
|---|---|---|---|
| 1× RTX 4090 (Q4_K_M target, ctx 98K) | n_max=2 | 49.1% | ~76–78 code tok/s (vs 50.4 no-spec — 1.55×) |
| 1× RTX 4090 | n_max=4 | 27.4–28.0% (flat across BF16/Q8_0/Q4_K_M draft) | 62–71 tok/s |
| 2× RTX 3090 (club-3090, llama.cpp b9967) | n=2 | 40.8% | 47.5 narr / 61.3 code tok/s |
a646006f0); independently reproduced at b9967 — the recipe is version-robust across that span.1# The target dir needs ONLY the base model's config.json + tokenizer files
2# (~12 MB download) — no 27B weights required.
3python convert_hf_to_gguf.py <Tess-4-27B-EAGLE3-dir> \
4 --target-model-dir <Tess-4-27B-metadata-dir> # → BF16 GGUF
5llama-quantize Tess-4-27B-EAGLE3-BF16.gguf Tess-4-27B-EAGLE3-Q4_K_M.gguf Q4_K_M
6llama-quantize Tess-4-27B-EAGLE3-BF16.gguf Tess-4-27B-EAGLE3-Q8_0.gguf Q8_0[2, 32, 61], and writes the 32K→248K d2t vocab map into the GGUF (eagle3.target_layers / eagle3.target_hidden_size metadata, inspectable with llama-gguf).