FunASR开源语音识别工具包,CPU速度竟超越Whisper GPU,一站式搞定VAD、识别、标点、说话人分离和情感分析。核心内容:1. FunASR的工业级一站式流水线架构2. 在CPU与GPU上的惊人速度表现3. 支持多语言、方言及情感识别等核心功能
之前在聊过好几次本地语音方案,从 Whisper 到 SenseVoice 再到 Voicebox,每一次都是「快是快了,但要么少功能,要么不支持中文方言,要么没有说话人分离」
直到这次我重新摸了一遍 FunASR ,才发现这货已经悄悄进化成「一行 pip、一次调用,把 VAD、识别、标点、说话人、情感全办了」的工业级 ASR 工具包
更狠的是这一句官方原话:
❝FunASR 在 CPU 上的速度,比 Whisper 在 GPU 上还快
FunASR 是阿里通义实验室(modelscope 团队)开源的端到端语音识别工具包,定位很明确:工业级、开源、一站式
GitHub:github⋅com/modelscope/FunASR,MIT 协议,目前 PyPI 最新版本 funasr 1.3.9
它把语音识别这件事拆成了 5 个零件,再用一个 AutoModel 把它们焊在一起:
| 零件 | 干啥用 | 默认推荐模型 |
|---|---|---|
| ASR(识别) | 把音频转成文字 | SenseVoice-Small / Paraformer / Fun-ASR-Nano |
| VAD(端点检测) | 找出哪段是人声哪段是静音 | fsmn-vad |
| Punc(标点) | 给识别结果加标点 | ct-punc |
| Spk(说话人分离) | 区分谁在说话 | cam++ |
| Emotion(情感) | 开心/悲伤/愤怒等 | emotion2vec+large |
区别于 Whisper「一个大模型包打天下」的姿势,FunASR 把每个环节做到能独立替换、独立升级,组合起来还能在 GPU 上跑出 170 倍实时
下面这张图能更直观看懂流水线怎么咬合:

下图是 Fun-ASR-Nano 的性能图,纵轴是错误率(越低越好),横轴是延迟,左下角越靠近原点越能打:

核心功能与特点:
funasr-server --device cuda 一行起服务,POST /v1/audio/transcriptions 跟调 OpenAI Whisper API 一模一样主线就一行:
pip install funasr
想跑源码版(要改代码或装 examples):
git clone https://github⋅com/modelscope/FunASR.git
cd FunASR
pip install -e ./
环境要求:Python ≥ 3.8、PyTorch ≥ 1.13、torchaudio
如果想直接起服务版(OpenAI 兼容 API),多装几个 web 依赖就行:
pip install funasr fastapi uvicorn python-multipart
funasr-server --model sensevoice --device cuda
# 默认起在 localhost:8000
不想本地配环境的,官方贴了 Colab 一键体验链接:colab⋅research⋅google⋅com/github/modelscope/FunASR/blob/main/examples/colab/funasr_quickstart.ipynb,浏览器里跑公开样例或上传自己的录音都行
我把官方 README 里最实用的几个组合拢成下面这一段,基本覆盖 90% 的真实场景
from funasr import AutoModel
model = AutoModel(
model="iic/SenseVoiceSmall",
vad_model="fsmn-vad",
spk_model="cam++",
device="cuda",
)
result = model.generate(input="meeting.wav")
输出是带说话人标签和时间戳的结构化文本:
[00:00.4 → 00:03.8] 说话人0: 我们今天讨论一下 Q3 的计划
[00:04.2 → 00:07.1] 说话人1: 好的,我有三个要点
[00:07.5 → 00:12.3] 说话人0: 请讲,我们还有 30 分钟
一次调用、一段输出,会议纪要直接拿这个做后处理就行
追求更高精度、要支持中文方言的时候,换成 Fun-ASR-Nano(SenseVoice 编码器 + Qwen3-0.6B 解码器,800M 参数):
from funasr import AutoModel
model = AutoModel(
model="FunAudioLLM/Fun-ASR-Nano-2512",
vad_model="fsmn-vad",
device="cuda",
)
result = model.generate(input="meeting.wav")
要批量跑长音频的,套一层 vLLM 加速,官方说批量场景能再快 16 倍:
from funasr.auto.auto_model_vllm import AutoModelVLLM
model = AutoModelVLLM(
model="FunAudioLLM/Fun-ASR-Nano-2512",
tensor_parallel_size=1,
)
results = model.generate(["audio1.wav", "audio2.wav"], language="auto")
from funasr import AutoModel
model = AutoModel(model="paraformer-zh-streaming", device="cuda")
result = model.generate(
input="chunk.wav",
cache={},
chunk_size=[0, 10, 5],
)
chunk_size=[0, 10, 5] 是流式场景常用的延迟/lookahead 配置,搭配 WebSocket 可以做直播字幕
from funasr import AutoModel
model = AutoModel(model="emotion2vec_plus_large", device="cuda")
result = model.generate(input="audio.wav", granularity="utterance")
直接吐情绪标签,做客服情绪监控特别舒服
funasr-server --model sensevoice --device cuda
然后用 curl 验一下:
curl -L https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/BAC009S0764W0121.wav -o sample.wav
curl http://localhost:8000/v1/audio/transcriptions
-F [email protected]
-F model=sensevoice
-F response_format=verbose_json
接口形态跟 OpenAI Whisper API 完全对得上,老业务想从云端 ASR 平移过来基本零改造
FunASR 官方评测表非常硬核(来源:完整报告:modelscope⋅github⋅io/FunASR/zh/benchmark.html):
| 模型 | GPU 速度 | CPU 速度 | 对比 Whisper-large-v3 |
|---|---|---|---|
| SenseVoice-Small | 170 倍实时 | 17 倍实时 | ? 快 13 倍 |
| Paraformer-Large | 120 倍实时 | 15 倍实时 | ? 快 9 倍 |
| Whisper-large-v3-turbo | 46 倍实时 | ❌ | 快 3.4 倍 |
| Fun-ASR-Nano | 17 倍实时 | 3.6 倍实时 | 快 1.3 倍 |
| Whisper-large-v3 | 13 倍实时 | ❌ | 基准 |
把这组数据画成柱状图,差距更直观:

