FunASR 离线语音转写服务部署与客户端开发实战
1. 概述
FunASR(Automatic Speech Recognition)离线文件转写软件包提供了一款功能强大的语音离线文件转写服务。它拥有完整的语音识别链路,结合了语音端点检测(VAD)、语音识别、标点等模型,可以将几十个小时的长音频与视频识别成带标点的文字,支持上百路请求同时进行转写。
输出结果包含带标点的文字及字级别时间戳,支持 ITN(逆文本规范化)与用户自定义热词。服务端集成有 ffmpeg,支持各种音视频格式输入。软件包提供 HTML、Python、C++、Java 与 C# 等多种编程语言客户端,方便直接集成与二次开发。
推荐配置:
- 配置 1: X86 计算型,4 核 vCPU,内存 8G,单机约支持 32 路请求
- 配置 2: X86 计算型,16 核 vCPU,内存 32G,单机约支持 64 路请求
- 配置 3: X86 计算型,64 核 vCPU,内存 128G,单机约支持 200 路请求
2. 快速上手
2.1 Docker 安装
推荐使用官方脚本进行安装:
# 下载安装脚本
curl -O https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/shell/install_docker.sh
# 执行安装命令
sudo bash install_docker.sh
2.2 镜像启动
拉取并启动 FunASR 软件包的 Docker 镜像:
# 拉取镜像
sudo docker pull registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.4.7
# 创建资源文件夹
mkdir -p ./funasr-runtime-resources/models
# 交互式启动容器
sudo docker run -p 10095:10095 -it --privileged=true \
-v $PWD/funasr-runtime-resources/models:/workspace/models \
registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.4.7
2.3 服务端启动
进入容器后启动 funasr-wss-server 服务程序:
# 容器内的操作
cd FunASR/runtime
nohup bash run_server.sh \
--download-model-dir /workspace/models \
--vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx \
--model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx \
--punc-dir damo/punc_ct-transformer_cn-en-common-vocab471067-large-onnx \
--lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst \
--itn-dir thuduj12/fst_itn_zh \
--hotword /workspace/models/hotwords.txt > log.txt 2>&1 &

