Skip to main content

crispasr

Python bindings for CrispASR — lightweight on-device speech recognition via ggml.

Supports the ASR backends compiled into the linked CrispASR library, including Whisper, Qwen3-ASR, FastConformer, Canary, Parakeet, Cohere, Granite-Speech, Voxtral, wav2vec2, GLM-ASR, Kyutai-STT, Moonshine, FireRed, OmniASR, and VibeVoice-ASR.

Install

pip install crispasr

Platform wheels bundle the native libcrispasr — nothing else to install — for Linux (x86_64, arm64), macOS (Apple Silicon, Metal-accelerated), and Windows (x86_64).

GPU wheels

CUDA and Vulkan builds are published to a separate index (llama-cpp-python style — pass --extra-index-url):

# NVIDIA CUDA (Linux + Windows)
pip install crispasr --extra-index-url https://crispstrobe.github.io/CrispASR/whl/cuda/
# Vulkan (Windows)
pip install crispasr --extra-index-url https://crispstrobe.github.io/CrispASR/whl/vulkan/

Other platforms / bring-your-own library

Where no prebuilt wheel matches, pip installs the pure-Python sdist, which loads a libcrispasr you supply. Build/install it from source and, if it lands in a non-standard location, point CRISPASR_LIB_PATH at the file:

git clone https://github.com/CrispStrobe/CrispASR
cd CrispASR && cmake -B build && cmake --build build -j && sudo cmake --install build
export CRISPASR_LIB_PATH=/usr/local/lib/libcrispasr.so   # only if non-standard

Quick start

from crispasr import CrispASR

model = CrispASR("ggml-base.en.bin")
for seg in model.transcribe("audio.wav"):
    print(f"[{seg.start:.1f}s - {seg.end:.1f}s] {seg.text}")
model.close()

Or use the unified Session API for non-Whisper backends (Qwen3-ASR, FastConformer, Parakeet, …):

from crispasr import Session

s = Session("qwen3-asr-0.6b-q4_k.gguf")
for seg in s.transcribe_pcm(pcm_f32, sample_rate=16000):
    print(seg.text)

API

  • CrispASR — Whisper-compatible high-level API
  • Session — unified API across all backends compiled into libcrispasr
  • align_words(...) — word-level CTC alignment
  • diarize_segments(...) — speaker diarization (energy / xcorr / vad-turns / pyannote)
  • SpeakerEmbedder(spec) — pluggable embedder ("auto"/"titanet", "indextts"/"ecapa", or a .gguf path)
  • PyannoteCache(pcm, model) — pre-computed pyannote-seg posteriors for cross-slice consistency
  • agglomerative_cluster(embeddings, ...) — single-linkage cosine clustering for globally stable speaker IDs
  • TitaNet / SpeakerDB — standalone speaker verification + closed-roster profile matching (consent-gated; requires expected_names + consent=True, see docs/diarization-speakers.md)
  • detect_language_pcm(...) — language ID
  • registry_lookup(...) — auto-download known models from the model hub
  • registry_default_bundle(...) — enumerate the exact primary, companion, and extra files used by -m auto, including licence-acceptance policy

See the main repo for full documentation, model registry, and CLI.

License

MIT — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

crispasr-0.8.28.tar.gz (43.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

crispasr-0.8.28-py3-none-win_amd64.whl (12.6 MB view details)

Uploaded Python 3Windows x86-64

crispasr-0.8.28-py3-none-manylinux_2_28_x86_64.whl (47.0 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

crispasr-0.8.28-py3-none-manylinux_2_28_aarch64.whl (40.0 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

crispasr-0.8.28-py3-none-macosx_11_0_arm64.whl (27.3 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file crispasr-0.8.28.tar.gz.

File metadata

  • Download URL: crispasr-0.8.28.tar.gz
  • Upload date:
  • Size: 43.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for crispasr-0.8.28.tar.gz
Algorithm Hash digest
SHA256 e9ecdb66e56733305e3f709fa0fe80a0d221bfadc23daab8dd2080b204995426
MD5 2ab127d9bc31ccc4a7916a690ea5cc0b
BLAKE2b-256 8e24a7b618fd4d31f6aec3eda38ee073848236d5a706342e576d546e081a47e0

See more details on using hashes here.

File details

Details for the file crispasr-0.8.28-py3-none-win_amd64.whl.

File metadata

  • Download URL: crispasr-0.8.28-py3-none-win_amd64.whl
  • Upload date:
  • Size: 12.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for crispasr-0.8.28-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 d2309b63b1f9381959e4200fab80609e0dd465bea9ed13d9110a0cad4ae95e78
MD5 a325346ac94d6b0912d6296a761ce29c
BLAKE2b-256 ec2b4c1acd0052b734de5c9c7b73c942711123503be58cfb1f7db9d778da38f0

See more details on using hashes here.

File details

Details for the file crispasr-0.8.28-py3-none-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for crispasr-0.8.28-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 588fa57f6f0c1f38be16abdf9c03e0f158088f7aa4602032abf6fc677707ceb9
MD5 ecfe6de5f3caa930b841bbe162f698a2
BLAKE2b-256 774dc07a836c953c7086f72be42974ad8d2673f1fe255fbc6098481998b582af

See more details on using hashes here.

File details

Details for the file crispasr-0.8.28-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for crispasr-0.8.28-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8f2f6d87d032a30e3864e04a66ded53716f46c90024e13f034270b9e4f21b1b1
MD5 cab23c47f49fe940981d386d4c677606
BLAKE2b-256 d340dd8b40096fc99c7e930c46dd2dff894aa0fed3ad6d852d05a7d3166e2999

See more details on using hashes here.

File details

Details for the file crispasr-0.8.28-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for crispasr-0.8.28-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 abdfe3e4033c27bc7dbd1ee9e73e754fb13a6f338caded7fa2849393f046f1f2
MD5 6f2fcd14ab74052683142ad16759c061
BLAKE2b-256 847daf0b1573f8e18b25c44ad8eaf81cb402b39ca5f2af80ff82e4fff52ceb2b

See more details on using hashes here.

Release history Release notifications | RSS feed

0.8.32

5 files

0.8.31

5 files

0.8.30

5 files

0.8.29

5 files

This release

0.8.28 This release

5 files

0.8.27

5 files

0.8.25

5 files

0.8.24

5 files

0.8.23

2 files

0.8.22

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page