
"""simple docstring"""






from collections import OrderedDict
from typing import Mapping

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


UpperCamelCase_							=					logging.get_logger(__name__)

UpperCamelCase_							=					{
    """YituTech/conv-bert-base""": """https://huggingface.co/YituTech/conv-bert-base/resolve/main/config.json""",
    """YituTech/conv-bert-medium-small""": (
        """https://huggingface.co/YituTech/conv-bert-medium-small/resolve/main/config.json"""
    ),
    """YituTech/conv-bert-small""": """https://huggingface.co/YituTech/conv-bert-small/resolve/main/config.json""",
    # See all ConvBERT models at https://huggingface.co/models?filter=convbert
}





class 				snake_case    (			_UpperCAmelCase						):
   a_ :						List[str]			 =			'''convbert'''







   def __init__(      self    ,				__UpperCAmelCase=3_05_22    ,				__UpperCAmelCase=7_68    ,				__UpperCAmelCase=12    ,				__UpperCAmelCase=12    ,				__UpperCAmelCase=30_72    ,				__UpperCAmelCase="gelu"    ,				__UpperCAmelCase=0.1    ,				__UpperCAmelCase=0.1    ,				__UpperCAmelCase=5_12    ,				__UpperCAmelCase=2    ,				__UpperCAmelCase=0.02    ,				__UpperCAmelCase=1E-12    ,				__UpperCAmelCase=1    ,				__UpperCAmelCase=0    ,				__UpperCAmelCase=2    ,				__UpperCAmelCase=7_68    ,				__UpperCAmelCase=2    ,				__UpperCAmelCase=9    ,				__UpperCAmelCase=1    ,				__UpperCAmelCase=None    ,				**__UpperCAmelCase    ,				)					->Optional[int]:
      super().__init__(
          pad_token_id=lowerCAmelCase__    ,				bos_token_id=lowerCAmelCase__    ,				eos_token_id=lowerCAmelCase__    ,				**lowerCAmelCase__    ,				)

      a_							=			vocab_size
      a_							=			hidden_size
      a_							=			num_hidden_layers
      a_							=			num_attention_heads
      a_							=			intermediate_size
      a_							=			hidden_act
      a_							=			hidden_dropout_prob
      a_							=			attention_probs_dropout_prob
      a_							=			max_position_embeddings
      a_							=			type_vocab_size
      a_							=			initializer_range
      a_							=			layer_norm_eps
      a_							=			embedding_size
      a_							=			head_ratio
      a_							=			conv_kernel_size
      a_							=			num_groups
      a_							=			classifier_dropout






class 				snake_case    (			_UpperCAmelCase						):







   @property
   def 					UpperCAmelCase__     (      self)					->Mapping[str, Mapping[int, str]]:


      if self.task == "multiple-choice":
         a_							=			{0: "batch", 1: "choice", 2: "sequence"}
      else:
         a_							=			{0: "batch", 1: "sequence"}
      return OrderedDict(
          [
              ("input_ids", dynamic_axis),
              ("attention_mask", dynamic_axis),
              ("token_type_ids", dynamic_axis),
          ])
import warnings
from functools import wraps
from typing import Callable





def 				UpperCAmelCase						(    lowercase							):







				"""simple docstring"""



				@wraps(lowercase							)
				def _inner_fn(*lowercase							,			**lowercase							):
								warnings.warn(
								    (F"'{fn.__name__}' is experimental and might be subject to breaking changes in the future.")							,			lowercase							,			)
								return fn(*lowercase							,			**lowercase							)

				return _inner_fn