NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1230 most downloaded on PyPI
Faster Whisper transcription with CTranslate2
Last release 11 months ago
31 Oct 2025
Release timing varies
gaps range from 8 days to 7 months
Nearly every release is documented
notes for 21 of 21 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
21 releases · first in 2023
One column per quarter.
only merge when clip_timestamps are not provided by @MahmoudAshraf97 in https://github.com/SYSTRAN/faster-whisper/pull/1345
clip_timestamps are not provided by @MahmoudAshraf97 in https://github.com/SYSTRAN/faster-whisper/pull/1345Full Changelog: https://github.com/SYSTRAN/faster-whisper/compare/v1.2.0...v1.2.1
clip_timestamps are not provided by @MahmoudAshraf97 in #1345Full Changelog: v1.2.0...v1.2.1
feat: allow passing specific revision to download by @felixmosh in https://github.com/SYSTRAN/faster-whisper/pull/1292
distil-large-v3.5 by @MahmoudAshraf97 in https://github.com/SYSTRAN/faster-whisper/pull/1311Full Changelog: https://github.com/SYSTRAN/faster-whisper/compare/v1.1.1...v1.2.0
distil-large-v3.5 by @MahmoudAshraf97 in #1311Full Changelog: v1.1.1...v1.2.0
Brings back original VAD parameters naming by @Purfview in https://github.com/SYSTRAN/faster-whisper/pull/1181
suppress_tokens behaviour same as in sequential by @Purfview in https://github.com/SYSTRAN/faster-whisper/pull/1194BatchedInferencePipeline by @greenw0lf in https://github.com/SYSTRAN/faster-whisper/pull/1186neg_threshold by @Purfview in https://github.com/SYSTRAN/faster-whisper/pull/1191Full Changelog: https://github.com/SYSTRAN/faster-whisper/compare/v1.1.0...v1.1.1
suppress_tokens behaviour same as in sequential by @Purfview in #1194BatchedInferencePipeline by @greenw0lf in #1186neg_threshold by @Purfview in #1191Full Changelog: v1.1.0...v1.1.1
New batched inference that is 4x faster and accurate, Refer to README on usage instructions.
large-v3-turbo model.log_progress to WhisperModel.transcribe to print transcription progress.multilingual option to transcription to allow transcribing multilingual audio. Note that Large models already have codeswitching capabilities, so this is mostly beneficial to medium model or smaller.WhisperModel.detect_language now has the option to use VAD filter and improved language detection using language_detection_segments and language_detection_threshold.chunk_length <30sseek value in outputNamedTuple with dataclass in Word, Segment, TranscriptionOptions, TranscriptionInfo, and VadOptions, this allows conversion to json without nesting. Note that _asdict() method is still available in Word and Segment classes for backward compatibility but will be removed in the next release, you can use dataclasses.asdict() instead.jiwer instead of evaluate in benchmarksFull Changelog: https://github.com/SYSTRAN/faster-whisper/compare/v1.0.3...v1.1.0
Silero-vad V5 release: https://github.com/snakers4/silero-vad/releases/tag/v5.0
Silero-vad V5 release: https://github.com/snakers4/silero-vad/releases/tag/v5.0
Add support for distil-large-v3 (https://github.com/SYSTRAN/faster-whisper/pull/755) The latest Distil-Whisper model, distil-large-v3, is intrinsicall
Add support for distil-large-v3 (https://github.com/SYSTRAN/faster-whisper/pull/755) The latest Distil-Whisper model, distil-large-v3, is intrinsically designed to work with the OpenAI sequential algorithm.
Benchmarks (https://github.com/SYSTRAN/faster-whisper/pull/773) Introduces functionality to measure benchmarking for memory, Word Error Rate (WER), and speed in Faster-whisper.
Support initializing more whisper model args (https://github.com/SYSTRAN/faster-whisper/pull/807)
Small bug fix:
New feature from original openai Whisper project:
Add support for distil-large-v3 (#755)
The latest Distil-Whisper model, distil-large-v3, is intrinsically designed to work with the OpenAI sequential algorithm.
Benchmarks (#773)
Introduces functionality to measure benchmarking for memory, Word Error Rate (WER), and speed in Faster-whisper.
Support initializing more whisper model args (#807)
Small bug fix:
New feature from original openai Whisper project:
Bug fixes and performance improvements:
Support distil-whisper model (https://github.com/SYSTRAN/faster-whisper/pull/557) Robust knowledge distillation of the Whisper model via large-scale p
Support distil-whisper model (https://github.com/SYSTRAN/faster-whisper/pull/557)
Robust knowledge distillation of the Whisper model via large-scale pseudo-labelling.
For more detail: https://github.com/huggingface/distil-whisper
Upgrade ctranslate2 version to 4.0 to support CUDA 12 (https://github.com/SYSTRAN/faster-whisper/pull/694)
Upgrade PyAV version to 11.* to support Python3.12.x (https://github.com/SYSTRAN/faster-whisper/pull/679)
Small bug fixes
New improvements from original OpenAI Whisper project
Support distil-whisper model (#557)
Robust knowledge distillation of the Whisper model via large-scale pseudo-labelling.
For more detail: https://github.com/huggingface/distil-whisper
Upgrade ctranslate2 version to 4.0 to support CUDA 12 (#694)
Upgrade PyAV version to 11.* to support Python3.12.x (#679)
Small bug fixes
New improvements from original OpenAI Whisper project
Fix the broken tag v0.10.0
Fix the broken tag v0.10.0
The ability to load feature_size/num_mels and other from preprocessor_config.json
feature_size/num_mels and other from preprocessor_config.jsonyue)CTranslate2 requirement to include the latest version 3.22.0tokenizers requirement to include the latest version 0.15Add function faster_whisper.available_models() to list the available model sizes
faster_whisper.available_models() to list the available model sizessupported_languages to list the languages accepted by the modeltask and language parameterstokenizers requirement to include the latest version 0.14Some generation parameters that were available in the CTranslate2 API but not exposed in faster-whisper:
Some generation parameters that were available in the CTranslate2 API but not exposed in faster-whisper:
repetition_penalty to penalize the score of previously generated tokens (set > 1 to penalize)no_repeat_ngram_size to prevent repetitions of ngrams with this sizeSome values that were previously hardcoded in the transcription method:
prompt_reset_on_temperature to configure after which temperature fallback step the prompt with the previous text should be reset (default value is 0.5)duration_after_vad in the returned TranscriptionInfo objectlanguage parameter is set to something elseFix a bug related to no_speech_threshold: when the threshold was met for a segment, the next 30-second window reused the same encoder output and was a
no_speech_threshold: when the threshold was met for a segment, the next 30-second window reused the same encoder output and was also considered as non speechSome recent improvements from openai-whisper are ported to faster-whisper:
Some recent improvements from openai-whisper are ported to faster-whisper:
The WhisperModel constructor now accepts any repository ID as argument, for example:
model = WhisperModel("username/whisper-large-v2-ct2")
The utility function download_model has been updated similarly.
initial_prompt (useful to include timestamp tokens in the prompt)no_speech_threshold is met (same as https://github.com/openai/whisper/commit/e334ff141d5444fbf6904edaaf408e5b0b416fe8)all_language_probs: the probability of each language (only set when language=None)
TranscriptionInfo with additional propertiesall_language_probs: the probability of each language (only set when language=None)vad_options: the VAD options that were used for this transcriptionWhen the model is loaded from its name like WhisperModel("large-v2"), a request is made to the Hugging Face Hub to check if some files should be downloaded.
It can happen that this request raises an exception: the Hugging Face Hub is down, the internet is temporarily disconnected, etc. These types of exception are now catched and the library will try to directly load the model from the local cache if it exists.
onnxruntime dependency for Python 3.11 as the latest version now provides binary wheels for Python 3.11IndexError on empty segments when using word_timestamps=True__version__ at the module levelFix download_root to correctly set the cache directory where the models are downloaded.
Fix download_root to correctly set the cache directory where the models are downloaded.
Some information are now logged under INFO and DEBUG levels. The logging level can be configured like this:
Some information are now logged under INFO and DEBUG levels. The logging level can be configured like this:
import logging
logging.basicConfig()
logging.getLogger("faster_whisper").setLevel(logging.DEBUG)
New arguments were added to the WhisperModel constructor to better control how the models are downloaded:
download_root to specify where the model should be downloaded.local_files_only to avoid downloading the model and directly return the path to the cached model, it it exists.condition_on_previous_text=False (note that the bug still exists in openai/whisper v20230314)Segment structure with additional properties to match openai/whisperAudioInfo to TranscriptionInfo and add a new property options to summarize the transcription options that were usedFix some IndexError exceptions:
Fix some IndexError exceptions:
The Silero VAD model is integrated to ignore parts of the audio without speech:
The Silero VAD model is integrated to ignore parts of the audio without speech:
model.transcribe(..., vad_filter=True)
The default behavior is conservative and only removes silence longer than 2 seconds. See the README to find how to customize the VAD parameters.
Note: the Silero model is executed with onnxruntime which is currently not released for Python 3.11. The dependency is excluded for this Python version and so the VAD features cannot be used.
The function decode_audio has a new argument split_stereo to split stereo audio into seperate left and right channels:
left, right = decode_audio(audio_file, split_stereo=True)
# model.transcribe(left)
# model.transcribe(right)
Segment attributes avg_log_prob and no_speech_prob (same definition as openai/whisper)av.error.InvalidDataError exception during decodingprefix to be passed only to the first 30-second windowsuppress_tokens with some special tokens that should always be suppressed (unless suppress_tokens is None)Converted models are now available on the Hugging Face Hub and are automatically downloaded when creating a WhisperModel instance. The conversion step
WhisperModel instance. The conversion step is no longer required for the original Whisper models.# Automatically download https://huggingface.co/guillaumekln/faster-whisper-large-v2
model = WhisperModel("large-v2")
Initial publication of the library on PyPI: https://pypi.org/project/faster-whisper/
Initial publication of the library on PyPI: https://pypi.org/project/faster-whisper/
Your coding agent can read these notes before it upgrades. Set up the MCP server →