Deploy SenseVoice ASR Server
A lightweight, CPU-based ASR service using the SenseVoice model.
SenseVoice ASR Server
Just deployed
Deploy and Host SenseVoice ASR Server on Railway
SenseVoice ASR Server is a lightweight, high-performance Automatic Speech Recognition service built with FastAPI and llama.cpp. It delivers fast, multi-lingual audio transcription on CPUs using GGUF-quantized models, completely removing the need for costly GPU infrastructure while serving secure REST API endpoints with built-in Voice Activity Detection (VAD).
About Hosting SenseVoice ASR Server
Hosting SenseVoice ASR Server involves running a Docker container pre-packaged with FastAPI, the llama-funasr-sensevoice binary runtime, and quantized GGUF models (SenseVoice-Small Q8 and FSMN-VAD).
Because the inference engine runs entirely on standard CPUs with no CUDA or GPU driver dependencies, deployment is straightforward and extremely lightweight. On Railway, hosting requires as little as 2 vCPU and 1 GB RAM. The server exposes endpoints for health checks and transcription (POST /asr), protected by customizable API key authentication and execution timeout environment variables.
Common Use Cases
- Cost-Effective Audio Transcription: Transcribe user audio uploads across multiple languages (English, Chinese, Japanese, Korean, Cantonese) without paying for high-cost GPU instances.
- Microservice Backend for Voice Apps: Power voice bots, AI agents, podcast transcription tools, or meeting note generators via simple REST API integrations.
- Privacy-Focused In-House Speech Processing: Securely process audio data in your own hosted environment rather than relying on third-party cloud speech SaaS providers.
Dependencies for SenseVoice ASR Server Hosting
- Docker / Container Runtime: Containerized environment containing the FastAPI server, executable binary runtime, and quantized GGUF model files.
- Minimal Hardware Spec: At least 4 vCPU and 1 GB RAM (no GPU required).
Deployment Dependencies
- Docker Hub Image (sensevoice-asr-server)
- SenseVoice Model Overview & FunASR Project
- llama.cpp Backend & GGUF Format Documentation
Implementation Details
Quick API Testing
Once deployed on Railway, test the server's health check and send audio files using curl:
Health Check:
curl https://${RAILWAY_PUBLIC_DOMAIN}/health
Transcribe Audio File:
curl -X POST https://${RAILWAY_PUBLIC_DOMAIN}/asr \
-H "x-api-key: ${SENSEVOICE_API_KEY}" \
-F "file=@/path/to/your/audio.mp3"
Required Environment Variables
| Variable | Description | Default Value |
|---|---|---|
SENSEVOICE_API_KEY | Secret API key required in the x-api-key header. | MySuperSafeApiKey |
SENSEVOICE_TIMEOUT | Maximum execution timeout for transcription requests (seconds). | 60 |
Why Deploy SenseVoice ASR Server on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying SenseVoice ASR Server on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
SenseVoice ASR Server
markgzhou/sensevoice-asr-server