Skip to content

Latest commit

 

History

History
46 lines (36 loc) · 2.4 KB

File metadata and controls

46 lines (36 loc) · 2.4 KB

Voxtral (2507)

Mistral's Voxtral offline audio-LLMs ported to transcribe.cpp. Each is a Whisper-large-v3 bidirectional audio encoder (32 layers, d_model=1280) feeding a 4-frame-group projector (375 audio tokens per 30 s chunk) into a Mistral/Ministral causal LM via audio-token injection at audio_token_id=24. Both variants share that encoder, projector, log-mel frontend, and tekken tokenizer — they differ only in the text decoder.

Offline speech-to-text and speech-to-text translation from a 16 kHz mono WAV, via greedy decoding. Auto language detection or an explicit --language hint (English, French, German, Spanish, Italian, Portuguese, Dutch, Hindi). Licensed Apache-2.0.

For Mistral's streaming sibling, see Voxtral Realtime.

Variants

Variant Text decoder BF16 WER (test-clean) Card GGUF
voxtral-mini-3b-2507 Ministral-3B (30L, d=3072) 1.88% card HF
voxtral-small-24b-2507 Mistral-Small-24B (40L, d=5120) 1.56% card HF

WER on the full LibriSpeech test-clean split (2620 utterances), Whisper English normalizer. Both match the HuggingFace transformers reference within rounding (3B 1.87%, 24B 1.57%). See each variant's card for the full quant matrix, per-quant WER, and quick-start commands.

Input limits

Both variants accept up to about 2.9 hours of 16 kHz mono audio in a single call — the 131,072-token decoder context is the binding limit. That ceiling bounds memory and is far longer than any normal clip; audio past it is rejected up front with TRANSCRIBE_ERR_INPUT_TOO_LONG rather than silently truncated. Lowering --n-ctx lowers the limit, and transcribe_session_get_limits() reports the exact per-session value. See the input-length contract.

Notes