narcotic-sh/senko
Very fast, accurate speaker diarization
해결하는 문제
Senko는 오디오 기록에서 "누가 언제 말했는지"를 식별하기 위해 설계된 고성능 말하기자 분리 파이프라인입니다. 극도로 빠른 속도와 정확도에 중점을 두어, 최신 하드웨어(예: RTX 4090)에서 1시간의 오디오를 몇 초(예: 5초) 내에 처리할 수 있습니다.
작동 방식
Senko는 3D-Speaker 파이프라인의 최적화된 버전으로, 네 단계의 프로세스를 사용합니다:
- 음성 활동 탐지 (VAD): Pyannote segmentation-3.0 또는 Silero VAD를 사용하여 음성 구간을 탐지합니다.
- 특징 추출: Fbank 특징을 추출하며, NVIDIA 시스템에서는
kaldifeat를 통해 GPU 가속을 활용합니다. - 임베딩 생성: CAM++ 모델을 사용해 배치 추론으로 말하기자 임베딩을 생성합니다.
- 클러스터링: 스펙트럼 클러스터링 또는 UMAP+HDBSCAN을 사용해 유사한 임베딩을 그룹화하며, 지원되는 NVIDIA 카드에서는 RAPIDS를 통해 GPU 가속을 제공합니다.
Mac에서는 Apple Silicon 최적화를 위해 CoreML을 사용하여 VAD 및 임베딩 처리를 가속화합니다.
대상 사용자
음성 인식 서비스나 미디어 플레이어에 통합할 수 있는 빠르고 정확하며 언어에 관계없는 말하기자 분리 도구가 필요한 개발자 및 연구자입니다.
주요 특징
- 극도의 속도: 고성능 GPU 및 Apple M3 칩에서는 1시간의 오디오를 8초 미만으로 처리 가능합니다.
- GPU 가속: Linux/WSL에서 NVIDIA 사용자를 위한 CUDA 7.0 이상을 기반으로 한 완전한 GPU 파이프라인.
- 언어에 관계없음: 음향 패턴에 초점을 맞춰 다양한 언어에서 작동하지만, 영어와 중국어에 최적화되어 있습니다.
- 크로스플랫폼 지원: Linux, macOS, Windows(WSL 경유)에 네이티브 지원.
- 통합 준비 완료: JSON 및 RTTM 출력 형식을 제공하여 다른 애플리케이션에 쉽게 통합할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트