手把手教你用FunASR:Docker拉取、WebUI启动、语音识别全步骤详解
本文介绍了如何在星图GPU平台上自动化部署FunASR语音识别镜像(基于speech_ngram_lm_zh-cn二次开发构建by科哥),实现高效中文语音转文字功能。该镜像通过集成N-gram语言模型显著提升识别准确率,适用于会议记录、实时字幕生成等场景,支持WebUI操作和多种音频格式输入。
手把手教你用FunASR:Docker拉取、WebUI启动、语音识别全步骤详解
1. 环境准备与Docker部署
1.1 系统要求
在开始之前,请确保您的系统满足以下最低配置:
- 操作系统:Windows 10/11、Linux或macOS
- CPU:Intel i5或同等性能处理器
- 内存:至少8GB
- 存储空间:10GB可用空间
- 软件依赖:已安装Docker Desktop并正常运行
如果您计划使用GPU加速,还需要:
- NVIDIA显卡(GTX 1060或更高)
- 已安装CUDA驱动和nvidia-docker支持
1.2 Docker镜像拉取
打开终端或命令提示符,执行以下命令拉取FunASR镜像:
docker pull registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.9
这个镜像已经集成了中文N-gram语言模型,相比官方版本在中文识别准确率上有显著提升。
1.3 创建本地存储目录
建议创建一个本地目录用于持久化存储模型和识别结果:
mkdir -p /path/to/FunASR/model
例如在Windows系统:
mkdir D:\FunASR\model
1.4 启动Docker容器
使用以下命令启动容器:
docker run -p 7860:7860 -it --privileged=true \
-v /path/to/FunASR/model:/workspace/models \
registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.9
参数说明:
-p 7860:7860:将容器内的WebUI服务端口映射到主机-v:挂载本地目录到容器内--privileged=true:赋予容器更高权限
2. WebUI服务启动与访问
2.1 启动WebUI服务
进入容器终端后,执行以下命令启动WebUI:
cd /workspace/FunASR/runtime/webui && python app.main.py
服务启动后,您将看到类似以下输出:
Running on local URL: http://0.0.0.0:7860
2.2 访问Web界面
在浏览器中打开:
http://localhost:7860
如果您是在远程服务器上部署,使用服务器IP替换localhost:
http://<服务器IP>:7860
首次加载可能需要1-2分钟初始化模型,请耐心等待直到页面显示"模型已加载"状态。
3. WebUI界面功能详解
3.1 界面布局概览
WebUI界面分为以下几个主要区域:
- 头部信息区:显示应用标题、描述和版权信息
- 左侧控制面板:模型选择、设备设置和功能开关
- 右侧主工作区:文件上传、录音控制和结果展示
3.2 模型选择与配置
3.2.1 模型类型
- Paraformer-Large:大模型,识别精度高但资源消耗大
- SenseVoice-Small:小模型,响应速度快,适合实时场景
3.2.2 设备选择
- CUDA:使用GPU加速(推荐有NVIDIA显卡的用户)
- CPU:仅使用CPU进行计算
3.2.3 功能开关
- 启用标点恢复(PUNC):自动添加标点符号
- 启用语音活动检测(VAD):自动检测语音段落
- 输出时间戳:在结果中显示时间信息
建议全部开启以获得最佳体验。
4. 语音识别实战操作
4.1 上传音频文件识别
4.1.1 准备音频文件
支持格式:
- WAV (.wav)
- MP3 (.mp3)
- M4A (.m4a)
- FLAC (.flac)
- OGG (.ogg)
- PCM (.pcm)
推荐使用16kHz采样率的单声道音频文件。
4.1.2 上传与识别步骤
- 点击"上传音频"按钮选择文件
- 设置识别参数:
- 批量大小:处理时长(秒),默认300秒
- 识别语言:auto(自动检测)、zh(中文)、en(英文)等
- 点击"开始识别"按钮
- 等待处理完成,查看结果
4.2 实时录音识别
4.2.1 录音操作步骤
- 点击"麦克风录音"按钮
- 允许浏览器访问麦克风
- 对着麦克风说话
- 点击"停止录音"结束
- 点击"开始识别"处理录音
4.2.2 录音质量建议
- 保持环境安静
- 麦克风距离嘴部20-30厘米
- 避免喷麦和呼吸声
- 语速适中,发音清晰
5. 结果查看与导出
5.1 结果展示格式
识别完成后,结果以三种形式展示:
- 文本结果:纯文本格式,可直接复制
- 详细信息:JSON格式完整数据
- 时间戳:每个词/句的时间信息
5.2 结果导出选项
- 下载文本:保存为.txt文件
- 下载JSON:保存完整JSON数据
- 下载SRT:生成字幕文件
5.3 输出文件存储
所有输出文件保存在挂载目录的outputs子目录下,按时间戳组织:
outputs/outputs_20260104123456/
├── audio_001.wav
├── result_001.json
├── text_001.txt
└── subtitle_001.srt
6. 常见问题解决
6.1 识别准确率问题
问题表现:结果中出现较多错误
解决方案:
- 检查音频质量,确保清晰无噪音
- 选择正确的识别语言(中文内容选zh)
- 尝试使用Paraformer-Large模型
- 启用标点恢复和VAD功能
6.2 识别速度慢
问题表现:处理时间过长
优化建议:
- 确保使用CUDA模式(有GPU时)
- 缩短音频长度或分段处理
- 使用SenseVoice-Small模型
6.3 麦克风无法使用
排查步骤:
- 检查浏览器麦克风权限设置
- 确保没有其他程序占用麦克风
- 测试系统麦克风是否正常工作
- 尝试更换浏览器(推荐Chrome)
7. 总结与进阶建议
通过本文的详细指导,您已经完成了FunASR语音识别系统的完整部署和使用流程。这套方案具有以下优势:
- 开箱即用:无需复杂配置,Docker一键部署
- 中文优化:集成N-gram语言模型,提升中文识别准确率
- 多场景适用:支持文件上传和实时录音两种模式
- 丰富输出:提供文本、JSON、字幕等多种结果格式
进阶使用建议:
- 对于生产环境,建议使用GPU服务器提升处理能力
- 可以开发REST API接口供其他系统调用
- 结合热词功能提升特定领域术语识别率
- 定期更新镜像获取性能改进和新功能
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
更多推荐

所有评论(0)