中文语音识别该用谁?6 个开源模型 + 2 个配套工具,一文理清

导读

中文语音识别的开源方案越来越多,但它们不在同一个层面上------有的是模型,有的是工具包,有的是部署运行时。直接把它们摊在一张表里比"谁更好",容易越看越糊涂。本文把 6 个中文语音识别模型和 2 个配套工具拆开来看,在统一基准上比精度、速度和功能,帮你理清它们的关系,找到适合自己场景的组合方案。


一、先搞清楚:这些项目是什么关系?

中文语音识别的开源生态可以分为三层:

模型层------做识别的:

模型 出品方 发布时间 一句话定位
Paraformer 达摩院 2022 年 FunASR 最早的自研模型,集成最成熟,有流式版本
SenseVoice-Small 通义实验室 2024/07 不只听你说了什么,还能识别情绪和周围声音
Fun-ASR-Nano 通义实验室 2025/12 数千万小时数据训练,支持流式转录、7 种方言、26 种口音
FireRedASR 小红书 2025/01(v2: 2026/02) 中文识别精度公开基准第一
Qwen3-ASR 阿里云 Qwen 团队 2026/01 22 种中文方言,提供独立安装包 qwen-asr
Moonshine Useful Sensors 2024/10 最小(27M)最轻,为端侧而生

注:Moonshine 是美国 Useful Sensors 公司开发的端侧 ASR 模型,中文精度有限(CER ~36%),但模型仅 27M 参数,是目前最轻量的端侧选择,本文将其纳入对比供端侧部署场景参考。

工具包层------管理和组合模型的:

  • FunASR (达摩院,15.2k Star):统一的 AutoModel接口,可以将语音活动检测(VAD)、ASR、标点恢复、说话人分离串联成流水线。Paraformer、SenseVoice、Fun-ASR-Nano 都可以通过它调用。

部署运行时(Runtime)层------把模型跑在设备上的:

模型本身只是一个权重文件,不能自己运行。你需要一个程序来加载模型、接收音频、执行计算、输出文字------这就是运行时(Runtime)。服务端部署通常用 FunASR 的 Docker 服务或 vLLM;端侧部署(手机、嵌入式设备)则主要靠:

  • sherpa-onnx(Next-gen Kaldi,10.8k Star):把 Paraformer、SenseVoice 等模型部署到手机、树莓派、鸿蒙设备上,支持 12 种编程语言,完全离线运行。

值得注意的是,很多时候是组合使用的。比如"用 SenseVoice 模型 + 通过 FunASR 接口调用 + 用 sherpa-onnx 部署到手机上"。下面先比模型,再讲怎么用、怎么部署。


二、精度对比:数据说话

统一基准对比(CER%,越低越好)

以下数据来自 FireRedASR2S 仓库的对比表,所有模型在相同测试集上由同一方测试,数据口径统一:

测试集 FireRedASR2-LLM FireRedASR2-AED Qwen3-ASR-1.7B Fun-ASR
AISHELL-1 0.64 0.57 1.48 1.64
AISHELL-2 2.15 2.51 2.71 2.38
WenetSpeech net 4.44 4.57 4.97 6.85
WenetSpeech meeting 4.32 4.53 5.88 5.78
普通话平均 2.89 3.05 3.76 4.16

数据来源:FireRedASR2S 仓库(同一方测试,数据口径统一)。原始对比表还包含 Doubao-ASR(非开源),本文未纳入。表中"Fun-ASR"为 Fun-ASR(7.7B),该模型未开源,开源版本为 Fun-ASR-Nano(800M)。

几个关键信息:

  • FireRedASR 在所有普通话测试集上都排第一,AISHELL-1 上 AED 版本 CER 仅 0.57%
  • Qwen3-ASR(3.76%)和 Fun-ASR-Nano(约 4.55%,开源)水平接近

其他模型的精度参考

以下模型不在上面的统一对比表中,数据来自各自的官方来源,口径可能不完全一致:

模型 AISHELL-1 CER 来源 备注
Paraformer-zh(220M) 1.95% FunASR 论文 FireRedASR v1 对比表中为 1.68%,差异可能源于测试条件不同
SenseVoice-Small(234M) ~3.0% SenseVoice 仓库(柱状图近似值) ---
Whisper-Large-v3(1550M) 5.14% FireRedASR v1 对比表 WenetSpeech meeting 场景 CER 达 18.87%,中文场景与国产方案差距明显
Moonshine Tiny(27M) 36.1% Moonshine 论文(CommonVoice 17 测试集) 中文训练数据仅 69.8 小时,无 AISHELL 数据

