你的语音识别还卡在「逐字等」——有个开源项目让 1 小时会议 20 秒出稿


title: 你的语音识别还卡在「逐字等」——有个开源项目让 1 小时会议 20 秒出稿 description: FunASR 开源语音识别全家桶:SenseVoice 模型 CPU 上 17 倍实时、GPU 上 170 倍实时,中文错误率只有 Whisper 的一半,还能识别情绪和说话人。附最低配置要求。 tags: - FunASR - 语音识别 - 开源 - AI - SenseVoice

你的语音识别还卡在「逐字等」——有个开源项目让 1 小时会议 20 秒出稿

你开完一场 2 小时的站会,录音文件往 Whisper 里一扔,等了 9 分钟才出稿。9 分钟,够你泡杯咖啡再刷 3 条推文。

这不是网速问题,是架构问题——Whisper 用的是自回归解码,一个字一个字往外蹦,像用嘴念稿子。而阿里通义实验室的 FunASR,用了一次性出全文的非自回归架构,GPU 上 170 倍实时速度,CPU 上也能 17 倍实时

翻译成人话:Whisper 在 GPU 上跑的速度,FunASR 在 CPU 上就能追平。

一张图重新定义「够用」

对比项 FunASR(SenseVoice) Whisper-large-v3 云 API
GPU 速度 170x 实时 13.4x 实时 ~1x 实时
CPU 速度 17.2x 实时 几乎不可用
中文错字率 7.81% 20.02% 各厂商不同
说话人分离 ✅ 内置 ❌ 需第三方 ✅ 额外收费
情绪识别 ✅ 喜怒哀乐
声学事件检测 ✅ 掌声/笑声/咳嗽
自部署 ✅ MIT 免费 ✅ MIT 免费 ❌ 仅云端
语言覆盖 50+ 57 各厂商不同

数据来源:FunASR 官方 benchmark,184 个中文长音频(共 192 分钟),同一块 NVIDIA H100 实测。SenseVoice 的中文错字率只有 Whisper 的 三分之一,速度是它的 12 倍

它到底能干什么?

不只是语音转文字。 SenseVoice 一次前向推理,同时吐出四样东西:

  1. 语音识别(ASR)——50+ 语言,自动检测语种
  2. 语种识别(LID)——告诉你这段话是中文、英文还是粤语
  3. 情绪识别(SER)——高兴、悲伤、愤怒、中性,7 种情绪标签
  4. 声学事件检测(AED)——掌声、笑声、背景音乐、咳嗽、喷嚏

一行代码跑起来:

from funasr import AutoModel
from funasr.utils.postprocess_utils import rich_transcription_postprocess

model = AutoModel(model="iic/SenseVoiceSmall",
                  vad_model="fsmn-vad",
                  spk_model="cam++")

result = model.generate(input="meeting.wav")

输出自带说话人标签、时间戳、标点符号:

[00:00.4 → 00:03.8] Speaker 0: 我们来讨论一下 Q3 的计划。
[00:04.2 → 00:07.1] Speaker 1: 好的,我有三个点想说。

VAD 切分、语音识别、标点恢复、说话人分离——一个模型一步到位,不需要像 Whisper 那样再外挂 pyannote 做说话人分离。

想部署 API? 一行命令启服务:

funasr-server --device cuda

自动暴露 OpenAI 兼容接口,Claude、Cursor、Dify、LangChain 直接对接。

三个模型怎么选?

原文只提了 SenseVoice,但 FunASR 其实是一个工具箱,三个主力模型各有所长:

场景 推荐模型 特点
有 GPU / 要最强效果 Fun-ASR-Nano LLM-ASR 旗舰,31 语种,340x 实时(vLLM),复杂音频最鲁棒
只有 CPU / 边缘设备 SenseVoice 非自回归极快,CPU 也能实时,多语种+情绪+事件
CPU + 纯中文 + 要热词 Paraformer 字级时间戳,支持热词定制,最轻量

一句话选型:有 GPU 上旗舰 Fun-ASR-Nano,没 GPU 用 SenseVoice,纯中文要热词选 Paraformer。

还有一个值得关注的更新:FunASR 最近推出了 llama.cpp 风格的单二进制运行方式——不需要 Python 环境,一个可执行文件直接跑,类似 whisper.cpp,但中文 CER 低了 3 倍。对边缘设备和嵌入式场景来说,这是杀手级更新。

