CentOS7.9部署FunASR实时语音识别接口 | 部署商用级别实时语音识别接口FunASR
0. 环境说明
本次在云服务器中部署一套实时语音识别接口,基于阿里开源的FunASR。
云服务器使用莱卡云,4核心4GB内存50GB存储空间,带宽10Mbps。
操作系统使用CentOS7.9
视频演示可以看
云服务器中部署实时语音识别接口 | FunASR在云服务器中部署 | 云服务器 | 实时语音识别
1. 安装Docker
这里使用阿里官方打包好的docker镜像,所以我们先需要安装docker,如果你不想要使用docker方式安装,你也可以自己源码编译安装,不过推荐在Ubuntu系统中源码编译安装,如果你使用CentOS进行源码编译安装,有可能会编译失败。
首先安装系统依赖。
yum -y install gcc g++ yum-utils
我这里使用莱卡云,宁波电信云,因为是服务器在国内,这里我使用阿里云中的docker hub。
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker
yum -y install docker-ce docker-ce-cli containerd.io
检查是否安装成功
docker --version
如果执行上面的命令有输出版本信息,说明docker已经安装成功了。
启动docker
systemctl start docker
然后设置为开机自启动
systemctl enable docker
查看状态
systemctl status docker
2. 拉取镜像
执行下面的命令拉取docker镜像
docker pull registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12
然后执行下面命令,创建目录
mkdir -p ./funasr-runtime-resources/models
运行docker容器
docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12
3. 启动API接口
经过上面步骤会进入到docker容器内,然后我们先安装系统依赖。
apt-get update -y && apt-get install ffmpeg && cp ./onnxruntime-linux-x64-1.14.0/lib/* /usr/lib
切换路径
cd FunASR/runtime
启动接口
nohup bash run_server_2pass.sh > run.log 2>&1 &
查看接口启动日志
tail -f run.log
4. 客户端连接服务器端的API接口
由于我使用了莱卡云,如果你有域名,并且备案了,那么可以直接在莱卡云中的域名备案中绑定你已经备案好的域名。这里我就不做备案了,我这里使用SSH
隧道进行绑定本地端口,然后在本地就可以访问到我们在云服务器中部署的接口了。
ssh -CNg -L 10096:127.0.0.1:10096 root@your_ip -p 22
要记得把上面的"your_ip"改为你自己的公网ip,然后按下回车键,第一次连接要输入yes,然后按下回车键后输入你的密码。
这里使用官方提供的python版本的客户端连接。
python funasr_wss_client.py --host "127.0.0.1" --port 10096 --mode 2pass