Moonshine Tiny 的 CER 36.1% 与其他方案差距很大,主要原因是中文训练数据量不足------69.8 小时 vs 其他方案的万到千万小时级别。它的优势不在精度,而在端侧部署能力。Whisper-Large-v3 在中文场景下精度也明显弱于国产方案,但端侧生态成熟(whisper.cpp,47.5k Star),常作为参照基线。

方言对比(CER%,越低越好)

同样来自 FireRedASR2S 仓库对比表:

测试集 FireRedASR2-LLM FireRedASR2-AED Qwen3-ASR-1.7B Fun-ASR
KeSpeech(方言综合) 3.08 3.60 5.10 5.36
粤语(短) 5.14 5.15 5.82 7.34
四川话(易) 10.90 10.60 11.99 12.46
上海话(日常) 24.94 24.18 23.93 12.55
歌词(opencpop) 1.12 1.17 2.57 3.05
方言平均(19 个测试集) 11.55 11.67 11.85 12.76

注:表中"Fun-ASR"为 Fun-ASR(7.7B),该模型未开源,开源版本为 Fun-ASR-Nano(800M)。方言对比表中无 Fun-ASR-Nano 的数据。歌词(opencpop)为基准测试中的通用测试集,所有模型均参与测试,不代表该模型具备专门的歌词识别功能。

方言场景下,不同方言的优劣排序不同------上海话场景 Fun-ASR(7.7B)反而最好(12.55%),歌词识别 FireRedASR 优势明显(1.12%)。没有一个模型在所有方言上全面领先。


三、速度与大小对比

模型 参数量 推理速度
Moonshine Tiny 27M 中文 Tiny 版本未公开(参考:Medium 245M 在 MacBook Pro 上 107ms、RPi5 上 802ms)
Paraformer-zh 220M RTF 0.0251(V100 GPU,batch=1)。RTF 即实时因子(Real-Time Factor),< 1 表示比实时快
SenseVoice-Small 234M 处理 10 秒音频仅需 70ms,比 Whisper-Large 快 15 倍
Qwen3-ASR-0.6B 600M RTF 0.00923(单并发)
Fun-ASR-Nano 800M 未公开
FireRedASR-AED 1.1B 未公开(TensorRT-LLM 在 H20 GPU 上 12.7 倍加速)
Qwen3-ASR-1.7B 1700M RTF 0.01482(单并发)
FireRedASR-LLM 8.3B 未公开

注:各模型的速度数据测试环境不同,不能严格横向比较。SenseVoice-Small 的 70ms 测试设备未在仓库中标明。


四、功能对比:谁能做什么?

以下为各模型自身的能力(不含工具包加持):

功能 Paraformer SenseVoice-Small Fun-ASR-Nano FireRedASR v2 Qwen3-ASR Moonshine
中文语音识别
流式识别
情感识别
音频事件检测
语种识别
时间戳
歌词识别
标点恢复

Paraformer、SenseVoice-Small、Fun-ASR-Nano 三个模型都可以通过 FunASR 工具包搭配以下模块使用:VAD(fsmn-vad)、标点恢复(ct-punc)、说话人分离(cam++)、热词定制、情感识别(emotion2vec)。部分模块与模型自身能力重叠时可按需选用。FireRedASR v2 自带 VAD、标点、语种识别的一体化方案。Qwen3-ASR 和 Moonshine 是独立接口,不通过 FunASR 调用。

一句话概括各模型的功能特色:

  • SenseVoice-Small:独家的情感识别 + 音频事件检测,一个模型同时输出,支持时间戳
  • FireRedASR v2:精度最高,且自带 VAD、标点、语种识别、时间戳的一体化方案
  • Paraformer:最早发布(2022 年),自身支持流式识别和时间戳,FunASR 生态中集成最成熟
  • Fun-ASR-Nano:支持流式转录和歌词识别,通过 FunASR 可搭配 VAD、标点等模块
  • Qwen3-ASR:支持流式识别、时间戳和语种识别
  • Moonshine:参数最小(27M),支持流式识别,为端侧而生

五、端侧部署:谁能跑在设备上?

模型 需要 GPU 端侧部署方案
Moonshine Tiny(27M) 自带 C++ + OnnxRuntime(iOS/Android/RPi/IoT)
SenseVoice-Small(234M) SenseVoice.cpp(GGML,3/4/5/8 位量化)+ sherpa-onnx
Paraformer-zh(220M) sherpa-onnx(iOS/Android/鸿蒙/RPi/RISC-V/WebAssembly)
Qwen3-ASR-0.6B 未明确 未提及端侧方案
Fun-ASR-Nano(800M) 未明确 支持 ONNX 导出
FireRedASR(1.1B/8.3B) 无端侧方案
Qwen3-ASR-1.7B 未明确 未提及端侧方案

