d8ahazard / sd_dreambooth_extension

Other
1.85k stars 283 forks source link

[Bug]: bitsandbytes version check in postinstall.py fails when TypeNone #1420

Closed schreeedi closed 6 months ago

schreeedi commented 6 months ago

Is there an existing issue for this?

What happened?

Install in wsl2 docker -> no bitsandbytes available -> TypeError: argument of type 'NoneType' is not iterable

Steps to reproduce the problem

  1. Install in wsl2 docker
  2. no bitsandbytes available
  3. version check in line 206 returns None
  4. Error occurs:
    2023-12-22 10:08:04 Checking bitsandbytes (Linux)
    2023-12-22 10:08:04 Traceback (most recent call last):
    2023-12-22 10:08:04   File "/stable-diffusion-webui/./extensions/sd_dreambooth_extension/install.py", line 35, in <module>
    2023-12-22 10:08:04     actual_install()
    2023-12-22 10:08:04   File "/stable-diffusion-webui/extensions/sd_dreambooth_extension/postinstall.py", line 45, in actual_install
    2023-12-22 10:08:04     check_bitsandbytes()
    2023-12-22 10:08:04   File "/stable-diffusion-webui/extensions/sd_dreambooth_extension/postinstall.py", line 242, in check_bitsandbytes
    2023-12-22 10:08:04     if "0.41.2" not in bitsandbytes_version:
    2023-12-22 10:08:04 TypeError: argument of type 'NoneType' is not iterable

Commit and libraries

2023-12-22 10:08:04 Initializing Dreambooth 2023-12-22 10:08:04 Dreambooth revision: 113708fdaab97ff905c646b92c9a1bd17af8941f 2023-12-22 10:08:04 Checking xformers... 2023-12-22 10:08:04 Checking bitsandbytes... 2023-12-22 10:08:04 Checking bitsandbytes (Linux) 2023-12-22 10:08:04 Traceback (most recent call last): 2023-12-22 10:08:04 File "/stable-diffusion-webui/./extensions/sd_dreambooth_extension/install.py", line 35, in 2023-12-22 10:08:04 actual_install() 2023-12-22 10:08:04 File "/stable-diffusion-webui/extensions/sd_dreambooth_extension/postinstall.py", line 45, in actual_install 2023-12-22 10:08:04 check_bitsandbytes() 2023-12-22 10:08:04 File "/stable-diffusion-webui/extensions/sd_dreambooth_extension/postinstall.py", line 242, in check_bitsandbytes 2023-12-22 10:08:04 if "0.41.2" not in bitsandbytes_version: 2023-12-22 10:08:04 TypeError: argument of type 'NoneType' is not iterable

Command Line Arguments

No

Console logs

