

from typing import TYPE_CHECKING

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


_a:      int								=     {
    """configuration_big_bird""": ["""BIG_BIRD_PRETRAINED_CONFIG_ARCHIVE_MAP""", """BigBirdConfig""", """BigBirdOnnxConfig"""],
}

try:
				if not is_sentencepiece_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_a:      str								=     ["""BigBirdTokenizer"""]

try:
				if not is_tokenizers_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_a:      List[str]								=     ["""BigBirdTokenizerFast"""]

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_a:      Union[str, Any]								=     [
				    """BIG_BIRD_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """BigBirdForCausalLM""",
				    """BigBirdForMaskedLM""",
				    """BigBirdForMultipleChoice""",
				    """BigBirdForPreTraining""",
				    """BigBirdForQuestionAnswering""",
				    """BigBirdForSequenceClassification""",
				    """BigBirdForTokenClassification""",
				    """BigBirdLayer""",
				    """BigBirdModel""",
				    """BigBirdPreTrainedModel""",
				    """load_tf_weights_in_big_bird""",
				]

try:
				if not is_flax_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_a:      Dict								=     [
				    """FlaxBigBirdForCausalLM""",
				    """FlaxBigBirdForMaskedLM""",
				    """FlaxBigBirdForMultipleChoice""",
				    """FlaxBigBirdForPreTraining""",
				    """FlaxBigBirdForQuestionAnswering""",
				    """FlaxBigBirdForSequenceClassification""",
				    """FlaxBigBirdForTokenClassification""",
				    """FlaxBigBirdModel""",
				    """FlaxBigBirdPreTrainedModel""",
				]

if TYPE_CHECKING:
				from .configuration_big_bird import BIG_BIRD_PRETRAINED_CONFIG_ARCHIVE_MAP, BigBirdConfig, BigBirdOnnxConfig

				try:
								if not is_sentencepiece_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .tokenization_big_bird import BigBirdTokenizer

				try:
								if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .tokenization_big_bird_fast import BigBirdTokenizerFast

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_big_bird import (
								    BIG_BIRD_PRETRAINED_MODEL_ARCHIVE_LIST,
								    BigBirdForCausalLM,
								    BigBirdForMaskedLM,
								    BigBirdForMultipleChoice,
								    BigBirdForPreTraining,
								    BigBirdForQuestionAnswering,
								    BigBirdForSequenceClassification,
								    BigBirdForTokenClassification,
								    BigBirdLayer,
								    BigBirdModel,
								    BigBirdPreTrainedModel,
								    load_tf_weights_in_big_bird,
								)

				try:
								if not is_flax_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_flax_big_bird import (
								    FlaxBigBirdForCausalLM,
								    FlaxBigBirdForMaskedLM,
								    FlaxBigBirdForMultipleChoice,
								    FlaxBigBirdForPreTraining,
								    FlaxBigBirdForQuestionAnswering,
								    FlaxBigBirdForSequenceClassification,
								    FlaxBigBirdForTokenClassification,
								    FlaxBigBirdModel,
								    FlaxBigBirdPreTrainedModel,
								)

else:
				import sys

				_a:      Union[str, Any]								=     _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)


from typing import TYPE_CHECKING

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


_a:      Tuple								=     {
    """configuration_segformer""": ["""SEGFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP""", """SegformerConfig""", """SegformerOnnxConfig"""]
}

try:
				if not is_vision_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_a:      List[str]								=     ["""SegformerFeatureExtractor"""]
				_a:      Union[str, Any]								=     ["""SegformerImageProcessor"""]

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_a:      Any								=     [
				    """SEGFORMER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """SegformerDecodeHead""",
				    """SegformerForImageClassification""",
				    """SegformerForSemanticSegmentation""",
				    """SegformerLayer""",
				    """SegformerModel""",
				    """SegformerPreTrainedModel""",
				]

try:
				if not is_tf_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_a:      Optional[Any]								=     [
				    """TF_SEGFORMER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """TFSegformerDecodeHead""",
				    """TFSegformerForImageClassification""",
				    """TFSegformerForSemanticSegmentation""",
				    """TFSegformerModel""",
				    """TFSegformerPreTrainedModel""",
				]


if TYPE_CHECKING:
				from .configuration_segformer import SEGFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP, SegformerConfig, SegformerOnnxConfig

				try:
								if not is_vision_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .feature_extraction_segformer import SegformerFeatureExtractor
								from .image_processing_segformer import SegformerImageProcessor

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_segformer import (
								    SEGFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    SegformerDecodeHead,
								    SegformerForImageClassification,
								    SegformerForSemanticSegmentation,
								    SegformerLayer,
								    SegformerModel,
								    SegformerPreTrainedModel,
								)
				try:
								if not is_tf_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_tf_segformer import (
								    TF_SEGFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    TFSegformerDecodeHead,
								    TFSegformerForImageClassification,
								    TFSegformerForSemanticSegmentation,
								    TFSegformerModel,
								    TFSegformerPreTrainedModel,
								)

else:
				import sys

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