Verwenden Sie das Open-Source-Toolkit pyannote.audio
in der Produktion? Erwägen Sie den Wechsel zu pyannoteAI, um bessere und schnellere Optionen zu erhalten.
pyannote.audio
Speaker Diarization Toolkit pyannote.audio
ist ein in Python geschriebenes Open-Source-Toolkit zur Sprecheraufzeichnung. Basierend auf dem PyTorch-Framework für maschinelles Lernen verfügt es über hochmoderne vorab trainierte Modelle und Pipelines, die für eine noch bessere Leistung weiter an Ihre eigenen Daten angepasst werden können.
pyannote.audio
mit pip install pyannote.audio
pyannote/segmentation-3.0
pyannote/speaker-diarization-3.1
hf.co/settings/tokens
. from pyannote . audio import Pipeline
pipeline = Pipeline . from_pretrained (
"pyannote/speaker-diarization-3.1" ,
use_auth_token = "HUGGINGFACE_ACCESS_TOKEN_GOES_HERE" )
# send pipeline to GPU (when available)
import torch
pipeline . to ( torch . device ( "cuda" ))
# apply pretrained pipeline
diarization = pipeline ( "audio.wav" )
# print the result
for turn , _ , speaker in diarization . itertracks ( yield_label = True ):
print ( f"start= { turn . start :.1f } s stop= { turn . end :.1f } s speaker_ { speaker } " )
# start=0.2s stop=1.5s speaker_0
# start=1.8s stop=3.9s speaker_1
# start=4.2s stop=5.7s speaker_0
# ...
pyannote
Sprachtrennungspipelines von Clément Pagés Es wird erwartet, dass pyannote.audio
Speaker Diarization Pipeline v3.1 im Auslieferungszustand viel besser (und schneller) als v2.x ist. Bei diesen Zahlen handelt es sich um Diarisierungsfehlerraten (in %):
Benchmark | v2.1 | v3.1 | pyannoteAI |
---|---|---|---|
AISHELL-4 | 14.1 | 12.2 | 11.9 |
AliMeeting (Kanal 1) | 27.4 | 24.4 | 22.5 |
AMI (IHM) | 18.9 | 18.8 | 16.6 |
AMI (SDM) | 27.1 | 22.4 | 20.9 |
AVA-AVD | 66,3 | 50,0 | 39.8 |
CALLHOME (Teil 2) | 31.6 | 28.4 | 22.2 |
DIHARD 3 (voll) | 26.9 | 21.7 | 17.2 |
Ergebnis21 | 17.0 | 9.4 | 9.0 |
Ego4D (Entw.) | 61,5 | 51.2 | 43,8 |
MSDWild | 32.8 | 25.3 | 19.8 |
RAMC | 22.5 | 22.2 | 18.4 |
REPERE (Phase2) | 8.2 | 7.8 | 7.6 |
VoxConverse (v0.3) | 11.2 | 11.3 | 9.4 |
Diarisierungsfehlerrate (in %)
Wenn Sie pyannote.audio
verwenden, verwenden Sie bitte die folgenden Zitate:
@inproceedings { Plaquet23 ,
author = { Alexis Plaquet and Hervé Bredin } ,
title = { {Powerset multi-class cross entropy loss for neural speaker diarization} } ,
year = 2023 ,
booktitle = { Proc. INTERSPEECH 2023 } ,
}
@inproceedings { Bredin23 ,
author = { Hervé Bredin } ,
title = { {pyannote.audio 2.1 speaker diarization pipeline: principle, benchmark, and recipe} } ,
year = 2023 ,
booktitle = { Proc. INTERSPEECH 2023 } ,
}
Mit den folgenden Befehlen richten Sie Pre-Commit-Hooks und Pakete ein, die für die Entwicklung der pyannote.audio
-Bibliothek erforderlich sind.
pip install -e .[dev,testing]
pre-commit install
pytest