阿里达摩院开源语音识别:比Whisper快170倍还免费,CPU就能跑

时间:2026-07-01 08:33:41 来源:互联网

阿里达摩院开源FunASR,颠覆语音转录体验:比Whisper快170倍,CPU即可流畅运行,集成说话人分离、情绪识别等实用功能,开启高效转录新篇章。该工具包以极速、免费、易部署为核心优势,旨在解决转录效率低、成本高的难题,为开发者提供一站式语音识别方案。

开会两小时,整理录音一整天。这是不是你的日常?记会议、扒播客、剪视频字幕——最烦的就是转录。Whisper 是能转,但慢,还分不清谁在说话;云服务倒是准,可每分钟都在计费。开源社区等一个"快、准、免费、能自己部署"的方案,等太久了。

img_6a446064bdf0b30.webp

现在有了。

阿里达摩院 ModelScope 团队的 FunASR,一个开源语音识别工具包——GPU 上跑到 170 倍实时速度,CPU 上 17 倍,比 Whisper 用 GPU 还快。它内置说话人分离、自动标点、情绪识别,所有功能集成一体。GitHub 上已获 18K star。

更关键的是,一句代码,全搞定。

“以前自己搭一套语音识别,GPU 服务器是门槛。现在,一台笔记本,CPU 就够了。”

img_6a446064c7b3031.webp

这东西到底是什么来头?

FunASR 的全称是 A Fundamental End-to-End Speech Recognition Toolkit,由阿里达摩院语音团队开发,2023 年发表于语音顶会 INTERSPEECH。真正让其出圈的,是 2024 至 2025 年间一系列更新——SenseVoice 模型上线、支持 31 种语言、vLLM 推理加速、OpenAI 兼容 API,再到近期 MCP Server 集成,每一步都贴近实用。

它本质上是一套“模型 + 工具链”。你提供音频,它返回带说话人标签、时间戳、标点和情绪的文本。无需先切句、无需单独运行 VAD、无需额外安装说话人分离工具。

与 Whisper 相比,差异如何?

关键结论:FunASR 使用 CPU 运行,比 Whisper 使用 GPU 运行还要快。

官方 benchmark 测试了 184 个长音频,总计 192 分钟的材料:

img_6a446064d63f932.webp

SenseVoice-Small(234M 参数)在 GPU 上达到 170x 实时速度,在 CPU 上为 17x。作为对比,Whisper-large-v3 在 GPU 上仅为 13x,在 CPU 上几乎无法运行。

Paraformer-Large(220M 参数)在 GPU 上为 120x,在 CPU 上为 15x,是 Whisper 的 9 倍。

就连带 LLM 解码器的 Fun-ASR-Nano(800M 参数、31 语言)也能在 GPU 上达到 17x,在 CPU 上为 3.6x,比 Whisper-large-v3 快 30%。

一句话概括:以前“自己部署一套靠谱的语音识别”需要 GPU 服务器,现在一台普通电脑就能胜任。

img_6a446064e4dd833.webp

第一次上手:3 步把它跑起来

探讨完 FunASR 的优势后,接下来聚焦具体操作。本节的承诺是:按照指导一步步执行,你将成功运行 FunASR。

第 1 步:装 Python 依赖

此步骤旨在搭建运行环境。FunASR 要求 Python 3.8 及以上版本,并需首先安装 PyTorch 和 torchaudio。

首先安装 PyTorch,请访问 pytorch.org 选择适合你电脑的版本。然后执行:

pip install torch torchaudio
pip install funasr

这两条命令执行完毕后,环境即可准备就绪。

注意:务必先安装 PyTorch。如果先安装 funasr 再补装 PyTorch,可能遭遇版本冲突,这是初学者最容易遇到的问题。

安装完成后,进行验证:

python -c "import funasr; print(funasr.__version__)"

显示版本号即表示第 1 步成功。此步骤完成后,下一步即可加载模型。

第 2 步:选模型,跑第一段音频

此步骤的目的是选择一个适合应用场景的模型,并通过示例音频验证整个流程是否畅通。

推荐从 SenseVoiceSmall 开始体验。它拥有 234M 参数,支持中、英、日、韩、粤语,运行速度快,且内置情绪识别功能,日常会议记录和视频字幕用途完全足够。

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++",
device="cuda" # 没有 GPU 改成 "cpu"
)
result = model.generate(
input="https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/asr_example_zh.wav"
)
for seg in result[0]["sentence_info"]:
print(f"[{seg['start']/1000:.1f}s] Speaker {seg['spk']}: {rich_transcription_postprocess(seg['sentence'])}")

