
"""simple docstring"""


import copy
from dataclasses import dataclass, field
from typing import ClassVar, Dict

from ..features import Audio, ClassLabel, Features
from .base import TaskTemplate







@dataclass(frozen=_lowercase     )
class 					lowerCAmelCase_					(   _lowercase     ):



						'''simple docstring'''


						_lowerCamelCase:     str   =     field(default='''audio-classification'''		,       metadata={'''include_in_asdict_even_if_is_default''': True}     )
						_lowerCamelCase:     ClassVar[Features]   =     Features({'''audio''': Audio()}     )
						_lowerCamelCase:     ClassVar[Features]   =     Features({'''labels''': ClassLabel}     )
						_lowerCamelCase:     str   =     "audio"
						_lowerCamelCase:     str   =     "labels"


						def     _SCREAMING_SNAKE_CASE   (			self  :   List[Any]	,A_  :   int   )  -> Tuple:
							if self.label_column not in features:
								raise ValueError(F'Column {self.label_column} is not present in features.'   )
							if not isinstance(features[self.label_column]	,A_   ):
								raise ValueError(F'Column {self.label_column} is not a ClassLabel.'   )
							A     = copy.deepcopy(self   )
							A     = self.label_schema.copy()
							A     = features[self.label_column]
							A     = label_schema
							return task_template




						@property
						def     _SCREAMING_SNAKE_CASE   (			self  :   Any   )  -> Dict[str, str]:
							return {
							    self.audio_column: "audio",
							    self.label_column: "labels",
							}

"""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


_lowercase				 =					logging.get_logger(__name__)

_lowercase				 =					{
    '''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 					lowerCAmelCase_					(   _lowercase     ):



						'''simple docstring'''


						_lowerCamelCase:     Optional[Any]   =     '''mobilenet_v1'''


						def __init__(			self  :   Optional[int]	,A_  :   Optional[int]=3	,A_  :   Any=224	,A_  :   List[Any]=1.0	,A_  :   Union[str, Any]=8	,A_  :   Union[str, Any]="relu6"	,A_  :   Optional[Any]=True	,A_  :   List[str]=0.9_99	,A_  :   int=0.02	,A_  :   int=0.0_01	,**A_  :   Union[str, Any]	,)  -> Dict:
							super().__init__(**A_   )

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

							A     = num_channels
							A     = image_size
							A     = depth_multiplier
							A     = min_depth
							A     = hidden_act
							A     = tf_padding
							A     = classifier_dropout_prob
							A     = initializer_range
							A     = layer_norm_eps







class 					lowerCAmelCase_					(   _lowercase     ):



						'''simple docstring'''


						_lowerCamelCase:     Optional[int]   =     version.parse('''1.11'''     )


						@property
						def     _SCREAMING_SNAKE_CASE   (			self  :   Optional[int]   )  -> Mapping[str, Mapping[int, str]]:
							return OrderedDict([('pixel_values', {0: 'batch'})]   )


						@property
						def     _SCREAMING_SNAKE_CASE   (			self  :   Optional[int]   )  -> Mapping[str, Mapping[int, str]]:
							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  :   Optional[int]   )  -> float:
							return 1e-4