光看数字感受不到狠在哪?换个角度看:
更骚的是 SenseVoice-Small 在 CPU 上的 17 倍实时,比 Whisper-large-v3 在 GPU 上的 13 倍还快——意味着没显卡的中小公司也能起一个能扛量的 ASR 服务,这条对很多团队是真•救命
横向对比一下我经常被问的几个方案:
| 维度 | FunASR | Whisper | 云端 API(讯飞/微软等) |
|---|---|---|---|
| 速度 | 170 倍实时 | 13 倍实时 | ~1 倍实时 |
| 说话人识别 | ✅ 内置 | ❌ 需要 pyannote | ✅ 额外付费 |
| 情感识别 | ✅ | ❌ | ❌ |
| 语言数 | 50+ | 57 | 因服务而异 |
| 流式识别 | ✅ WebSocket | ❌ | ✅ |
| 私有部署 | ✅ MIT | ✅ MIT | ❌ 仅云端 |
| 费用 | 免费 | 免费 | ¥0.04/分钟起 |
| CPU 可用 | ✅ 17 倍实时 | ❌ 太慢 | 不适用 |
优点很硬:
也有一些不爽的地方:
读到这步,给你一张「该选哪个」决策表,省得你回去再翻:
| 场景 | 推荐模型 | 备注 |
|---|---|---|
| 中文会议录音转写 | Paraformer-zh + cam++ + ct-punc | 8 年迭代的工业模型 |
| 多语言/中文方言 | Fun-ASR-Nano(800M) | 31 种语言含方言 |
| 全球 52 语言 | Qwen3-ASR(1.7B) | 自动语言检测 |
| 直播实时字幕 | paraformer-zh-streaming | 流式 WebSocket |
| 情感分析/客服质检 | emotion2vec+large | 单独跑 |
| 没显卡的服务器 | SenseVoice-Small(CPU) | CPU 跑 17 倍实时 |
| 老 Whisper 业务平迁 | funasr-server + sensevoice | OpenAI 兼容 API |
很多语音识别开源项目,要么只是 Whisper 套个壳,要么只跑英文,要么只能跑离线、只能跑 GPU、只能跑识别——FunASR 的姿势是把整个语音 pipeline 工业化,把方言、流式、说话人、情感、Agent 接入一并端上桌
我个人的判断:
#FunASR #语音识别 #ASR #开源 #本地部署