HervΓ© BREDIN commited on
Commit
192e41d
Β·
1 Parent(s): 518d0c2

doc: update README

Browse files
Files changed (2) hide show
  1. README.md +86 -26
  2. pyannoteAI.png +0 -0
README.md CHANGED
@@ -7,34 +7,94 @@ sdk: static
7
  pinned: false
8
  ---
9
 
10
- [**pyannote.audio**](https://github.com/pyannote/pyannote-audio) is a state-of-the-art open-source toolkit for speaker diarization.
11
-
12
- Out of the box, <img src="https://avatars.githubusercontent.com/u/7559051" width="20" style="vertical-align:text-bottom;" /> `pyannote.audio` speaker diarization [pipeline v4.0](https://hf.co/pyannote/speaker-diarization-4.0) is expected to be much better than v3.1.
13
-
14
- <img src="https://avatars.githubusercontent.com/u/162698670" width="20" style="vertical-align:text-bottom;" /> `pyannoteAI` premium models are even better (and also 2x faster). <img src="https://avatars.githubusercontent.com/u/162698670" width="20" style="vertical-align:text-bottom;" /> `labs` model is currently in private beta.
15
-
16
- | Benchmark (last updated in 2025-08) | <a href="https://hf.co/pyannote/speaker-diarization-3.1"><img src="https://avatars.githubusercontent.com/u/7559051" width="32" /><br/>v3.1</a> | <a href="https://hf.co/pyannote/speaker-diarization-4.0"><img src="https://avatars.githubusercontent.com/u/7559051" width="32" /><br/> v4.0</a> | <a href="https://docs.pyannote.ai"><img src="https://avatars.githubusercontent.com/u/162698670" width="32" /><br/>API</a> | <a href="https://docs.pyannote.ai"><img src="https://avatars.githubusercontent.com/u/162698670" width="32" /><br/>labs</a> |
17
- | --------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | -------------------------------------------------| ------------------------------------------------ | --- |
18
- | [AISHELL-4](https://arxiv.org/abs/2104.03603) | 12.2 | 11.7 | 11.8 | 11.4 |
19
- | [AliMeeting](https://www.openslr.org/119/) (channel 1) | 24.5 | 20.3 | 16.3 | 15.2 |
20
- | [AMI](https://groups.inf.ed.ac.uk/ami/corpus/) (IHM) | 18.8 | 17.0 | 13.2 | 12.9 |
21
- | [AMI](https://groups.inf.ed.ac.uk/ami/corpus/) (SDM) | 22.7 | 19.9 | 15.8 | 15.6 |
22
- | [AVA-AVD](https://arxiv.org/abs/2111.14448) | 49.7 | 44.6 | 40.7 | 37.1 |
23
- | [CALLHOME](https://catalog.ldc.upenn.edu/LDC2001S97) ([part 2](https://github.com/BUTSpeechFIT/CALLHOME_sublists/issues/1)) | 28.5 | 26.7 | 17.6 | 16.6 |
24
- | [DIHARD 3](https://catalog.ldc.upenn.edu/LDC2022S14) ([full](https://arxiv.org/abs/2012.01477)) | 21.4 | 20.2 | 15.7 | 14.7 |
25
- | [Ego4D](https://arxiv.org/abs/2110.07058) (dev.) | 51.2 | 46.8 | 44.7 | 39.0 |
26
- | [MSDWild](https://github.com/X-LANCE/MSDWILD) | 25.4 | 22.8 | 17.9 | 17.3 |
27
- | [RAMC](https://www.openslr.org/123/) | 22.2 | 20.8 | 10.6 | 10.5 |
28
- | [REPERE](https://www.islrn.org/resources/360-758-359-485-0/) (phase2) | 7.9 | 8.9 | 7.3 | 7.4 |
29
- | [VoxConverse](https://github.com/joonson/voxconverse) (v0.3) | 11.2 | 11.2 | 9.0 | 8.5 |
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
 
31
  __[Diarization error rate](http://pyannote.github.io/pyannote-metrics/reference.html#diarization) (in %, the lower, the better)__
32
 
33
- | Benchmark (last updated in 2025-08) | <img src="https://avatars.githubusercontent.com/u/7559051" width="32" /> | <a href="https://docs.pyannote.ai"><img src="https://avatars.githubusercontent.com/u/162698670" width="32" /></a> | Speed up
34
- | -------------- | ----------- | ----------- | ------ |
35
- | [AMI](https://groups.inf.ed.ac.uk/ami/corpus/) (IHM), ~1h files | 31s per hour of audio | 14s per hour of audio | 2.2x faster
36
- | [DIHARD 3](https://catalog.ldc.upenn.edu/LDC2022S14) ([full](https://arxiv.org/abs/2012.01477)), ~5min files | 37s per hour of audio | 14s per hour of audio | 2.6x faster
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
 
38
- __Processing speed on a NVIDIA H100 80GB HBM3__
39
 
40
- Training was made possible thanks to [GENCI](https://www.genci.fr/) on the [**Jean Zay**](http://www.idris.fr/eng/jean-zay/) supercomputer.
 
7
  pinned: false
8
  ---
9
 
10
+ ![Identify who speaks when with pyannote](banner.jpg)
11
+
12
+ ## πŸ’šΒ Simply detect, segment, label, and separate speakers in any language
13
+
14
+ [🎈 `pyannoteAI` playground](https://dashboard.pyannote.ai/) // [πŸ“š `pyannoteAI` documentation](https://docs.pyannote.ai/) // [🎹 `pyannote` open-source toolkit](https://github.com/pyannote/pyannote-audio) // [πŸ€— `pyannote` pretrained models](https://huggingface.co/pyannote) // ![Github stars](https://img.shields.io/github/stars/pyannote/pyannote-audio?color=g) ![PyPI Downloads](https://static.pepy.tech/personalized-badge/pyannote-audio?period=total&units=international_system&left_color=grey&right_color=brightgreen&left_text=downloads)
15
+
16
+
17
+ ### 🎀 What is speaker diarization?
18
+
19
+ ![Diarization](diarization.jpg)
20
+
21
+ **Speaker diarization** is the process of automatically partitioning the audio recording of a conversation into segments and labeling them by speaker, answering the question **"who spoke when?"**. As the **foundational layer of conversational AI**, speaker diarization provides high-level insights for human-human and human-machine conversations, and unlocks a wide range of downstream applications: meeting transcription, call center analytics, voice agents, video dubbing.
22
+
23
+ ### ▢️ Getting started
24
+
25
+ Install [`pyannote.audio`](https://github.com/pyannote/pyannote-audio) latest release available from ![Latest release](https://img.shields.io/pypi/v/pyannote-audio?color=059669) with either `uv` (recommended) or `pip`:
26
+
27
+ ```bash
28
+ $ uv add pyannote.audio
29
+ $ pip install pyannote.audio
30
+ ```
31
+
32
+ Enjoy state-of-the-art speaker diarization:
33
+
34
+ ```python
35
+ # download pretrained pipeline from Huggingface
36
+ from pyannote.audio import Pipeline
37
+ pipeline = Pipeline.from_pretrained('pyannote/speaker-diarization-community-1', token="HUGGINGFACE_TOKEN")
38
+
39
+ # perform speaker diarization locally
40
+ output = pipeline('/path/to/audio.wav')
41
+
42
+ # enjoy state-of-the-art speaker diarization
43
+ for turn, speaker in output.speaker_diarization:
44
+ print(f"{speaker} speaks between t={turn.start}s and t={turn.end}s")
45
+ ```
46
+
47
+ Read [`community-1` model card](https://hf.co/pyannote/speaker-diarization-community-1) to make the most of it.
48
+
49
+
50
+ ### πŸ† State-of-the-art models
51
+
52
+ [`pyannoteAI`](https://www.pyannote.ai/) research team trains cutting-edge speaker diarization models, thanks to [**Jean Zay**](http://www.idris.fr/eng/jean-zay/) πŸ‡«πŸ‡· supercomputer managed by [**GENCI**](https://www.genci.fr/) πŸ’š. They come in two flavors:
53
+
54
+ * [`pyannote.audio`](https://github.com/pyannote/pyannote-audio) open models available on [Huggingface](https://hf.co/pyannote) and used by 140k+ developers over the world ;
55
+ * premium models available on [`pyannoteAI` cloud](https://dashboard.pyannote.ai) (and on-premise for enterprise customers) that provide state-of-the-art speaker diarization as well as additional enterprise features.
56
+
57
+ | Benchmark (last updated in 2025-09) | <a href="https://hf.co/pyannote/speaker-diarization-3.1">`legacy` (3.1)</a>| <a href="https://hf.co/pyannote/speaker-diarization-community-1">`community-1`</a> | <a href="https://docs.pyannote.ai">`precision-2`</a> |
58
+ | --------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | -------------------------------------------------| ------------------------------------------------ |
59
+ | [AISHELL-4](https://arxiv.org/abs/2104.03603) | 12.2 | 11.7 | 11.4 πŸ† |
60
+ | [AliMeeting](https://www.openslr.org/119/) (channel 1) | 24.5 | 20.3 | 15.2 πŸ†|
61
+ | [AMI](https://groups.inf.ed.ac.uk/ami/corpus/) (IHM) | 18.8 | 17.0 | 12.9 πŸ†|
62
+ | [AMI](https://groups.inf.ed.ac.uk/ami/corpus/) (SDM) | 22.7 | 19.9 | 15.6 πŸ† |
63
+ | [AVA-AVD](https://arxiv.org/abs/2111.14448) | 49.7 | 44.6 | 37.1 πŸ† |
64
+ | [CALLHOME](https://catalog.ldc.upenn.edu/LDC2001S97) ([part 2](https://github.com/BUTSpeechFIT/CALLHOME_sublists/issues/1)) | 28.5 | 26.7 | 16.6 πŸ† |
65
+ | [DIHARD 3](https://catalog.ldc.upenn.edu/LDC2022S14) ([full](https://arxiv.org/abs/2012.01477)) | 21.4 | 20.2 | 14.7 πŸ† |
66
+ | [Ego4D](https://arxiv.org/abs/2110.07058) (dev.) | 51.2 | 46.8 | 39.0 πŸ† |
67
+ | [MSDWild](https://github.com/X-LANCE/MSDWILD) | 25.4 | 22.8 | 17.3 πŸ† |
68
+ | [RAMC](https://www.openslr.org/123/) | 22.2 | 20.8 | 10.5 πŸ† |
69
+ | [REPERE](https://www.islrn.org/resources/360-758-359-485-0/) (phase2) | 7.9 | 8.9 | 7.4 πŸ† |
70
+ | [VoxConverse](https://github.com/joonson/voxconverse) (v0.3) | 11.2 | 11.2 | 8.5 πŸ† |
71
 
72
  __[Diarization error rate](http://pyannote.github.io/pyannote-metrics/reference.html#diarization) (in %, the lower, the better)__
73
 
74
+ ### ⏩️ Going further, better, and faster
75
+
76
+ [`precision-2`](https://www.pyannote.ai/blog/precision-2) premium pipeline further improves accuracy, processing speed, as well as brings additional features.
77
+
78
+ | Features | <a href="https://hf.co/pyannote/speaker-diarization-community-1">`community-1`</a> | <a href="https://docs.pyannote.ai">`precision-2`</a> |
79
+ | -------------- | ----------- | ----------- |
80
+ | Set exact/min/max number of speakers | βœ… | βœ… |
81
+ | Exclusive speaker diarization (for transcription) | βœ… | βœ… |
82
+ | Segmentation confidence scores | ❌ | βœ… |
83
+ | Speaker confidence scores | ❌ | βœ… |
84
+ | Voiceprinting | ❌ | βœ… |
85
+ | Speaker identification | ❌ | βœ… |
86
+ | Time to process 1h of audio (on H100) | 37s | 14s |
87
+
88
+
89
+ Create a [`pyannoteAI`](https://dashboard.pyannote.ai) account, change one line of code, and enjoy free cloud credits to try [`precision-2`](https://pyannote.ai/blog/precision-2) premium diarization:
90
+
91
+ ```python
92
+ # perform premium speaker diarization on pyannoteAI cloud
93
+ pipeline = Pipeline.from_pretrained('pyannote/speaker-diarization-precision-2', token="PYANNOTEAI_API_KEY")
94
+ better_output = pipeline('/path/to/audio.wav')
95
+ ```
96
+
97
+ ### πŸŽ‰ Join the community
98
 
99
+ [Discord](https://discord.gg/4cjCJcZv) // [X](https://x.com/pyannoteAI) // [LinkedIn](https://www.linkedin.com/company/pyannoteai/) // [Huggingface](https://hf.co/pyannote) // [Github](https://github.com/pyannote)
100
 
 
pyannoteAI.png DELETED
Binary file (3.44 kB)