

from typing import TYPE_CHECKING

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


lowerCAmelCase__       = {
    "configuration_perceiver": ["PERCEIVER_PRETRAINED_CONFIG_ARCHIVE_MAP", "PerceiverConfig", "PerceiverOnnxConfig"],
    "tokenization_perceiver": ["PerceiverTokenizer"],
}

try:
      if not is_vision_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowerCAmelCase__       = ["PerceiverFeatureExtractor"]
      lowerCAmelCase__       = ["PerceiverImageProcessor"]

try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowerCAmelCase__       = [
          "PERCEIVER_PRETRAINED_MODEL_ARCHIVE_LIST",
          "PerceiverForImageClassificationConvProcessing",
          "PerceiverForImageClassificationFourier",
          "PerceiverForImageClassificationLearned",
          "PerceiverForMaskedLM",
          "PerceiverForMultimodalAutoencoding",
          "PerceiverForOpticalFlow",
          "PerceiverForSequenceClassification",
          "PerceiverLayer",
          "PerceiverModel",
          "PerceiverPreTrainedModel",
      ]


if TYPE_CHECKING:
      from .configuration_perceiver import PERCEIVER_PRETRAINED_CONFIG_ARCHIVE_MAP, PerceiverConfig, PerceiverOnnxConfig
      from .tokenization_perceiver import PerceiverTokenizer

      try:
            if not is_vision_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .feature_extraction_perceiver import PerceiverFeatureExtractor
            from .image_processing_perceiver import PerceiverImageProcessor

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_perceiver import (
                PERCEIVER_PRETRAINED_MODEL_ARCHIVE_LIST,
                PerceiverForImageClassificationConvProcessing,
                PerceiverForImageClassificationFourier,
                PerceiverForImageClassificationLearned,
                PerceiverForMaskedLM,
                PerceiverForMultimodalAutoencoding,
                PerceiverForOpticalFlow,
                PerceiverForSequenceClassification,
                PerceiverLayer,
                PerceiverModel,
                PerceiverPreTrainedModel,
            )

else:
      import sys

      lowerCAmelCase__       = _LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)






lowerCAmelCase__       = "\n# Transformers 설치 방법\n! pip install transformers datasets\n# 마지막 릴리스 대신 소스에서 설치하려면, 위 명령을 주석으로 바꾸고 아래 명령을 해제하세요.\n# ! pip install git+https://github.com/huggingface/transformers.git\n"

lowerCAmelCase__       = [{"type": "code", "content": INSTALL_CONTENT}]
lowerCAmelCase__       = {
    "{processor_class}": "FakeProcessorClass",
    "{model_class}": "FakeModelClass",
    "{object_class}": "FakeObjectClass",
}



