ラズパイでも動く軽量TTSモデルのpiperを改良した日本語対応のpiper-plusの開発

初めに

以前から以下のような記事を書いてより軽量なモデルでローカルで動くTTSがないかの検証をしていました。

ayousanz.hatenadiary.jp

ayousanz.hatenadiary.jp

日本語の学習についての検証は以下です。

ayousanz.hatenadiary.jp

これらの検証を元に以下の日本語対応を行ったpiper-plusを制作してOSSとして公開をしました!

github.com

開発環境

改善内容

改善内容は README に詳細を記載していますが、以下のような対応をしています。主に日本語対応と学習環境の改善になります。

  • openjtalkを使った日本語の前処理の対応
  • カスタム辞書を使った読みの制御対応
  • その他もろもろ

デモを簡単に確認ができるように GitHub Actionsを使ったデプロイ処理および GitHub Pagesへのデモの公開を行っています

以下では、Web Assemblyに対応して Web上でもローカルで動かせるように対応したデモになります。 ayutaz.github.io

また Huggingface Spaceのデモ(dockerで動くデモ)も用意しています

huggingface.co

以下のスライドにて piper-plusの説明をしているので、詳しくはこちらをご確認ください

www.docswell.com

課題

現時点の課題として openjtalkのアクセント情報をすべて使って学習ができているわけではないので、日本語の発音が怪しい部分があります。また英語に関しても espeak-ngに依存しないようにしたため、発音が微妙です こちらは今後改善予定です