Lightning-AI / Lightning-AI/LitServe

Example: Serve FunASR/SenseVoice for speech recognition

Open
#688 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
3.9k
Forks
304
Avg merge
3d 13h
Merged PRs (30d)
6

Description

> [!NOTE]
> **License and capability clarification (2026-07-14):** FunASR is a toolkit, not a single checkpoint. The [FunASR](https://github.com/modelscope/FunASR#license) and [SenseVoice](https://github.com/FunAudioLLM/SenseVoice#license) repository source code is MIT; model weights follow each model card. [SenseVoiceSmall](https://huggingface.co/FunAudioLLM/SenseVoiceSmall) supports Chinese, Cantonese, English, Japanese, and Korean, and its weights use the linked FunASR Model Open Source License Agreement. [Fun-ASR-Nano-2512](https://huggingface.co/FunAudioLLM/Fun-ASR-Nano-2512) is Apache-2.0. Language coverage, punctuation, and performance depend on the selected model and runtime configuration.

Hi! Great lightweight inference server framework!

Would you consider adding a FunASR/SenseVoice example for speech recognition serving?

## Why?

- **Most popular open-source ASR** — FunASR 16K+ stars, SenseVoice 8K+
- **Simple Python API** — Perfect fit for LitServe
- **Ultra-fast** — SenseVoice-Small: ~70ms/10s, ideal for low-latency serving
- **High demand** — Many users want to deploy ASR as API

## Example LitServe server

```python
import litserve as ls
from funasr import AutoModel

class SpeechRecognitionAPI(ls.LitAPI):
def setup(self, device):
self.model = AutoModel(model="iic/SenseVoiceSmall", device=device)

def predict(self, audio_data):
result = self.model.generate(input=audio_data)
return {"text": result[0]["text"]}

server = ls.LitServer(SpeechRecognitionAPI(), accelerator="auto")
server.run()
```

## References

- FunASR: https://github.com/modelscope/FunASR (16K+ stars)
- SenseVoice: https://github.com/FunAudioLLM/SenseVoice (8K+ stars)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No repository files or tests are named. Start by reviewing the repository’s existing serving examples and the provided Python API sketch; done means a documented, runnable FunASR/SenseVoice speech-recognition example with its model and dependency requirements, validated through the project’s existing example or test workflow.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
ai, api
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.