最近 VITS TTS が面白くてずっといじっていた
ベースコードを改造して、いくつかの音声合成モデルをファインチューニングしてみました。
その内、イントネーションが割とよく、上出来だなーと思っているのは「あみたろの声素材工房」の音声を使って学習したモデルです。
VITS モデル自体は下記のリンクで公開しています。
こちらのリンクでどいう音声なのか試せます。
音声生成したいテキストを入力して 「Generate Voice!」 ボタンを押せば音声が作成されます
VITS-TTS-Japanese-Only-Amitaro
そのままモデル公開するだけでは使いにくいと思い、 API を作りました。
APIは2種類の出力があって、
渡したパラメータによって出力が変わります。
どちらにも sample_rate は 22050 です。
Python でのAPI呼び出し方法
from gradio_client import Client client = Client("https://lycoris53-VITS-Selected-Amitaro.hf.space/", hf_token = "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") result = client.predict( "おはようございます", # 音声合成したいテキスト "audio_file", # 出力の種類 api_name="/predict" ) # ('', '/tmp/tmp3pgnspeoi4z0mnzh.wav') print(result) # result = ['audio array', 'audio file'] # since we choose "audio_file" here, result[0] will be blank
Jupyter などでしたら下記のコードで音声ファイルプレイできます。
import IPython.display as ipd ipd.display(ipd.Audio(result[1], rate=22050, normalize=False))
Curl などでのAPI呼び出し方法
curl -X POST https://lycoris53-VITS-Selected-Amitaro.hf.space/api/predict -H 'Authorization: Bearer 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' -H 'Content-Type: application/json' -d '{"data": ["おはようございます。", "audio_file"]}'
結果:
{"data":["",{"name":"/tmp/tmppi137sw9.wav","data":null,"is_file":true}],"is_generating":false,"duration":0.7159371376037598,"average_duration":1.1998624205589294}
他のモデルも気が向いたら API 追加します。
何がの要望があったら気軽にご連絡ください!
よかったら Huggingface もどうぞよろしくお願いいたします。
コメント