GPT-SoVITS-For-Intelを使って音声を生成しよう

Ubuntu
スポンサーリンク

Amazonのアソシエイトとして、当ブログは適格販売により収入を得ています。

今回もUbuntu日和からネタを拝借。

【Ubuntu日和】 【第69回】GPT-SoVITSを使えば、機械が自分の声で喋ってくれるようになるぞ!
「他者とのコミュニケーションに対して心理的支障を抱えている人」は、得てして自分の声や発声能力に対してもコンプレックスを持っているものである。思い通りの声色が出せない、どもってしまう、だんだん声が小さくなっていく、言葉の始めに「あっ」とか「え...

こちらの記事で自分の声(自分のじゃなくても良いんですが)を学習し、学習した声でPCに任意の文章を読み上げさせる方法が書かれていました。
ただ、GeForce(つまりcuda)を使う内容です。
自分としては、持っているArcで動作させたい思いがありましたので、なんとか動かすところまでやっていきます。

GPT-SoVITSはそのままではArcで動かない

GPT-SoVITSをArcで動かす為には、ソースコードのpytorchの部分をtorch.xpu用に書き直さなければならず、なかなか骨の折れる作業になりそうでした。
geminiと相談した結果、GPT-SoVITSのフォーク版「GPT-SoVITS-For-Intel」があるとのことで、こちらを利用させてもらうことにしました。

GPT-SoVITS-For-Intelをインストールしよう

まずは、Arc用のドライバをインストール。
こちらの記事の「ドライバインストール」を参照してください。
B580などでも同じだと思います。
あとは以下のスクリプトのとおり実行していけば動くようになるでしょう。

#インストールに必要なライブラリ等をインストール
sudo apt update
sudo apt install git
sudo apt install curl
sudo apt install build-essential cmake

# uvをcurlでインストール
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env

#GPT-SoVITS-For-Intelのインストール
cd ~
mkdir -p install
cd install
git clone https://github.com/IzayoiSakuya16/GPT-SoVITS-For-Intel.git
cd GPT-SoVITS-For-Intel

#uvでpython3.10環境を作る
uv venv --python 3.10 --seed

# 再び有効化
source .venv/bin/activate

#IPEXのインストール(torch.xpuではありません)
python -m pip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/xpu
python -m pip install intel-extension-for-pytorch==2.8.10+xpu --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us/
python -m pip install oneccl_bind_pt==2.8.0+xpu --index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us/

# GPT-SoVITSのフォルダ内で実行
uv pip install -r requirements.txt

#モデルファイルのダウンロードと配置(git-lfs)
sudo apt install git-lfs
git lfs install
cd ~/install/GPT-SoVITS-For-Intel/GPT_SoVITS/pretrained_models/
git clone https://huggingface.co/lj1995/GPT-SoVITS
mv GPT-SoVITS/* .
cd ../../

#実行
python webui.py

最初はminicondaを使って環境を作る予定だったのですが、

【Ubuntu日和】 【第83回】今からAI画像生成を始める人のためのComfyUIインストール方法
筆者も以前はStable Diffusion WebUIであんな娘やこんな娘を生成させていたものだが、最近はgpt-oss-120bをしばく日々である。

こちらの記事(またもUbuntu日和)で「uv」を使って環境を構築していたので参考にしました。

ただ、IPEX(というかIntel)とuvとの相性が悪いのか、「uv pip install 〜」ではうまくインストールできなかったので、「uv venv –python 3.10 –seed」で通常のpipも使えるようにしました。
こうしないとIPEXがインストールできなかったです。
ちなみにtorch.xpuでは動きません。

GPT-SoVITS-For-Intel」ではモデルファイルは「v4」を使ってね、みたいに書かれてあったのですが、今回は本家の「v2」を使っています。
もし機会があったら「v4」も試してみます。

GPT-SoVITS-For-Intelを起動、ゼロショットTTSで喋らせよう

ところで「ゼロショット」ってなんだろう?
geminiに聞いたところ、「その対象(あなたの声など)を一度も学習(Training)することなく、即座にタスクを実行できる」
もののことだそうです。
時間があったら、ちゃんと学習させて喋らせてみたいですね。

では、「python webui.py」で起動したら、

次は「1c-推論」タブをクリック。

以下は生成した音声データです。

聞いてると恥ずかしくなりますね・・・。
自分はポエマーじゃないんで、これくらいで勘弁してください。

ただ、ゼロショットでこれだけ再現できるとなると、ちゃんと学習させるとどんなデキになるか、ちょっとワクワクします。
また時間をとってチャレンジしてみたいですね。

今回は以上です。


自分が使っている「Pro B60」ですが、記事を書いている現在は在庫が全滅しています。
価格.comでも全て空ですね。
こんな高価なのは、無理に買わなくても下のB580の方が個人的にオススメです。

SPARKLE Intel Arc A60 搭載 グラフィックボード ロープロファイル 対応 【国内正規代理店品】 SBP60W-24G
【型番】:SBP60W-24G(SB60W-24G) 【GPU】:Intel Arc A60 【GPUアーキテクチャ】:Intel Xe HPG 【メモリ容量】:24GB GDDR6 【メモリバス幅】:192bit 【インターフェース】:P...

B580は玄人志向のDFが安く、全長240mmと小さいので取り回しも良くオススメです。
負荷中はちょっとうるさいかもしれませんが、B60よりははるかにマシでしょう。

玄人志向 Intel Arc B580 搭載 グラフィックボード GDDR6 12GB 【国内正規代理店品】 AR-B580D6-E12GB/DF
【型番】:AR-B580D6-E12GB/DF 【GPU】:Intel Arc B580 【コアクロック】:Boost:2670 MHz 【メモリ容量】:12GB GDDR6 【メモリバス幅】:256bit 【メモリスピード】:19Gbps...

記事中にA380でも大丈夫そうと書きましたが、Amazonでは価格が高くコスパが悪いです・・・。
状態の良い中古品の方が良いかもしれません。

SPARKLE Intel Arc A380搭載「GENIE」シリーズ グラフィックカード [ SA380G-6G ]
SPARKLE Intel Arc A380 GENIE は、AV1 ハードウェア エンコードと AI 強化 XeSS アップスケーリングにより、創作とゲームを強化します。 GENIE シリーズは、A380 のパワーを損なうことなく、カード...

コメント

タイトルとURLをコピーしました