2023-12-22 10:07:57 Mounted embeddings
2023-12-22 10:07:57 Mounted .cache
2023-12-22 10:07:57 Mounted styles.csv
2023-12-22 10:07:57 Mounted ui-config.json
2023-12-22 10:07:57 Mounted models
2023-12-22 10:07:57 Mounted .cache
2023-12-22 10:07:57 Mounted config_states
2023-12-22 10:07:57 Mounted config.json
2023-12-22 10:07:57 Mounted extensions
2023-12-22 10:07:57 Installing extension dependencies (if any)
2023-12-22 10:07:57 /stable-diffusion-webui/./extensions/sd-webui-controlnet/install.py:3: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
2023-12-22 10:07:57   import pkg_resources
2023-12-22 10:07:57 /stable-diffusion-webui/./extensions/sd-webui-infinite-image-browsing/install.py:3: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
2023-12-22 10:07:57   import pkg_resources
2023-12-22 10:07:57 /stable-diffusion-webui/./extensions/sd-webui-reactor/install.py:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
2023-12-22 10:07:57   import pkg_resources
2023-12-22 10:07:59 ReActor preheating... Device: CUDA
2023-12-22 10:08:02 [2023-12-22 09:08:02,729][DEBUG][torchaudio._extension] - Failed to initialize sox extension
2023-12-22 10:08:02 Traceback (most recent call last):
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/__init__.py", line 60, in <module>
2023-12-22 10:08:02     _init_sox()
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 70, in _init_sox
2023-12-22 10:08:02     _load_lib("libtorchaudio_sox")
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 64, in _load_lib
2023-12-22 10:08:02     torch.ops.load_library(path)
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torch/_ops.py", line 852, in load_library
2023-12-22 10:08:02     ctypes.CDLL(path)
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/ctypes/__init__.py", line 374, in __init__
2023-12-22 10:08:02     self._handle = _dlopen(self._name, mode)
2023-12-22 10:08:02 OSError: libsox.so: cannot open shared object file: No such file or directory
2023-12-22 10:08:02 [2023-12-22 09:08:02,730][DEBUG][torchaudio._extension.utils] - Attempting to load FFmpeg version 6.
2023-12-22 10:08:02 [2023-12-22 09:08:02,731][DEBUG][torchaudio._extension.utils] - Failed to load FFmpeg 6 extension.
2023-12-22 10:08:02 Traceback (most recent call last):
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 128, in _find_ffmpeg_extension
2023-12-22 10:08:02     return _find_versionsed_ffmpeg_extension(ffmpeg_ver)
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 113, in _find_versionsed_ffmpeg_extension
2023-12-22 10:08:02     _try_access_avutil(ffmpeg_ver)
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 89, in _try_access_avutil
2023-12-22 10:08:02     torchaudio.lib._torchaudio.find_avutil(libavutil)
2023-12-22 10:08:02 RuntimeError: Error in dlopen: libavutil.so.58: cannot open shared object file: No such file or directory
2023-12-22 10:08:02 Exception raised from DynamicLibrary at ../aten/src/ATen/DynamicLibrary.cpp:38 (most recent call first):
2023-12-22 10:08:02 frame #0: c10::Error::Error(c10::SourceLocation, std::string) + 0x57 (0x7f0ee78a7617 in /opt/conda/lib/python3.10/site-packages/torch/lib/libc10.so)
2023-12-22 10:08:02 frame #1: <unknown function> + 0xfd6e3c (0x7f0f14228e3c in /opt/conda/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
2023-12-22 10:08:02 frame #2: torchaudio::find_avutil(char const*) + 0x1a (0x7f0eb63944ca in /opt/conda/lib/python3.10/site-packages/torchaudio/lib/libtorchaudio.so)
2023-12-22 10:08:02 frame #3: <unknown function> + 0x7f7e (0x7f0eb6344f7e in /opt/conda/lib/python3.10/site-packages/torchaudio/lib/_torchaudio.so)
2023-12-22 10:08:02 frame #4: <unknown function> + 0x12247 (0x7f0eb634f247 in /opt/conda/lib/python3.10/site-packages/torchaudio/lib/_torchaudio.so)
2023-12-22 10:08:02 frame #5: python() [0x4fc697]
2023-12-22 10:08:02 <omitting python frames>
2023-12-22 10:08:02 frame #16: python() [0x591d92]
2023-12-22 10:08:02 frame #18: python() [0x5991cd]
2023-12-22 10:08:02 frame #19: python() [0x4fccc4]
2023-12-22 10:08:02 frame #30: python() [0x4fc2a4]
2023-12-22 10:08:02 frame #33: python() [0x515994]
2023-12-22 10:08:02 frame #34: python() [0x4fc697]
2023-12-22 10:08:02 frame #40: python() [0x4fc2a4]
2023-12-22 10:08:02 frame #44: python() [0x591d92]
2023-12-22 10:08:02 frame #46: python() [0x5991cd]
2023-12-22 10:08:02 frame #47: python() [0x4fccc4]
2023-12-22 10:08:02 
2023-12-22 10:08:02 [2023-12-22 09:08:02,732][DEBUG][torchaudio._extension.utils] - Attempting to load FFmpeg version 5.
2023-12-22 10:08:02 [2023-12-22 09:08:02,733][DEBUG][torchaudio._extension.utils] - Failed to load FFmpeg 5 extension.
2023-12-22 10:08:02 Traceback (most recent call last):
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 128, in _find_ffmpeg_extension
2023-12-22 10:08:02     return _find_versionsed_ffmpeg_extension(ffmpeg_ver)
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 113, in _find_versionsed_ffmpeg_extension
2023-12-22 10:08:02     _try_access_avutil(ffmpeg_ver)
2023-12-22 10:08:02   File "/opt/conda/lib/python3.10/site-packages/torchaudio/_extension/utils.py", line 89, in _try_access_avutil
2023-12-22 10:08:02     torchaudio.lib._torchaudio.find_avutil(libavutil)
2023-12-22 10:08:02 RuntimeError: Error in dlopen: libavutil.so.57: cannot open shared object file: No such file or directory
2023-12-22 10:08:02 Exception raised from DynamicLibrary at ../aten/src/ATen/DynamicLibrary.cpp:38 (most recent call first):
2023-12-22 10:08:02 frame #0: c10::Error::Error(c10::SourceLocation, std::string) + 0x57 (0x7f0ee78a7617 in /opt/conda/lib/python3.10/site-packages/torch/lib/libc10.so)
2023-12-22 10:08:02 frame #1: <unknown function> + 0xfd6e3c (0x7f0f14228e3c in /opt/conda/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
2023-12-22 10:08:02 frame #2: torchaudio::find_avutil(char const*) + 0x1a (0x7f0eb63944ca in /opt/conda/lib/python3.10/site-packages/torchaudio/lib/libtorchaudio.so)
2023-12-22 10:08:02 frame #3: <unknown function> + 0x7f7e (0x7f0eb6344f7e in /opt/conda/lib/python3.10/site-packages/torchaudio/lib/_torchaudio.so)
2023-12-22 10:08:02 frame #4: <unknown function> + 0x12247 (0x7f0eb634f247 in /opt/conda/lib/python3.10/site-packages/torchaudio/lib/_torchaudio.so)
2023-12-22 10:08:02 frame #5: python() [0x4fc697]
2023-12-22 10:08:02 <omitting python frames>
2023-12-22 10:08:02 frame #16: python() [0x591d92]
2023-12-22 10:08:02 frame #18: python() [0x5991cd]
2023-12-22 10:08:02 frame #19: python() [0x4fccc4]
2023-12-22 10:08:02 frame #30: python() [0x4fc2a4]
2023-12-22 10:08:02 frame #33: python() [0x515994]
2023-12-22 10:08:02 frame #34: python() [0x4fc697]
2023-12-22 10:08:02 frame #40: python() [0x4fc2a4]
2023-12-22 10:08:02 frame #44: python() [0x591d92]
2023-12-22 10:08:02 frame #46: python() [0x5991cd]
2023-12-22 10:08:02 frame #47: python() [0x4fccc4]
2023-12-22 10:08:02 
2023-12-22 10:08:02 [2023-12-22 09:08:02,733][DEBUG][torchaudio._extension.utils] - Attempting to load FFmpeg version 4.
2023-12-22 10:08:02 [2023-12-22 09:08:02,736][DEBUG][torchaudio._extension.utils] - Found FFmpeg version 4.
2023-12-22 10:08:04 /opt/conda/lib/python3.10/site-packages/pytorch_lightning/utilities/distributed.py:258: LightningDeprecationWarning: `pytorch_lightning.utilities.distributed.rank_zero_only` has been deprecated in v1.8.1 and will be removed in v2.0.0. You can import it from `pytorch_lightning.utilities` instead.
2023-12-22 10:08:04   rank_zero_deprecation(
2023-12-22 10:08:04 [2023-12-22 09:08:04,534][DEBUG][git.cmd] - Popen(['git', 'version'], cwd=/stable-diffusion-webui, universal_newlines=False, shell=None, istream=None)
2023-12-22 10:08:04 [2023-12-22 09:08:04,536][DEBUG][git.cmd] - Popen(['git', 'version'], cwd=/stable-diffusion-webui, universal_newlines=False, shell=None, istream=None)
2023-12-22 10:08:04 /stable-diffusion-webui/extensions/sd_dreambooth_extension/dreambooth/shared.py:355: UserWarning: 'has_mps' is deprecated, please use 'torch.backends.mps.is_built()'
2023-12-22 10:08:04   if getattr(torch, 'has_mps', False):
2023-12-22 10:08:04 [2023-12-22 09:08:04,541][DEBUG][git.cmd] - Popen(['git', 'cat-file', '--batch-check'], cwd=/data/config/auto/extensions/sd_dreambooth_extension, universal_newlines=False, shell=None, istream=<valid stream>)
2023-12-22 10:08:04 If submitting an issue on github, please provide the full startup log for debugging purposes.
2023-12-22 10:08:04 
2023-12-22 10:08:04 Initializing Dreambooth
2023-12-22 10:08:04 Dreambooth revision: 113708fdaab97ff905c646b92c9a1bd17af8941f
2023-12-22 10:08:04 Checking xformers...
2023-12-22 10:08:04 Checking bitsandbytes...
2023-12-22 10:08:04 Checking bitsandbytes (Linux)
2023-12-22 10:08:04 Traceback (most recent call last):
2023-12-22 10:08:04   File "/stable-diffusion-webui/./extensions/sd_dreambooth_extension/install.py", line 35, in <module>
2023-12-22 10:08:04     actual_install()
2023-12-22 10:08:04   File "/stable-diffusion-webui/extensions/sd_dreambooth_extension/postinstall.py", line 45, in actual_install
2023-12-22 10:08:04     check_bitsandbytes()
2023-12-22 10:08:04   File "/stable-diffusion-webui/extensions/sd_dreambooth_extension/postinstall.py", line 242, in check_bitsandbytes
2023-12-22 10:08:04     if "0.41.2" not in bitsandbytes_version:
2023-12-22 10:08:04 TypeError: argument of type 'NoneType' is not iterable

Additional information

Can provide the fix myself