'''simple docstring'''






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


SCREAMING_SNAKE_CASE_	   =			logging.get_logger(__name__)

SCREAMING_SNAKE_CASE_	   =			{
    "google/mobilenet_v1_1.0_224": "https://huggingface.co/google/mobilenet_v1_1.0_224/resolve/main/config.json",
    "google/mobilenet_v1_0.75_192": "https://huggingface.co/google/mobilenet_v1_0.75_192/resolve/main/config.json",
    # See all MobileNetV1 models at https://huggingface.co/models?filter=mobilenet_v1
}




class    a (       _UpperCAmelCase				):



		"""simple docstring"""
		__lowerCAmelCase				      =					'''mobilenet_v1'''







		def __init__(							self   ,    snake_case_=3   ,    snake_case_=224   ,    snake_case_=1.0   ,    snake_case_=8   ,    snake_case_="relu6"   ,    snake_case_=True   ,    snake_case_=0.9_9_9   ,    snake_case_=0.0_2   ,    snake_case_=0.0_0_1   ,    **snake_case_   ,    ):

				'''simple docstring'''







				super().__init__(**A_					)

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

				__UpperCAmelCase:					List[Any]		= num_channels
				__UpperCAmelCase:					Union[str, Any]		= image_size
				__UpperCAmelCase:					int		= depth_multiplier
				__UpperCAmelCase:					List[str]		= min_depth
				__UpperCAmelCase:					str		= hidden_act
				__UpperCAmelCase:					Tuple		= tf_padding
				__UpperCAmelCase:					str		= classifier_dropout_prob
				__UpperCAmelCase:					Union[str, Any]		= initializer_range
				__UpperCAmelCase:					Union[str, Any]		= layer_norm_eps




class    a (       _UpperCAmelCase				):



		"""simple docstring"""
		__lowerCAmelCase				      =					version.parse("""1.11"""				)







		@property
		def    lowercase_  (							self					):

				'''simple docstring'''







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







		@property
		def    lowercase_  (							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    lowercase_  (							self					):

				'''simple docstring'''







				return 1e-4
'''simple docstring'''






from typing import TYPE_CHECKING

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


SCREAMING_SNAKE_CASE_	   =			{
    'configuration_rembert': ['REMBERT_PRETRAINED_CONFIG_ARCHIVE_MAP', 'RemBertConfig', 'RemBertOnnxConfig']
}

try:
    if not is_sentencepiece_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    SCREAMING_SNAKE_CASE_	   =			['RemBertTokenizer']

try:
    if not is_tokenizers_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    SCREAMING_SNAKE_CASE_	   =			['RemBertTokenizerFast']

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    SCREAMING_SNAKE_CASE_	   =			[
        'REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST',
        'RemBertForCausalLM',
        'RemBertForMaskedLM',
        'RemBertForMultipleChoice',
        'RemBertForQuestionAnswering',
        'RemBertForSequenceClassification',
        'RemBertForTokenClassification',
        'RemBertLayer',
        'RemBertModel',
        'RemBertPreTrainedModel',
        'load_tf_weights_in_rembert',
    ]


try:
    if not is_tf_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    SCREAMING_SNAKE_CASE_	   =			[
        'TF_REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST',
        'TFRemBertForCausalLM',
        'TFRemBertForMaskedLM',
        'TFRemBertForMultipleChoice',
        'TFRemBertForQuestionAnswering',
        'TFRemBertForSequenceClassification',
        'TFRemBertForTokenClassification',
        'TFRemBertLayer',
        'TFRemBertModel',
        'TFRemBertPreTrainedModel',
    ]


if TYPE_CHECKING:
    from .configuration_rembert import REMBERT_PRETRAINED_CONFIG_ARCHIVE_MAP, RemBertConfig, RemBertOnnxConfig

    try:
        if not is_sentencepiece_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .tokenization_rembert import RemBertTokenizer

    try:
        if not is_tokenizers_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .tokenization_rembert_fast import RemBertTokenizerFast

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_rembert import (
            REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
            RemBertForCausalLM,
            RemBertForMaskedLM,
            RemBertForMultipleChoice,
            RemBertForQuestionAnswering,
            RemBertForSequenceClassification,
            RemBertForTokenClassification,
            RemBertLayer,
            RemBertModel,
            RemBertPreTrainedModel,
            load_tf_weights_in_rembert,
        )

    try:
        if not is_tf_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_tf_rembert import (
            TF_REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
            TFRemBertForCausalLM,
            TFRemBertForMaskedLM,
            TFRemBertForMultipleChoice,
            TFRemBertForQuestionAnswering,
            TFRemBertForSequenceClassification,
            TFRemBertForTokenClassification,
            TFRemBertLayer,
            TFRemBertModel,
            TFRemBertPreTrainedModel,
        )


else:
    import sys

    SCREAMING_SNAKE_CASE_	   =			_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)