分类
ASRT 智能语音技术

教你如何使用ASRT部署中文语音识别API服务器

点击量:1029

(在苹果系统下,如果文章中的图片不能正常显示,请升级Safari浏览器到最新版本,或者使用Chrome、Firefox浏览器打开。)

ASRT是一个中文语音识别系统,由AI柠檬博主开源在GitHub( https://github.com/nl8590687/ASRT_SpeechRecognition )上,为了便于大家使用,本文将手把手按顺序教你如何使用ASRT语音识别系统在测试和生产环境中部署中文语音识别API服务器。文本以CPU (Intel x86_64) + Linux + Python 3 + Nginx 为示例运行环境。

1 下载ASRT服务端程序

下载地址:https://asrt.ailemon.me/download

打开页面如图:

在ASRT Server下,点击最新的发布版本的下载链接,既可点击“GitHub站”的链接下载,也可点击AI柠檬位于国内的下载链接下载。

2 上传到服务器并解压

可使用SCP或FTP等软件将压缩文件上传到服务器端。然后使用”unzip”命令解压文件到目录。

$ unzip ASRT_v0.6.1.zip

3 安装运行环境

首先请确保安装好Python 3.6或者Python 3.7软件,或者Anaconda 并创建好3.6或3.7版本的虚拟环境。本项目不支持python 2.7版本,请使用python3.6及以上版本。如果pip命令对应的是python 2.7版本请将下述的pip命令替换为pip3命令。

$ pip install python_speech_features
$ pip install tensorflow==1.14.0
$ pip install keras==2.3.1
$ pip install wave
$ pip install matplotlib
$ pip install requests

其中,TensorFlow版本和Keras版本可根据实际情况灵活调整,但需注意版本的对应关系。然后我们需要安装Nginx服务器,对于CentOS/Fedora系统,可使用下述命令安装:

$ yum install -y nginx

对于Ubuntu/Debian系统,则使用:

$ apt install nginx

另外,我们还需要安装一个辅助工具,用于在我们退出登陆服务器后,语音识别API服务器程序仍旧能够正常运行,对于CentOS/Fedora系统,可使用下述命令安装:

$ yum install -y screen

对于Ubuntu/Debian系统,则使用:

$ apt install screen

4 同时运行多道API服务器程序

根据服务器负载能力,以及对于目标并发数的要求,可同时复制多份,然后修改每一份代码中监听的端口号。打开asrserver.py文件,如图。

在文件末尾,有默认监听的端口配置,默认为20000端口,可根据需要,运行的第2道程序、第3道程序的端口号修改为20001、20002等,以此类推。

运行每一道程序时,都新建一个screen虚拟屏幕并命名:

$ screen -S asrt_server_1
$ screen -S asrt_server_2
$ screen -S asrt_server_3
…

在每启动一个虚拟屏幕后,执行命令:

$ python asrserver.py

然后,键盘按ctrl + A + D挂起当前屏幕,然后再用上述screen命令新建下一个屏幕,以此往复。

服务器启动好后,可用下述命令查看是否成功监听到对应端口:

$ netstat -ntlp

5 配置Nginx服务器

Nginx服务器主要用来反向代理语音识别API服务端,并进行服务器后端的负载均衡。例如,配置一个AI柠檬语音识别API服务器,Nginx配置为:

upstream asrt_servers {
        server 127.0.0.1:20000;
        server 127.0.0.1:20001;
        server 127.0.0.1:20002;
}

server {
        server_name api.ailemon.me;
        listen 80;
        listen [::]:80;

        location /asrt/v1/ {
            proxy_pass http://asrt_servers;
        }
}

6 检验服务器部署

下载ASRT语音识别客户端程序,并解压和运行。

运行后界面如图。

在上方URL处修改URL为上述Nginx服务器配置: http://api.ailemon.me/asrt/v1/

并点击“修改URL”按钮。点击“开始语音输入”按钮,说一段话后,点击“停止语音输入”,等待服务器识别并返回结果。如果用浏览器打开上述链接可以看到ASRT字样,以及语音识别客户端可以正常收到返回结果,或者在服务器端看到输出信息,那么API服务器部署成功。

版权声明
本博客的文章除特别说明外均为原创,本人版权所有。欢迎转载,转载请注明作者及来源链接,谢谢。
本文地址: https://blog.ailemon.me/2020/08/27/teach-you-how-use-asrt-deploy-chinese-asr-api-server/
All articles are under Attribution-NonCommercial-ShareAlike 4.0


发表评论

电子邮件地址不会被公开。 必填项已用*标注

6 + 18 =

如果您是第一次在本站发布评论,内容将在博主审核后显示,请耐心等待