seed-vcが大幅なバージョンアップで動かなくなったので対処する
以前の記事は以下です。
⚙ 実戦形式:CU121 → CU126 対応のための仮想環境リセット手順(前提:CUDA 12.8)
🧱 前提条件
- WindowsマシンでCUDAドライバのバージョンは 12.8(→CUDA 12.6対応ビルドも問題なく動作可能)
- GitHub プロジェクトで
git pull
を実行すると、requirements.txt
に以下のような変更が確認された:
torch --pre --index-url https://download.pytorch.org/whl/nightly/cu126
- これは、従来の
cu121
ビルドからcu126
ビルドに変更された ことを意味する - このように CUDA バージョンに依存する変更が
requirements.txt
にあった場合、既存の Python 仮想環境では互換性が崩れ、動作しない可能性が高い
🔍 なぜ仮想環境を作りなおす必要があるのか?
- Python の仮想環境は、インストールされたライブラリをキャッシュしている
- 以前の仮想環境には cu121ビルド 用の
torch
やtorchvision
などがすでに入っており、それとcu126
の依存ライブラリが競合する pip install -r requirements.txt
を行っても、すでにある依存関係の解決に失敗し、実行時に CUDA 非対応などのエラーが出る
そのため、「仮想環境ごと削除して最初から作りなおす」ことが、最も安全で確実な対処法となる。
🧹 仮想環境の削除方法
✅ 方法1:ターミナルから削除(推奨)
rm -rf .venv
※ PowerShell では次のようにも:
Remove-Item -Recurse -Force .venv
✅ 方法2:GUI操作(初心者におすすめ)
- VSCodeのエクスプローラーで
.venv
フォルダを右クリック → 削除 - エクスプローラー(Windows) でプロジェクトフォルダを開き
.venv
フォルダを削除
→ これで、既存の環境が完全にクリアされる。
🛠 仮想環境リセット後の対応:requirements.txt の修正
💡 実戦で気づいたこと
実はこのトラブル、本物の Linux や WSL 上では発生しない可能性もあります。
というのも、以前 WSL 環境では以下のような cu121 → cu126
の変更に対して、仮想環境を作り直さなくても普通に動いた経験があります。
🤔 なぜ Windows ではうまくいかないのか?
Windows 上では仮想環境内にインストールされた PyTorch などが、CUDA
バージョンと強く結びついており、pip install -r requirements.txt
をそのまま使うと、
- 以前の cu121 版がキャッシュされたまま上書きされなかったり、
- 依存関係の不整合でインストールに失敗したり
- 実行時に “Torch not compiled with CUDA enabled” のようなエラーになる
という現象が起きます。
✏️ requirements.txt の修正(実践で行った内容)
そこで、仮想環境を再構築した上で、requirements.txt
を以下のように修正しました。
🔧 修正内容
--extra-index-url https://download.pytorch.org/whl/nightly/cu126
# PyTorch Nightly CUDA 12.6 ビルドを使用
torch --pre
torchvision --pre
torchaudio --pre
# その他の依存パッケージ
scipy==1.13.1
librosa==0.10.2
huggingface-hub==0.28.1 # ✅ gradioと互換
# accelerate は削除(必要であれば後で追加)
munch==4.0.0
einops==0.8.0
descript-audio-codec==1.0.0
gradio==5.23.0
pydub==0.25.1
resemblyzer
jiwer==3.0.3
transformers==4.38.2
FreeSimpleGUI==5.1.1
soundfile==0.12.1
sounddevice==0.5.0
modelscope==1.18.1
funasr==1.1.5
numpy==1.26.4
hydra-core==1.3.2
pyyaml
python-dotenv
💡 なぜこの修正が必要だったのか?
✅ --extra-index-url
による PyTorch Nightly の優先取得
PyTorch の CUDA 12.6 対応ビルドは pypi.org
には存在せず、専用インデックスで配布されているため、次のように 明示的に PyTorch Nightly のインデックスを追加する必要があります:
--extra-index-url https://download.pytorch.org/whl/nightly/cu126
✅ torch --pre
の指定
これは Nightlyビルド(開発中の最新ビルド) を有効にするための pip
オプションです。
Nightly版には「まだ安定版としてリリースされていないが最新CUDA対応」のビルドが含まれます。
✅ huggingface-hub
と gradio
のバージョン調整
gradio==5.23.0
はhuggingface-hub>=0.28.1
を要求- 一方、古い
accelerate
はhuggingface-hub<0.28
を要求
→ 両立ができないため、accelerate
を一旦除外し、gradio
に合わせて huggingface-hub==0.28.1
に統一
✅ 読者に伝えたいポイント
- Windows では CUDA バージョンが絡む変更に敏感なので、仮想環境の作り直し+requirementsの調整は基本
requirements.txt
のtorch
系は Nightlyのインデックス明示+–pre指定が必要gradio
などのライブラリがhuggingface-hub
に依存しているため、バージョン整合性が重要- WSL や Linux では環境の柔軟性が高く、再作成せず動く場合もある
🧪 CUDA 12.6対応のPyTorchを一発でインストールする方法(実践編)
仮に requirements.txt
を使用せず、最小限の手順でエラーなく一発で動かしたい場合は、以下のように PyTorch系だけを先に個別にインストールするのが効果的です。
✅ 一発インストールコマンド
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu126
このコマンドにより、以下が同時に実現されます:
- **Nightlyビルド(開発版)**の PyTorch を導入
- CUDA 12.6 対応バイナリを明示的に取得
requirements.txt
による依存関係の衝突を回避
🔍 成功したかどうか確認するには?
インストール後、以下のコマンドで CUDAが正しく認識されているか を確認できます:
python -c "import torch; print(torch.version.cuda); print(torch.cuda.is_available())"
✅ 出力例(成功時)
12.6
True

