Maybe v2.3
This commit is contained in:
29
README.md
29
README.md
@@ -7,14 +7,15 @@ https://github.com/litagin02/Style-Bert-VITS2/assets/139731664/e853f9a2-db4a-420
|
||||
- **解説チュートリアル動画** [YouTube](https://youtu.be/aTUSzgDl1iY) [ニコニコ動画](https://www.nicovideo.jp/watch/sm43391524)
|
||||
- [English README](docs/README_en.md)
|
||||
- [](http://colab.research.google.com/github/litagin02/Style-Bert-VITS2/blob/master/colab.ipynb)
|
||||
- [🤗 オンラインデモはこちらから](https://huggingface.co/spaces/litagin/Style-Bert-VITS2-JVNV)
|
||||
- [🤗 オンラインデモはこちらから](https://huggingface.co/spaces/litagin/Style-Bert-VITS2-Editor-Demo)
|
||||
- [Zennの解説記事](https://zenn.dev/litagin/articles/034819a5256ff4)
|
||||
|
||||
- [**リリースページ**](https://github.com/litagin02/Style-Bert-VITS2/releases/)、[更新履歴](docs/CHANGELOG.md)
|
||||
- [**リリースページ**](https://github.com/litagin02/Style-Bert-VITS2/releases/)、[更新履歴](/docs/CHANGELOG.md)
|
||||
|
||||
- 2024-02-26: ver 2.3 (辞書機能とエディター機能)
|
||||
- 2024-02-09: ver 2.2
|
||||
- 2024-02-07: ver 2.1
|
||||
- 2024-02-03: ver 2.0
|
||||
- 2024-02-03: ver 2.0 (JP-Extra)
|
||||
- 2024-01-09: ver 1.3
|
||||
- 2023-12-31: ver 1.2
|
||||
- 2023-12-29: ver 1.1
|
||||
@@ -33,7 +34,7 @@ This repository is based on [Bert-VITS2](https://github.com/fishaudio/Bert-VITS2
|
||||
|
||||
## 使い方
|
||||
|
||||
<!-- 詳しくは[こちら](docs/tutorial.md)を参照してください。 -->
|
||||
CLIでの使い方は[こちら](/docs/CLI.md)を参照してください。
|
||||
|
||||
### 動作環境
|
||||
|
||||
@@ -45,13 +46,14 @@ This repository is based on [Bert-VITS2](https://github.com/fishaudio/Bert-VITS2
|
||||
|
||||
Windowsを前提としています。
|
||||
|
||||
1. [このzipファイル](https://github.com/litagin02/Style-Bert-VITS2/releases/download/2.2/Style-Bert-VITS2.zip)を**パスに日本語や空白が含まれない場所に**ダウンロードして展開します。
|
||||
1. [このzipファイル](https://github.com/litagin02/Style-Bert-VITS2/releases/download/2.3/Style-Bert-VITS2.zip)を**パスに日本語や空白が含まれない場所に**ダウンロードして展開します。
|
||||
- グラボがある方は、`Install-Style-Bert-VITS2.bat`をダブルクリックします。
|
||||
- グラボがない方は、`Install-Style-Bert-VITS2-CPU.bat`をダブルクリックします。CPU版では学習はできませんが、音声合成とマージは可能です。
|
||||
2. 待つと自動で必要な環境がインストールされます。
|
||||
3. その後、自動的に音声合成するためのWebUIが起動したらインストール成功です。デフォルトのモデルがダウンロードされるているので、そのまま遊ぶことができます。
|
||||
3. その後、自動的に音声合成するためのエディターが起動したらインストール成功です。デフォルトのモデルがダウンロードされるているので、そのまま遊ぶことができます。
|
||||
|
||||
またアップデートをしたい場合は、`Update-Style-Bert-VITS2.bat`をダブルクリックしてください。ただし**1.x**から**2.x**へアップデートする場合は、[このbatファイル](https://github.com/litagin02/Style-Bert-VITS2/releases/download/2.2/Update-to-JP-Extra.bat)を`Style-Bert-VITS2`フォルダがあるフォルダ(`Update-Style-Bert-VITS2.bat`等があるフォルダ)へ保存してからダブルクリックしてください。
|
||||
またアップデートをしたい場合は、`Update-Style-Bert-VITS2.bat`をダブルクリックしてください。ただし以下の場合は、専用のアップデートbatファイルを`Style-Bert-VITS2`フォルダがあるフォルダ(`Update-Style-Bert-VITS2.bat`等があるフォルダ)へ保存してからダブルクリックしてください。
|
||||
- **2.3以前**から**2.3以上**(辞書・エディター付き)へアップデート: [Update-to-Dict-Editor.bat](https://github.com/litagin02/Style-Bert-VITS2/releases/download/2.3/Update-to-Dict-Editor.bat)
|
||||
|
||||
#### GitやPython使える人
|
||||
|
||||
@@ -69,7 +71,12 @@ python initialize.py # 必要なモデルとデフォルトTTSモデルをダ
|
||||
|
||||
### 音声合成
|
||||
|
||||
`App.bat`をダブルクリックか、`python app.py`するとWebUIが起動します(`python app.py --cpu`でCPUモードで起動、学習中チェックに便利です)。インストール時にデフォルトのモデルがダウンロードされているので、学習していなくてもそれを使うことができます。
|
||||
音声合成エディターは`Editor.bat`をダブルクリックか、`python server_editor.py --inbrowser`すると起動します(`--device cpu`でCPUモードで起動)。画面内で各セリフごとに設定を変えて原稿を作ったり、保存や読み込みや辞書の編集等ができます。
|
||||
インストール時にデフォルトのモデルがダウンロードされているので、学習していなくてもそれを使うことができます。
|
||||
|
||||
エディター部分は[別リポジトリ](https://github.com/litagin02/Style-Bert-VITS2-Editor)に分かれています。
|
||||
|
||||
バージョン2.2以前での音声合成WebUIは、`App.bat`をダブルクリックか、`python app.py`するとWebUIが起動します。
|
||||
|
||||
音声合成に必要なモデルファイルたちの構造は以下の通りです(手動で配置する必要はありません)。
|
||||
```
|
||||
@@ -91,7 +98,7 @@ model_assets
|
||||
### 学習
|
||||
|
||||
- CLIでの学習の詳細は[こちら](docs/CLI.md)を参照してください。
|
||||
- paperspace上での学習の詳細は[こちら](docs/paperspace.md)を参照してください。
|
||||
- paperspace上での学習の詳細は[こちら](docs/paperspace.md)、colabでの学習は[こちら](http://colab.research.google.com/github/litagin02/Style-Bert-VITS2/blob/master/colab.ipynb)を参照してください。
|
||||
|
||||
学習には2-14秒程度の音声ファイルが複数と、それらの書き起こしデータが必要です。
|
||||
|
||||
@@ -126,6 +133,10 @@ API仕様は起動後に`/docs`にて確認ください。
|
||||
- 入力文字数はデフォルトで100文字が上限となっています。これは`config.yml`の`server.limit`で変更できます。
|
||||
- デフォルトではCORS設定を全てのドメインで許可しています。できる限り、`config.yml`の`server.origins`の値を変更し、信頼できるドメインに制限ください(キーを消せばCORS設定を無効にできます)。
|
||||
|
||||
また音声合成エディターのAPIサーバーは`python server_editor.py`で起動します。があまりまだ整備をしていません。[エディターのリポジトリ](https://github.com/litagin02/Style-Bert-VITS2-Editor)から必要な最低限のAPIしか現在は実装していません。
|
||||
|
||||
音声合成エディターのウェブデプロイについては[このDockerfile](Dockerfile.deploy)を参考にしてください。
|
||||
|
||||
### マージ
|
||||
|
||||
2つのモデルを、「声質」「声の高さ」「感情表現」「テンポ」の4点で混ぜ合わせて、新しいモデルを作ることが出来ます。
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
Bert,,,8609,名詞,固有名詞,一般,*,*,*,Bert,バアト,バアト,0/3,*
|
||||
VITS,,,8609,名詞,固有名詞,一般,*,*,*,VITS,ビッツ,ビッツ,0/3,*
|
||||
VITS2,,,8609,名詞,固有名詞,一般,*,*,*,VITS2,ビッツツウ,ビッツツウ,4/5,*
|
||||
VITS二,,,8609,名詞,固有名詞,一般,*,*,*,VITS二,ビッツツー,ビッツツー,4/5,*
|
||||
BertVITS,,,8609,名詞,固有名詞,一般,*,*,*,BertVITS,バアトビッツ,バアトビッツ,4/6,*
|
||||
担々麺,,,8609,名詞,固有名詞,一般,*,*,*,担々麺,タンタンメン,タンタンメン,3/6,*
|
||||
|
||||
|
@@ -4,8 +4,10 @@
|
||||
|
||||
### 大きな変更
|
||||
|
||||
大きい変更をいくつかしたため、**アップデートはまた専用の手順**が必要です。下記の指示にしたがってください。
|
||||
|
||||
#### ユーザー辞書機能
|
||||
あらかじめ辞書に固有名詞を追加することができ、それが学習時・音声合成時の読み取得部分に適応されます。辞書の追加・編集は次のエディタ経由で行ってください。または、手持ちのOpenJTalkのcsv形式の辞書がある場合は、`dict_data/default.csv`ファイルを直接上書きや追加しても可能です。
|
||||
あらかじめ辞書に固有名詞を追加することができ、それが**学習時**・**音声合成時**の読み取得部分に適応されます。辞書の追加・編集は次のエディタ経由で行ってください。または、手持ちのOpenJTalkのcsv形式の辞書がある場合は、`dict_data/default.csv`ファイルを直接上書きや追加しても可能です。
|
||||
|
||||
使えそうな辞書(ライセンス等は各自ご確認ください)(他に良いのがあったら教えて下さい):
|
||||
|
||||
@@ -26,7 +28,7 @@
|
||||
|
||||
### バグ修正
|
||||
|
||||
- 「うっうあ」等の特定の状況で読みが正しく取得できないバグの修正
|
||||
- 特定の状況で読みが正しく取得できず `list index out of range` となるバグの修正
|
||||
- 前処理時に、書き起こしファイルのある行の形式が不正だと、書き起こしファイルのそれ以降の内容が消えてしまうバグの修正
|
||||
- faster-whisperが1.0.0にメジャーバージョンアップされ(今のところ)大幅に劣化したので、バージョンを0.10.1へ固定
|
||||
|
||||
@@ -37,14 +39,32 @@
|
||||
- コマンドラインで前処理や学習が簡単にできるよう、前処理を行う`preprocess_all.py`を追加(詳しくは[CLI.md](/docs/CLI.md)を参照)
|
||||
- 学習の際に、自動的に自分のhugging faceリポジトリへ結果をアップロードするオプションを追加。コマンドライン引数で`--repo_id username/my_model`のように指定してください(詳しくは[CLI.md](/docs/CLI.md)を参照)。🤗の無制限ストレージが使えるのでクラウドでの学習に便利です。
|
||||
- 学習時にデコーダー部分を凍結するオプションの追加。品質がもしかしたら上がるかもしれません。
|
||||
- `initialize.py`に引数`--dataset_root`と`--assets_root`を追加し、`configs/paths.yml`を変更できるようにした
|
||||
- `initialize.py`に引数`--dataset_root`と`--assets_root`を追加し、`configs/paths.yml`をその時点で変更できるようにした
|
||||
|
||||
### その他
|
||||
|
||||
- [paperspaceでの学習の手引きを追加](/docs/paperspace.md)、paperspaceでのimageに使える[Dockerfile](/Dockerfile.train)を追加
|
||||
- [CLIでの学習の仕方を追加](/docs/CLI.md)
|
||||
- [CLIでの各種処理の実行の仕方を追加](/docs/CLI.md)
|
||||
- [Hugging Face spacesで遊べる音声合成エディタ](https://huggingface.co/spaces/litagin/Style-Bert-VITS2-Editor-Demo)をデプロイするための[Dockerfile](Dockerfile.deploy)を追加
|
||||
|
||||
### アップデート手順
|
||||
|
||||
- [Update-to-Dict-Editor.bat](https://github.com/litagin02/Style-Bert-VITS2/releases/download/2.3/Update-to-Dict-Editor.bat)をダウンロードし、`Style-Bert-VITS2`フォルダがある場所(インストールbatファイルとかがあったところ)においてダブルクリックしてください。
|
||||
|
||||
- 手動での場合は、以下の手順で実行してください:
|
||||
```bash
|
||||
git pull
|
||||
venv\Scripts\activate
|
||||
pip uninstall pyopenjtalk-prebuilt
|
||||
pip install -r requirements.txt
|
||||
# python initialize.py # これを1.x系からのアップデートの場合は実行してください
|
||||
python server_editor.py --inbrowser
|
||||
```
|
||||
|
||||
### 新規インストール手順
|
||||
[このzip](https://github.com/litagin02/Style-Bert-VITS2/releases/download/2.3/Style-Bert-VITS2.zip)をダウンロードし、解凍してください。
|
||||
を展開し、`Install-Style-Bert-VITS2.bat`をダブルクリックしてください。
|
||||
|
||||
|
||||
## v2.2 (2024-02-09)
|
||||
|
||||
|
||||
@@ -37,7 +37,10 @@ if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
pip install -U -r Style-Bert-VITS2\requirements.txt
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
echo Style-Bert-VITS2のアップデートが完了しました。
|
||||
echo Update completed. Running Style-Bert-VITS2 Editor...
|
||||
|
||||
@REM Style-Bert-VITS2 Editorを起動
|
||||
python server_editor.py --inbrowser
|
||||
|
||||
pause
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ if not exist %CURL_CMD% (
|
||||
|
||||
@REM Style-Bert-VITS2.zip をGitHubのmasterの最新のものをダウンロード
|
||||
%CURL_CMD% -Lo Style-Bert-VITS2.zip^
|
||||
https://github.com/litagin02/Style-Bert-VITS2/archive/refs/heads/dev.zip
|
||||
https://github.com/litagin02/Style-Bert-VITS2/archive/refs/heads/master.zip
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
@REM Style-Bert-VITS2.zip を解凍(フォルダ名前がBert-VITS2-masterになる)
|
||||
@@ -24,8 +24,8 @@ del Style-Bert-VITS2.zip
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
@REM Bert-VITS2-masterの中身をStyle-Bert-VITS2に上書き移動
|
||||
xcopy /QSY .\Style-Bert-VITS2-dev\ .\Style-Bert-VITS2\
|
||||
rmdir /s /q Style-Bert-VITS2-dev
|
||||
xcopy /QSY .\Style-Bert-VITS2-master\ .\Style-Bert-VITS2\
|
||||
rmdir /s /q Style-Bert-VITS2-master
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
@REM 仮想環境を有効化
|
||||
@@ -49,16 +49,19 @@ if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
pushd Style-Bert-VITS2
|
||||
|
||||
@REM JP-Extra版以前からの場合のために一応initialize.pyを実行
|
||||
|
||||
echo python initialize.py
|
||||
python initialize.py
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
echo ----------------------------------------
|
||||
echo Update completed. Running Style-Bert-VITS2 Editor...
|
||||
echo ----------------------------------------
|
||||
|
||||
@REM Style-Bert-VITS2 Editorを起動
|
||||
python server_editor.py --inbrowser
|
||||
|
||||
pause
|
||||
|
||||
popd
|
||||
|
||||
|
||||
pause
|
||||
|
||||
popd
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
chcp 65001 > NUL
|
||||
@echo off
|
||||
|
||||
pushd %~dp0
|
||||
set PS_CMD=PowerShell -Version 5.1 -ExecutionPolicy Bypass
|
||||
|
||||
set CURL_CMD=C:\Windows\System32\curl.exe
|
||||
if not exist %CURL_CMD% (
|
||||
echo [ERROR] %CURL_CMD% が見つかりません。
|
||||
pause & popd & exit /b 1
|
||||
)
|
||||
|
||||
@REM Style-Bert-VITS2.zip をGitHubのmasterの最新のものをダウンロード
|
||||
%CURL_CMD% -Lo Style-Bert-VITS2.zip^
|
||||
https://github.com/litagin02/Style-Bert-VITS2/archive/refs/heads/master.zip
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
@REM Style-Bert-VITS2.zip を解凍(フォルダ名前がBert-VITS2-masterになる)
|
||||
%PS_CMD% Expand-Archive -Path Style-Bert-VITS2.zip -DestinationPath . -Force
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
@REM 元のzipを削除
|
||||
del Style-Bert-VITS2.zip
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
@REM Bert-VITS2-masterの中身をStyle-Bert-VITS2に上書き移動
|
||||
xcopy /QSY .\Style-Bert-VITS2-master\ .\Style-Bert-VITS2\
|
||||
rmdir /s /q Style-Bert-VITS2-master
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
@REM 仮想環境のpip requirements.txtを更新
|
||||
|
||||
echo call .\Style-Bert-VITS2\scripts\activate.bat
|
||||
call .\Style-Bert-VITS2\venv\Scripts\activate.bat
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
echo pip uninstall -y pyopenjtalk-prebuilt pyopenjtalk
|
||||
pip uninstall -y pyopenjtalk-prebuilt pyopenjtalk
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
echo pip install -U pyopenjtalk-dict
|
||||
pip install -U pyopenjtalk-dict
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
echo pip install -U -r Style-Bert-VITS2\requirements.txt
|
||||
pip install -U -r Style-Bert-VITS2\requirements.txt
|
||||
if %errorlevel% neq 0 ( pause & popd & exit /b %errorlevel% )
|
||||
|
||||
pushd Style-Bert-VITS2
|
||||
|
||||
@REM 初期化(必要なモデルのダウンロード)
|
||||
python initialize.py
|
||||
|
||||
echo Style-Bert-VITS2の2.xへのアップデートが完了しました。
|
||||
|
||||
pause
|
||||
|
||||
popd
|
||||
|
||||
popd
|
||||
@@ -212,7 +212,9 @@ class TextRequest(BaseModel):
|
||||
@router.post("/g2p")
|
||||
async def read_item(item: TextRequest):
|
||||
try:
|
||||
kata_tone_list = g2kata_tone(item.text, ignore_unknown=True)
|
||||
# 最初に正規化しないと整合性がとれない
|
||||
text = text_normalize(item.text)
|
||||
kata_tone_list = g2kata_tone(text, ignore_unknown=True)
|
||||
except Exception as e:
|
||||
raise HTTPException(
|
||||
status_code=400,
|
||||
|
||||
Reference in New Issue
Block a user