
FunASR 语音识别实战3 步转写会议录音并自动标注说话人【免费下载链接】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当你拿到一段一小时的会议录音想要的往往不是转成文字而是谁在什么时间说了什么。FunASR 就是为此准备的开源语音识别工具包它把 ASR、语音活动检测VAD、标点、说话人分离等多个模型打包成一次调用产出带说话人编号和时间戳的转写结果而不是一坨无标点长文本。3 分钟跑通本地语音识别CPU 机器安装两条命令即可GPU 机器请先装好匹配的 PyTorchpip install torch torchaudio pip install funasr然后新建脚本粘贴这段代码。这里用 SenseVoiceSmall 做识别配 FSMN-VAD 切段、cam 做说话人区分from funasr import AutoModel from funasr.utils.postprocess_utils import rich_transcription_postprocess model AutoModel(modeliic/SenseVoiceSmall, vad_modelfsmn-vad, spk_modelcam, devicecpu) result model.generate(inputmeeting.wav) for seg in result[0][sentence_info]: print(f[{seg[start]/1000:.1f}s] Speaker {seg[spk]}: f{rich_transcription_postprocess(seg[sentence])})把meeting.wav换成你的音频路径运行后每行输出形如[0.6s] Speaker 0: 欢迎大家来体验达摩院推出的语音识别模型即时间 说话人 文本。首次运行会自动从模型仓库下载模型并缓存到本地第二次运行就快了。一张图看懂整体结构FunASR 把整条链路分成四个部分从 docs/images/funasr_overview.png 这张总览图可以对应上Model zooParaformer、SenseVoice、FSMN-VAD、CT-Transformer 等预训练模型funasr library核心库每个任务都有成对的 trainer/infer 脚本还有export_model.py负责模型导出Runtime把模型导出为 LibTorch / ONNX / TensorRT供 C 部署Service通过 gRPC、websocket、Triton 对外提供服务。写 Python 脚本时你主要打交道的就是中间的 funasr 库入口在 funasr/auto/要做 C 服务化部署相关代码和文档在 runtime/。说话人标签和时间戳是怎么来的上一步输出里的Speaker 0不是事后补的流水线先用 FSMN-VAD 把长音频切成有语音的片段cam 从每个片段提取声纹特征并聚类归组再由 SenseVoiceSmall 逐段转写每句的起止毫秒数一并写入sentence_info这也是字幕和检索功能的数据基础。如果你不需要VAD 声纹 ASR组合而是想让一个模型端到端地同时输出内容和说话人FunASR 里也有 Speaker-Attributed ASR 实现funasr/models/sa_asr/结构如下图左侧 AsrDecoder 预测文本 token右侧 SpeakerDecoder 预测说话人 仓库目录地图新手从哪找起funasr/ — 主库。models/下每个子目录就是一个模型实现paraformer、sense_voice、fsmn_vad_streaming 等datasets/、train_utils/用于训练examples/ — 可运行示例。colab/里有浏览器版 notebook不用装环境也能体验docs/ — 安装、模型选型、故障排查文档tests/— 各流水线冒烟测试环境装完可以先跑一遍验证。怎么选模型热词在哪配具体选型建议直接看 docs/model_selection.md常用的是三个SenseVoiceSmall中/英/日/韩/粤多语言附带情绪和音频事件标签CPU 可跑适合当默认选择Paraformer专注普通话支持字级时间戳和热词Fun-ASR-Nano基于 LLM 的 ASR对专名、上下文和方言口音更稳需要 GPU。录音里专名多公司名、产品名时可以在generate里传带权重的热词字符串例如hotword关键词 20表示给关键词这个词加 20 分权重。C 运行时那边也有一份现成的 runtime/websocket/hotwords.txt每行一个词 权重可以直接抄格式。把识别搬出脚本CLI 和 OpenAI 兼容 API不想写 Python 的话装完直接敲命令行即可funasr audio.wav -f srt -o ./subs生成字幕文件--spk开启说话人分离--timestamps输出字级时间戳完整参数表在 docs/cli.md。要接入 LangChain、Dify 这类应用看 examples/openai_api/里面是一个完整的 OpenAI 兼容服务含 Docker 部署用funasr-server --device cuda启动后现有 OpenAI 客户端把 base_url 指到localhost:8000就能调识别接口。想再深入一步的话model_zoo/目录列出了全部可用预训练模型及其对应文档按场景挑一个看下去就行。【免费下载链接】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),仅供参考