GitHub - FunAudioLLM/SenseVoice: Multilingual Voice Understanding Model
Service

GitHub - FunAudioLLM/SenseVoice: Multilingual Voice Understanding Model

FunAudioLLM
2026.05.20
·GitHub·by 임근석/부산/NLP
#ASR#Audio Processing#LLM#Multilingual#Speech Recognition

핵심 포인트

  • 1SenseVoice는 다국어 ASR, LID, SER, AED 기능을 통합하여 음성을 이해하는 강력한 foundation model입니다.
  • 250개 이상의 언어를 지원하며 Whisper를 능가하는 높은 인식 정확도와 최상위 수준의 감정 인식 성능을 제공하며, 특히 SenseVoice-Small은 Whisper-Large 대비 15배 빠른 추론 속도로 효율성을 극대화합니다.
  • 3이 모델은 ONNX, Libtorch로의 export, FastAPI를 통한 서비스 배포, 편리한 finetuning 스크립트, Speaker Diarization 연동, 그리고 Docker 지원 등 다양한 사용 시나리오를 위한 유연한 통합 옵션을 제공합니다.

SenseVoice는 자동 음성 인식(ASR), 음성 언어 식별(LID), 음성 감정 인식(SER), 오디오 이벤트 감지(AED) 등 다양한 음성 이해 기능을 갖춘 음성 파운데이션 모델입니다. 이 모델은 고정밀 다국어 음성 인식, 음성 감정 인식, 오디오 이벤트 감지에 중점을 둡니다.

핵심 방법론 및 특징:

  1. 다국어 음성 인식: 40만 시간 이상의 데이터로 50개 이상의 언어를 지원하도록 훈련되었으며, Whisper 모델을 능가하는 인식 성능을 보여줍니다. 특히, 중국어 및 광둥어 인식에서 SenseVoice-Small 모델이 강점을 가집니다.
  2. 음성 감정 인식: 기존의 SER 벤치마크 부족에도 불구하고, SenseVoice는 다양한 테스트 세트에서 최신 최고 성능의 감정 인식 모델과 동등하거나 이를 능가하는 효과를 달성합니다. SenseVoice-Large 모델은 거의 모든 데이터셋에서 최고의 성능을, SenseVoice-Small 모델 또한 대다수에서 다른 오픈소스 모델을 능가합니다.
  3. 오디오 이벤트 감지: 오직 음성 데이터로만 훈련되었음에도 불구하고, 독립적인 오디오 이벤트 감지 모델로 기능합니다. ESC-50 데이터셋에서 BEATS 및 PANN과 같은 산업 표준 모델과 비교하여 우수한 결과를 보여주지만, 훈련 데이터 및 방법론의 한계로 전문 AED 모델 대비 격차가 존재할 수 있습니다.
  4. 컴퓨팅 효율성: SenseVoice-Small 모델은 non-autoregressive end-to-end 프레임워크를 사용하여 매우 낮은 추론 지연 시간을 제공합니다. 10초 오디오 처리 시 단 70ms가 소요되며, 이는 Whisper-Small보다 5배, Whisper-Large보다 15배 빠른 속도입니다. 이는 긴 오디오를 작은 세그먼트로 나누어 병렬 처리하고, CTC alignment 기반의 timestamp 기능을 활용하는 것으로 최적화됩니다.
  5. 파이프라인 및 확장성:
    • Speaker Diarization: VAD (Voice Activity Detection) 모델(fsmn-vad), CAM++ speaker model, punc_model (punctuation model)과 함께 사용하여 문장별 화자 라벨을 얻을 수 있는 파이프라인을 지원합니다.
    • ONNX 및 libtorch Export: 모델을 ONNX 및 libtorch 형식으로 내보낼 수 있어 다양한 런타임 환경에서 효율적인 배포 및 추론이 가능합니다. 이는 funasr-onnx 및 funasr-torch 라이브러리를 통해 지원됩니다.
    • Finetuning: 사용자가 비즈니스 시나리오에 따라 긴 꼬리(long-tail) 샘플 문제를 해결할 수 있도록 편리한 Finetuning 스크립트와 전략을 제공합니다. 훈련 데이터는 jsonl 형식으로 구성되며, key, source (오디오 경로), target (전사), text_language, emo_target, event_target 등의 필드를 포함합니다. sensevoice2jsonl 도구를 사용하여 데이터를 준비할 수 있습니다.
    • Service Deployment: FastAPI를 통한 서비스 배포 파이프라인을 제공하며, Python, C++, HTML, Java, C# 등 다양한 클라이언트 측 언어를 지원합니다. Docker 및 Docker Compose를 통한 쉬운 빌드 및 실행도 지원합니다.

주요 업데이트 및 서드파티 통합:

  • 2026년 5월: Speaker Diarization 지원.
  • 2024년 11월: CTC 정렬 기반의 timestamp 지원.
  • 2024년 7월: ONNX 및 libtorch 익스포트 기능 추가 및 Python 런타임 제공. SenseVoice-Small 모델 오픈소스화.
  • Triton 및 TensorRT를 활용한 GPU 배포 최적화 (V100 GPU에서 526배 가속 달성).
  • Sherpa-onnx를 통해 C++, Python 등 10개 프로그래밍 언어 및 iOS, Android 등 다양한 플랫폼에 배포 지원.
  • SenseVoice.cpp를 통해 GGML 기반의 순수 C/C++ 추론, 3/4/5/8-bit 양자화 지원.
  • streaming-sensevoice는 truncated attention 메커니즘을 사용한 청크 단위 추론과 CTC prefix beam search, hot-word boosting 기능을 지원합니다.
  • OmniSenseVoice는 빠른 추론 및 배치 프로세스에 최적화되어 있습니다.
  • SenseVoice Hotword는 Neural Network Hotword Enhancement 및 Contextualized End-to-End Speech Recognition 기술을 통합합니다.

SenseVoice는 FunASR Toolkit의 일부로 개발되었으며, 지속적으로 기능이 확장되고 성능이 개선되고 있습니다.