Feature: Add SenseVoice/FunASR as an alternative STT backend
Author: LauraGPTCreated May 31, 2026Updated Jul 14, 2026
Proposal
Consider SenseVoiceSmall / FunASR as an optional self-hosted STT backend for VibeVoice workflows that need a compact, non-autoregressive recognizer.
SenseVoiceSmall is a 234M-parameter model with:
- speech recognition for Mandarin, Cantonese, English, Japanese, and Korean;
- language, speech-emotion, and audio-event tags;
- non-autoregressive decoding;
- local CPU or GPU inference through FunASR.
For long recordings, FunASR can compose SenseVoiceSmall with the separate FSMN-VAD model. VAD is a pipeline component, not a built-in part of the SenseVoice checkpoint.
Integration sketch
from funasr import AutoModel
model = AutoModel(
model="iic/SenseVoiceSmall",
vad_model="fsmn-vad",
trust_remote_code=True,
)
result = model.generate(input=audio_path)
This could be exposed as an optional backend rather than replacing VibeVoice's own ASR path, keeping the integration narrow and useful for local CJK transcription.
References
- SenseVoice: https://github.com/FunAudioLLM/SenseVoice
- SenseVoiceSmall model card: https://huggingface.co/FunAudioLLM/SenseVoiceSmall
- FunASR: https://github.com/modelscope/FunASR
- Paper: https://arxiv.org/abs/2407.04051
Source: microsoft/VibeVoice