Feature: Add FunASR/SenseVoice as alternative ASR backend
## Motivation
WhisperLive provides near-realtime transcription using Whisper. [FunASR](https://github.com/modelscope/FunASR) (16K+ stars) offers a faster alternative backend, especially beneficial for live transcription where latency matters.
## Why FunASR for Live Transcription
- **Non-autoregressive**: SenseVoice processes audio in a single forward pass — no iterative token generation, lower latency per chunk
- **5x faster** than Whisper large-v3 at comparable accuracy
- **Smaller model** (234M params vs 1.5B), less GPU memory, faster load
- **Built-in streaming ASR**: FunASR includes a WebSocket-based streaming server for real-time recognition
- **Built-in VAD**: FSMN-VAD (5.2M params) — no separate Silero VAD needed
- **50+ languages** with auto detection
## FunASR Streaming Server
FunASR already has a production-grade streaming ASR server:
```bash
pip install funasr vllm
funasr-server --device cuda # OpenAI-compatible API at :8000
# Real-time WebSocket streaming
# ws://localhost:8000/ws (streaming ASR endpoint)
```
Or via Python API:
```python
from funasr import AutoModel
model = AutoModel(model="iic/SenseVoiceSmall", vad_model="fsmn-vad")
result = model.generate(input="audio_chunk.wav")
```
## References
- GitHub: https://github.com/modelscope/FunASR
- Streaming: WebSocket-based realtime ASR
- pip: `pip install funasr`
0 条评论