


'''simple docstring'''







from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
    is_vision_available,
)


lowerCAmelCase     :  Optional[int]											=    {
    """configuration_clip""": [
        """CLIP_PRETRAINED_CONFIG_ARCHIVE_MAP""",
        """CLIPConfig""",
        """CLIPOnnxConfig""",
        """CLIPTextConfig""",
        """CLIPVisionConfig""",
    ],
    """processing_clip""": ["""CLIPProcessor"""],
    """tokenization_clip""": ["""CLIPTokenizer"""],
}

try:
       if not is_tokenizers_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowerCAmelCase     :  Tuple											=    ["""CLIPTokenizerFast"""]

try:
       if not is_vision_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowerCAmelCase     :  Union[str, Any]											=    ["""CLIPFeatureExtractor"""]
       lowerCAmelCase     :  List[Any]											=    ["""CLIPImageProcessor"""]

try:
       if not is_torch_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowerCAmelCase     :  Optional[Any]											=    [
           """CLIP_PRETRAINED_MODEL_ARCHIVE_LIST""",
           """CLIPModel""",
           """CLIPPreTrainedModel""",
           """CLIPTextModel""",
           """CLIPTextModelWithProjection""",
           """CLIPVisionModel""",
           """CLIPVisionModelWithProjection""",
       ]

try:
       if not is_tf_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowerCAmelCase     :  Optional[Any]											=    [
           """TF_CLIP_PRETRAINED_MODEL_ARCHIVE_LIST""",
           """TFCLIPModel""",
           """TFCLIPPreTrainedModel""",
           """TFCLIPTextModel""",
           """TFCLIPVisionModel""",
       ]

try:
       if not is_flax_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowerCAmelCase     :  Any											=    [
           """FlaxCLIPModel""",
           """FlaxCLIPPreTrainedModel""",
           """FlaxCLIPTextModel""",
           """FlaxCLIPTextPreTrainedModel""",
           """FlaxCLIPVisionModel""",
           """FlaxCLIPVisionPreTrainedModel""",
       ]


if TYPE_CHECKING:
       from .configuration_clip import (
           CLIP_PRETRAINED_CONFIG_ARCHIVE_MAP,
           CLIPConfig,
           CLIPOnnxConfig,
           CLIPTextConfig,
           CLIPVisionConfig,
       )
       from .processing_clip import CLIPProcessor
       from .tokenization_clip import CLIPTokenizer

       try:
              if not is_tokenizers_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .tokenization_clip_fast import CLIPTokenizerFast

       try:
              if not is_vision_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .feature_extraction_clip import CLIPFeatureExtractor
              from .image_processing_clip import CLIPImageProcessor

       try:
              if not is_torch_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .modeling_clip import (
                  CLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
                  CLIPModel,
                  CLIPPreTrainedModel,
                  CLIPTextModel,
                  CLIPTextModelWithProjection,
                  CLIPVisionModel,
                  CLIPVisionModelWithProjection,
              )

       try:
              if not is_tf_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .modeling_tf_clip import (
                  TF_CLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
                  TFCLIPModel,
                  TFCLIPPreTrainedModel,
                  TFCLIPTextModel,
                  TFCLIPVisionModel,
              )

       try:
              if not is_flax_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .modeling_flax_clip import (
                  FlaxCLIPModel,
                  FlaxCLIPPreTrainedModel,
                  FlaxCLIPTextModel,
                  FlaxCLIPTextPreTrainedModel,
                  FlaxCLIPVisionModel,
                  FlaxCLIPVisionPreTrainedModel,
              )


else:
       import sys

       lowerCAmelCase     :  int											=    _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)





'''simple docstring'''







from ..utils import DummyObject, requires_backends
class 						UpperCamelCase__       (			metaclass=SCREAMING_SNAKE_CASE_						):



     """simple docstring"""






     __magic_name__           =     ["torch", "torchsde"]







     def __init__(			self   ,						*snake_case__   ,						**snake_case__ ):

            '''simple docstring'''

            requires_backends(self   ,						['torch', 'torchsde'] )







     @classmethod
     def a						(			cls   ,						*snake_case__   ,						**snake_case__ ):

            '''simple docstring'''

            requires_backends(cls   ,						['torch', 'torchsde'] )







     @classmethod
     def a						(			cls   ,						*snake_case__   ,						**snake_case__ ):

            '''simple docstring'''

            requires_backends(cls   ,						['torch', 'torchsde'] )

