reazonspeech-nemo-v2 GGUF for speech.cpp
These files run only in speech.cpp 0.7.0 or later, and the Q8_0, Q6_K, Q5_K and Q4_K files in 0.8.0 or later. Their layout is speech.cpp's own, so llama.cpp, LM Studio, Ollama and other programs that read GGUF cannot run them.
It holds reazon-research's reazonspeech-nemo-v2, a FastConformer recognizer of Japanese with local attention, in one file. It writes Japanese with punctuation, with NeMo's beam search by default or greedily on request, and takes recordings of many minutes whole.
Use
Install speech.cpp (install), then:
speech asr reazonspeech-v2 utterance.wav
speech asr reazonspeech-v2:q8_0 --decoding greedy utterance.wav
speech asr reazonspeech-v2 --vad silero-vad meeting.wav
speech serve reazonspeech-v2 --open
reazonspeech-v2 is the name speech.cpp gives this model; speech fetches the Q8_0 file (the F16 file in speech.cpp 0.8.3 and earlier) from this repository the first time, and reazonspeech-v2:q4_k or another type of the table below fetches that type instead. A path to a downloaded file works as well. The options, the worker and the HTTP API are in speech.cpp's documentation: FastConformer, command line and server.
Files
| File | Contents | Size | speech.cpp from | SHA-256 |
|---|---|---|---|---|
reazonspeech-nemo-619M-v2-F16.gguf |
the frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers, the LSTM and the token embedding in F16 | 1.24 GB (1,240,465,696 bytes) | 0.7.0 | 1492147d7d18fbb0503db2cbbb05df4932cb3451e391524c6a2411632e4823bf |
reazonspeech-nemo-619M-v2-Q8_0.gguf (the file the name fetches) |
the frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers, the LSTM and the token embedding in Q8_0 | 0.66 GB (660,910,656 bytes) | 0.8.0 | 944411cb740938f858c939aa1d42f7eb4bb884fc350d9daae8b7e724853e54a3 |
reazonspeech-nemo-619M-v2-Q6_K.gguf |
the frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers, the LSTM and the token embedding in Q6_K | 0.51 GB (513,808,960 bytes) | 0.8.0 | 05e02062233afc6aeb8228624050d93e124b0f8b02185ee6c8923d28c8dac13c |
reazonspeech-nemo-619M-v2-Q5_K.gguf |
the frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers, the LSTM and the token embedding in Q5_K | 0.43 GB (433,140,288 bytes) | 0.8.0 | a5d2518d263c36802f2aa8caf87952fdcc22e7c557e1891bacf15ceb8d72fece |
reazonspeech-nemo-619M-v2-Q4_K.gguf |
the frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers, the LSTM and the token embedding in Q4_K | 0.36 GB (357,216,832 bytes) | 0.8.0 | d761f6b65572a0ec46db04f3f9cc829d25084608bcdcb86bc2aae4b95e4bb4c9 |
reazonspeech-nemo-619M-v2-F16.gguf.json |
the output of speech info --json for the F16 file |
795 bytes | a9dc911cbc77d89b3ee95a90595341d15f3664e4e2898f591a0c9be624838b90 |
|
reazonspeech-nemo-619M-v2-Q8_0.gguf.json |
the output of speech info --json for the Q8_0 file |
794 bytes | 1c4445b7197b38744884e6405607d7de8706f3a3935ae8b1cdeeff88f2f2ff5a |
|
reazonspeech-nemo-619M-v2-Q6_K.gguf.json |
the output of speech info --json for the Q6_K file |
794 bytes | 8bdf2792c3ed29d94bc9c08de24299e3542a8259a96b2989461962a6141e06b6 |
|
reazonspeech-nemo-619M-v2-Q5_K.gguf.json |
the output of speech info --json for the Q5_K file |
794 bytes | b5c6a3166b8357ca1e46abc1beb5fc1f4883e32dfd68c0168c27f172e96fcd3d |
|
reazonspeech-nemo-619M-v2-Q4_K.gguf.json |
the output of speech info --json for the Q4_K file |
794 bytes | 0a1e07e12a39c77bbe3c32d004cb84310dbdb0ea2f2e55e3a58e6eefecac4cb2 |
In the Q6_K, Q5_K and Q4_K files the prediction network's and the joint's matrices, whose rows of 640 values are not whole blocks of 256, are Q8_0. A request needs the GGUF file alone; the JSON file lets a program show the model or choose a file without downloading it.
Language
The model recognizes Japanese (ja). A request's language is only checked against it.
Accuracy
Every stage is checked against NeMo's tensors on utterances of FLEURS' test split, on an Apple M5: on 8 ja_jp utterances and 2 joined inputs of 65 s and 311 s, the CPU in F32 and F16 and Metal give NeMo's text on all ten, with beam search and with greedy decoding. The times of tokens and segments are NeMo's exactly.
Each type, measured by speech-bench on 2026-10-12 on an Apple M5 with Metal, on the 4,483 utterances of Common Voice 8.0's Japanese test set, trimmed to the voice. The memory is the peak memory footprint of speech for one request.
| Type | Size | Memory | CER | CER, other spellings accepted |
|---|---|---|---|---|
| F16 | 1.24 GB | 1.38 GB | 12.02% | 7.13% |
| Q8_0 | 0.66 GB | 0.79 GB | 12.05% | 7.15% |
| Q6_K | 0.51 GB | 0.64 GB | 11.98% | 7.12% |
| Q5_K | 0.43 GB | 0.56 GB | 11.99% | 7.14% |
| Q4_K | 0.36 GB | 0.48 GB | 12.16% | 7.23% |
Speed
speech-bench on 2026-10-10: the first 100 utterances of Common Voice 8.0's Japanese test set, F16, one warm request at a time.
| Decoding | Median, M5 / RTX 2080 | p90, M5 / RTX 2080 |
|---|---|---|
| beam search | 0.085 s / 0.106 s | 0.135 s / 0.191 s |
| greedy | 0.054 s / 0.047 s | 0.079 s / 0.078 s |
Source
Converted by speech.cpp's reference/fastconformer/convert.py reazonspeech-nemo-v2, whose environment pins NeMo 3.0.0, from reazon-research/reazonspeech-nemo-v2 at 33693408be76b7cba9fd4a7546a0a8772430211b, to F32, from which speech quantize --type <type> wrote each file. Every constant the C++ reads is in the file, from the checkpoint or, where it has none, from the official code.
The other FastConformer recognizers speech.cpp runs are parakeet-tdt_ctc-0.6b-ja in sakasegawa/parakeet-tdt_ctc-0.6b-ja-GGUF and parakeet-tdt-0.6b-v3 in sakasegawa/parakeet-tdt-0.6b-v3-GGUF.
License
The weights are reazon-research's, under the Apache License 2.0, as the official checkpoint is. See reazon-research/reazonspeech-nemo-v2 for the model and its terms. These files change the format of the weights and quantize them; they do not retrain them.