基于PP-TTS的安卓手机部署

★★★ 本文源自AI Studio社区精品项目,【点击此处】查看更多精品内容 >>>


基于PP-TTS的安卓手机部署

本案例将使用 PaddleSpeech 中的语音合成能力与 FastDeploy 的推理后端 Paddle Lite 实现在安卓手机端部署语音合成应用。通过本章你可以掌握

  • PaddleSpeech 中 PP-TTS 的快速使用
  • 结合 PaddleSpeech 与 Paddle Lite 进行安卓手机部署

1. 背景介绍

在互联网应用中,经常会使用播报功能,如有声小说阅读器,地图导航播报,智能助手等应用。播报功能离不开语音合成技术。这些年,随着深度学习技术的发展,语音合成的效果也越来越好,持续逼近真人说话的水平。高质量的语音合成也成为了产品体验上的重点。以深度学习为代表的端到端语音合成算法相较于参数法,拼接法等传统方法,在声音的质量和效果上有了显著的提升,在此基础上,也发展出了更多的有趣玩法,如使用自己或者家人的声音做语音合成,替代手机助手或者地图导航语音包,使用情感更加丰富的声线朗读电子书等等。

1.1 场景痛点

高质量的语音合成不仅仅依赖于优质的音库,同样需要效果好的深度学习模型支持,而深度学习模型的高性能推理部署一直是开发者在进行项目落地过程中的难点。在线上业务中,如果模型计算所需资源高,推理速度慢,会导致在线上业务中服务吞吐量上不去,需要更多的服务器资源才可以满足业务的需求,使用成本急剧上升,而使用深度学习推理引擎,可以有效提高推理速度,降低服务所需的计算资源。在设备端离线部署时,除了需要面对计算资源与计算速度的挑战以后,也会面临推理引擎对待部署设备是否支持,算子是否支持,推理性能是否有效优化等问题,这些都是在深度学习语音合成模型进行高性能推理部署时遇到的难点问题。

1.2 方案选型

使用 PaddleSpeech 和 Paddle Lite 组成的训推一体解决方案, 可以有效解决上面所述的痛点问题。这里我们将带大家通过 PaddleSpeech 自研流式语音合成 PP-TTS 中的 FastSpeech2 模型和 Multi-band MelGAN 模型在 ARM CPU 的安卓手机上进行部署演示。

  • 飞桨语音模型库 PaddleSpeech:PaddleSpeech是飞桨语音模型库,包含多种领先国际水平的语音算法与预训练模型,支持语音识别,语音合成,声音分类,声纹识别,语音唤醒等多个研究方向的前沿算法。其中PP-TTS是 PaddleSpeech 自研的流式语音合成系统,支持流式语音合成与非流式语音合成。在实现前沿算法的基础上,使用了更快的推理引擎,使其满足商业语音交互场景的需求。这里我们将选择 PP-TTS 里面的 FastSpeech2 模型和 Multi-band MelGAN 模型进行部署示例。【PP-TTS 传送门】

  • 飞桨推理引擎 FastDeploy : FastDeploy面向AI模型产业落地,帮助开发者简单几步即可完成AI模型在对应硬件上的部署,降低部署难度、压缩部署时间成本。支持40多个主流的AI模型在8大类常见硬件上的部署能力。FastDeploy借助了EasyEdge模型部署能力提升企业开发者模型部署的效率,开发者也可前往EasyEdge平台图形界面体验,或Github命令行,快速体验AI模型落地应用。这里我们将使用 FastDeploy 的推理后端 Paddle Lite 进行部署示例展示。【FastDeploy 传送门】

  • 端侧轻量化推理引擎 Paddle Lite:面向端侧场景的轻量化推理引擎Paddle Lite,可以实现飞桨模型在x86/ARM平台下多种OS内的高效部署,同时支持在10种以上的GPU/NPU异构后端上进行推理加速和混合调度;通过Paddle Lite,您在不同端侧场景下的模型部署需求都可以被完美支持。 【Paddle Lite 传送门】

2. 准备环境

接下来,我们将通过在 Aistudio 上安装 PaddleSpeech 的依赖环境,快速体验PP-TTS的效果,学习 PP-TTS 的主要模块和推理流程。目前 PP-TTS 已经上线 Aistudio 模型库,可以点击下方的链接快速体验。

【PP-TTS 模型库体验入口】

2.1 安装PaddleSpeech

!pip install paddlespeech
# paddlespeech 依赖需要用到 nltk 包,但是有时会因为网络原因导致不好下载,此处手动下载一下放到百度服务器的包
!wget https://paddlespeech.bj.bcebos.com/Parakeet/tools/nltk_data.tar.gz
!tar zxvf nltk_data.tar.gz

2.2 快速体验 PP-TTS 效果

第一次使用时会下载预训练模型,模型和配置文件会存放在~/.paddlespeech(在aistudio中对应/home/aistudio/.paddlespeech), 在【模型中心 PP-TTS】主页中,使用的是 fastspeech2_mixhifigan_csmsc 模型,这里我们保持上下模型讲解的连贯性,统一使用 fastspeech2_csmscmb_melgan_csmsc 模型,有关 PaddleSpeech 支持的更多模型可以参考 【Released Models】


from paddlespeech.cli.tts import TTSExecutor
tts_executor = TTSExecutor()
wav_file = tts_executor(
    text="开发过程中遇到问题,热烈欢迎您加入微信交流群中讨论,加群二维码在最下方。",
    output='output.wav',
    am='fastspeech2_csmsc',
    voc='mb_melgan_csmsc',
    lang='zh',
    spk_id=0)
import IPython.display as dp
dp.Audio('output.wav')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值