skillfed

funasr

OpenAI-compatible speech recognition toolkit with WebSocket streaming, vLLM acceleration, and llama.cpp/GGUF edge runtime.

funasr v1.4.2 497.9K downloads/30d#6,331 on PyPI19,836
Permissive license The MIT License Active released

What it is and what it does

FunASR is a production-grade speech recognition toolkit that goes beyond single-model transcription. It coordinates multiple specialized models—ASR, voice activity detection (VAD), speaker diarization, punctuation, and emotion tagging—into unified pipelines. You choose the checkpoint that fits your task: Fun-ASR-Nano for Chinese/English/Japanese with GPU acceleration, SenseVoiceSmall for CPU-viable five-language ASR with emotion detection, Paraformer for low-latency streaming, or Qwen3-ASR for 52-language coverage. The toolkit handles offline batch processing, real-time WebSocket streaming, and edge deployment via GGUF or vLLM acceleration.

It ships with OpenAI-compatible API serving, MCP server integration, and agent hooks for LangChain and AutoGen. The core dependency stack includes transformers, librosa, scipy, and Hydra for configuration; model weights are fetched from ModelScope or Hugging Face on first use. Unlike single-model alternatives, FunASR lets you trade off speed, language coverage, and feature richness per deployment scenario—from CPU-only inference to GPU-accelerated batch processing.

Use it for:

  • Transcribe multilingual audio with speaker labels and timestamps for meeting notes, interview processing, or call center analytics.
  • Deploy a self-hosted OpenAI-compatible speech API endpoint for voice agents and chatbots without cloud vendor lock-in.
  • Extract emotion and audio events alongside transcription for customer sentiment analysis or accessibility.
  • Stream live audio transcription via WebSocket for real-time captioning or voice command interfaces.
  • Run low-latency ASR on CPU or edge devices using SenseVoiceSmall or GGUF checkpoints for embedded systems.
  • Batch-process large audio corpora with vLLM acceleration for industrial data labeling or training dataset preparation.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

FunASR is a speech recognition toolkit that transcribes audio offline or via streaming, with integrated voice activity detection, speaker identification, punctuation restoration, and emotion/audio-event tagging across multiple languages and deployment targets.

Yes. FunASR is actively maintained, MIT-licensed, and offers a genuine alternative to single-model approaches. Install it if you need speaker diarization, emotion detection, streaming support, or self-hosted deployment. The 26 runtime dependencies add setup complexity, but the toolkit's flexibility across models and deployment targets justifies it for production use. Start with the Colab quickstart to test before local setup.

Install

funasr on PyPI

pip

pip install funasr

uv

uv add funasr

poetry

poetry add funasr

Installing funasr

Before you install

Low friction installation with a pure-Python wheel. Active maintenance (latest release 2026-08-14) and strong community signal (19836 GitHub stars). Requires installation of dependencies including transformers and librosa before use; GPU support is optional but recommended for flagship models.

License in practice

MIT license (permissive) allows commercial and private use without restriction. Toolkit itself is free and self-hosted; individual model licenses vary by checkpoint.

Quickstart

pip install funasr

from funasr import AutoModel

model = AutoModel(model="iic/SenseVoiceSmall", device="cpu")
result = model.generate(input="audio.wav")
print(result[0]["sentence_info"])

Requires Python ≥ 3.7. Dependencies include transformers, librosa, scipy, and others; GPU-accelerated models require additional setup. CPU-only inference is viable but slower than GPU deployment.

Verify before relying

  • Whether all 26 runtime dependencies are required for basic usage or only for specific models/features.
  • Specific performance metrics and whether they apply to typical hardware configurations.
  • Detailed compatibility matrix between model checkpoints and deployment targets (CPU, GPU, GGUF, vLLM).
  • Whether external PyTorch installation is a hard blocker or handled by dependency resolution.

Package facts

License The MIT License (permissive)
Python support supports the current Python release (>=3.7.0)
Install friction low — pure-Python wheel
Runtime dependencies 26 — scipy, librosa, soundfile, numpy, PyYAML, tqdm, requests, regex, websockets, omegaconf, hydra-core, modelscope, huggingface_hub, safetensors, transformers, tiktoken, sentencepiece, kaldiio, jieba, jamo, jaconv, umap_learn, rapidfuzz, torch_complex, tensorboardX, oss2
Maintenance actively maintained — 0 days since the last release
Last repo commit
First released
Downloads 497,863/month — #6,331 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: funasr-1.4.2-py3-none-any.whl

Keywords: speech-recognition, asr, speaker-diarization, vad, pytorch, whisper-alternative, multilingual, openai-compatible, websocket, vllm, gguf, llama-cpp

Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Multimedia :: Sound/Audio :: SpeechTopic :: Scientific/Engineering :: Artificial IntelligenceTopic :: Software Development :: Libraries :: Python Modules

Tags

speech recognition toolkitASR with speaker diarizationmultilingual audio transcriptionstreaming speech-to-textVAD and punctuation restorationedge deployment ASRopenai-compatible speech API
speech-recognitionspeaker-diarizationstreaming-asr

More Python Modules packages