bearcove/zipa-large-crctc-ns-no-diacritics-780k-tq4
ZIPA Large CR-CTC NS No-Diacritics 780k — TurboQuant TQ4 (native Metal)
A TurboQuant TQ4 bundle of the ZIPA-large (Zipformer, audio→IPA CTC) model, built for native-Metal inference in the Bee streaming ASR app. It is the audio→IPA phonemizer behind Bee's live hotword correction.
What this is
- Base model: `anyspeech/zipa-large-crctc-ns-no-diacritics-780k` (300M params, Zipformer CR-CTC non-streaming, no diacritics).
- Quantization: TurboQuant TQ4_1S — 4-bit, 32-value blocks with a Randomized Hadamard Transform front-end, dual half-block fp16 scales, and Lloyd-Max-optimal Gaussian centroids. The 410 Linear weights are quantized; convs / norms / biases / bypass scales /
linear_posstay f32. - Runtime: consumed by
helix-metal'szipa_metal::ZipaModel— the quantized weights stay TQ4-resident in Metal (no dequant), and the split<name>.scales/<name>.qstensors are 16 KiB page-aligned so they're aliased zero-copy from the mmap vianewBufferWithBytesNoCopy. - Size: ~204 MB (≈180 MB data + page-alignment padding). On-disk == resident.
Layout
model.safetensors bundle tensors + embedded `turboquant.index` (header metadata):
<name>.scales / <name>.qs (u8, split TQ4 blocks) per Linear
conv2d (OHWI) / norms / biases / bypass / downsample (f32)
tokens.txt CTC phone vocabulary (id → IPA unit)
config.json architecture + quantization metadataQuality
Validated against the upstream fp32 ONNX oracle (feeding identical fbank into both), greedy phone-sequence metric (what the hotword matcher consumes):
TQ4 reproduces the oracle's greedy phone sequence exactly on the validation utterance — quantization is effectively transparent for this model.
Provenance
Produced by hx zipa-pack --format tq4 from the upstream averaged checkpoint. This is a Bee model bundle; the artifact layout is project-specific to Bee. Licensed MIT, matching the sibling `bearcove/zipa-small-crctc-ns-no-diacritics-700k-mlx-q8` (same upstream ZIPA repository license).
