Skip to content
ModelListedExternal
Download

Moss Transcribe Diarize Zhtw GGUF

Status (2026-07-23): this repo serves a purification-first pipeline — the base OpenMOSS-Team/MOSS-Transcribe-Diarize (0.9B, Whisper-medium encoder + Qwen3-0.6B decoder, Apache-2.0), not fine-tuned, ported to C++/ggml...

KindOtherBase modelOpenMOSS-Team/MOSS-Transcribe-DiarizeVersionRevision 3ee3982Bgrade

Model source

Kind
Other
File size
13.6 MB–3.39 GB
Base model
OpenMOSS-Team/MOSS-Transcribe-Diarize
Version
vRevision 3ee3982
Updated
Oct 26, 2026
Downloads
272
Source
Hugging Face

Source description

MOSS-Transcribe-Diarize GGUF weights

Status (2026-07-23): this repo serves a purification-first pipeline — the base OpenMOSS-Team/MOSS-Transcribe-Diarize (0.9B, Whisper-medium encoder + Qwen3-0.6B decoder, Apache-2.0), not fine-tuned, ported to C++/ggml and byte-verified against the genuine PyTorch reference before any optimization. Full writeup: vieenrose/distil-vibevoice-asr.

Files

filerole
moss-transcribe-base-q4mix-v2.ggufdeployed weights (759 MB) — mixed q4: every encoder/adaptor/decoder linear at Q4_K, token_embd at f16, norms/biases f32. Decoder tensors come from a silence-robust QAT checkpoint (see below); encoder/adaptor/token_embd are numerically identical to the plain base conversion
moss-transcribe-base-q8mix.ggufhigher-fidelity option (1.55 GB) — token_embd + full Qwen3 decoder at f16 (both measured Q8_0-collapse-sensitive), encoder + adaptor Q8_0. No silence QAT: its behavior on fully silent input has not been validated the way v2 has
moss-transcribe-base-f32.ggufthe byte-identity GATE reference (3.64 GB) — converted from the official checkpoint, f32, no fine-tuning
campplus.ggufCAM++ speaker embedding model, used for cross-window speaker linking in the demo

Why q4mix-v2 (silence robustness)

At f32 the model's EOS-on-silence decision has a thin margin (~+1.35 logits vs 15–17 on speech), so any q4 quantization noise could flip it: the previous q4mix free-ran marker loops ([0.00][S01][0.06]...) to the token budget on silent / unvoiced / near-silent audio. v2 fixes this in the weights — a minimal-perturbation QAT that trains only the silence decision class (silence negatives, garbage-recovery prefixes, quiet-lead-in patience composites, attenuated quiet-speech positives) with an L2 trust region to the base weights. Release validation vs the previous q4mix, identical harness:

  • silent input → empty transcript in seconds (this is the correct no-speech result, not an error);
  • zh 5-min golden agreement 89.3 → 96.7;
  • 5-meeting WER and speaker accuracy statistically unchanged;
  • quiet-speech sensitivity preserved (−40 dB attenuated speech still transcribed);
  • en single-pass golden −1.5 pt (97.2 vs 98.7) is the one known cost.

Engine and usage

Engine: vieenrose/RapidSpeech.cpp branch moss-pure, vendoring localai-org/moss-transcribe.cpp (MIT) unmodified. Live demo: Luigi/moss-transcribe-diarize-cpp.

Recommended flags: MT_KV_F16=1 MT_KV_EVICT_S=45 (near-lossless, large decode speedup on long audio). Integration details: integration note.

Removed files (2026-07-23)

