FunASR

开箱即用的中文语音识别全家桶,一键部署服务

FunASR 是阿里开源的多语言语音识别工具包,专为中文场景深度优化,同时支持英文、日文等。它解决了从训练到部署的全链路问题,包括语音识别(ASR)、端点检测(VAD)、标点恢复、说话人分离、情感识别等。核心能力在于提供 Paraformer 等高性能模型,支持流式与非流式识别,并内置 OpenAI 兼容接口和 MCP 服务,方便接入现有应用。用户可通过 Python 快速调用,也能用命令行或服务端部署,适合构建实时语音转写、会议纪要、智能客服等系统。其模型在中文准确率上表现突出,且社区活跃,文档齐全。

开源 free 语音识别
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 20474
维护状态 活跃
是否开源 是
定价模式 free

项目数据

分类语音识别
开发团队modelscope
所属国家
定价模式free
价格说明开源语音识别工具包,MIT许可证,完全免费,可本地部署或在线使用。
访问状态
是否开源是
开源协议MIT
主要语言Python
技术栈/模型asr,audio,chinese,emotion-recognition,funasr,mcp-server,multilingual-asr,openai-compatible-api,paraformer,punctuation,pytorch,real-time-asr,speaker-diarization,speech-recognition,speech-to-text,streaming-asr,transcription,vllm,voice-activity-detection,whisper-alternative
GitHub 星标★ 20474
30天Star增速
HF 下载量
上线时间2022-11-24 00:00:00
最近更新2026-09-22 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-10
浏览次数4

使用教程

难度:入门 约 15 分钟 部署方式:本地安装 8 步

环境要求

  • Python ≥ 3.8(HTTP 服务示例使用 Python 3.11)
  • 先自行安装与显卡驱动匹配的 PyTorch 和 torchaudio
  • GPU 推理需 CUDA 可用的 PyTorch wheel,否则用 device="cpu"
  • 部署本地 HTTP 服务需 fastapi、uvicorn、python-multipart,curl 需 7.76+

安装与启动步骤

  1. 1安装 PyTorch 依赖

    FunASR 依赖 PyTorch 与 torchaudio,纯 CPU 可直接用 PyPI 默认 wheel 安装。

    pip install torch torchaudio
  2. 2安装 FunASR

    从 PyPI 安装官方发布的 funasr 包,这是最简安装方式。

    pip install funasr
  3. 3源码方式安装

    需要改动源码时用可编辑模式安装,先克隆仓库再 pip install -e ./。

    git clone https://github.com/modelscope/FunASR.git && cd FunASR
    pip install -e ./
  4. 4确认 GPU 可用

    只有打印 True 时才可用 device="cuda",否则改用 CPU 或重装对应 CUDA 版本的 PyTorch。

    python - <<'PY'
    import torch
    print(torch.cuda.is_available())
    PY
  5. 5Python 识别示例

    用 AutoModel 加载模型并传入音频路径或 URL,输出结果在 result 的 text 字段。

    from funasr import AutoModel
    
    model = AutoModel(model="iic/SenseVoiceSmall", vad_model="fsmn-vad", spk_model="cam++", device="cpu")
    result = model.generate(
        input="https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/asr_example_zh.wav",
        batch_size_s=300,
    )
    print(result[0]["text"])
  6. 6启动本地服务

    在全新目录用 Python 3.11 建虚拟环境,独立安装 PyPI 版并启动 SenseVoice CPU 服务。

    python3.11 -m venv .venv-funasr-http
    . .venv-funasr-http/bin/activate
    python -m pip install torch torchaudio
    python -m pip install funasr fastapi uvicorn python-multipart
    python -m pip check
    funasr-server --host 127.0.0.1 --port 8000 --model sensevoice --device cpu
  7. 7调用转写接口

    另开终端下载公共中文音频,用 curl 向 OpenAI 兼容接口提交文件并取回结果。

    curl --fail --location https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/BAC009S0764W0121.wav -o sample.wav && 
    curl --fail-with-body http://127.0.0.1:8000/v1/audio/transcriptions 
      -F file=@sample.wav 
      -F model=sensevoice 
      -F response_format=verbose_json
  8. 8拉取 Docker 镜像

    如需流式运行时服务,可拉取官方 CPU 版运行时镜像,官方仅给出镜像地址。

    docker pull registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12

