Fixing Common Stable Diffusion / Dreambooth Errors
Stable Diffusion and Dreambooth are great, but getting past the constantly changing list of errors that are introduced from version to version can get frustrating.
In my limited time playing with Stable Diffusion and Dreambooth I have encountered a number of errors.
No module 'xformers'. Proceeding without it.
Add the following to /stable-diffusion-webui/webui.bat
set COMMANDLINE_ARGS=--xformers
or
set COMMANDLINE_ARGS= "--xformers"
Note: This will require Xformers to be installed correctly first
Failing that working you can also try adding the following to file \stable-diffusion-webui\modules\paths_internal.py
commandline_args = os.environ.get('COMMANDLINE_ARGS', "--xformers")
Launch skipping Python version check
Add the following to /stable-diffusion-webui/webui.bat
set COMMANDLINE_ARGS=--skip-python-version-check
ModuleNotFoundError: No module named 'models.blip'; 'models' is not a package
This issue comes about due to installing the TensorRT extension and then trying to use Dreambooth. It should be patched into future versions of Stable Diffusion hopefully, but in the interim, you can rename the following file and update the reference to it.
Rename file
/stable-diffusion-webui/extensions/Stable-Diffusion-WebUI-TensorRT/models.py
to
/stable-diffusion-webui/extensions/Stable-Diffusion-WebUI-TensorRT/models_trt.py
Then in the file \stable-diffusion-webui\extensions\Stable-Diffusion-WebUI-TensorRT\ui_trt.py
Change
from models import make_OAIUNetXL, make_OAIUNet
To
from models_trt import make_OAIUNetXL, make_OAIUNet
"Unable to extract checkpoint!" While trying to use Dreambooth
The checkpoint file you are using is most likely not supported by Dreambooth. Try a different checkpoint file.
ValueError: not enough values to unpack (expected 2, got 1)
Replace the contents of \stable-diffusion-webui\extensions\sd_dreambooth_extension\dreambooth\train_dreambooth.py
with the contents of this paste bin
https://pastebin.com/raw/uqaV7kae
The main changes being
if with_prior_preservation:
to
if model_pred.shape[0] > 1 and with_prior_preservation:
and
loss =
to
loss = instance_loss =
This list will be updated from time to time as our experiences expand.
Comments ()