GGUF conversions of SaruLab Sidon v0.1, a multilingual
speech-restoration model that removes noise and reverberation and restores speech bandwidth (16 kHz in → 48 kHz out).
Packaged for native, no-PyTorch inference with CrispASR.
The model is the first eight layers of w2v-BERT 2.0 with the Sidon LoRA adapter merged, followed by Sidon's continuous
DAC decoder. The SeamlessM4T log-mel window and filter bank are embedded in the GGUF. Port by
@KevinAHM (CrispASR PR #283); this repo adds the quantization ladder.
Files
File
Precision
Size
Notes
sidon-v0.1-f16.gguf
FP16 weights, FP32 norms/biases
470 MiB
Reference. Byte-identical to KevinAHM/Sidon-GGUF.
sidon-v0.1-q8_0.gguf
Q8_0 predictor matmuls
320 MiB
Highest-fidelity quant.
sidon-v0.1-q6_k.gguf
Q6_K predictor matmuls
281 MiB
Balanced.
sidon-v0.1-q4_k.gguf
Q4_K predictor matmuls
240 MiB
Smallest. Intelligible, but see fidelity note.
Only the w2v-BERT predictor's large linear weights are quantized; the DAC decoder convolutions and all
norms/biases/Snake alpha parameters are kept at their original precision.
Fidelity
Validated by ASR round-trip (Whisper base.en) on the restored output — the metric that matters for a
restoration model, since output-waveform correlation understates perceptual quality:
Quant
ASR round-trip (JFK clip)
Output-waveform corr. vs F16
F16
WER 0 (exact transcript)
1.000
Q8_0
WER 0
r ≈ 0.99, SNR ≈ 16 dB
Q4_K
WER 0
r ≈ 0.61, SNR ≈ 1 dB
All quants restore fully intelligible speech (WER 0). Q4_K's low waveform correlation means its fine restored
detail diverges from F16 even though intelligibility is preserved; prefer Q8_0 or Q6_K when output fidelity to
the reference matters, and Q4_K when size is the priority.
Validation against the original model
The GGUF port was checked against the upstream SaruLab TorchScript modules
(feature_extractor_cpu.pt + decoder_cpu.pt) on the JFK clip:
Stage
Metric
Result
Predictor handoff (w2v-BERT)
cosine, our F16 vs upstream F32
0.998
End-to-end 48 kHz output
Pearson r
0.945
ASR round-trip (Whisper base.en)
transcription
identical
The predictor reproduces the original almost exactly (0.998); the end-to-end
drop to 0.945 is the continuous-DAC decoder amplifying F16 weight-rounding
through its Snake activations, not a port error — the restored speech is
functionally identical (same transcription). The reference intermediates used
for this check are published here as sidon-ref.gguf (input_16k,
predictor_feats, output_48k) with sidon-ref-48k.wav; regenerate with
tools/reference_backends/sidon_ref_dump.py and re-run our side with
CRISPASR_SIDON_DUMP_HANDOFF=<path>.
CrispASR auto-detects the sidon architecture from GGUF metadata. The S2S interface processes a complete clip and
returns a complete restored clip (not streaming). GPU: --gpu-backend cuda / --gpu-backend vulkan.
Long inputs: the predictor uses O(T²) self-attention (~50 feature frames/sec). Inputs are capped at ~60 s
(3000 frames) by default and fail cleanly past that; raise CRISPASR_SIDON_MAX_FRAMES if you have the memory.