




from ..utils import is_flax_available, is_torch_available


if is_torch_available():
    from .autoencoder_kl import AutoencoderKL
    from .controlnet import ControlNetModel
    from .dual_transformer_ad import DualTransformeraDModel
    from .modeling_utils import ModelMixin
    from .prior_transformer import PriorTransformer
    from .ta_film_transformer import TaFilmDecoder
    from .transformer_ad import TransformeraDModel
    from .unet_ad import UNetaDModel
    from .unet_ad import UNetaDModel
    from .unet_ad_condition import UNetaDConditionModel
    from .unet_ad_condition import UNetaDConditionModel
    from .vq_model import VQModel

if is_flax_available():
    from .controlnet_flax import FlaxControlNetModel
    from .unet_ad_condition_flax import FlaxUNetaDConditionModel
    from .vae_flax import FlaxAutoencoderKL










'''simple docstring'''
from typing import TYPE_CHECKING

from ...file_utils import _LazyModule, is_tokenizers_available, is_torch_available, is_vision_available
from ...utils import OptionalDependencyNotAvailable


__snake_case							      =     {'''configuration_dpt''': ['''DPT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''DPTConfig''']}

try:
		if not is_vision_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__snake_case							      =     ['''DPTFeatureExtractor''']
		__snake_case							      =     ['''DPTImageProcessor''']

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__snake_case							      =     [
		    '''DPT_PRETRAINED_MODEL_ARCHIVE_LIST''',
		    '''DPTForDepthEstimation''',
		    '''DPTForSemanticSegmentation''',
		    '''DPTModel''',
		    '''DPTPreTrainedModel''',
		]


if TYPE_CHECKING:
		from .configuration_dpt import DPT_PRETRAINED_CONFIG_ARCHIVE_MAP, DPTConfig

		try:
				if not is_vision_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .feature_extraction_dpt import DPTFeatureExtractor
				from .image_processing_dpt import DPTImageProcessor

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_dpt import (
				    DPT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    DPTForDepthEstimation,
				    DPTForSemanticSegmentation,
				    DPTModel,
				    DPTPreTrainedModel,
				)


else:
		import sys

		__snake_case							      =     _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)