SenseVoice
A local speech recognition model transcribes Mandarin, Cantonese, English, Japanese and Korean, with emotion and sound tags, on CPU or GPU.
SenseVoice is a local speech recognition model for developers building voice apps or analyzing recordings. Its SenseVoiceSmall model adds information about the language, emotion and surrounding sounds to speech transcriptions.
- Multilingual transcription: Transcribe Mandarin, Cantonese, English, Japanese and Korean, and identify the spoken language.
- Emotion recognition: Tag speech with emotions such as happiness, sadness, anger and fear.
- Sound detection: Identify laughter, applause, coughing and background music alongside speech, or use sound detection as a separate task.
- Custom training: Fine-tune the model on your own audio data to adapt it to specific recording conditions or use cases.
SenseVoice is open source under the MIT license. It runs locally on CPU or GPU, including through Docker. The llama.cpp runtime uses GGUF models and runs on CPU without Python or a GPU, with built-in speech segmentation. FunASR provides another deployment path. ModelScope and Hugging Face offer online demos separate from local inference.
Published benchmarks show faster inference than Whisper and recognition advantages on Chinese and Cantonese test sets; results depend on the task and test conditions. Specialized sound detection models outperform it on some event classification benchmarks.
Long recordings need segmentation before transcription. Speaker labels require a FunASR pipeline with separate FSMN-VAD and CAM++ models; SenseVoiceSmall doesn't identify speakers by itself.