
pyannote
Python toolkit for figuring out who spoke when in an audio recording, using pretrained PyTorch models.pyannote/pyannote-audio
- Stars
- 10.8k
- Forks
- 1.1k
- Licence
- MIT
- Language
- Jupyter Notebook
- Last update
- 12 days ago
- Type
- Library
What it is
pyannote.audio is an open-source Python toolkit for speaker diarization, which means splitting a recording into segments and labeling which speaker is talking at each point. It is built on PyTorch and ships with pretrained models and pipelines that can be fine-tuned on your own data. The README also describes a paid hosted service, pyannoteAI, as an optional premium option.
- Label speaker turns in a recorded meeting and print start and end times per speaker
- Run the pretrained community-1 pipeline locally on a GPU when one is available
- Fine-tune a pretrained pipeline on your own labeled audio
- Use the pyannoteAI hosted precision-2 pipeline when you prefer not to run models yourself
Great for
- Developers who want to add speaker separation to a Python audio workflow
- Researchers comparing or fine-tuning speaker diarization models
- Teams processing meeting or interview recordings who can run PyTorch code
- Users who want a pretrained pipeline without training their own model
Not ideal for
- People who need a no-code app: the README only shows Python code samples
- Users who cannot accept the model conditions and Hugging Face token step, since the pretrained pipeline requires them
- Anyone with no Python experience, because setup involves ffmpeg, a package install, and an access token
How to get it
- 1
Install with a package manager
You'll need: Python · ffmpeg · A Hugging Face account and access token · uv or pip
Install with uv (recommended)
uv add pyannote.audioInstall with pip
pip install pyannote.audio - 2
Run it
- Install ffmpeg on your machine
- Accept the user conditions for pyannote/speaker-diarization-community-1 on Hugging Face
- Create a Hugging Face access token and use it in Pipeline.from_pretrained
- Run the pipeline on an audio.wav file and print the speaker turns
- 3
Get the most out of it
- Pass a progress hook (ProgressHook) to see processing progress on long files
- Move the pipeline to a GPU with pipeline.to(torch.device("cuda")) when available
- Use the telemetry settings in the README if you want to opt in or out of anonymous usage metrics
- Browse the Hugging Face pipeline and model collections linked from the README for other pretrained options
Downloads
Strengths
- Built on PyTorch with pretrained pipelines available on the Hugging Face model hub
- Python-first API with a short example that produces readable speaker turns
- MIT licensed and actively maintained, with a latest release of 4.0.7 and a recent push
Trade-offs
- Pretrained pipelines require accepting user conditions and creating a Hugging Face access token before use
- Benchmark numbers in the README come from the project itself and are not independently verified here
- Some features and the fastest version point to the paid pyannoteAI service
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| pyannote-audio (this) | 10.8k | Library | intermediate | 12 days ago | Developers who want to add speaker separation to a Python audio workflow |
| FunASR | 20.9k | Library | intermediate | 4 days ago | Developers who want to transcribe audio in Python with a pretrained model |
| silero-vad | 10.6k | Library | intermediate | 15 days ago | Developers adding speech detection to Python apps |
| spleeter | 28.5k | Library | intermediate | 9 days ago | Musicians or producers who want quick vocal or accompaniment separation from a song |
| ultimatevocalremovergui | 26.9k | App | beginner | 30 days ago | Musicians who want karaoke or practice backing tracks from existing songs |
| pytorch_geometric | 24.1k | Library | intermediate | 15 days ago | Researchers who want ready-made implementations of published graph neural network methods |
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.