The abandoned fine-tuned zh-TW lineage (moss-td-zhtw-v5kl...v71-*), the early base conversions (moss-td-base-*), the silence-fragile q4mix v1, and the unused campplus-cn-common.gguf were deleted from the tip of this repo. The fine-tuned line was measured to be over-specialised to its training domain and structurally fragile relative to the base model (structural-token logit margin 0.98 vs the base's 4.90 — quantization noise could flip marker decisions), which is why the project pivoted to the purified base. All removed files remain downloadable from this repo's git history (Files → History → pick a pre-2026-07-23 revision).

Sources

1 source
Hugging FacePrimaryVersion 3ee3982ce6d1a4915cd5ca773dd36be2f0d75957
huggingface.co/Luigi/moss-transcribe-diarize-zhtw-gguf/tree/3ee3982ce6d1a4915cd5ca773dd36be2f0d75957

Verified Oct 26

Model artifacts

4 artifacts

campplus.gguf

gguf · 13.6 MB · SHA-256 c49e5e80128c…d564 · Hugging Face

Download

moss-transcribe-base-f32.gguf

gguf · 3.39 GB · SHA-256 08c16625f5b0…f117 · Hugging Face

Download

moss-transcribe-base-q4mix-v2.gguf

gguf · 724 MB · SHA-256 e78bb1427fb7…8eb2 · Hugging Face

Download

moss-transcribe-base-q8mix.gguf

gguf · 1.44 GB · SHA-256 e6ce1ffe8ece…87a7 · Hugging Face

Download

Source excerpts

3 excerpts

--- license: apache-2.0 base_model: OpenMOSS-Team/MOSS-Transcribe-Diarize language: - zh - en tags: - automatic-speech-recognition - speaker-diarization - timestamps - zh-tw - traditional-chinese - ggml - gguf - rapidspeech - on-device pipeline_tag: automatic-speech-recognition --- # MOSS-Transcribe-Diarize GGUF weights Status (2026-07-23): this repo serves a **purification-first** pipeline — the base [OpenMOSS-Team/MOSS-Transcribe-Diarize](https://huggingface.co/OpenMOSS-Team/MOSS-Transcribe-Diarize) (0.9B, Whisper-medium encoder + Qwen3-0.6B decoder, Apache-2.0), **not fine-tuned**, ported to C++/ggml and byte-verified against the genuine PyTorch reference before any optimization. Full writeup: [`vieenrose/distil-vibevoice-asr`](https://github.com/vieenrose/distil-vibevoice-asr#readme). ## Files | file | role | |---|---| | `moss-transcribe-base-q4mix-v2.gguf` | **deployed weights** (759 MB) — mixed q4: every encoder/adaptor/decoder linear at Q4_K, `token_embd` at f16, norms/biases f32. Decoder tensors come from a **silence-robust QAT** checkpoint (see below); encoder/adaptor/`token_embd` are numerically identical to the plain base conversion | | `moss-transcribe-base-q8mix.gguf` | higher-fidelity option (1.55 GB) — `token_embd` + full Qwen3 decoder at f16 (both measured Q8_0-collapse-sensitive), encoder + adaptor Q8_0. **No silence QAT**: its behavior on fully silent input has not been validated the way v2 has | | `moss-transcribe-base-f32.gguf` | the byte-identity GATE reference (3.64 GB) — converted from the official checkpoint, f32, no fine-tuning | | `campplus.gguf` | CAM++ speaker embedding model, used for cross-window speaker linking in the demo | ## Why q4mix-v2 (silence robustness) At f32 the model's EOS-on-silence decision has a thin margin (~+1.35 logits vs 15–17 on speech), so *any* q4 quantization noise could flip it: the previous q4mix free-ran marker loops (`[0.00][S01][0.06]…`) to the token budget on silent / unvoiced / near-silent audio. v2 fixes this **in the weights** — a minimal-perturbation QAT that trains only the silence decision class (silence negatives, garbage-recovery prefixes, quiet-lead-in patience composites, attenuated quiet-speech positives) with an L2 trust region to the base weights. Release validation vs the previous q4mix, identical harness: - silent input → **empty transcript in seconds** (this is the correct...

--- license: apache-2.0 base_model: Luigi/moss-transcribe-diarize-zhtw language: - zh - en tags: - automatic-speech-recognition - speaker-diarization - timestamps - zh-tw - traditional-chinese - ggml - gguf - rapidspeech - wasm - on-device pipeline_tag: automatic-speech-recognition --- ## What's different vs. the original MOSS-Transcribe-Diarize? Same architecture, very different deployment envelope. This project **fine-tunes** (not prunes) [OpenMOSS-Team/MOSS-Transcribe-Diarize](https://huggingface.co/OpenMOSS-Team/MOSS-Transcribe-Diarize) — Whisper-medium encoder + Qwen3-0.6B decoder, 0.9B params, single-pass `[start][Sxx]text[end]` output, Apache-2.0 — and re-engineers everything around it: | | Original MOSS-TD 0.9B | This project (v7 lineage) | |---|---|---| | **Architecture / license** | Whisper-medium enc + Qwen3-0.6B dec · Apache-2.0 | identical (fine-tuned, nothing pruned) | | **Language & script** | general Mandarin, Simplified-leaning output | **Traditional Chinese (Taiwan)** enforced end-to-end + zh-TW/EN code-switch; conservative ITN | | **Domain** | general speech | real meetings: ~3 000 synthetic zh-TW meetings (TTS) + 55.8 h 立法院 IVOD with fused whisperX×pyannote labels (speaker-purity filtered) | | **Held-out zh-TW meeting MER** | 0.395* | **~0.18** (*script-normalized; part of the base gap is Simplified↔Traditional) | | **Long-meeting diarization (123 min)** | DER 0.74 | **DER 0.195 · consistency 0.905** (cross-window CAM++ linking v2: tag-pooled units + cannot-link clustering — 2 h meeting 24→10 speakers) | | **Diarization under fine-tuning** | n/a (base) | defended: 8× speaker-tag CE + KL-anchor to base at `[Sxx]` positions — FT rounds no longer collapse speakers | | **Code-switch regression (ASCEND)** | reference | v5 0.417 → v6 0.285 → v6.1 0.267 (fp16); **v7 q4-GGUF 0.317 vs v6.1-q4 0.352** | | **Long-audio decoding** | full attention, KV grows O(audio) | **streaming fine-tune: bounded 45 s audio-KV window** (monotonic eviction) — flat memory, ~20 % faster decode, DER parity via linking | | **Decode robustness** | — | engine guards: tick-stall loop breaker, advancing-clock cycle detector, slow-cycle collapse, speech-aware premature-EOS suppression, eviction-sized KV + capacity guard, per-window watchdog + recovery | | **Quantization** | bf16 release | diarization-defended **q4 QAT** → q4_K_M GGUF (707 MB) · int8 ONNX (ternary/q3 and...

Source context: 272 downloads · 1 likes · Pipeline automatic-speech-recognition · Repo Luigi/moss-transcribe-diarize-zhtw-gguf