手把手教你用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界面分为以下几个主要区域:

  1. 头部信息区:显示应用标题、描述和版权信息
  2. 左侧控制面板:模型选择、设备设置和功能开关
  3. 右侧主工作区:文件上传、录音控制和结果展示

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 上传与识别步骤
  1. 点击"上传音频"按钮选择文件
  2. 设置识别参数:
    • 批量大小:处理时长(秒),默认300秒
    • 识别语言:auto(自动检测)、zh(中文)、en(英文)等
  3. 点击"开始识别"按钮
  4. 等待处理完成,查看结果

4.2 实时录音识别

4.2.1 录音操作步骤
  1. 点击"麦克风录音"按钮
  2. 允许浏览器访问麦克风
  3. 对着麦克风说话
  4. 点击"停止录音"结束
  5. 点击"开始识别"处理录音
4.2.2 录音质量建议
  • 保持环境安静
  • 麦克风距离嘴部20-30厘米
  • 避免喷麦和呼吸声
  • 语速适中,发音清晰

5. 结果查看与导出

5.1 结果展示格式

识别完成后,结果以三种形式展示:

  1. 文本结果:纯文本格式,可直接复制
  2. 详细信息:JSON格式完整数据
  3. 时间戳:每个词/句的时间信息

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 识别准确率问题

问题表现:结果中出现较多错误

解决方案

  1. 检查音频质量,确保清晰无噪音
  2. 选择正确的识别语言(中文内容选zh)
  3. 尝试使用Paraformer-Large模型
  4. 启用标点恢复和VAD功能

6.2 识别速度慢

问题表现:处理时间过长

优化建议

  1. 确保使用CUDA模式(有GPU时)
  2. 缩短音频长度或分段处理
  3. 使用SenseVoice-Small模型

6.3 麦克风无法使用

排查步骤

  1. 检查浏览器麦克风权限设置
  2. 确保没有其他程序占用麦克风
  3. 测试系统麦克风是否正常工作
  4. 尝试更换浏览器(推荐Chrome)

7. 总结与进阶建议

通过本文的详细指导,您已经完成了FunASR语音识别系统的完整部署和使用流程。这套方案具有以下优势:

  1. 开箱即用:无需复杂配置,Docker一键部署
  2. 中文优化:集成N-gram语言模型,提升中文识别准确率
  3. 多场景适用:支持文件上传和实时录音两种模式
  4. 丰富输出:提供文本、JSON、字幕等多种结果格式

进阶使用建议

  1. 对于生产环境,建议使用GPU服务器提升处理能力
  2. 可以开发REST API接口供其他系统调用
  3. 结合热词功能提升特定领域术语识别率
  4. 定期更新镜像获取性能改进和新功能

获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