| --- |
| language: |
| - en |
| - de |
| license: other |
| license_name: nyra-health-non-commercial-research |
| license_link: LICENSE.md |
| pipeline_tag: automatic-speech-recognition |
| library_name: crisperwhisper |
| tags: |
| - speech-recognition |
| - verbatim |
| - disfluency |
| - whisper |
| - ctranslate2 |
| - word-timestamps |
| - cpp |
| - ggml |
| - c++ |
| - cuda |
| - cpu |
| - arxiv:2607.18934 |
| --- |
| |
|
|
|  |
|
|
| # CrisperWhisper 2.0 GGML |
|
|
| Unofficial FP16 GGML conversions of the public CrisperWhisper 2.0 models for |
| [CrisperWhisper.cpp](https://github.com/Saganaki22/CrisperWhisper.cpp). |
|
|
| CrisperWhisper.cpp provides native C++ inference on Windows and Linux with CPU |
| and NVIDIA CUDA backends. Python is not required at runtime. |
|
|
| > This repository is an unofficial community conversion. It is not affiliated |
| > with, endorsed by, or maintained by Nyra Health or Nyra Labs. |
|
|
| ## Model files |
|
|
| | Model | GGML file | Approximate size | Original model | |
| | --- | --- | ---: | --- | |
| | Small | [`ggml-crisperwhisper-small-f16.bin`](https://huggingface.co/drbaph/CrisperWhisper2.0-GGML/resolve/main/ggml-crisperwhisper-small-f16.bin?download=true) | 488 MB | [`nyralabs/CrisperWhisper2.0_small`](https://huggingface.co/nyralabs/CrisperWhisper2.0_small) | |
| | Medium | [`ggml-crisperwhisper-medium-f16.bin`](https://huggingface.co/drbaph/CrisperWhisper2.0-GGML/resolve/main/ggml-crisperwhisper-medium-f16.bin?download=true) | 1.53 GB | [`nyralabs/CrisperWhisper2.0_medium`](https://huggingface.co/nyralabs/CrisperWhisper2.0_medium) | |
| | Turbo | [`ggml-crisperwhisper-turbo-f16.bin`](https://huggingface.co/drbaph/CrisperWhisper2.0-GGML/resolve/main/ggml-crisperwhisper-turbo-f16.bin?download=true) | 1.62 GB | [`nyralabs/CrisperWhisper2.0_turbo`](https://huggingface.co/nyralabs/CrisperWhisper2.0_turbo) | |
| | Large | [`ggml-crisperwhisper-large-f16.bin`](https://huggingface.co/drbaph/CrisperWhisper2.0-GGML/resolve/main/ggml-crisperwhisper-large-f16.bin?download=true) | 3.09 GB | [`nyralabs/CrisperWhisper2.0_large`](https://huggingface.co/nyralabs/CrisperWhisper2.0_large) | |
|
|
| These are FP16 conversions, not integer-quantized models. |
|
|
| The gated |
| [`CrisperWhisper2.0_large_pro`](https://huggingface.co/nyralabs/CrisperWhisper2.0_large_pro) |
| checkpoint is not included. Access to Large Pro requires approval and is |
| subject to its separate commercial model terms. |
|
|
| ## Native C++ runtime |
|
|
| Download the native runtime from: |
|
|
| - [CrisperWhisper.cpp on GitHub](https://github.com/Saganaki22/CrisperWhisper.cpp) |
| - [CrisperWhisper.cpp v1.1.0 release](https://github.com/Saganaki22/CrisperWhisper.cpp/releases/tag/v1.1.0) |
|
|
| Available v1.1.0 packages: |
|
|
| - Windows x64 CUDA for RTX 30, RTX 40, and RTX 50 GPUs |
| - Windows x64 portable CPU |
| - Windows x64 AVX2 CPU |
| - Linux x64 portable CPU |
| - Linux x64 AVX2 CPU |
|
|
| Linux CUDA is available as a source build. |
|
|
| Model files are downloaded separately and are not duplicated inside the |
| GitHub release archives. |
|
|
| ## Download |
|
|
| ```bash |
| hf download drbaph/CrisperWhisper2.0-GGML \ |
| ggml-crisperwhisper-small-f16.bin \ |
| --local-dir models |
| ``` |
|
|
| Replace `small` with `medium`, `turbo`, or `large` to download another model. |
|
|
| ## Windows usage |
|
|
| ```powershell |
| .\crisper-whisper.exe ` |
| --model .\models\ggml-crisperwhisper-small-f16.bin ` |
| --file .\audio.wav ` |
| --mode verbatim ` |
| --language en |
| ``` |
|
|
| Optional supervised word timestamps and JSON: |
|
|
| ```powershell |
| .\crisper-whisper.exe ` |
| --model .\models\ggml-crisperwhisper-small-f16.bin ` |
| --file .\audio.wav ` |
| --mode verbatim ` |
| --language en ` |
| --word-timestamps ` |
| --json |
| ``` |
|
|
| ## Linux usage |
|
|
| ```bash |
| ./crisper-whisper \ |
| --model ./models/ggml-crisperwhisper-small-f16.bin \ |
| --file ./audio.wav \ |
| --mode verbatim \ |
| --language en |
| ``` |
|
|
| Optional supervised word timestamps and JSON: |
|
|
| ```bash |
| ./crisper-whisper \ |
| --model ./models/ggml-crisperwhisper-small-f16.bin \ |
| --file ./audio.wav \ |
| --mode verbatim \ |
| --language en \ |
| --word-timestamps \ |
| --json |
| ``` |
|
|
| ## Audio input |
|
|
| The native CLI accepts WAV, MP3, FLAC, and Ogg Vorbis. |
|
|
| Audio is decoded, downmixed to mono, and resampled to 16 kHz automatically in |
| memory. FFmpeg and a separate preprocessing script are not required. |
|
|
| ## Transcription modes |
|
|
| Verbatim transcription preserves spoken disfluencies: |
|
|
| ```bash |
| crisper-whisper \ |
| -m models/ggml-crisperwhisper-small-f16.bin \ |
| -f audio.wav \ |
| --mode verbatim |
| ``` |
|
|
| Intended transcription produces a cleaner intended transcript: |
|
|
| ```bash |
| crisper-whisper \ |
| -m models/ggml-crisperwhisper-small-f16.bin \ |
| -f audio.wav \ |
| --mode intended |
| ``` |
|
|
| ## Word timestamps |
|
|
| Supervised cross-attention word timestamps are optional: |
|
|
| ```bash |
| crisper-whisper \ |
| -m models/ggml-crisperwhisper-small-f16.bin \ |
| -f audio.wav \ |
| --word-timestamps \ |
| --json |
| ``` |
|
|
| Without `--word-timestamps`, no alignment pass or additional timestamp model |
| context is created. |
|
|
| Normal transcription keeps GGML Flash Attention enabled. Timestamp alignment |
| uses an additional teacher-forced pass without Flash Attention because the |
| fused Flash Attention path does not expose the decoder-to-audio attention |
| matrix required for supervised alignment. |
|
|
| Long-form timestamp output includes seam ownership, duplicate-prefix removal, |
| and monotonic timestamp correction to prevent duplicated words, overlapping |
| word chunks, and invalid `start > end` timestamps at chunk boundaries. |
|
|
| ## Original project and paper |
|
|
| - [Official CrisperWhisper repository](https://github.com/nyrahealth/CrisperWhisper) |
| - [Official Small model](https://huggingface.co/nyralabs/CrisperWhisper2.0_small) |
| - [Official Medium model](https://huggingface.co/nyralabs/CrisperWhisper2.0_medium) |
| - [Official Turbo model](https://huggingface.co/nyralabs/CrisperWhisper2.0_turbo) |
| - [Official Large model](https://huggingface.co/nyralabs/CrisperWhisper2.0_large) |
| - [CrisperWhisper paper](https://arxiv.org/abs/2607.18934) |
| - [Native C++ implementation](https://github.com/Saganaki22/CrisperWhisper.cpp) |
| - [whisper.cpp](https://github.com/ggml-org/whisper.cpp) |
|
|
| ## Limitations |
|
|
| - These files are conversions of the original checkpoints, not separately |
| trained models. |
| - Small, medium, turbo, and large have different speed, memory, and accuracy |
| characteristics. |
| - FP16 files require more storage and memory than integer-quantized models. |
| - Output can differ slightly from Python/Transformers because of backend and |
| numerical implementation differences. |
| - Speculative draft-model decoding is not currently implemented. |
| - Large Pro is not included. |
|
|
| ## License |
|
|
| These conversions do not change or replace the original model license. |
|
|
| The Small, Medium, Turbo, and Large model weights in this repository remain |
| governed by the |
| [Nyra Health Non-Commercial Research License](https://huggingface.co/nyralabs/CrisperWhisper2.0_large/blob/main/LICENSE.md). |
|
|
| Review that license before downloading, using, modifying, or redistributing |
| the converted model files. These models are intended for permitted |
| non-commercial research use. |
|
|
| The original models, architecture, research, and associated intellectual |
| property belong to their respective authors and rights holders. |
|
|