Amazonのアソシエイトとして、当ブログは適格販売により収入を得ています。
今回もUbuntu日和からネタを拝借。

こちらの記事で自分の声(自分のじゃなくても良いんですが)を学習し、学習した声で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日和)で「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」で起動したら、














以下は生成した音声データです。
聞いてると恥ずかしくなりますね・・・。
自分はポエマーじゃないんで、これくらいで勘弁してください。
ただ、ゼロショットでこれだけ再現できるとなると、ちゃんと学習させるとどんなデキになるか、ちょっとワクワクします。
また時間をとってチャレンジしてみたいですね。
今回は以上です。
自分が使っている「Pro B60」ですが、記事を書いている現在は在庫が全滅しています。
価格.comでも全て空ですね。
こんな高価なのは、無理に買わなくても下のB580の方が個人的にオススメです。

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

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


コメント