WindowsPC に 音声生成AI（VALL-E X）環境を構築する方法

# 1. はじめに
今回は、自分自身への備忘録を兼ねて、WindowsPC に 音声生成AI（VALL-E X）環境を構築する方法を、お伝えしたいと思います。

- [参考文献：自分のPCにVALL-E Xをインストールして声優の声を真似する](https://minokamo.tokyo/2023/09/13/6182/)
- [YouTube：自分のPCにVALL-E Xをインストールして声優の声を真似する](https://youtu.be/kpFMvE8VhsI?si=PntQLnw0eQcTpbud)
- [VALL-E-X（音声生成AI）が気になったので使ってみた](https://hastaluegoblog.hatenablog.com/entry/2023/11/02/194722)
- [パソコンニキ：僅かな音声でクローンを作成しテキストから合成音声を生成する (VALL-E X)](https://pcniki.com/vall-e-x/)
- [パソコンニキ：PCで音声の録音とノイズを除去する方法](https://pcniki.com/audio-denoise/)

# 2. この記事を読んでできること
- WindowsPC に 音声生成AI（VALL-E X）環境を構築できるようになる
- 音声生成AI（VALL-E X）を使ってプロンプトからAI音声を作成できるようになる

# 3. 注意事項
- 18歳以上であること

# 4. 前提条件
- NVIDIA Geforce RTX VRAM 8BG 以上
- Windows 10 以降（Update済み、管理者権限あり）の PC で、/Windows/System32 にパスが通っていること
-  Python 3.10.6 がインストールされていること
-  Git for Windows がインストールされていること

# 5. 必要なもの
- WindowsPC（この記事では Windows11 を利用）
- グラフィックボード（NVIDIAの「GeForce RTX20」シリーズ以降、VRAM8GB以上）
- HDD または SSD（十分なディスク容量があること）
- インターネット環境（有線LAN推奨）
- キーボード
- マウス
- HDMIディスプレイ

# 6. FFmpeg のインストール
- [Download FFmpeg サイト](https://ffmpeg.org/download.html) を開く
- 『Windowsアイコン』をクリックし、『Windows builds by Btbn』をクリック
- GitHubサイトから、『[ffmpeg-master-latest-win64-gpl.zip](https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-win64-gpl.zip)』ファイルをダウンロードする
- ダウンロードした.zipファイルを解凍し、「ffmpeg-master-latest-win64-gpl」フォルダを、「C:\Program Files」フォルダ直下にフォルダごとコピーする
- タスクバーの「Windowsアイコン」検索から、『システムの詳細設定』を検索し、起動する
- 「システムのプロパティ」ウィンドウの「詳細設定」タブから、「環境変数」ボタンをクリックする
- 下段の「システム環境変数」ｊから、「Path」の行を選択し、「編集」ボタンをクリックする
- 「新規」ボタンをクリックし、ffmpeg の「bin」フォルダまでのフルパスをペーストする（例： `C:\Program Files\ffmpeg-master-latest-win64-gpl\bin` ）
- 「OK」ボタンをクリック後、「OK」ボタンをクリックし、「システムのプロパティ」ウィンドウを閉じる
- 「環境変数」に設定した「Path」を適用するため、一度、Windowsを再起動する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/55e47ad7-e790-b092-dcff-12c516d891ee.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/690b69f6-1d50-0a5a-b767-2c06eae72af4.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/d437928d-a4f8-1114-1bc3-b1d31b40d72c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/b3c5d225-bfd2-9eb0-f844-a837fea2eafa.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/6302d8c3-96be-c4e3-f7a8-45b4aec91e18.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/b4f7d15d-b630-1855-d767-fa1999656812.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/c6be2611-02ca-4db3-33ac-b0e328bb47fb.png)

＃ 7. CUDA Toolkit 11.8 のインストール
- [CUDA Toolkit 11.8 Downloads サイト](https://developer.nvidia.com/cuda-11-8-0-download-archive) を開き、[cuda_11.8.0_windows_network.exe](https://developer.download.nvidia.com/compute/cuda/11.8.0/network_installers/cuda_11.8.0_windows_network.exe)ファイルを任意のフォルダ内（C:\Downloads\cuda\）ダウンロードする
- ダウンロードしたファイルをダブルクリックし、CUDAをインストールする

- 参考：この記事作成時のファイルバージョン：[cuda_11.8.0_windows_network.exe](https://developer.download.nvidia.com/compute/cuda/11.8.0/network_installers/cuda_11.8.0_windows_network.exe)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/fb48e421-69f6-c779-f6e2-57de7fbaa694.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/438ab494-2cd0-dcbb-453f-76fb05817721.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/369f1cc5-a9d8-6b4c-ac79-b1c3b40971ea.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/af6e1862-c808-0e7f-a0d0-faa0fc1cec51.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/2af0d529-1c96-b1a2-e5fe-35db5f2058a6.png)

# 8. VALL-E-X のセットアップ（所要時間：15分）
- コマンドプロンプトを起動し、VALL-E-X を構築したいフォルダに移動し、git cloneコマンドにて VALL-E-X ソースファイルをダウンロードする

```plaintext:コマンドプロンプト
// gitソースをクローン（ダウンロード）
> git clone https://github.com/Plachtaa/VALL-E-X.git

// フォルダを移動
> cd VALL-E-X

// pythonの仮想環境（vall）を作成
> python -m venv vall

// 所定のディレクトリに移動
> cd vall/Scripts

// 仮想環境を活性化（アクティベート）
> activate

// 仮想環境内で2つ上のフォルダに移動
(vall) VALL-E-X\vall\Scripts> cd ../..

// PyTorchおよび関連パッケージをインストール
(vall) VALL-E-X> pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

// プロジェクトの依存関係ファイルインストール
(vall) VALL-E-X> pip install -r requirements.txt

```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/5a992437-6355-1777-0d46-fa660b8f5f8d.png)

# 9. GPU動作環境の確認
- GPU動作確認用スクリプトファイル（test.py）を作成し、VALL-E-X フォルダ直下にファイル保存する
- 先ほどのコマンドプロンプトの続きから、GPU動作確認用スクリプトを実行する
- およそ1分後に利用可能なグラフィックボード名が出力されればOK

```python:test.py
import torch

# CUDAが利用可能かどうかを確認します
if torch.cuda.is_available():
    # GPUの詳細を表示します
    print(torch.cuda.get_device_name(0))
else:
    print("CUDA is not available.")

```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/051c0517-757a-77c0-2977-0b9b905dddd6.png)

```plaintext:コマンドプロンプト
// GPU動作確認用スクリプトの実行
(vall) VALL-E-X> python test.py

```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/c4102e6a-fcb0-bcc0-787f-c984372dbc80.png)

# 10. VALL-E X の起動（所要時間：5分）
- 先ほどのコマンドプロンプトの続きから、VALL-E X 起動スクリプトを実行する
- しばらくするとブラウザに VALL-E Xサイト http://127.0.0.1:7860/ が表示される

```plaintext:コマンドプロンプト
// VALL-E X の起動
(vall) VALL-E-X> python launch-ui.py

```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/c442a23f-5203-0680-6200-3ff35eef1edf.png)

# 11. サンプル AI音声の生成（所要時間：5分）
- 画面下部の「Examples」欄から、「ja-2.ogg」の行をダブルクリック選択する
- サンプルデータがセットされるので、「uploaded audio prompt」欄の再生ボタンをクリックし、『まねる元の音声』ファイルを聞いてみる
- 「Text」欄に『読み上げてほしいプロンプト文章』を入力し、『Generate!』ボタンをクリックする
- 数秒ほどで「Output Audio」欄に『AI音声』が生成されるので、再生ボタンをクリックし『AI音声』を視聴する

- トラブルシューティング：『Generate!』ボタンをクリックした際に「Error」となった場合は、コマンドプロンプト側を確認し、エラー内容を確認しましょう、わたしの環境では、FFmpeg のインストールが抜けており、FFmpegのインストール＆Windows再起動にて正常動作を確認できました

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/710fecd4-7435-c1e5-d364-5c18330c1cf7.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/fa42cb29-ec08-abe4-5889-0b18a78fb304.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240522/3b7a353b-bc55-3a3a-38e1-ddf61dd2a0a2.png)

# 12. 次回起動用 run.bat の作成
- 毎回、手動で起動するのは疲れますので、、、Stable Diffusion の run.bat を真似て起動用 run.bat を作成してみました
- run.bat ファイルは `VALL-E-X` フォルダ直下に作成し、お使いください
- また、ドライブ名、フォルダパスは、皆さんの環境に合わせて書き換えてお使いください
- run.bat のショートカットファイルをデスクトップなどにコピーしてお使いいただくと、起動が楽になるかと思います

```bat:run.bat
@echo on
D:
cd "D:\Program Files\VALL-E-X"
call vall\Scripts\activate
python "D:\Program Files\VALL-E-X\launch-ui.py"

```

# 13. おわりに
いかがでしたでしょうか？WindowsPC に 音声生成AI（VALL-E X）環境を構築することができたのではないかと思います
今回の記事が、みなさまの学習の参考になれば幸いです

2023/11/14 TAKAHIRO NISHIZONO

---

# 追記. 音声生成AIサービス「ElevenLabs」について
- 今回ご紹介した「VALL-E X」以外に、既にサービス化されている音声生成AIもあります
- 以下の「ElevenLabs」についてのブログ記事がとても参考になるとおもいますので、ご興味あればご参照ください
- ちなみに、有名なくりえみさんの「[英語リップシンク動画](https://www.instagram.com/kurita__emi/reel/CyaWtbfLIUl/)」は、この「ElevenLabs」サービスと「Heygen」サービスとの組み合わせで作成されているとのこと
- [参考文献：【ElevenLabs】自分のクローン音声の一番簡単な作り方](https://ai-island-media.com/2023/09/13/elevenlabs-skill/)

---