Phonon refiner 1.7B: DFlash2 drafter

A small speculative-decoding drafter for Phonon refiner 1.7B, the transcript-correction model in Phonon. The drafter guesses the refiner's next 7 tokens in one pass, and the refiner checks all of them in one forward pass. With greedy verification the output is what the refiner produces alone, except where two tokens are within floating-point noise of each other, because the batched check rounds differently from one-token decoding. On Phonon's engine (M4 Max) 300 of 300 synthetic rows (two runs) and 579 of 580 real dictations came out identical to decoding without the drafter.

The same file ships inside the refiner repository, which is what the Phonon app downloads. This repository exists so the drafter has its own card; you do not need both.

File Bytes md5
phonon-refiner-1.7b-dflash2-drafter.gguf (Q8_0) 257,073,856 e8cf3293bd35be5e3d573d5a43a9256f
LICENSE, NOTICE

Architecture

DFlash2, Phonon's extension of DFlash block drafting:

  • 3 transformer layers, FFN width 4096, hidden size 2048 (the refiner's), 32 attention heads of 64 with 8 KV heads, conditioned on the refiner's layer inputs from 5 of its 24 layers;
  • a 16k-token draft vocabulary drawn from the refiner's 128k: a token outside it is never drafted, which costs speed and never changes the output;
  • 7 drafted tokens per step (a block of 8 with the last verified token).

Training

Every target is the refiner's own greedy output, so the drafter learns to predict this exact model. The inputs:

  • the refiner's 78,056 public training prompts (Parakeet transcripts of public YouTube audio, term-repair rows, hard negatives; see the refiner's card);
  • 90,000 rows derived from ShareGPT conversations (ShareGPT_V3_unfiltered_cleaned_split, listed as Apache-2.0), turned into dictation-like text with synthetic recognition noise and vocabulary lines.

The drafter starts from a public drafter trained the same way against stock LFM3-1.7B and is fine-tuned for 1 epoch on these 167,056 rows. Training used SpecForge (MIT) draft modules and objective. No personal dictations and no evaluation sets were used; a leak check against every evaluation set found no overlap.

Speed

Tokens accepted per refiner forward pass (greedy, 7 drafted tokens, held-out public rows, CUDA, batch 1): 5.36 on 300 ShareGPT-derived rows and 6.12 on 300 public YouTube rows. The drafter it was fine-tuned from, aligned to stock LFM3-1.7B, gets 4.88 and 5.55 on the same rows with the same target, so alignment adds +0.48 [+0.41, +0.56] and +0.57 [+0.51, +0.63] (paired bootstrap 95%). Acceptance by draft position: 0.90, 0.84, 0.78, 0.72, 0.66, 0.61, 0.56.

On Phonon's engine (M4 Max, the refiner's Q4_K_S GGUF, prefix cache), 300 short synthetic requests (mean 15 output tokens) took 77 ms median and 112 ms at p90 with the drafter, against 110 / 145 ms without it (two runs each, spread under 1 ms on the mean), at 5.0 tokens per refiner pass. 580 real dictations (mean 81 output tokens) took 120-133 ms median and 373-393 ms at p90 at 6.0 tokens per pass (two runs). The stock-aligned drafter it started from got 5.3 tokens per pass and 401-404 ms at p90 on the same rows.

Running it

The GGUF layout is read by Phonon's native engine (pe, drafter kind dflash2n, source in the Phonon repository under engine/) and by llama.cpp with Phonon's patch (third_party/llama.cpp/phonon-engine.patch, --spec-type draft-dflash -md <this file> --spec-draft-n-max 7). Stock llama.cpp does not load it.

License

A derivative of LFM3-1.7B through the refiner it was trained on, distributed under the LFM Open License v1.0. Commercial use is licensed only to organizations under 10 million US dollars in annual revenue. See NOTICE.

Downloads last month
162
GGUF
Model size
0.2B params
Architecture
dflash
Hardware compatibility
Log In to add your hardware

We're not able to determine the quantization variants.

Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for Infatoshi/phonon-refiner-1.7b-drafter

Quantized
(1)
this model