输出示例:

[0.6s] Speaker 0: 欢迎大家来体验达摩院推出的语音识别模型

至此,运行成功。一次 model.generate() 调用,就完成了 VAD 切句、语音识别、标点处理、说话人分离四项任务。

重点:将 device="cuda" 改为 device="cpu",即可在无显卡的机器上运行。CPU 模式下速度为 17x 实时,处理 1 小时音频大约需要 3.5 分钟。

第 3 步:换自己的音频

将上述代码中的 input URL 替换为本地音频文件路径:

result = model.generate(input="my_meeting.mp3")

支持 WAV、MP3、M4A、FLAC 等常见格式。若音频包含多人对话,说话人分离和情绪识别功能将自动生效。

完成这一步后,你就拥有了一套可日常使用的语音转写工具。

配置完成后,每次使用只需执行一项操作:将音频路径传递给 model.generate()

如果遇到操作困难,可请有开发经验的朋友协助安装一次,之后便可独立使用。

运行成功后,若想切换至更快模型,可尝试 fun-asr-nano 配合 vLLM 加速。但建议先使用默认的 SenseVoiceSmall 确保流程熟悉。

装好之后,日常怎么用

CLI 命令行:最简单的日常入口

若不希望编写 Python 代码,命令行模式即可满足需求:

# 基础转写
funasr meeting.wav
# 输出 JSON(供程序处理)
funasr meeting.wav --output-format json
# 直接出字幕文件
funasr meeting.wav --output-format srt --output-dir ./subs
# 带说话人标签 + 时间戳
funasr meeting.wav --spk --timestamps -f json
# 指定模型和语言
funasr meeting.wav --model paraformer --language zh
# 批量处理
funasr *.wav --output-format srt --output-dir ./output

--model 可选:sensevoice(默认)、paraformerparaformer-enfun-asr-nano

三个进阶功能,知道就行

流式实时转写:可实现边说话边出字,适用于直播字幕场景。加载 paraformer-zh-streaming 模型,将音频流切分为 600ms 的小块逐块送入。配合 WebSocket 即可搭建一套实时字幕系统。

情绪识别:使用 emotion2vec_plus_large 模型,在转写的同时标注每句话的情绪,如开心、生气、难过。该功能适合客服质检、访谈分析等场景。

部署成 API:通过一行命令启动一个 OpenAI 兼容的 API 服务:

funasr-server --device cuda

此后,任何支持 OpenAI API 的工具(如 LangChain、Dify、AutoGen)都可直接调用。甚至 Claude 和 Cursor 也能通过 MCP Server 挂载,作为语音转写工具使用。

说实话,这会改变什么?

综合以上分析,得出三个核心判断:

对个人用户:免费语音转写的门槛已降至“会装 Python”。过去为转写播客,要么开通讯飞会员,要么支付 API 费用。如今一次 pip install,所有数据都留在本地机器上。

对小团队:内部会议记录、客服录音质检、视频字幕生成等场景,以往使用 SaaS 服务需固定支出。现在,一台闲置的 Linux 机器即可运行 CPU 模式,达到 17x 实时速度。

对整个 ASR 生态:FunASR 将“免费、自部署、工业级精度、多语言、情绪/说话人”五个维度同时提升到了较高水平。Whisper 未能实现这一点。MIT 协议允许用户进行修改甚至用于商业产品开发。

当然,并非全是优点。FunASR 在中文和东亚语言处理方面表现突出,达摩院团队在中文数据上投入了大量精力。而英文识别方面,Whisper 仍保持稳定性能,这源于 OpenAI 训练数据以英文为主。此外,Fun-ASR-Nano(31 语言、800M 参数)在纯 CPU 上达到 3.6x 实时速度,处理 1 小时音频大约需要 17 分钟,虽不算快,但已具备可行性。

重点:FunASR 真正适合的人群是那些需要免费、可自主部署、带说话人分离功能的语音转写方案,并且不介意花费 5 分钟安装一个 Python 包。如果你符合这些条件,今天就尝试一下。CPU 配置已经足够。

- 完 -