配置环境 torch = 1.10.0 cuda = 11.1
pip3 install openmim
mim install 'mmcv>=2.0.0'
mim install 'mmengine'
mim install 'mmagic'
cd ~
python -c "import mmagic; print(mmagic.__version__)"
# Example output: 1.0.0
输出1.0.0
运行
python demo/mmagic_inference_demo.py \
--model-name stable_diffusion \
--text "A panda is having dinner at KFC" \
--result-out-dir ./output/sd_res.png
报错
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/lib/python3.10/dist-packages/mmagic/apis/../../configs/inst_colorization/metafile.yml'
解决:将mmgic目录下的configs文件夹全部拷贝到 apis文件夹下
报错
Traceback (most recent call last):
File "/opt/conda/lib/python3.8/site-packages/diffusers/models/modeling_utils.py", line 102, in load_state_dict
return safetensors.torch.load_file(checkpoint_file, device="cpu")
File "/opt/conda/lib/python3.8/site-packages/safetensors/torch.py", line 261, in load_file
result[k] = f.get_tensor(k)
AttributeError: module 'torch' has no attribute 'frombuffer'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/conda/lib/python3.8/site-packages/diffusers/models/modeling_utils.py", line 106, in load_state_dict
if f.read().startswith("version"):
File "/opt/conda/lib/python3.8/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa8 in position 0: invalid start byte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/build_functions.py", line 122, in build_from_cfg
obj = obj_cls(**args) # type: ignore
File "/opt/conda/lib/python3.8/site-packages/mmagic/models/archs/wrapper.py", line 79, in init
self.model = module_cls.from_pretrained(from_pretrained, *args,
File "/opt/conda/lib/python3.8/site-packages/diffusers/models/modeling_utils.py", line 621, in from_pretrained
state_dict = load_state_dict(model_file, variant=variant)
File "/opt/conda/lib/python3.8/site-packages/diffusers/models/modeling_utils.py", line 118, in load_state_dict
raise OSError(
OSError: Unable to load weights from checkpoint file for '/root/.cache/huggingface/hub/models--runwayml--stable-diffusion-v1-5/snapshots/aa9ba505e1973ae5cd05f5aedd345178f52f8e6a/vae/diffusion_pytorch_model.safetensors' at '/root/.cache/huggingface/hub/models--runwayml--stable-diffusion-v1-5/snapshots/aa9ba505e1973ae5cd05f5aedd345178f52f8e6a/vae/diffusion_pytorch_model.safetensors'. If you tried to load a PyTorch model from a TF 2.0 checkpoint, please set from_tf=True.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/build_functions.py", line 122, in build_from_cfg
obj = obj_cls(**args) # type: ignore
File "/opt/conda/lib/python3.8/site-packages/mmagic/models/editors/stable_diffusion/stable_diffusion.py", line 69, in init
self.vae = build_module(vae, MODELS)
File "/opt/conda/lib/python3.8/site-packages/mmagic/models/utils/model_utils.py", line 251, in build_module
return builder.build(module, *args, **kwargs)
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/registry.py", line 548, in build
return self.build_func(cfg, *args, **kwargs, registry=self)
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/build_functions.py", line 250, in build_model_from_cfg
return build_from_cfg(cfg, registry, default_args)
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/build_functions.py", line 144, in build_from_cfg
raise type(e)(
OSError: class AutoencoderKL in mmagic/models/archs.py: Unable to load weights from checkpoint file for '/root/.cache/huggingface/hub/models--runwayml--stable-diffusion-v1-5/snapshots/aa9ba505e1973ae5cd05f5aedd345178f52f8e6a/vae/diffusion_pytorch_model.safetensors' at '/root/.cache/huggingface/hub/models--runwayml--stable-diffusion-v1-5/snapshots/aa9ba505e1973ae5cd05f5aedd345178f52f8e6a/vae/diffusion_pytorch_model.safetensors'. If you tried to load a PyTorch model from a TF 2.0 checkpoint, please set from_tf=True.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "demo/mmagic_inference_demo.py", line 137, in <module>
main()
File "demo/mmagic_inference_demo.py", line 132, in main
editor = MMagicInferencer(**vars(args))
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/mmagic_inferencer.py", line 129, in init
self.inferencer = Inferencers(
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/inferencers/init.py", line 80, in init
self.inferencer = Text2ImageInferencer(
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/inferencers/base_mmagic_inferencer.py", line 58, in init
super().init(config, ckpt, device)
File "/opt/conda/lib/python3.8/site-packages/mmengine/infer/infer.py", line 176, in init
self.model = self._init_model(cfg, weights, device) # type: ignore
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/inferencers/base_mmagic_inferencer.py", line 69, in _init_model
model = MODELS.build(cfg.model)
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/registry.py", line 548, in build
return self.build_func(cfg, *args, **kwargs, registry=self)
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/build_functions.py", line 250, in build_model_from_cfg
return build_from_cfg(cfg, registry, default_args)
File "/opt/conda/lib/python3.8/site-packages/mmengine/registry/build_functions.py", line 144, in build_from_cfg
raise type(e)(
OSError: class StableDiffusion in mmagic/models/editors/stable_diffusion/stable_diffusion.py: class AutoencoderKL in mmagic/models/archs.py: Unable to load weights from checkpoint file for '/root/.cache/huggingface/hub/models--runwayml--stable-diffusion-v1-5/snapshots/aa9ba505e1973ae5cd05f5aedd345178f52f8e6a/vae/diffusion_pytorch_model.safetensors' at '/root/.cache/huggingface/hub/models--runwayml--stable-diffusion-v1-5/snapshots/aa9ba505e1973ae5cd05f5aedd345178f52f8e6a/vae/diffusion_pytorch_model.safetensors'. If you tried to load a PyTorch model from a TF 2.0 checkpoint, please set from_tf=True.
AttributeError: module 'torch' has no attribute 'frombuffer' torch1.10.0后才有frombuffer,重新安装torch1.10.0
报错
Traceback (most recent call last):
File "demo/mmagic_inference_demo.py", line 5, in <module>
from mmagic.apis import MMagicInferencer
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/__init__.py", line 2, in <module>
from .mmagic_inferencer import MMagicInferencer
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/mmagic_inferencer.py", line 11, in <module>
from .inferencers import Inferencers
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/inferencers/__init__.py", line 15, in <module>
from .translation_inferencer import TranslationInferencer
File "/opt/conda/lib/python3.8/site-packages/mmagic/apis/inferencers/translation_inferencer.py", line 12, in <module>
from mmagic.models.base_models import BaseTranslationModel
File "/opt/conda/lib/python3.8/site-packages/mmagic/models/__init__.py", line 6, in <module>
from .editors import * # noqa: F401, F403
File "/opt/conda/lib/python3.8/site-packages/mmagic/models/editors/__init__.py", line 5, in <module>
from .basicvsr_plusplus_net import BasicVSRPlusPlusNet
File "/opt/conda/lib/python3.8/site-packages/mmagic/models/editors/basicvsr_plusplus_net/__init__.py", line 2, in <module>
from .basicvsr_plusplus_net import BasicVSRPlusPlusNet
File "/opt/conda/lib/python3.8/site-packages/mmagic/models/editors/basicvsr_plusplus_net/basicvsr_plusplus_net.py", line 5, in <module>
from mmcv.ops import ModulatedDeformConv2d, modulated_deform_conv2d
File "/opt/conda/lib/python3.8/site-packages/mmcv/ops/__init__.py", line 2, in <module>
from .active_rotated_filter import active_rotated_filter
File "/opt/conda/lib/python3.8/site-packages/mmcv/ops/active_rotated_filter.py", line 10, in <module>
ext_module = ext_loader.load_ext(
File "/opt/conda/lib/python3.8/site-packages/mmcv/utils/ext_loader.py", line 13, in load_ext
ext = importlib.import_module('mmcv.' + name)
File "/opt/conda/lib/python3.8/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: libtorch_cuda_cu.so: cannot open shared object file: No such file or directory
解决:据说是因为torch版本和mmcv无法匹配所致,安装 MMCV — mmcv 2.0.0 文档根据这个重新安装mmcv==2.0.0rc4依旧报错。
使用1.10.0版本torch
pip install torch==1.10.0+cu111 torchvision==0.11.0+cu111 torchaudio==0.10.0 -f https://download.pytorch.org/whl/torch_stable.html
报错
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
解决:
apt-get update
apt install libgl1-mesa-glx
报错
ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory
解决: apt-get install libglib2.0-dev
报错
No module named 'controlnet_aux'
解决
pip install controlnet_aux