关键配置

配置项必填说明示例
model是指定加载的模型,如中文 Paraformer 或多语言 Nanoiic/SenseVoiceSmall
device是推理设备,GPU 用 cuda,纯 CPU 环境填 cpucuda
vad_model否端点检测模型,用于切分长音频语音片段fsmn-vad
spk_model否说话人模型,为 VAD 片段加上说话人标签cam++
batch_size_s否按秒计算的批处理时长,控制长音频吞吐300
--host / --port是funasr-server 的监听地址与端口,默认建议仅回环127.0.0.1 --port 8000

如何确认成功

运行示例后打印出 result[0]["text"];服务侧 curl 返回 verbose_json 转写结果即表示成功。

常见问题

Q:设备选择 cuda 报错怎么办?

A:先运行 torch.cuda.is_available(),只有输出 True 才可用 device="cuda",否则改用 device="cpu",或按 pytorch.org 指引重装匹配驱动的 CUDA wheel。

Q:设置模型就等于启用了 vLLM 吗?

A:不是,README 明确说明选择模型本身不能证明 vLLM 已加载,Nano GPU 服务需按 vllm 指南配置并查看后端真实日志。

Q:复用 8000 端口失败怎么办?

A:CPU 服务与 MOSS 分离服务都默认占用 8000,切换前需先停止原有 CPU 服务,再启动另一套环境。

Q:服务能直接对外开放吗?

A:不能,默认服务不带鉴权,应保持在 127.0.0.1 回环,暴露给其他客户端前先阅读示例目录中的安全指南。

注意事项

  • 官方建议先装 PyTorch + torchaudio,再执行 pip install funasr。
  • HTTP 服务示例应在新目录用独立虚拟环境安装 PyPI 版本,而不是当前源码目录。
  • SenseVoiceSmall 的说话人标签由 CAM++ 产生,并非该模型原生输出。
  • Nano 与 MLT-Nano 语言覆盖不同,应视为两个独立模型选择。

核心亮点

  • 中文识别准确率业界领先,尤其适合普通话和方言场景
  • 内置 VAD、标点、说话人分离等完整流水线,无需额外集成
  • 提供 OpenAI 兼容 API 和 MCP 服务,接入现有系统非常方便

不足之处

  • 模型体积较大,部署对资源有一定要求
  • 文档/社区待观察

适用场景

  • 实时语音转写(会议、直播字幕)
  • 智能客服与语音助手后端
  • 音视频内容分析(情感、说话人分离)

替代项目

Whisper、Kaldi、PaddleSpeech

项目介绍

FunASR 是语音识别领域的开源项目,由 modelscope 开发,2022 年首次发布。

在全站 13,109 个收录项目中,它的 GitHub 星标数(20,474)位列前 3%,在语音识别分类的 212 个项目里位列前 3%。

近 41 天,它的 GitHub 星标从 19,804 增加到 20,474,净增 670。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-22。开源语音识别工具包,MIT许可证,完全免费,可本地部署或在线使用。从国内网络环境看,可直接访问。

它主要面向的使用场景是:实时语音转写(会议、直播字幕)。同类可对比的替代方案包括 Whisper、Kaldi、PaddleSpeech。

上一篇:whisperX

下一篇:vosk-api

同类项目推荐

obs-localvocal 开源

直播录屏时,本地AI实时生成字幕,保护隐私零延迟

OBS plugin for local speech recognition and captioning using AI

★ 1616 2026-09-10
LiveCaptions-Translator 开源

实时捕获系统音频,一键翻译成你懂的语言

Lightweight and powerful real-time audio/speech translation tool based on Windows Li···

★ 3755 2026-08-10
speechbrain 开源

一站式 PyTorch 语音工具箱,快速搞定识别、说话人验证等任务

A PyTorch-based Speech Toolkit

★ 11834 2026-08-26
whisper-diarization 开源

给语音转写加上说话人标签,会议记录一目了然

Automatic Speech Recognition with Speaker Diarization based on OpenAI Whisper

★ 5657 2026-08-13