❗ 出力例(失敗時)
None
False
この場合は、インストールされたPyTorchが CPU版である可能性が高いです。
その場合は、もう一度上記の pip install --pre
コマンドで入れ直してください。
💡補足:なぜこの方法が有効なのか?
requirements.txt
に他のパッケージと一緒にtorch
を入れると、依存解決の過程で意図しないバージョンが入ることがある- とくに
torch==2.4.0
のように明示されていた場合、PyPI の CPU版が選ばれてしまうことが多い - それを避けるには、CUDA対応PyTorchだけを個別に先に入れてしまうのが確実
✍️ これが重要だった
実際の現場では、
requirements.txt
だけで完結しないケースも多くあります。
そのときは、PyTorchだけを先にNightly + CUDA対応で入れておくというワークフローを試してみてください。
安定して再現性のある環境構築が可能になります。
🌐 Web UI の起動と GUI 操作
仮想環境と PyTorch のインストールが成功し、requirements.txt
の依存関係も整ったら、いよいよ実行です。
以下のコマンドを実行すると、ブラウザ上でGUI操作が可能なWebインターフェースが起動します。
✅ V2モデル(最新・多機能版)の起動方法
python app_vc_v2.py
実行後、ターミナルに次のような表示が出ます:
* Running on local URL: http://127.0.0.1:7860
→ このURL(http://127.0.0.1:7860
)をブラウザで開くと、GUIが表示され、音声ファイルのドラッグ&ドロップやパラメータ調整などが可能になります。

🤔 なぜV2を選んだのか?
公式の説明では、V2モデル(app_vc_v2.py
)は以下のような特徴を持っています:
- 話者の特徴をより自然に匿名化(anonymization)
- アクセントや話し方の変換にも対応
- ARモデルによるより高精度な変換
- 推論精度をコントロールできる豊富なパラメータ(例:
--similarity-cfg-rate
、--intelligibility-cfg-rate
など)
筆者は「より高機能であろう」と考えてV2を選びましたが、実際に試してみると公式の app.py
や app_vc.py
よりも やや実装が荒い と感じる部分もありました(エラーが出たり、設定が少なかったり)。
とはいえ、ゼロショット変換や匿名化機能など、先進的な機能は試す価値があります。
✅ GUIでの実践的な使い方(軽く紹介)
GUI上では以下のような操作が可能です:
操作 | 説明 |
---|---|
Source Audio に音声ファイルをアップロード | 変換元となる音声 |
Reference Audio に別の声の音声をアップロード | 目標とする声の特徴を抽出するため |
パラメータを変更 | 声質の変化度、滑らかさ、音程保持などが調整可能 |
再生 or 変換ボタンを押す | 推論が走り、変換された音声が生成される |