本文章是从0开始安装,包括python、git、pip。如果有多行命令,请一定按照顺序执行
1.安装python3.8
1.下载python3.8
sudo apt-get install python3.8
2.配置python
ls /usr/bin/python3.8
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
sudo update-alternatives --config python3
3.查询python版本
python3 --version
如果返回的是python3.8就是安装成功
2.安装git和升级pip
1.安装git
sudo apt install git
2.升级pip (重要,一定要升级到23版本,否则后续依赖下载不下来)
apt-get install python3-pip
pip3 install --upgrade pip
查询升级后的pip版本
pip --version
如果是23版本,就没问题
3.下载和安装PaddleSpeech
1.进入下载或者安装位置,我自己的在/opt/tools/paddle (根据自己位置来选择)
cd /opt
mkdir tools
cd tools/
mkdir paddle
cd paddle/
2.下载paddlepaddle
git clone -b r1.2 https://gitee.com/paddlepaddle/PaddleSpeech
下载后,进入文件夹
cd PaddleSpeech/
3.框架和依赖安装
很慢,耐心等待
pip install paddlepaddle==2.3.1 -i https://pypi.douban.com/simple
pip install pytest-runner -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install uvicorn==0.18.3
pip install . -i https://pypi.tuna.tsinghua.edu.cn/simple
如果执行最后一个pip install . -i https://pypi.tuna.tsinghua.edu.cn/simple 有很多问题,建议先把我下面的命令全部执行一边,后续与再回来执行
4.解决问题
建议下面命令无脑执行一遍
1.PyYAML冲突
pip install --upgrade nni --ignore-installed
2.numpy冲突
pip install --upgrade numpy
pip uninstall librosa
#下面这个命令执行,会有报错或者警告,直接无视。意思是版本冲突,但是并不影响
pip install librosa==0.10.0
3.下载paddlespeech_ctcdecoders
python -m pip install paddlespeech_ctcdecoders
执行上面的命令后,请再回去执行pip install . -i https://pypi.tuna.tsinghua.edu.cn/simple
至此,安装完毕,下面开始进行启动和测试
5.启动以及测试
我现在在/opt/tools/paddle这个文件下
1.创建并进入start.sh文件
vim start.sh
编辑输入一下内容
paddlespeech_server start --config_file ./PaddleSpeech/paddlespeech/server/conf/application.yaml --log_file paddle.log > log.log 2>&1 &
保存退出
2.启动脚本
./start
执行ls命令,会发现多出一个log.log文件,打开
出现以下输出,表示服务开启成功:
INFO: Started server process [4697]
[2022-07-29 14:19:03] [INFO] [server.py:75] Started server process [4697]
INFO: Waiting for application startup.
[2022-07-29 14:19:03] [INFO] [on.py:47] Waiting for application startup.
INFO: Application startup complete.
[2022-07-29 14:19:03] [INFO] [on.py:61] Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8090 (Press CTRL+C to quit)
[2022-07-29 14:19:03] [INFO] [server.py:212] Uvicorn running on http://0.0.0.0:8090 (Press CTRL+C to quit)
3.测试
我使用postman进行测试,并且由于大家需要将语音文件转为base64的编码
请求格式:
{
"audio":"" //这个就是你语音转为base64后的数据
"audio_format":"wav", //这个是指定文件,我是wav
"sample_rate":16000, //这个是采样频率,我是16000
"lang":"zh_cn", //这个是语言,中文,不用改
"punc":0 //不用改
}
请求路径为http://127.0.0.1:8090/paddlespeech/asr
请求为post请求,数据放在body里面,下列是成功后的截图。
可能会有遗漏步骤或者问题,如有问题,请留言