diff --git a/animatediff/models/attention.py b/animatediff/models/attention.py index ad23583c..e725f5d7 100644 --- a/animatediff/models/attention.py +++ b/animatediff/models/attention.py @@ -8,10 +8,17 @@ from torch import nn from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.modeling_utils import ModelMixin +try: + from diffusers.modeling_utils import ModelMixin +except ImportError: + from diffusers.models.modeling_utils import ModelMixin from diffusers.utils import BaseOutput from diffusers.utils.import_utils import is_xformers_available -from diffusers.models.attention import CrossAttention, FeedForward, AdaLayerNorm +try: + from diffusers.models.attention import CrossAttention, FeedForward, AdaLayerNorm +except ImportError: + from diffusers.models.attention_processor import Attention as CrossAttention + from diffusers.models.attention import FeedForward, AdaLayerNorm from einops import rearrange, repeat import pdb diff --git a/animatediff/models/motion_module.py b/animatediff/models/motion_module.py index 37d8f2fb..52132000 100644 --- a/animatediff/models/motion_module.py +++ b/animatediff/models/motion_module.py @@ -8,10 +8,17 @@ import torchvision from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.modeling_utils import ModelMixin +try: + from diffusers.modeling_utils import ModelMixin +except ImportError: + from diffusers.models.modeling_utils import ModelMixin from diffusers.utils import BaseOutput from diffusers.utils.import_utils import is_xformers_available -from diffusers.models.attention import CrossAttention, FeedForward +try: + from diffusers.models.attention import CrossAttention, FeedForward +except ImportError: + from diffusers.models.attention_processor import Attention as CrossAttention + from diffusers.models.attention import FeedForward from einops import rearrange, repeat import math diff --git a/animatediff/models/sparse_controlnet.py b/animatediff/models/sparse_controlnet.py index f319e122..24a1a407 100644 --- a/animatediff/models/sparse_controlnet.py +++ b/animatediff/models/sparse_controlnet.py @@ -23,7 +23,10 @@ from diffusers.configuration_utils import ConfigMixin, register_to_config from diffusers.utils import BaseOutput, logging from diffusers.models.embeddings import TimestepEmbedding, Timesteps -from diffusers.modeling_utils import ModelMixin +try: + from diffusers.modeling_utils import ModelMixin +except ImportError: + from diffusers.models.modeling_utils import ModelMixin from .unet_blocks import ( diff --git a/animatediff/models/unet.py b/animatediff/models/unet.py index 8e5bb909..9706e6e7 100644 --- a/animatediff/models/unet.py +++ b/animatediff/models/unet.py @@ -12,7 +12,10 @@ import torch.utils.checkpoint from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.modeling_utils import ModelMixin +try: + from diffusers.modeling_utils import ModelMixin +except ImportError: + from diffusers.models.modeling_utils import ModelMixin from diffusers.utils import BaseOutput, logging from diffusers.models.embeddings import TimestepEmbedding, Timesteps from .unet_blocks import ( diff --git a/animatediff/pipelines/pipeline_animation.py b/animatediff/pipelines/pipeline_animation.py index bcc1ddb8..3ce1e443 100644 --- a/animatediff/pipelines/pipeline_animation.py +++ b/animatediff/pipelines/pipeline_animation.py @@ -14,7 +14,10 @@ from diffusers.configuration_utils import FrozenDict from diffusers.models import AutoencoderKL -from diffusers.pipeline_utils import DiffusionPipeline +try: + from diffusers.pipeline_utils import DiffusionPipeline +except ImportError: + from diffusers.pipelines.pipeline_utils import DiffusionPipeline from diffusers.schedulers import ( DDIMScheduler, DPMSolverMultistepScheduler,