sbv2-api

このプロジェクトはStyle-Bert-ViTS2をONNX化したものをRustで実行するのを目的としています。つまり推論しか行いません。

学習したいのであれば、Style-Bert-ViT2で調べてやってください。

注意JP-Extraしか対応していません。

ONNX化する方法

dabertaとstbv2本体をonnx化する必要があります。

あくまで推奨ですが、onnxsimを使うことをお勧めします。 onnxsim使うことでモデルのサイズを軽くすることができます。

onnxモデルの配置方法

  • models/daberta.onnx - DaBertaのonnxモデル
  • models/sbv2.onnx - Style-Bert-ViT2の本体

Todo

  • WebAPIの実装
  • Rustライブラリの実装
  • 余裕があればPyO3使ってPythonで利用可能にする
  • GPU対応(優先的にCUDA)
  • WASM変換

ディレクトリー説明

  • sbv2_api - Style-Bert-VITS2の推論Web API
  • sbv2_core - Style-Bert-VITS2の推論コア部分

APIの起動方法

cargo run -p sbv2_api -r

CUDAでの起動

cargo run -p sbv2_api -r -F cuda,cuda_tf32

テストコマンド

curl -XPOST -H "Content-type: application/json" -d '{"text": "こんにちは"}' 'http://localhost:3000/synthesize'

謝辞

  • litagin02/Style-Bert-VITS2 - このコードの書くにあたり、ベースとなる部分を参考にさせていただきました。
  • Googlefan - 彼にモデルをONNXヘ変換および効率化をする方法を教わりました。
Description
Infer only tts
Readme 5.5 MiB
Languages
Rust 78.3%
Python 10.8%
Jupyter Notebook 6%
TypeScript 2.5%
Shell 1%
Other 1.4%