chattts最强对手-实时流库PaddleSpeech的最新落地经验总结(不看后悔)

PaddleSpeech 是由百度飞桨(PaddlePaddle)团队开发的一个开源的语音技术框架,支持音频分类、语音翻译、语音识别、语音合成、声纹识别等任务,可以做到工业级端到端的流式ASR和TTS服务。开源github地址:https://github.com/PaddlePaddle/PaddleSpeech。

一、环境安装

1、python环境:为了兼容paddlepaddle、paddleaudio等库的依赖环境,建议安装python版本在3.8以上3.10以下。

2、conda环境依赖安装:为了安装支持paddlespeech以及c++的环境,我们首先执行以下命令:

conda install -y -c conda-forge sox libsndfile swig bzip2

conda install -y -c gcc_linux-64=8.4.0 gxx_linux-64=8.4.0

3、pip包依赖安装:需要安装paddlepaddle、pytest-runner以及paddlespeech。

paddle根据不同硬件的支持安装对应的版本,建议安装2.5.1版本,cpu版本命令为:

pip install paddlepaddle==2.5.1 -i https://mirror.baidu.com/pypi/simple

而gpu版本命令为:

pip install paddlepaddle-gpu==2.5.1 -i https://mirror.baidu.com/pypi/simple

为了paddlespeech以及后续开发测试代码,需要安装pytest-runner库,命令如下:

pip install pytest-runner

最后,我们安装paddlespeech,这个会有两种方式,如果为了快速使用可以直接pip安装,如果为了更深入的开发并有修改源代码的需求,我们可以通过编译源代码进行安装。

paddlespeech的pip安装命令如下:

pip install paddlespeech==2.4.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

paddlespeech的源代码安装命令如下:

git clone https://github.com/PaddlePaddle/PaddleSpeech.git

cd PaddleSpeech

pip install .  -i https://pypi.tuna.tsinghua.edu.cn/simple

、功能测试

为了验证paddlespeech功能是否安装成功,我们可以通过测试语音识别、语音合成、声音分类等功能进行验证。Paddlespeech官网推荐会有命令行和python接口调用方法,这里都以中文语言测试为例。

通过lang参数决定用哪个语言,zh表示中文,en表示英文,mix表示中英混合。

1、ASR语音识别功能测试

(1)命令行方式:

paddlespeech asr --lang zh --input test.wav

(2)python接口调用方式:

from paddlespeech.cli.asr.infer import ASRExecutor

asr = ASRExecutor()

result = asr(audio_file="test.wav")

print(result)

2、TTS语音合成功能测试

(1)命令行方式:

paddlespeech tts --input "你好,这是语音合成功能测试的示例。" --output output.wav

(2)python接口调用方式:

from paddlespeech.cli.tts.infer import TTSExecutor

tts = TTSExecutor()

tts(text="你好,这是语音合成功能测试的示例。", output="output.wav")

、问题总结

paddlespeech库的环境搭建并不容易,看官网讨论还有人搭建了几天才搭建好,本人第一次搭建也搭建了好几个小时,因为官方已经不再怎么维护了,还多安装问题我们需要自己根据遇到的问题进行自行解决。

我们这里会总结一下安装过程中所遇到的问题,如果大家搭建过程还遇到其他问题,大家都可以留言进行讨论。

1、运行paddlespeech_server服务报错ModuleNotFoundError: No module named 'paddle.nn.layer.layers'。

第一,python版本要安装python3.8到3.10,太高太低都不太兼容安装paddlespeech的兼容库。

第二,paddlepaddle版本要安装2.5.1以上,paddlespeech要安装1.4.1以上,这个兼容性问题才能解决。

2、遇到linux报错glibc库报错ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found。

虽然可以升级glibc库也可以解决,但可能会导致其他linux环境库出问题,建议还是修改opencc版本为0.1.6,通过命令安装:pip install opencc-python-reimplemented==0.1.6。

3、修改speed、volume这些参数的时候会报错,xmalloc: out of memory。

没有安装相应的库,首先linux需要安装相应库,执行命令:apt-get install sox libsox-dev libsox-fmt-all

然后pip方式安装,命令:pip install soxbindings。

4、执行流式的asr或tts服务时候,执行命令报错。

要确定protocol协议方式是一致明确的,要确定是websocket的还是http的。

欢迎关注公众号:杰哥新技术
 

  • 34
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值