






from ...configuration_utils import PretrainedConfig
from ...utils import logging


a						:			Optional[int]     	=					logging.get_logger(__name__)

a						:			Dict     	=					{
    '''microsoft/markuplm-base''': '''https://huggingface.co/microsoft/markuplm-base/resolve/main/config.json''',
    '''microsoft/markuplm-large''': '''https://huggingface.co/microsoft/markuplm-large/resolve/main/config.json''',
}
class        a       (					a__  ):



      """simple docstring"""


      a    :					Dict							=      'markuplm'
      def __init__( self   :     List[str]						, __lowercase   :     List[Any]=30522						, __lowercase   :     Any=768						, __lowercase   :     Any=12						, __lowercase   :     Optional[Any]=12						, __lowercase   :     str=3072						, __lowercase   :     str="gelu"						, __lowercase   :     Dict=0.1						, __lowercase   :     Optional[Any]=0.1						, __lowercase   :     List[Any]=512						, __lowercase   :     List[Any]=2						, __lowercase   :     str=0.02						, __lowercase   :     Any=1e-1_2						, __lowercase   :     int=0						, __lowercase   :     Dict=0						, __lowercase   :     int=2						, __lowercase   :     Any=256						, __lowercase   :     Optional[Any]=1024						, __lowercase   :     List[Any]=216						, __lowercase   :     Optional[int]=1001						, __lowercase   :     Dict=32						, __lowercase   :     Dict=50						, __lowercase   :     Optional[int]="absolute"						, __lowercase   :     Dict=True						, __lowercase   :     Optional[Any]=None						, **__lowercase   :     Dict						, )				-> Union[str, Any]:
        super().__init__(
            pad_token_id=_snake_case						, bos_token_id=_snake_case						, eos_token_id=_snake_case						, **_snake_case						, )
        __UpperCAmelCase				:      str	 =    vocab_size
        __UpperCAmelCase				:      Tuple	 =    hidden_size
        __UpperCAmelCase				:      Optional[int]	 =    num_hidden_layers
        __UpperCAmelCase				:      Union[str, Any]	 =    num_attention_heads
        __UpperCAmelCase				:      List[str]	 =    hidden_act
        __UpperCAmelCase				:      Optional[Any]	 =    intermediate_size
        __UpperCAmelCase				:      int	 =    hidden_dropout_prob
        __UpperCAmelCase				:      Tuple	 =    attention_probs_dropout_prob
        __UpperCAmelCase				:      List[Any]	 =    max_position_embeddings
        __UpperCAmelCase				:      Union[str, Any]	 =    type_vocab_size
        __UpperCAmelCase				:      str	 =    initializer_range
        __UpperCAmelCase				:      Optional[Any]	 =    layer_norm_eps
        __UpperCAmelCase				:      Any	 =    position_embedding_type
        __UpperCAmelCase				:      Tuple	 =    use_cache
        __UpperCAmelCase				:      Union[str, Any]	 =    classifier_dropout
        # additional properties
        __UpperCAmelCase				:      Union[str, Any]	 =    max_depth
        __UpperCAmelCase				:      Union[str, Any]	 =    max_xpath_tag_unit_embeddings
        __UpperCAmelCase				:      Optional[Any]	 =    max_xpath_subs_unit_embeddings
        __UpperCAmelCase				:      Optional[int]	 =    tag_pad_id
        __UpperCAmelCase				:      Dict	 =    subs_pad_id
        __UpperCAmelCase				:      str	 =    xpath_unit_hidden_size









"""simple docstring"""
from collections import OrderedDict
from typing import Mapping

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


__UpperCamelCase     :						Union[str, Any]						       =  logging.get_logger(__name__)