端侧场景下,Moonshine、SenseVoice-Small、Paraformer 以及 Whisper(通过 whisper.cpp)是目前有明确部署方案的选择。Whisper 是 OpenAI 开源的多语言语音识别模型,中文不是其主场(精度见第二章对比表),但端侧生态成熟(whisper.cpp,47.5k Star),本文将其作为参照列入端侧部署对比,不作为中文场景的推荐方案。

端侧部署方案

方案 支持的模型 平台 编程语言
sherpa-onnx Paraformer、SenseVoice 等 iOS/Android/鸿蒙/RPi/RISC-V/WebAssembly/RK3588/华为昇腾 C++/Python/Java/Swift/Kotlin/C#/Go/Rust/Dart 等 12 种
whisper.cpp Whisper(tiny 到 large-v3 全系列) Mac/iOS/Android/Linux/Windows/RPi/WebAssembly C/C++(社区绑定:Rust/Go/Java/Python/Swift/.NET 等)
SenseVoice.cpp SenseVoice 支持 GGML 的平台 C/C++
Moonshine Moonshine iOS/Android/macOS/Linux/RPi/IoT C++/Python

sherpa-onnx 是中文 ASR 端侧部署覆盖平台最广的方案,集成了 Paraformer 系列(多个变体)、SenseVoice 等中文模型,完全离线运行,不需要网络连接。whisper.cpp(47.5k Star)是 Whisper 模型的端侧部署方案,纯 C/C++ 实现无依赖,支持量化(q5/q8),Apple Silicon 特别优化。


六、方言支持

模型 方言覆盖
Qwen3-ASR 22 种中文方言(安徽、东北、福建、甘肃、贵州、河北、河南、湖北、湖南、江西、宁夏、山东、陕西、山西、四川、天津、云南、浙江、粤语港/广、吴语、闽南语)
FireRedASR v2 20+ 种(粤语港/广、四川、上海、吴语、闽南语、安徽、福建、甘肃、贵州、河北、河南、湖北、湖南、江西、辽宁、宁夏、陕西、山西、山东、天津、云南等)
Fun-ASR-Nano 7 种方言(吴、粤、闽、客家、赣、湘、晋)+ 26 种地方口音
SenseVoice-Small 粤语
Paraformer-zh 普通话为主
Moonshine Tiny 未提及方言支持

如果方言识别是核心需求,Qwen3-ASR 和 FireRedASR v2 是目前覆盖最全的两个选择。


七、上手使用:从代码开始

FunASR 工具包(Paraformer / SenseVoice / Fun-ASR-Nano 通用)

安装一行搞定:

复制代码
pip3 install -U funasr

FunASR 的核心价值是统一接口和模型组合。以下示例将 Fun-ASR-Nano + VAD 串联:

ini 复制代码
from funasr import AutoModel

model = AutoModel(
    model="FunAudioLLM/Fun-ASR-Nano-2512",
    vad_model="fsmn-vad",
    vad_kwargs={"max_single_segment_time": 30000},
    device="cuda:0",
)
res = model.generate(input=[wav_path], cache={}, batch_size_s=0)
text = res[0]["text"]

切换模型只需更改 model参数,比如换成 SenseVoice 同时获得情感识别能力:

ini 复制代码
model = AutoModel(
    model="iic/SenseVoiceSmall",
    vad_model="fsmn-vad",
    vad_kwargs={"max_single_segment_time": 30000},
    device="cuda:0",
)
res = model.generate(input="audio.mp3", cache={}, language="auto", use_itn=True)

还可以加入标点恢复和说话人分离:

ini 复制代码
model = AutoModel(
    model="paraformer-zh",
    vad_model="fsmn-vad",
    punc_model="ct-punc",
    spk_model="cam++",
)

Qwen3-ASR(独立接口)

复制代码
pip install -U qwen-asr

Qwen3-ASR 不使用 FunASR,有自己独立的接口和调用方式。

FireRedASR(独立接口)

bash 复制代码
git clone https://github.com/FireRedTeam/FireRedASR.git
pip install -r requirements.txt

需要 GPU,音频须转为 16kHz 单声道 WAV,AED 模型单次最长处理 60 秒音频。

Moonshine(独立接口)

