技術系なぶろぐ
VELL-E X でしゃべってもらう
人工知能ネタです。VELL-E X を使ってみたいと思います。
ナニモノ?かというと、声真似でセリフをしゃべってくれます。
いわゆる音声合成ものですね。
もともとは Microsoft が公開したもので、当然その時はクラウドサービス。それの OSS 版のようです。
声真似はどうするかっていうと、マイクで聞かせるか、音声ファイルを読ませてそこから声の特徴を抽出してくれます。
しゃべる内容はテキストで入力するんですが、ひとつ大きな難点が。イントネーションの支持ができません。かといって棒読みかっていうと、案外そうでもないです。
つまり、イントネーションとか抑揚は何度も生成してみて、気に入ったものが出るまで試すしかないです。
インストール
さて、ではインストール方法です。
といっても、このサイトが非常にわかりやすくて、このページのコマンドをそのまんま流すだけでOK!
だとこのブログを書く意味がなくて、一か所だけハマりポイントがあります。
前提
Windowsマシンを準備します。GPUがあったほうがいいです。
VELL-E X は CPU でも動きますし、VMware上の仮想マシンでも動きます。だけど、やっぱり時間かかります。パススルーで仮想マシンからGPU使ってもいいですし、物理マシンでやってもいいです。
私は Stable Diffusionで使ってる、Tesla K80 でやります。
あと、Python。
インストールしておいてください。私の環境では、Stable Diffusion ために Ver.3.10.9 を入れてまして、これで動きました。
事前準備
Visual Studio Build Tools 2019 と、ffmpeg をインストールします。
Visual Studio Build Tools が必要なんですが、最新の 2022 ではダメです。2019 でないとうまくいきません。そんな状況なのに、相手は Microsoft。奴らは最新版以外を使わせないことに必死なのか普通の方法では、2022 しかダウンロードできません。
2019 をダウンロードするページもあるんですが、MS アカウントでのログインを要求した上、ダウンロードリンクが見つからないという嫌がらせをされました(2023/9/30現在)
なので、このサイトを参考に、直接リンクでダウンロードします。
インストールオプションはこんな感じ
このリンクもいつまで生きてるかな・・・・?というのはありますが。
なお、ここで取れるインストーラも、ダウンローダーなので、インストール自体、いつまで使えるかな?という心配もありますが。
VELL-E X デプロイ
git でデプロイします
git clone https://huggingface.co/spaces/Plachta/VALL-E-X
cd VALL-E-X
python -m venv venv
venv\Scripts\activate.bat
参考サイト、ほぼそのままです。
いちおー解説しときますと、1行目、git clone これはいいですよね。わからん人はググって
2,3,4 行目、python の仮想環境を構築して構築した仮想環境に移行します。
pip でライブラリをインストールしますので、VELL-E X 専用の環境を作って pip での環境を独立させます。
参考サイトでは、activate.ps1 を実行することで環境を切り替えてますが、私はバッチファイルでやってます。まぁ、どっちでもいいです。たんに ps1 の実行許可設定がメンド臭かっただけとも言いますが。
実行環境の構築
pip による各種ライブラリのインストールを行います。
事前準備で Visual Studio Build Tools をインストールしておいたのがここで効いてきます。
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt
この中の requirements.txt によるインストールの中に pyopenjtalk が指示されてるのですが、どうもこのモジュール、インストールの過程でコンパイルを行うようなんです。このコンパイルで Visual Studio Build Tools を使います。
なので、Visual Studio Build Tools が入ってなければ、当然失敗します。CMake が見つからないとか、C コンパイラが見つからないというエラーが出たら、Visuial Studio Build Tools が入ってません。
一方で、Visual Studio Build Tools 2022 をインストールしていると、ここでコンパイルエラーになります。コンパイラのエラーチェックが厳しくなったのかな?2022 でエラーになる環境でも、2019 に変えると通ります。
なお、一度 Visual Studio Build Tools 2022 でコンパイルを挑戦してしまうと、環境かなにかに取り込まれるらしく、追加で Visual Studio Build Tools 2019 をインストールしたり、環境変数 PATH を書き換えても 2022 を使おうとします。 Visual Studio Build Tools 2022 を Uninstall するか、git からやり直さないと、インストールが成功しません。
起動!
さぁ起動しましょう。
python app.py
起動が完了すると、http://127.0.0.1:7860 で接続できます。