
音声生成AIのhow to記事です。
今回はStyle-Bert-VITS2を使ってみたので、自分なりに導入方法と基本操作をまとめてみました。
細かいパラメータには触れていないのであらかじめご了承ください。
Style-BERT-VITS2とは?
音声合成(TTS, Text-to-Speech)やデータセット作成、学習、スタイル作成、マージなどが行えるWebUIです。
Bert-VITS2を元に改良を加えたもので、簡単に言えばSDWebUIの音声版みたいなもの。
丁寧に手順や使い方を書いてくれているので、インストールさえしてしまえば誰でも簡単に使えます。

Style-BERT-VITS2の導入
zip版インストール
releasesから最新版のsbv2.zipをダウンロードします。

日本語が含まれないパスに置いて、解凍してください。
中にあるInstall-Style-Bert-VITS2.batを実行すればインストールが始まります。
手動インストール
ターミナルを開いて日本語が含まれないパスに移動します。
cd C:\リポジトリをクローンします。
git clone https://github.com/litagin02/Style-Bert-VITS2.git仮想環境を作成します。
公式はuv使ってますがどっちでもいいです。
※uvは仮想環境を高速に作成できるものです
python -m venv venv仮想環境をアクティベートします。
venv/scripts/activatetorch関連をインストールします。
pip install "torch<2.4" "torchaudio<2.4" --index-url https://download.pytorch.org/whl/cu118依存関係をインストールします。
pip install -r requirements.txtこれでインストールは完了です。
モデルのダウンロード
公式だとインストール手順の最後にモデルのダウンロード方法も入っているのですが、分かりやすいかと思って分けました。
デフォルトのモデルはInitialize.batを実行すればダウンロードできます。
仮想環境をアクティベートして「python initialize.py」実行でもOKです。
モデルのダウンロード(自分で追加する場合)
ネット上探すとStyle-BERT-VITS2用に学習されたモデルが無料/有料で提供されています。
おそらく有名な提供先はBOOTHやHuggingfaceなどです。
・BOOTH 
・Huggingface ※内部のフィルタリングが探しにくいので検索結果貼っときます https://www.google.com/search?q=site:huggingface.co+Style-Bert-VITS2
BOOTHの場合はzipで配布されているのがほとんどなので、そのまま解凍して指定のパスに置いて下さい。
Huggingfaceはリポジトリを指定のパスにクローンします。
※モデルを置くパス
C:\Style-Bert-VITS2\model_assets中見ればデフォルトのモデルが入っているので分かりますが、フォルダごとにモデルが分かれています。

なお、追加したモデルを動かすにはモデルファイルが必要なので、先にデフォルトのモデルをインストールしておく必要があります。
Style-BERT-VITS2の起動
UIは「App.bat」で開けます。
どのタブも基本上部に説明、下部に操作画面です。

Style-BERT-VITS2の使い方
Style-BERT-VITS2では5つのタブがあり、それぞれできることは以下の通りです。
- 音声合成(TTS)
- TTS(Text-to-Speech): テキストを入力して音声を生成。
- データセット作成
- モデル学習用のデータセット(音声ファイルと対応するテキスト)を作成。
- 学習
- データセットを使ってモデルを作成。
- スタイル作成
- 音声から感情表現などを適応できるスタイルを作成。
- マージ
- 複数のモデルから新しいモデルを作成。
音声合成
音声合成のタブではセットしたモデルを使って、入力したテキストを話せます。
まず使用したいモデルを選び、ロードボタンをクリック。
新しいモデルを追加した場合は、更新ボタンで反映できます。

あとは音声合成をクリックすれば、モデルがテキストの内容を話してくれます。

基本はこのテキストから音声の作成ができるタブです。
あとはパラメータで声の高さ、長さ、イントネーション、抑揚の調整などができます。
データセット作成
データセット作成タブでは、自分でモデルを作るための学習素材を作れます。
合成音声のモデルを作るには「ちょうどいい長さの音声」と「その音声のテキスト」が必要で、このタブはそれを作るもの。
まずモデルの元になる音声ファイルを用意して以下のパスに置いてください。
C:\Style-Bert-VITS2\inputs元の音声は合計で最低10分以上、理想は30分〜1時間くらいと言われています。
ただいろいろ情報があり真偽は不明なので自分で試してみてください。
モデル名(話者名)を入力します。

音声をスライスする長さなどの調整をします。
ここもとりあえず最初はデフォルトで試してそのあと調整してみてください。
スライスを実行で音声が分割されます。

最後にスライスした音声から文字起こしをします。
ここもデフォルトで問題ないですが、whisperはモデルによって結構VRAMを消費します。
large3で約VRAM10GB程度と言われているので、スペックに合わせて調整してください。
音声の文字起こしをクリックすると処理が始まります。

以下のパスにesd.listとrawフォルダ+音声データが作られていればOKです。
C:\Style-Bert-VITS2\Data\モデル名学習
学習タブでは、上記で作成したデータセットを使ってモデルを作れます。
まずデータセットで指定したモデル名を入力します。

目安が書いてあるので、バッチサイズをスペックに合わせて調整してください。

他にも細かいパラメータを調整できますが、ここもデフォルトで進めます。
「自動前処理を実行」すると学習前の準備が始まります。
準備が終わったら「学習を開始する」でモデルが作成されます。

終わるとmodel_assetsに保存されるので、音声合成タブで更新すればそのまま使えます。
なお、2時間いかないくらいの音声を使用し、バッチサイズ4で2時間半くらい掛かりました。
スタイル作成
※ここはしっかり触れてないので中途半端です
スタイル作成では、怒り・喜びなど感情表現を適応できるデータが作れます。
作り方を大きく分けると以下2つです。
- 自分でスタイルの素材を用意して作成
- 元の音声からスタイルごとに抽出して作成
1は怒り、喜び、悲しみなどの音声を自分で用意して、そこからそれぞれのスタイルを作成するもの。
2は1つの音声に「怒り、喜び、悲しみ」などが含まれており、それを分類・抽出してスタイルを作成するもの。
一応1を試してスタイルは作成できたのですが、なぜかリストに表示されず適応できませんでした。

なので、ここについてはもう少し触って分かったら修正します。
マージ
マージは2つのモデルから1つのモデルを作成できるタブです。
いろいろなやり方がありますが、とりあえず通常の混ぜる方法を試してみます。
まずモデルA・モデルBにマージしたいモデルをセット。

次に新しいモデル名と要素ごとにweightを指定します。
このweightは簡単に言えば「BをAにどの程度混ぜるか」です。
声質が0.2なら割合はA80%、B20%になります。

最後にモデルファイルのマージをクリックすると処理が開始され、モデルが保存されます。

作ったモデルの音声でテストもできます。

以上Style-Bert-VITS2の導入と基本の使い方について紹介しました。
クレジット表記ありなら商用利用可能なモデルもあり、ロールプレイできるチャットとか、ストーリーものの作品とかそういうのを作っている方もいました。
使い方次第でいろいろなコンテンツが作れると思うので、興味がある方は試してみてください。