代价清醒:别只看速度

GPU 显存可能炸

有开发者反馈,用 SenseVoice 处理短视频音频时触发 CUDA out of memory——某些「短视频」文件看似 10-20 分钟,但音频流被恶意构造后,模型试图分配 64.81 GB 显存(GPU 总共才 24 GB)。这在批量处理场景尤其危险。

解法:用 ONNX 量化版本(funasr-onnx),Int8 量化后模型可在 4 GB 显存以下的设备运行,把 batch_size 从默认 10 降到 2,牺牲一点吞吐换稳定。

batch 推理还不稳

GitHub Issues 里有反馈:SenseVoice ONNX 版本在 batch_size > 1 时,CPU 平台推理结果为空,GPU V100 上第二个 batch 直接 crash。**生产环境建议 batch_size=1**,稳比快重要。

情绪识别不是万能的

SenseVoice 的情绪标签只有 7 种(高兴/悲伤/愤怒/中性/恐惧/厌恶/惊讶),对更细粒度的情绪(焦虑、困惑、期待)无能为力。官方也承认,声学事件检测效果和专业模型仍有差距——它是全能选手,不是每个单项的世界冠军。

中文场景的「主场优势」别当通用

170 倍实速和 7.81% 的 CER 是中文 benchmark 数据。在英文、小语种场景,Whisper 仍然有它的优势——毕竟 57 种语言的覆盖不是摆设。如果你的场景是英文为主,别急着换。

电脑最低配置要求

很多人最关心的问题:我手头的电脑能跑吗?

CPU 方案(SenseVoice / Paraformer)

配置项 最低要求 推荐配置
处理器 4 核(Intel i5 / AMD 同级) 8 核(Intel i7 / AMD Ryzen 7)
内存 8 GB 16 GB
硬盘 20 GB 可用空间 50 GB(含模型文件约 8 GB)
GPU 无需
Python 3.8+ 3.10+
速度参考 SenseVoice CPU 约 17x 实时

4 核 8G 内存,没有独立显卡,就能跑。 一小时会议大约 3 分半出稿,已经超过实时了。

GPU 方案(Fun-ASR-Nano 旗舰 / 高并发部署)

配置项 最低要求 推荐配置
处理器 8 核 8 核+
内存 16 GB 32 GB
硬盘 30 GB 100 GB
GPU NVIDIA 4 GB 显存(ONNX 量化版) NVIDIA 16 GB+ 显存(T4 / 4060 起)
CUDA 11.x+ 12.x+
速度参考 Fun-ASR-Nano vLLM 约 340x 实时

最低 4 GB 显存(用 ONNX Int8 量化),但生产环境建议 16 GB 起步。NVIDIA T4(16 GB,二手白菜价)是性价比之选。

边缘设备方案

RDK X5 等 ARM 开发板也能跑 SenseVoice ONNX 量化版——对物联网、嵌入式场景友好。

谁该用?

  • 会议纪要党:录完直接出稿,带说话人标签和情绪,不用再猜谁说了什么
  • AI 应用开发者:自建 ASR 服务,白嫖云 API 费用,OpenAI 兼容接口无缝对接
  • 视频创作者:配套的 FunClip 工具,输入关键词自动在视频里定位口播片段,一秒剪辑
  • 数据合规党:本地部署,数据不出门,金融医疗场景刚需
  • 极客玩家:4 核 8G 的旧笔记本就能跑,试错成本为零

写在最后

Whisper 开源了语音识别的大门,但它的自回归架构让「快」始终有个天花板。FunASR 的非自回归路线,本质上是换了一个赛道——不是把马养得更快,而是换了一辆高铁。

当然,高铁也有高铁的问题:batch 推理不够稳、情绪识别粒度有限、小语种覆盖不如 Whisper。但在中文场景,它已经是开源自部署的最优解——没有之一。

MIT 协议,随便用。仓库地址:github.com/modelscope/FunASR


FunASR 是阿里通义实验室开源项目,MIT 协议。文中 benchmark 数据来自官方测试,实际速度因硬件和音频质量而异。

评论

暂无评论。

登录后可发表评论。