




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_torch_available,
)


__lowerCAmelCase		:    Optional[Any]	      =		{
    'configuration_align': [
        'ALIGN_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'AlignConfig',
        'AlignTextConfig',
        'AlignVisionConfig',
    ],
    'processing_align': ['AlignProcessor'],
}

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__lowerCAmelCase		:    List[Any]	      =		[
		    'ALIGN_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'AlignModel',
		    'AlignPreTrainedModel',
		    'AlignTextModel',
		    'AlignVisionModel',
		]

if TYPE_CHECKING:
		from .configuration_align import (
		    ALIGN_PRETRAINED_CONFIG_ARCHIVE_MAP,
		    AlignConfig,
		    AlignTextConfig,
		    AlignVisionConfig,
		)
		from .processing_align import AlignProcessor

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_align import (
				    ALIGN_PRETRAINED_MODEL_ARCHIVE_LIST,
				    AlignModel,
				    AlignPreTrainedModel,
				    AlignTextModel,
				    AlignVisionModel,
				)

else:
		import sys

		__lowerCAmelCase		:    Tuple	      =		_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)












from ..utils import DummyObject, requires_backends




class    snake_case__							(metaclass=_UpperCamelCase       ):
				"""simple docstring"""



				SCREAMING_SNAKE_CASE_	:							List[str]										= ["""torch""", """transformers""", """k_diffusion"""]





				def __init__(				self    :					Optional[int] ,				*__lowerCamelCase    :					Union[str, Any] ,				**__lowerCamelCase    :					List[Any]							) ->					Optional[Any]:
							requires_backends(self ,				["torch", "transformers", "k_diffusion"]							)





				@classmethod
				def 							__UpperCAmelCase							(				cls    :					str ,				*__lowerCamelCase    :					Union[str, Any] ,				**__lowerCamelCase    :					Tuple							) ->					List[Any]:
							requires_backends(cls ,				["torch", "transformers", "k_diffusion"]							)





				@classmethod
				def 							__UpperCAmelCase							(				cls    :					Optional[Any] ,				*__lowerCamelCase    :					List[str] ,				**__lowerCamelCase    :					int							) ->					Dict:
							requires_backends(cls ,				["torch", "transformers", "k_diffusion"]							)






