华为云耀云服务器L实例:高级篇-部署自己的ASRT语音识别api

发布时间 2023-10-25 12:06:25作者: 技术僧
 

华为云耀云服务器L实例是一款可快速部署且易于运维的轻量级云服务器,专为中小企业和入门级开发者打造。它不仅拥有华为云擎天架构的强大性能,还具有多项用户体验优化方案,让用户轻松上手,享受简单上云的乐趣。

本产品网址为:https://www.huaweicloud.com/product/hecs-light.html

在当今数字化时代,语音合成技术正变得越来越重要。无论是在智能助手、语音导航还是语音广播等领域,语音合成都扮演着重要的角色。如果你也想在华为云耀云服务器L实例上搭建一个自己的语音合成API,以便将文字转换为自然流畅的语音,那么你来对地方了!本文为一份详细的部署实测,帮助大家快速搭建自己的语音合成API,为我们的应用或项目增加强大的语音合成能力。

ASRT是一个基于深度学习的中文语音识别系统,本项目使用tensorFlow.keras基于深度卷积神经网络和长短时记忆神经网络、注意力机制以及CTC实现。

下载文件

现在我们来到asrt项目的wiki下,先将文件下载到本地,并将压缩包解压。

网址为 https://wiki.ailemon.net/docs/asrt-doc/download

现在我们来到宝塔面板,点击 文件-上传,将我们的服务端文件夹ASRT_v1.3.0上传到我们的华为云耀云服务器L实例上。(目录可以不同,但记得下方所有操作可能都要先跳转到该目录下再执行指令)

 

这样,我们的第一步就完成了。

安装依赖包

我们刚刚上传的ASRT_v1.3.0文件夹中已经包含所需要的包依赖,可以直接一键运行。

pip install -r requirements.txt

来一键下载包依赖

但我个人此处由于未知原因下载失败,于是我选择手动下载每个依赖(在官方文档中有说明),如果上方的指令下载成功,就可以跳过下方这一部分了。

pip install tensorFlow

pip install numpy

pip install wave

pip install matplotlib

pip install scipy

pip install requests

pip install flask

pip install waitress

pip install grpcio

设置端口

现在我们来针对asrt端口打开我们华为云耀云服务器L实例的防火墙,打开宝塔面板,点击 安全-添加端口规则 

将如下端口20001添加并提交(如果该端口已占有,可以尝试修改运行文件找一个不用的端口,并在这里开启对应端口)

接着我们来到我们的华为云耀云服务器L实例控制台界面,点击 安全组-配置规则

在入方向规则中,点击添加规则,依旧将端口20001填入,如下图

这样,我们的准备工作就基本完成了!

运行并测试api

我们首先打开自己的Shell连接到云耀云服务器,输入指令转到ASRT_v1.3.0文件夹下

cd ASRT_v1.3.0

然后执行服务端的运行文件

python asrserver_http.py

那么现在,让我们访问一下我们的api网页界面,在我们的浏览器中输入 华为云耀云服务器L实例IP:20001,可以看到以下界面,说明api已经可以正常工作了!

 

之后,我们使用官方提供的测试工具,配置好我们的api接口,即可在 客户端 使用免费的语音识别api了!

那么让我们使用之前下载的测试工具测试一下。

打开之前下载文件时的另一个文件夹ASRT_SDK_WinClient_WithDemo_v1.1.0

然后接着运行ASRT_SpeechClient_WPF.exe

我们可以看到这是一个简单的测试程序,点击开始输入(当然一可以点击下方直接选择wav格式文件,注意不要太大):

 

之后我们可以看到识别结果如下,很正确:

当然,我们正常使用语音识别功能不可能在这个测试界面使用,但只要我们已经在华为云耀云服务器L实例上部署并启动了这个功能,然后我们在需要使用的地方向我们的华为云耀云服务器L实例IP:20001 这个地址以post请求发送所要识别的wav语音文件即可进行识别!

 

通过本文,我们已经成功华为云耀云服务器L实例上搭建ASRT语音合成API。现在,我们可以使用这个API将文字转换为自然流畅的语音,为我们的应用或项目增加更好的用户体验。云端搭建的语音合成API具有高度可扩展性和灵活性,可以满足不同场景和需求的语音合成任务。希望本文对大家有所帮助,祝大家成功地搭建自己的语音合成API,并享受使用这一强大技术的乐趣!