复制代码
pip install moonshine-voice

自带端侧运行时,不依赖其他工具包。


八、服务端部署

如果部署在服务器上(云端/机房),不需要 sherpa-onnx 这类端侧运行时,各方案都有自己的服务端部署方式:

  • FunASR Docker 服务:提供离线文件转录和实时流式转录两种服务,支持 CPU 和 GPU。GPU 离线服务单线程 RTF 0.0076,多线程加速比 1200+。
  • FireRedASR:支持 TensorRT-LLM 和 vLLM 推理加速,AISHELL-1 上相比 PyTorch 基线加速 12.7 倍(H20 GPU)。
  • Qwen3-ASR:支持 vLLM 后端,0.6B 模型 128 并发下 Online 模式吞吐量约 2000 秒/秒,1.7B 模型 Offline 模式约 980 秒/秒。

九、许可证:能商用吗?

模型/项目 代码许可 模型许可 能商用吗
FireRedASR Apache 2.0 Apache 2.0 完全可商用
Qwen3-ASR Apache 2.0 Apache 2.0 完全可商用
Fun-ASR-Nano Apache 2.0 Apache 2.0 完全可商用
SenseVoice Apache 2.0 Apache 2.0 完全可商用
FunASR 工具包 MIT Model License Agreement 可商用(需遵守模型协议)
Paraformer MIT Model License Agreement 可商用(需遵守模型协议)
sherpa-onnx Apache 2.0 各模型各自许可 视集成的模型而定
whisper.cpp MIT MIT(Whisper 模型) 完全可商用
Moonshine(英文) MIT MIT 完全可商用
Moonshine(中文) MIT Moonshine Community License 年收入 < $1M 可商用,否则需授权

注意:Moonshine 的中文模型不是 MIT 许可,年收入超过 100 万美元的企业需要单独获取商业授权。


十、选哪个?看你的场景

大多数中文识别场景 通过 FunASR 调用 Paraformer、SenseVoice 或 Fun-ASR-Nano,搭配 VAD + 标点恢复,上手最简单。pip install funasr,三行代码跑通。

对精度要求极高FireRedASR,中文公开基准第一(LLM 版本普通话平均 CER 2.89%,AED 版本 3.05%)。但需要 GPU,且音频有时长限制。

需要识别方言Qwen3-ASR(22 种中文方言)或 FireRedASR v2(20+ 种)覆盖最全。Fun-ASR-Nano 支持 7 种方言和 26 种口音。

需要情感识别或音频事件检测SenseVoice-Small,一个模型同时完成 ASR + 情感 + 事件检测,且推理速度极快(70ms 处理 10 秒音频)。

需要部署到手机或嵌入式设备中文精度优先选 SenseVoice-Small 或 Paraformer,通过 sherpa-onnx 部署,平台覆盖最广。如果已有 Whisper 的使用经验,whisper.cpp 也是成熟的端侧方案(47.5k Star),中文精度弱于国产模型但生态最大。如果对模型大小极度敏感(< 30M),Moonshine Tiny 是唯一选择,但中文精度有限。

需要实时/流式转录Paraformer-streaming(通过 FunASR)、Fun-ASR-Nano(通过 FunASR)、Qwen3-ASR 或 Moonshine,均原生支持流式识别。

不知道选什么 从 FunASR 开始。pip install funasr,通过 AutoModel接口可以快速试用 Paraformer、SenseVoice、Fun-ASR-Nano 等模型,社区最大,上手门槛最低。


相关仓库

相关推荐
会编程的土豆2 小时前
【数据结构与算法】 二叉树做题
开发语言·数据结构·c++·算法
木禾ali0th2 小时前
告别大模型“裸奔”:开源项目 ClawVault 架构与核心能力解析
算法·安全
Storynone2 小时前
【Day28】LeetCode:509. 斐波那契数,70. 爬楼梯,746. 使用最小花费爬楼梯
python·算法·leetcode
DeepModel2 小时前
【统计检验】方差分析(ANOVA)
算法
sz-lcw2 小时前
HOG特征向量计算方法
人工智能·python·算法
闻缺陷则喜何志丹2 小时前
【博弈论】P8144 [JRKSJ R4] BBWWBB|普及+
c++·算法·洛谷·博弈论
l1t2 小时前
Qwen 3.5plus一步做对的欧拉计划701题
算法·动态规划·欧拉计划
Book思议-2 小时前
【数据结构实战】链表找环入口的经典问题:快慢指针法
c语言·数据结构·算法·链表
tankeven2 小时前
HJ135 计树
c++·算法