FunASR 本地转写部署:3 步在 Windows 上跑通 CPU 离线转写服务

📅 2026/8/24 20:46:52
FunASR 本地转写部署:3 步在 Windows 上跑通 CPU 离线转写服务
FunASR 本地转写部署3 步在 Windows 上跑通 CPU 离线转写服务【免费下载链接】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 本地转写是把达摩院语音实验室开源的语音识别工具包 FunASR 整套部署到你自己的 Windows 机器上。音频不出本机转写全程离线完成不装显卡也能跑。这篇写给需要在 Windows 上做本地语音转写、又不想把录音传到云端的人覆盖从装环境、起服务到日常使用的完整过程。上图中能看到 FunASR 的分层关系模型库、训练推理库、运行时与服务层各自独立。本文主要处理运行时与服务这两层也就是把转写服务真正跑起来的部分。当前 Windows SDK 2.0 支持中文和英文的离线文件转写。FunASR 本地转写部署环境要求动手前先把机器条件核对一遍省得中途卡住。硬件配置与并发参考CPU 核心数越多能扛住的并发请求越多配置类型CPU 核心内存并发能力适用场景基础版4 核8GB32 路个人/小团队标准版16 核32GB64 路部门级应用企业版64 核128GB200 路大规模集群以 16 核 CPU 为例可支撑 64 路并发请求实时率RTF能到 0.0076也就是转写 100 秒的音频大约只花 0.76 秒。系统与软件依赖检查操作系统为 Windows 10/11 专业版64 位已安装 .NET Framework 4.8 或更高版本已安装 Docker Desktop for Windows并启用 WSL2 后端家庭版系统需要先开启 WSL2 功能具体步骤可参照微软官方说明。 FunASR 离线转写服务怎么在 Windows 上部署获取项目源码在终端里克隆仓库并进入部署脚本所在目录git clone https://gitcode.com/GitHub_Trending/fun/FunASR cd FunASR/runtime/deploy_tools运行一键部署脚本目录里有一个funasr-runtime-deploy-offline-cpu-zh.bat脚本双击运行后按提示操作选模型类型1 为基础转写2 为带时间戳转写3 为热词增强转写设置服务端口默认 10095指定工作目录建议放在非系统盘少碰权限问题如果弹出 docker: command not found说明 Docker Desktop 没装好或者装完没重启。FunASR 转写服务起来后怎么验证浏览器看状态页部署完成后打开浏览器输入http://localhost:10095能看到服务状态页面就说明服务起来了。命令行验证curl http://localhost:10095/health返回{status:healthy,version:2.0}即正常。 FunASR 客户端怎么做单文件与批量转写客户端在runtime/python/websocket目录下转写要经过语音端点检测、声学解码、标点预测和逆文本规范化几个环节转写单个音频文件python funasr_wss_client.py --host 127.0.0.1 --port 10095 --mode offline --audio_in C:/meeting_recording.wav --use_itn 1几个参数值得留意--audio_in支持 wav/mp3/mp4 等格式也可以直接给网络音频地址--use_itn 1打开逆文本规范化比如把数字读法转成书写形式--hotword指向热词文件能提升专业术语的识别准确率。用 wav.scp 做批量转写多个文件时先建一个 wav.scp 文件每行一条格式是文件名 路径例如会议记录1 C:/audio/meeting1.mp3。然后把--audio_in指向这个文件并用--output_dir指定结果输出位置python funasr_wss_client.py --host 127.0.0.1 --port 10095 --mode offline --audio_in C:/wav.scp --output_dir C:/transcripts用 Web 界面直接转写不想碰命令行也可以浏览器打开runtime/html5/static/index.html就能上传文件或实时录音转写不用写代码。⚡ FunASR 转写性能怎么调、模型怎么换调整并发线程线程数跟着 CPU 核心数走经验值是解码线程数取核心数的一半IO 线程数取四分之一。16 核对应的配置funasr-runtime-deploy-offline-cpu-zh.bat update --decode_thread_num 8 --io_thread_num 4处理超长音频超过一小时的长文件建议开启分片处理把单条音频上限设为 3600 秒funasr-runtime-deploy-offline-cpu-zh.bat update --max_single_audio_length 3600。切换行业专用模型按行业可换专用模型把--asr_model改成对应值即可。医疗模型为damo/speech_paraformer-large_asr_nat-zh-cn-16k-medical-vocab5000-pytorch金融模型为damo/speech_paraformer-large_asr_nat-zh-cn-16k-financial-vocab8404-pytorch。️ FunASR 转写常见问题与处理办法服务启动失败容器闪退、日志出现 port is already allocated多半是端口被占。先查占用再结束对应进程netstat -ano | findstr :10095 taskkill /PID 进程ID /F把进程ID换成上面查到的实际 PID。转写准确率不理想从三个方向入手到model_zoo/modelscope_models.md看有没有更新的模型在workspace/hotwords.txt里按热词 权重逐行补充热词转写前用工具把音频统一重采样到 16kHz。防火墙拦截访问给 Windows 防火墙加一条放行规则netsh advfirewall firewall add rule nameFunASR dirin actionallow protocolTCP localport10095。FunASR 转写服务日常怎么管理启动、停止与状态查看在部署脚本后面跟对应参数即可分别是start、stop、restart、status命令主体都是funasr-runtime-deploy-offline-cpu-zh.bat。日志与性能监控服务日志在workspace/logs目录下想盯 CPU 和内存占用用 Windows 性能监视器看。排障时可以参考 官方部署文档。服务跑起来后先拿几条真实录音试转效果可以了再按场景调并发和模型。遇到这里没覆盖到的情况可以先看 docs/reference/FQA.mdexamples/ 目录里还有更多能直接运行的示例。【免费下载链接】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),仅供参考