cstr/reazonspeech-nemo-v2-GGUF
ReazonSpeech NeMo v2 (Japanese) — GGUF
GGUF / ggml conversions of `reazon-research/reazonspeech-nemo-v2` for use with the crispasr CLI from [CrispStrobe/CrispASR](https://github.com/CrispStrobe/CrispASR).
A 619 M-parameter Japanese ASR model trained on the ReazonSpeech v2.0 corpus (~35,000 hours of Japanese audio):
- FastConformer-RNNT — pure RNN-Transducer decoder (no TDT duration head).
- Local relative-position attention (window 128 + 128, plus 1 global token), so the encoder scales to long audio without quadratic blow-up.
- 80-mel front-end, 16 kHz mono, 3000-token SentencePiece vocabulary.
- Apache-2.0 licence.
Files
Q8_0 is the recommended general-purpose quant; use F16 when you want the closest match to the official NeMo Python pipeline.
Quick start
# 1. Build the runtime
git clone https://github.com/CrispStrobe/CrispASR
cd CrispASR
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j$(nproc) --target crispasr
# 2. Download the Q8_0 (default) — or swap the filename for the F16 / Q4_K
huggingface-cli download cstr/reazonspeech-nemo-v2-GGUF \
reazonspeech-nemo-v2-q8_0.gguf --local-dir .
# 3. Transcribe a 16 kHz mono WAV
./build/bin/crispasr --backend parakeet \
-m reazonspeech-nemo-v2-q8_0.gguf -f your-japanese-audio.wav -t 8crispasr can also fetch the model for you by its registry name:
./build/bin/crispasr --backend parakeet -m reazonspeech \
--auto-download -f your-japanese-audio.wav(Both this RNNT model and the sibling `cstr/parakeet-ctc-1.1b-ja-GGUF` run through crispasr's parakeet backend — the runtime selects the RNNT vs. CTC decode path from the GGUF metadata.)
Long-form audio
The local-attention encoder handles long inputs, but as with the other Japanese FastConformer models a single long pass can drift; for clips longer than ~15 s prefer VAD-bounded chunking:
./build/bin/crispasr --backend parakeet -m reazonspeech-nemo-v2-q8_0.gguf \
-f long-japanese-audio.wav --vad -t 8Model architecture
How this was made
- The
.nemocheckpoint from `reazon-research/reazonspeech-nemo-v2` is unpacked; architecture hyperparameters (dmodel, layers, local-attn window, predictor/joint dims, vocab) are read from `modelconfig.yaml` and cross-checked against the tensor shapes. The mel filterbank and Hann window are baked into the GGUF so the runtime reproduces NeMo's front-end. - NeMo state-dict keys are remapped to ggml-friendly names — matmul tensors as F16, norms / biases / mel filterbank as F32 — and the F16 GGUF is quantised to Q80 and Q4K.
- Inference runs through
src/parakeet.{h,cpp}in CrispASR, which handles the local relative-position attention and the RNNT predictor/joint loop.
Licence
Apache-2.0, inherited from `reazon-research/reazonspeech-nemo-v2`. Please also see the ReazonSpeech project for details on the training corpus.
