とりあえず、以下を参考に進めてみる。
git clone https://github.com/cumulo-autumn/StreamDiffusion
StreamDiffusionのフォルダに移動するか、コマンドプロンプトを開きなおしてから
仮想環境を作る。
python -m venv .venv .\.venv\Scripts\activate
で、次はPytorchのインストールなんだけど、参照先だとCuda121を前提にしたものをインストールしていた。
ひとまず以下のコマンドでCudaのバージョンを確認
nvcc -V
私のPCだとCuda11.7が入っていた。
一応Cuda11.8を入れて、Cuda11.8に合わせてPytorchを入れることにした。
ってわけで、ここからCuda11.8のインストーラーを落として実行。
CUDA Toolkit 11.8 Downloads | NVIDIA Developer
インストールが完了したら、コマンドプロンプトを開きなおして再度バージョン確認。
nvcc -V
バージョン確認できたので、もう1度Pythonの仮想環境に入りなおす。
.\.venv\Scripts\activate
改めてPytorchをインストール。
pip install torch==2.1.0 torchvision==0.16.0 xformers --index-url https://download.pytorch.org/whl/cu118
続いて、StreamDiffusionをインストール。
恥ずかしながら、git cloneしたのとはまた別なの?というのがよく分かってない(笑)
ま、READMEにも書いてあるし、その通り進めてみる。
pip install git+https://github.com/cumulo-autumn/StreamDiffusion.git@main#egg=streamdiffusion
TensorRTとpywin32をインストール。pywin32はWindowsの場合だけ必要らしい。
python -m streamdiffusion.tools.install-tensorrt pip install pywin32
StreamDiffusion自体はこれで動くけど、
さらにexamplesのものを実行するにはさらにライブラリがいるらしい。
ってことで。
pip install -r examples/screen/requirements.txt
続いて
python examples/screen/main.py
Press Enter to start という画面が出てきたらEnterキーを押す。
なんか色々ダウンロードが始まって、画像がどんどん自動生成されるようになる。
使い方としては、「Press Enter to start」の画面を生成元となる場所に合わせてからEnterを押すらしい。
で、やってみたのが以下。
Stream Diffusion、とりあえずゲーム画面でexamples/screenを試してみた。やたらと女の子が生成されてホラー。そういう設定になってるんだろうけど。 pic.twitter.com/h0y4WaXC9e
— 人生の風見鶏色 (@moscow_0_0) December 28, 2023
RTX 4070環境でやってるけど、FPS8.8くらい出てる。
これはすごい。