



'''simple docstring'''






from typing import TYPE_CHECKING

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


lowerCAmelCase:   Dict					=		{
    'configuration_data2vec_audio': ['DATA2VEC_AUDIO_PRETRAINED_CONFIG_ARCHIVE_MAP', 'Data2VecAudioConfig'],
    'configuration_data2vec_text': [
        'DATA2VEC_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'Data2VecTextConfig',
        'Data2VecTextOnnxConfig',
    ],
    'configuration_data2vec_vision': [
        'DATA2VEC_VISION_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'Data2VecVisionConfig',
        'Data2VecVisionOnnxConfig',
    ],
}

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     lowerCAmelCase:   Union[str, Any]					=		[
         'DATA2VEC_AUDIO_PRETRAINED_MODEL_ARCHIVE_LIST',
         'Data2VecAudioForAudioFrameClassification',
         'Data2VecAudioForCTC',
         'Data2VecAudioForSequenceClassification',
         'Data2VecAudioForXVector',
         'Data2VecAudioModel',
         'Data2VecAudioPreTrainedModel',
     ]
     lowerCAmelCase:   List[Any]					=		[
         'DATA2VEC_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST',
         'Data2VecTextForCausalLM',
         'Data2VecTextForMaskedLM',
         'Data2VecTextForMultipleChoice',
         'Data2VecTextForQuestionAnswering',
         'Data2VecTextForSequenceClassification',
         'Data2VecTextForTokenClassification',
         'Data2VecTextModel',
         'Data2VecTextPreTrainedModel',
     ]
     lowerCAmelCase:   Optional[int]					=		[
         'DATA2VEC_VISION_PRETRAINED_MODEL_ARCHIVE_LIST',
         'Data2VecVisionForImageClassification',
         'Data2VecVisionForMaskedImageModeling',
         'Data2VecVisionForSemanticSegmentation',
         'Data2VecVisionModel',
         'Data2VecVisionPreTrainedModel',
     ]

if is_tf_available():
     lowerCAmelCase:   Dict					=		[
         'TFData2VecVisionForImageClassification',
         'TFData2VecVisionForSemanticSegmentation',
         'TFData2VecVisionModel',
         'TFData2VecVisionPreTrainedModel',
     ]

if TYPE_CHECKING:
     from .configuration_dataavec_audio import DATA2VEC_AUDIO_PRETRAINED_CONFIG_ARCHIVE_MAP, DataaVecAudioConfig
     from .configuration_dataavec_text import (
         DATA2VEC_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP,
         DataaVecTextConfig,
         DataaVecTextOnnxConfig,
     )
     from .configuration_dataavec_vision import (
         DATA2VEC_VISION_PRETRAINED_CONFIG_ARCHIVE_MAP,
         DataaVecVisionConfig,
         DataaVecVisionOnnxConfig,
     )

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_dataavec_audio import (
              DATA2VEC_AUDIO_PRETRAINED_MODEL_ARCHIVE_LIST,
              DataaVecAudioForAudioFrameClassification,
              DataaVecAudioForCTC,
              DataaVecAudioForSequenceClassification,
              DataaVecAudioForXVector,
              DataaVecAudioModel,
              DataaVecAudioPreTrainedModel,
          )
          from .modeling_dataavec_text import (
              DATA2VEC_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
              DataaVecTextForCausalLM,
              DataaVecTextForMaskedLM,
              DataaVecTextForMultipleChoice,
              DataaVecTextForQuestionAnswering,
              DataaVecTextForSequenceClassification,
              DataaVecTextForTokenClassification,
              DataaVecTextModel,
              DataaVecTextPreTrainedModel,
          )
          from .modeling_dataavec_vision import (
              DATA2VEC_VISION_PRETRAINED_MODEL_ARCHIVE_LIST,
              DataaVecVisionForImageClassification,
              DataaVecVisionForMaskedImageModeling,
              DataaVecVisionForSemanticSegmentation,
              DataaVecVisionModel,
              DataaVecVisionPreTrainedModel,
          )
     if is_tf_available():
          from .modeling_tf_dataavec_vision import (
              TFDataaVecVisionForImageClassification,
              TFDataaVecVisionForSemanticSegmentation,
              TFDataaVecVisionModel,
              TFDataaVecVisionPreTrainedModel,
          )

else:
     import sys

     lowerCAmelCase:   Any					=		_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)




'''simple docstring'''






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


lowerCAmelCase:   List[str]					=		logging.get_logger(__name__)

lowerCAmelCase:   Union[str, Any]					=		{
    'SCUT-DLVCLab/lilt-roberta-en-base': (
        'https://huggingface.co/SCUT-DLVCLab/lilt-roberta-en-base/resolve/main/config.json'
    ),
}

class 				a__(   lowerCamelCase__      ):
    lowercase__					=       """lilt"""







    def __init__( self					:    str		,     __snake_case					:    Dict=3_05_22		,     __snake_case					:    int=7_68		,     __snake_case					:    Union[str, Any]=12		,     __snake_case					:    Optional[Any]=12		,     __snake_case					:    Dict=30_72		,     __snake_case					:    Tuple="gelu"		,     __snake_case					:    Dict=0.1		,     __snake_case					:    List[Any]=0.1		,     __snake_case					:    List[str]=5_12		,     __snake_case					:    List[str]=2		,     __snake_case					:    str=0.02		,     __snake_case					:    Dict=1e-1_2		,     __snake_case					:    int=0		,     __snake_case					:    Any="absolute"		,     __snake_case					:    Tuple=None		,     __snake_case					:    Tuple=4		,     __snake_case					:    List[str]=10_24		,     **__snake_case					:    Union[str, Any]		,     ):
      super().__init__(pad_token_id=__snake_case		,     **__snake_case      )

      a		:   str	  =	vocab_size
      a		:   Optional[Any]	  =	hidden_size
      a		:   Union[str, Any]	  =	num_hidden_layers
      a		:   Tuple	  =	num_attention_heads
      a		:   Optional[Any]	  =	hidden_act
      a		:   Union[str, Any]	  =	intermediate_size
      a		:   Optional[Any]	  =	hidden_dropout_prob
      a		:   Tuple	  =	attention_probs_dropout_prob
      a		:   str	  =	max_position_embeddings
      a		:   Any	  =	type_vocab_size
      a		:   Union[str, Any]	  =	initializer_range
      a		:   int	  =	layer_norm_eps
      a		:   Any	  =	position_embedding_type
      a		:   Any	  =	classifier_dropout
      a		:   str	  =	channel_shrink_ratio
      a		:   Optional[Any]	  =	max_ad_position_embeddings