
Whisper
Open-source speech-to-text model that transcribes and translates audio in many languages.
- Stars
- 112k
- Forks
- 13.5k
- Licence
- MIT
- Language
- Python
- Last update
- 2 months ago
- Type
- AI model / agent
What it is
Whisper is a speech recognition model from OpenAI that turns spoken audio into written text. It was trained on a large set of varied audio and can also translate non-English speech into English and identify which language is being spoken. You can use it from a command line or from Python code.
- Transcribe audio files such as MP3, WAV, or FLAC from the command line
- Translate non-English speech into English using a multilingual model
- Detect the spoken language of an audio clip from Python
- Generate text from recordings inside your own Python script
Great for
- Developers who want to add transcription of audio files to a Python project
- People who need to transcribe recordings such as interviews or lectures locally
- Projects needing multilingual transcription with one model
- Users who want English-only transcription with the smaller .en models
Not ideal for
- Users without a suitable computer, since larger models need several GB of video memory (VRAM), per the README's table
- Anyone needing translation with the turbo model, which the README says is not trained for translation
- People wanting a point-and-click app, since the README describes command-line and Python usage only
How to get it
- 1
Install with a package manager
You'll need: Python 3.8-3.11 (per README compatibility note) · ffmpeg · Rust (only if tiktoken has no pre-built wheel for your platform)
Install the latest release
pip install -U openai-whisperInstall ffmpeg on Ubuntu or Debian
sudo apt update && sudo apt install ffmpegInstall ffmpeg on MacOS with Homebrew
brew install ffmpeg - 2
Run it
- Install Python, ffmpeg, and the openai-whisper package
- Run whisper audio.mp3 --model turbo on an audio file
- Check the output text, or run whisper --help to see all options
- 3
Get the most out of it
- Use a multilingual model such as medium or large with --task translate to translate non-English speech into English
- Specify --language when you know the spoken language to avoid automatic detection
- Use the .en models for English-only audio, especially tiny.en and base.en, per the README
- Call model.transcribe() from Python to process files in your own code
- Browse the Show and tell discussions for third-party integrations and ports
Downloads
Strengths
- Handles many languages and can translate speech to English in one model
- Offers several model sizes so you can trade speed against accuracy
- Released under the MIT License, which permits broad reuse
Trade-offs
- Larger models need roughly 5 to 10 GB of VRAM, so modest hardware may struggle
- Accuracy varies widely by language, according to the README
- Requires ffmpeg and sometimes Rust for installation
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.