




from collections import OrderedDict
from typing import Mapping

from packaging import version

from ...configuration_utils import PretrainedConfig
from ...onnx import OnnxConfig
from ...utils import logging


UpperCamelCase__					    =    logging.get_logger(__name__)

UpperCamelCase__					    =    {
    """google/mobilenet_v2_1.4_224""": """https://huggingface.co/google/mobilenet_v2_1.4_224/resolve/main/config.json""",
    """google/mobilenet_v2_1.0_224""": """https://huggingface.co/google/mobilenet_v2_1.0_224/resolve/main/config.json""",
    """google/mobilenet_v2_0.75_160""": """https://huggingface.co/google/mobilenet_v2_0.75_160/resolve/main/config.json""",
    """google/mobilenet_v2_0.35_96""": """https://huggingface.co/google/mobilenet_v2_0.35_96/resolve/main/config.json""",
    # See all MobileNetV2 models at https://huggingface.co/models?filter=mobilenet_v2
}
class     a__					(      snake_case__   ):
						_a							:					List[str]      =					"""mobilenet_v2"""






						def __init__(     self	,    _A=3	,    _A=2_2_4	,    _A=1.0	,    _A=8	,    _A=8	,    _A=6	,    _A=3_2	,    _A=True	,    _A=True	,    _A="relu6"	,    _A=True	,    _A=0.8	,    _A=0.02	,    _A=0.0_01	,    _A=2_5_5	,    **_A	,    ):




											"""simple docstring"""



											super().__init__(**_A    )

											if depth_multiplier <= 0:
																raise ValueError("depth_multiplier must be greater than zero."    )

											__lowerCAmelCase            = num_channels
											__lowerCAmelCase            = image_size
											__lowerCAmelCase            = depth_multiplier
											__lowerCAmelCase            = depth_divisible_by
											__lowerCAmelCase            = min_depth
											__lowerCAmelCase            = expand_ratio
											__lowerCAmelCase            = output_stride
											__lowerCAmelCase            = first_layer_is_expansion
											__lowerCAmelCase            = finegrained_output
											__lowerCAmelCase            = hidden_act
											__lowerCAmelCase            = tf_padding
											__lowerCAmelCase            = classifier_dropout_prob
											__lowerCAmelCase            = initializer_range
											__lowerCAmelCase            = layer_norm_eps
											__lowerCAmelCase            = semantic_loss_ignore_index






class     a__					(      snake_case__   ):
						_a							:					Tuple      =					version.parse("""1.11"""   )






						@property
						def        __SCREAMING_SNAKE_CASE(     self    ):




											"""simple docstring"""



											return OrderedDict([("pixel_values", {0: "batch"})]    )






						@property
						def        __SCREAMING_SNAKE_CASE(     self    ):




											"""simple docstring"""



											if self.task == "image-classification":
																return OrderedDict([("logits", {0: "batch"})]    )
											else:
																return OrderedDict([("last_hidden_state", {0: "batch"}), ("pooler_output", {0: "batch"})]    )






						@property
						def        __SCREAMING_SNAKE_CASE(     self    ):




											"""simple docstring"""



											return 1E-4










from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


UpperCamelCase__					    =    {
    """configuration_ctrl""": ["""CTRL_PRETRAINED_CONFIG_ARCHIVE_MAP""", """CTRLConfig"""],
    """tokenization_ctrl""": ["""CTRLTokenizer"""],
}

try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					UpperCamelCase__					    =    [
					    """CTRL_PRETRAINED_MODEL_ARCHIVE_LIST""",
					    """CTRLForSequenceClassification""",
					    """CTRLLMHeadModel""",
					    """CTRLModel""",
					    """CTRLPreTrainedModel""",
					]

try:
					if not is_tf_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					UpperCamelCase__					    =    [
					    """TF_CTRL_PRETRAINED_MODEL_ARCHIVE_LIST""",
					    """TFCTRLForSequenceClassification""",
					    """TFCTRLLMHeadModel""",
					    """TFCTRLModel""",
					    """TFCTRLPreTrainedModel""",
					]


if TYPE_CHECKING:
					from .configuration_ctrl import CTRL_PRETRAINED_CONFIG_ARCHIVE_MAP, CTRLConfig
					from .tokenization_ctrl import CTRLTokenizer

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_ctrl import (
										    CTRL_PRETRAINED_MODEL_ARCHIVE_LIST,
										    CTRLForSequenceClassification,
										    CTRLLMHeadModel,
										    CTRLModel,
										    CTRLPreTrainedModel,
										)

					try:
										if not is_tf_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_tf_ctrl import (
										    TF_CTRL_PRETRAINED_MODEL_ARCHIVE_LIST,
										    TFCTRLForSequenceClassification,
										    TFCTRLLMHeadModel,
										    TFCTRLModel,
										    TFCTRLPreTrainedModel,
										)

else:
					import sys

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




