


from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


UpperCAmelCase_      : Union[str, Any]  					=       {
    'configuration_x_clip': [
        'XCLIP_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'XCLIPConfig',
        'XCLIPTextConfig',
        'XCLIPVisionConfig',
    ],
    'processing_x_clip': ['XCLIPProcessor'],
}

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   UpperCAmelCase_      : Tuple  					=       [
       'XCLIP_PRETRAINED_MODEL_ARCHIVE_LIST',
       'XCLIPModel',
       'XCLIPPreTrainedModel',
       'XCLIPTextModel',
       'XCLIPVisionModel',
   ]

if TYPE_CHECKING:
   from .configuration_x_clip import (
       XCLIP_PRETRAINED_CONFIG_ARCHIVE_MAP,
       XCLIPConfig,
       XCLIPTextConfig,
       XCLIPVisionConfig,
   )
   from .processing_x_clip import XCLIPProcessor

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_x_clip import (
          XCLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
          XCLIPModel,
          XCLIPPreTrainedModel,
          XCLIPTextModel,
          XCLIPVisionModel,
      )

else:
   import sys

   UpperCAmelCase_      : str  					=       _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)




'''simple docstring'''







from ...utils import is_torch_available, is_transformers_available


if is_transformers_available() and is_torch_available():
					from .pipeline_vq_diffusion import LearnedClassifierFreeSamplingEmbeddings, VQDiffusionPipeline

