Fun-ASR-Nano 使用指南:800M 端到端语音识别大模型,支持中英日与中文方言/口音
Fun-ASR-Nano 是 FunAudioLLM 团队推出的端到端语音识别大模型,基于「Audio Encoder + Adaptor + LLM(Qwen)」架构,参数量约 800M,在数千万小时真实语音上训练而成。它是我们当前重点推荐的旗舰 ASR 模型。
核心亮点:
- 支持中文、英文和日语;中文覆盖 7 大方言(吴、粤、闽、客、赣、湘、晋)与 26 种地域口音
- 支持热词和低延迟流式服务
- FunASR pipeline 可组合独立的 VAD + cam++ + 标点模型实现说话人分离(并非 Nano checkpoint 原生输出)
- 甚至支持歌词识别、Rap 语音识别
时间戳边界:发布的 model.pt checkpoint 不含已训练的 CTC 对齐权重,因此不提供可靠的原生字级时间戳。离线服务可通过 VAD 返回可靠的片段级起止时间;需要准确字级时间戳时请使用 Paraformer。详情见 issue #106。
需要覆盖 31 种语言时,请使用独立的 Fun-ASR-MLT-Nano-2512 checkpoint;不要把 MLT-Nano 的语言范围套用到本页的旗舰 Nano。
1. 安装
pip install -U funasr torch torchaudio
2. 基础推理(含热词)
下面是已实测可运行的最小示例(自动下载模型):
from funasr import AutoModel
model = AutoModel(
model="FunAudioLLM/Fun-ASR-Nano-2512",
trust_remote_code=True,
remote_code="./model.py",
device="cuda:0",
hub="hf", # 国内可用 hub="ms" 走 ModelScope
)
wav = f"{model.model_path}/example/zh.mp3" # 模型自带示例音频
res = model.generate(
input=[wav], cache={}, batch_size=1,
hotwords=["开放时间"], # 热词,提升专有名词召回
language="中文",
itn=True, # 逆文本归一化(数字/日期规整)
)
print(res[0]["text"])
实测输出:开放时间早上九点至下午五点。——热词「开放时间」被准确识别。
3. 长音频:加 VAD 分段
model = AutoModel(
model="FunAudioLLM/Fun-ASR-Nano-2512",
trust_remote_code=True, remote_code="./model.py",
vad_model="fsmn-vad",
vad_kwargs={"max_single_segment_time": 30000},
device="cuda:0", hub="hf",
)
res = model.generate(input=[wav], cache={}, batch_size=1, language="中文")
4. 说话人分离(谁在什么时候说了什么)
说话人分离并非 Nano checkpoint 原生输出;下面由 FunASR pipeline 组合 VAD + 声纹(cam++)+ 标点,得到带说话人标签的逐句结果:
model = AutoModel(
model="FunAudioLLM/Fun-ASR-Nano-2512",
trust_remote_code=True, remote_code="./model.py",
vad_model="fsmn-vad", vad_kwargs={"max_single_segment_time": 30000},
spk_model="cam++", punc_model="ct-punc",
device="cuda:0", hub="hf",
)
res = model.generate(input=[wav], cache={}, batch_size=1, language="中文")
for sent in res[0]["sentence_info"]:
print(sent["spk"], sent["text"])
说话人分离需要从源码安装 FunASR:pip install git+https://github.com/modelscope/FunASR.git。
5. 高吞吐 / 流式部署
| 场景 | 推荐方式 |
|---|---|
| 大规模离线批量转写 | AutoModelVLLM(vLLM 后端,高吞吐) |
| 实时低延迟流式 | FunASRNanoStreamingVLLM(chunk 流式) |
| 单机 / 快速试用 | 上面的 AutoModel 即可 |
vLLM 路径对版本较敏感,建议 vLLM 0.12.0 + torch 2.9.0;完整示例见 Fun-ASR 仓库。
开始使用 Fun-ASR-Nano
主力旗舰模型,支持中英日 + 中文方言/口音。需要 31 语种请选 MLT-Nano。觉得有用就到 GitHub 点个 Star ⭐
Fun-ASR GitHub ★延伸阅读:SenseVoice 部署指南 · 对比 Whisper · 快速上手
相关文章
- FunASR vs Whisper 实测对比
- SenseVoice 部署指南
- 说话人分离:谁在何时说话
- 情感与语种检测
- 实时流式语音识别
- 转写超长音频(1小时一次搞定)
- 命令行转写(文本/JSON/SRT)
- 自托管 OpenAI Whisper API 替代
- 自动生成字幕(SRT / VTT)
- Python 语音转文字教程
- FunASR 跑进 llama.cpp(whisper.cpp 替代)
- FunASR vs faster-whisper(中文/粤语)
- 轻量语音识别(CPU 250MB)
- 自托管替代 Deepgram/AssemblyAI
- 选哪个 FunASR 模型
- 粤语语音识别(SenseVoice 原生粤语)
- 日语语音识别(SenseVoice 转写+标点+情感)
- Python 语音活动检测(VAD)
- 自托管替代 Google/AWS/Azure 云语音 API
- 中文语音识别(普通话)实战
- 标点恢复 Python 实战
- 语音识别带时间戳(字级)