ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

FunASR语音识别指南:从离线转写到实时流式

FunASR语音识别指南:从离线转写到实时流式 FunASR语音识别指南从离线转写到实时流式【免费下载链接】FunASROpen-source speech recognition toolkit for training, inference, streaming ASR, VAD, punctuation, speaker diarization pipelines, and OpenAI-compatible/MCP serving.项目地址: https://gitcode.com/GitHub_Trending/fun/FunASRFunASR 是阿里达摩院开源的语音识别工具箱一条命令把音频转成文字还能顺带做语音切分、标点恢复和说话人分离。读完这篇你能在 30 秒内装好环境跑通第一条识别并知道会议转写、字幕生成、实时流式该选哪条路径。30秒跑通环境要求一行Python ≥ 3.8。pip install torch torchaudio pip install funasr然后一条 CLI 命令直接出结果funasr audio.wav --output-format json不想写命令行也可以三行 Pythonfrom funasr import AutoModel model AutoModel(modeliic/SenseVoiceSmall, vad_modelfsmn-vad, devicecpu) print(model.generate(inputaudio.wav)[0][text])首次运行会自动下载模型权重到本地缓存之后离线可用。AutoModel是工具箱的统一调度入口实现见 funasr/auto/你在构造时声明了哪些模型它就负责下载、串联和返回合并结果。能力全景FunASR 不是单个模型而是一组可自由组合的模块能力对应模型/模块典型场景离线语音转写Paraformer / SenseVoice / Fun-ASR-Nano会议录音、播客、客服工单实时流式转写Paraformer-zh-streaming直播字幕、语音助手语音切分VADFSMN-VAD约 0.4M 参数长音频切片、静默去除标点恢复CT-Transformerct-punc转写文本直接可用说话人分离CAMcam谁在什么时候说了什么情感与事件标签SenseVoice / emotion2vec客服质检、音频事件统计领域热词hotword参数提升专有名词识别率核心能力是转写本身VAD、标点、说话人分离都是选配按需加参数即可。图从左到右是整条链路Model zoo 提供各任务预训练模型中间的 funasr library 负责训练与推理再经 Export 导出为 Libtorch、ONNX、TensorRT 格式最后通过 gRPC、websocket 等 Runtime/Service 对外提供服务。工作原理把它理解成一条流水线音频进来后先经 FSMN-VAD 切出语音段并丢弃静默再交给 Paraformer 逐段识别成文字CT-Transformer 补标点ITN逆文本正则化把二零二五年归一成2025 年热词表则插在解码环节影响输出。图中的主干是语音端点检测 → 声学模型 → 解码器 → 标点预测 → 逆文本正则化语言模型和 Fst 热词两条虚线汇入解码器这是离线路径的完整数据流。实时流式走的是两遍法快通道边播边出字慢通道在句尾做精确修正。上半区 FSMN-VAD-realtime 与 Paraformer-online 每 600ms 输出一次临时结果下半区在 VAD 判定句尾后用 Paraformer-offline 重识别再过标点和 ITN把修正后的文字发回客户端。实战两个高频闭环会议转写输入本地会议录音meeting.wav操作model AutoModel(modelparaformer-zh, vad_modelfsmn-vad, punc_modelct-punc, spk_modelcam, devicecpu) result model.generate(inputmeeting.wav) for seg in result[0][sentence_info]: print(seg[start] / 1000, 说话人 str(seg[spk]), seg[sentence])输出带时间戳、说话人编号和标点的句子列表可直接拼成结构化纪要。批量生成字幕输入视频配套音频目录操作funasr *.wav --output-format srt --output-dir ./subs输出SRT 字幕文件可直接挂到视频播放器。CLI 实现见 funasr/cli.py-f json还能输出适合程序消费的 JSON。进阶与选型如果你有 GPU默认选 Fun-ASR-Nano——中英日加方言口音的 LLM-ASR难词和专有名词更稳CPU 上则用 SenseVoiceSmall约 17 倍实时。如果要做高吞吐批处理Nano 换AutoModelVLLM走 vLLM 路径README 实测约 340 倍实时它只加速自回归解码对非自回归的 Paraformer 不生效。如果普通话流量为主且要字级时间戳选paraformer-zh31 语种选 Fun-ASR-MLT-Nano。如果领域词总被识错给generate()传hotword参数例如hotword关键词 20。如果做直播字幕用paraformer-zh-streaming按 600ms 分块喂入或直接用 WebSocket 流式服务。如果要在没有 Python 的端侧跑runtime/llama.cpp 提供 GGUF 单文件二进制内置 VAD。如果要对外提供接口funasr-server --device cuda起一个 OpenAI 兼容端点POST /v1/audio/transcriptions现有 OpenAI 客户端基本零改造接入。新手FAQ装了 funasr 却 import 报错先单独升级torch和torchaudio再装 funasr三者保持同源渠道的兼容版本仍失败就开全新虚拟环境重试。模型下载慢或中断怎么办按网络位置换源国内走 ModelScope海外走 Hugging Face中断后清掉该模型的部分缓存再重试即可。识别效果不达预期先确认音频是 16kHz 单声道效果对比别用单条干净音频取 20–50 条覆盖噪声、长静音、多人交叠的样本统一评测。延伸阅读docs/model_selection.md — 选型决策表适合第一次挑模型的人docs/troubleshooting.md — 安装与部署高频故障排查适合卡住时查examples/openai_api/ — OpenAI 兼容服务端完整示例适合做私有 API 的人examples/aishell/ — 在 AISHELL 上训练与微调的脚本适合想改模型的人runtime/ — websocket/gRPC/Docker 部署文档适合要上实时服务的人下一步建议先用 30 秒跑通里的 CLI 转一条自己的录音效果不满意再按选型一节换模型最后用--output-format srt把它变成字幕——这一步基本覆盖了大多数接入场景。【免费下载链接】FunASROpen-source speech recognition toolkit for training, inference, streaming ASR, VAD, punctuation, speaker diarization pipelines, and OpenAI-compatible/MCP serving.项目地址: https://gitcode.com/GitHub_Trending/fun/FunASR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表