__UpperCamelCase     :						Tuple						       =  {
    '''bert-base-uncased''': '''https://huggingface.co/bert-base-uncased/resolve/main/config.json''',
    '''bert-large-uncased''': '''https://huggingface.co/bert-large-uncased/resolve/main/config.json''',
    '''bert-base-cased''': '''https://huggingface.co/bert-base-cased/resolve/main/config.json''',
    '''bert-large-cased''': '''https://huggingface.co/bert-large-cased/resolve/main/config.json''',
    '''bert-base-multilingual-uncased''': '''https://huggingface.co/bert-base-multilingual-uncased/resolve/main/config.json''',
    '''bert-base-multilingual-cased''': '''https://huggingface.co/bert-base-multilingual-cased/resolve/main/config.json''',
    '''bert-base-chinese''': '''https://huggingface.co/bert-base-chinese/resolve/main/config.json''',
    '''bert-base-german-cased''': '''https://huggingface.co/bert-base-german-cased/resolve/main/config.json''',
    '''bert-large-uncased-whole-word-masking''': (
        '''https://huggingface.co/bert-large-uncased-whole-word-masking/resolve/main/config.json'''
    ),
    '''bert-large-cased-whole-word-masking''': (
        '''https://huggingface.co/bert-large-cased-whole-word-masking/resolve/main/config.json'''
    ),
    '''bert-large-uncased-whole-word-masking-finetuned-squad''': (
        '''https://huggingface.co/bert-large-uncased-whole-word-masking-finetuned-squad/resolve/main/config.json'''
    ),
    '''bert-large-cased-whole-word-masking-finetuned-squad''': (
        '''https://huggingface.co/bert-large-cased-whole-word-masking-finetuned-squad/resolve/main/config.json'''
    ),
    '''bert-base-cased-finetuned-mrpc''': '''https://huggingface.co/bert-base-cased-finetuned-mrpc/resolve/main/config.json''',
    '''bert-base-german-dbmdz-cased''': '''https://huggingface.co/bert-base-german-dbmdz-cased/resolve/main/config.json''',
    '''bert-base-german-dbmdz-uncased''': '''https://huggingface.co/bert-base-german-dbmdz-uncased/resolve/main/config.json''',
    '''cl-tohoku/bert-base-japanese''': '''https://huggingface.co/cl-tohoku/bert-base-japanese/resolve/main/config.json''',
    '''cl-tohoku/bert-base-japanese-whole-word-masking''': (
        '''https://huggingface.co/cl-tohoku/bert-base-japanese-whole-word-masking/resolve/main/config.json'''
    ),
    '''cl-tohoku/bert-base-japanese-char''': (
        '''https://huggingface.co/cl-tohoku/bert-base-japanese-char/resolve/main/config.json'''
    ),
    '''cl-tohoku/bert-base-japanese-char-whole-word-masking''': (
        '''https://huggingface.co/cl-tohoku/bert-base-japanese-char-whole-word-masking/resolve/main/config.json'''
    ),
    '''TurkuNLP/bert-base-finnish-cased-v1''': (
        '''https://huggingface.co/TurkuNLP/bert-base-finnish-cased-v1/resolve/main/config.json'''
    ),
    '''TurkuNLP/bert-base-finnish-uncased-v1''': (
        '''https://huggingface.co/TurkuNLP/bert-base-finnish-uncased-v1/resolve/main/config.json'''
    ),
    '''wietsedv/bert-base-dutch-cased''': '''https://huggingface.co/wietsedv/bert-base-dutch-cased/resolve/main/config.json''',
    # See all BERT models at https://huggingface.co/models?filter=bert
}







class       a							(   a__  ):
 snake_case__             =       '''bert'''



 def __init__(     self				,       _snake_case=3_05_22				,       _snake_case=7_68				,       _snake_case=12				,       _snake_case=12				,       _snake_case=30_72				,       _snake_case="gelu"				,       _snake_case=0.1				,       _snake_case=0.1				,       _snake_case=5_12				,       _snake_case=2				,       _snake_case=0.02				,       _snake_case=1E-12				,       _snake_case=0				,       _snake_case="absolute"				,       _snake_case=True				,       _snake_case=None				,       **_snake_case				,       ):







  """simple docstring"""






  super().__init__(pad_token_id=_snake_case				,       **_snake_case     )

  lowerCAmelCase    				= vocab_size
  lowerCAmelCase    				= hidden_size
  lowerCAmelCase    				= num_hidden_layers
  lowerCAmelCase    				= num_attention_heads
  lowerCAmelCase    				= hidden_act
  lowerCAmelCase    				= intermediate_size
  lowerCAmelCase    				= hidden_dropout_prob
  lowerCAmelCase    				= attention_probs_dropout_prob
  lowerCAmelCase    				= max_position_embeddings
  lowerCAmelCase    				= type_vocab_size
  lowerCAmelCase    				= initializer_range
  lowerCAmelCase    				= layer_norm_eps
  lowerCAmelCase    				= position_embedding_type
  lowerCAmelCase    				= use_cache
  lowerCAmelCase    				= classifier_dropout







class       a							(   a__  ):



 @property
 def    UpperCamelCase__  (     self     ):







  """simple docstring"""






  if self.task == "multiple-choice":
   lowerCAmelCase    				= {0: 'batch', 1: 'choice', 2: 'sequence'}
  else:
   lowerCAmelCase    				= {0: 'batch', 1: 'sequence'}
  return OrderedDict(
      [
          ('input_ids', dynamic_axis),
          ('attention_mask', dynamic_axis),
          ('token_type_ids', dynamic_axis),
      ]     )





