




from typing import TYPE_CHECKING

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


_lowerCAmelCase						:   Optional[Any]		=   {
    "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						:   Optional[Any]		=   ["PerceiverFeatureExtractor"]
		_lowerCAmelCase						:   Dict		=   ["PerceiverImageProcessor"]

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_lowerCAmelCase						:   Union[str, Any]		=   [
		    "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						:   int		=   _LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)











import warnings

from ...utils import logging
from .image_processing_yolos import YolosImageProcessor


_lowerCAmelCase						:   int		=   logging.get_logger(__name__)
class 			_UpperCamelCase      (				lowerCAmelCase		):
      def __init__(			self   :Optional[Any] ,      *lowerCamelCase   :List[str] ,      **lowerCamelCase   :Tuple      )     ->			None:
       warnings.warn(
           "The class YolosFeatureExtractor is deprecated and will be removed in version 5 of Transformers. Please"
           " use YolosImageProcessor instead." ,      lowerCamelCase ,      )
       super().__init__(*lowerCamelCase ,      **lowerCamelCase      )





