Qwen3-TTS Tokenizer 12Hz — GGUF (CrispASR)
GGUF / ggml conversions of
Qwen/Qwen3-TTS-Tokenizer-12Hz for use with the
qwen3-tts backend in
CrispStrobe/CrispASR.
Qwen3-TTS-Tokenizer-12Hz is the separate speech tokenizer / codec used by the Qwen3-TTS family:
- 10 supported languages:
zh en ja ko de fr ru pt es it
- 12.5 Hz, 16-codebook speech representation
- used for reference-audio encoding, voice-pack baking, and final waveform decode
- Apache-2.0 licence
This repo contains the
tokenizer / codec only. Use it together with the talker GGUF from
cstr/qwen3-tts-0.6b-base-GGUF.
Files
| File | Size | Notes |
|---|
qwen3-tts-tokenizer-12hz.gguf | 342 MB | F16 |
qwen3-tts-tokenizer-12hz-q8_0.gguf | 277 MB | Q8_0 codec quant |
Quick Start
1./build/bin/crispasr \
2 --backend qwen3-tts \
3 -m qwen3-tts-12hz-0.6b-base.gguf \
4 --codec-model qwen3-tts-tokenizer-12hz.gguf \
5 --voice clone.wav \
6 --ref-text "Exact transcript of clone.wav" \
7 --tts "Hello there" \
8 --tts-output hello.wav
The tokenizer GGUF is used for:
- encoding reference audio into
ref_code
- baking / loading voice-pack GGUFs
- decoding generated codes back into 24 kHz mono WAV
Quantisation Notes
Current CrispASR validation status:
qwen3-tts-tokenizer-12hz.gguf
qwen3-tts-tokenizer-12hz-q8_0.gguf
- usable, but numerically less faithful than the F16 codec in strict diff tests
For best fidelity, keep the tokenizer / codec at F16 even when quantising the talker. In current CrispASR testing, codec quantisation drifts earlier in the codec-encoder path than talker-only quantisation.
This repo may also publish lower-bit talker variants in the companion talker
repo. If you use them, the safest pairing is still:
- quantised talker
qwen3-tts-tokenizer-12hz.gguf kept at F16
In other words: if you must choose where to keep precision, keep it in the
tokenizer / codec first.
How this was made
- The upstream tokenizer / codec checkpoint was converted to GGUF F16 by
models/convert-qwen3-tts-tokenizer-to-gguf.py.
- Quantised variants are produced with CrispASR's GGUF quantiser.
- Encode / decode inference is implemented in
src/qwen3_tts.cpp, sharing the same runtime as the qwen3-tts talker backend.
Reference implementation
Architecture and behaviour were checked against the official Qwen release:
- upstream tokenizer model card:
Qwen/Qwen3-TTS-Tokenizer-12Hz
- upstream repository:
QwenLM/Qwen3-TTS
- technical report:
Qwen3-TTS Technical Report
Related
License
Apache-2.0, inherited from the base model.
Provenance and EU AI Act Art. 53 note
- Upstream model: Qwen/Qwen3-TTS-Tokenizer-12Hz — published by
Qwen.
- Upstream licence:
apache-2.0. This repository redistributes under the same terms; it grants no rights the upstream licence does not.
- What was done here: format conversion and/or quantisation only (GGUF/GGML). No training, no fine-tuning, no merging, no distillation, no change to architecture, vocabulary or capability. Only the numeric representation of the upstream weights differs.
- Training data: documented — where it is documented at all — by the upstream provider; see the upstream model card. No training data was used, added or selected by this repository. No training-content summary was found on the upstream model card at the time of writing; that documentation gap is upstream's and is not filled here.
- Provider status: under Regulation (EU) 2024/1689 the upstream authors remain the provider of this model. Converting the serialisation format does not make this repository the provider of a new general-purpose AI model, and no such claim is made. Questions about training content, copyright policy or model capability belong upstream.