日別アーカイブ: 2024年1月16日

StreamDiffusion環境構築

Xを徘徊している際に見かけた、StreamDiffusion。気になっていて環境を構築しようとしています。

環境構築方法はStreamDiffusionのGithubに書いてあるのですが

StreamDiffusion
https://github.com/cumulo-autumn/StreamDiffusion

  • Step0: clone this repository
  • Step1: Make Environment
  • Step2: Install PyTorch
  • Step3: Install StreamDiffusion

という形で3段階に見えます。
しかし、当たり前のことではあるのかもしれないですが、Pythonが入っている必要はありますし、そのPythonはちゃんとStep2でインストールするPytorchとバージョンを合わせる必要があるんですよね。

それが分からずに、最新のPython 3.12.1をインストールしてしまったお陰で下記のようなメッセージになりました

>pip3 install torch==2.1.0 torchvision==0.16.0 xformers --index-url https://download.pytorch.org/whl/cu118
ERROR: Could not find a version that satisfies the requirement torch (from versions: none)
ERROR: No matching distribution found for torch

というわけで、備忘録を兼ねて実施したことを記録

今回のStreamDiffusionが必要としているPytorchは、Step2のスクリプトでバージョンを2.1.0を指定しており、2.1.0のPytorchが対応しているのは Python 3.11までっぽい。

ちょっと何をとち狂ったか、Python3.10をインストール。。。
もうこのままで進める

C:\Dev\StreamDiffusion>py -V
Python 3.12.1
C:\Dev\StreamDiffusion>py -3.10 -m venv .venv
C:\Dev\StreamDiffusion>.\.venv\Scripts\activate
(.venv) c:\Dev\StreamDiffusion>py -V
Python 3.10.11

Pythonの仮想環境を指示に従い作成し、Pytorchをインストール

(.venv) c:\Dev\StreamDiffusion>pip3 install torch==2.1.0 torchvision==0.16.0 xformers --index-url https://download.pytorch.org/whl/cu118

私の環境はCUDAが当初11.7でした。

なのでNVIDIAのサイトに行き、11.8をDL&インストール

CUDA Toolkit 11.8 Downloads
https://developer.nvidia.com/cuda-11-8-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_local

続いてStreamDiffusionのインストール

(.venv) c:\Dev\StreamDiffusion>pip install git+https://github.com/cumulo-autumn/StreamDiffusion.git@main#egg=streamdiffusion[tensorrt]

続いてTensorRT extensiojnをインストール

(.venv) c:\Dev\StreamDiffusion>python -m streamdiffusion.tools.install-tensorrt

Windows環境では、pywin32を入れる必要があるとのことなので

(.venv) c:\Dev\StreamDiffusion>pip install --force-reinstall pywin32

これで、一通りの環境構築はできたはず!