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


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

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






class UpperCAmelCase   (						SCREAMING_SNAKE_CASE__   ):





   '''simple docstring'''
   __UpperCamelCase		:    Optional[Any] 				=    '''lilt'''


   def __init__(					self     :							Optional[int]			,			lowerCAmelCase_     :							Tuple=3_0_5_2_2			,			lowerCAmelCase_     :							List[str]=7_6_8			,			lowerCAmelCase_     :							Union[str, Any]=1_2			,			lowerCAmelCase_     :							int=1_2			,			lowerCAmelCase_     :							Optional[int]=3_0_7_2			,			lowerCAmelCase_     :							List[Any]="gelu"			,			lowerCAmelCase_     :							Any=0.1			,			lowerCAmelCase_     :							List[Any]=0.1			,			lowerCAmelCase_     :							Union[str, Any]=5_1_2			,			lowerCAmelCase_     :							Union[str, Any]=2			,			lowerCAmelCase_     :							Union[str, Any]=0.02			,			lowerCAmelCase_     :							Dict=1e-12			,			lowerCAmelCase_     :							Dict=0			,			lowerCAmelCase_     :							int="absolute"			,			lowerCAmelCase_     :							Dict=None			,			lowerCAmelCase_     :							Tuple=4			,			lowerCAmelCase_     :							int=1_0_2_4			,			**lowerCAmelCase_     :							Any			,			):

      """simple docstring"""
      super().__init__(pad_token_id=lowerCAmelCase_			,			**lowerCAmelCase_     )

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





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

from ..features import Features, Sequence, Value
from .base import TaskTemplate






@dataclass(frozen=SCREAMING_SNAKE_CASE__   )
class UpperCAmelCase   (						SCREAMING_SNAKE_CASE__   ):





   '''simple docstring'''
   # `task` is not a ClassVar since we want it to be part of the `asdict` output for JSON serialization
   __UpperCamelCase		:    str 				=    field(default='''question-answering-extractive'''							,							metadata={'''include_in_asdict_even_if_is_default''': True}   )
   __UpperCamelCase		:    ClassVar[Features] 				=    Features({'''question''': Value('''string'''   ), '''context''': Value('''string'''   )}   )
   __UpperCamelCase		:    ClassVar[Features] 				=    Features(
       {
           '''answers''': Sequence(
               {
                   '''text''': Value('''string'''   ),
                   '''answer_start''': Value('''int32'''   ),
               }   )
       }   )
   __UpperCamelCase		:    str 				=    "question"
   __UpperCamelCase		:    str 				=    "context"
   __UpperCamelCase		:    str 				=    "answers"


   @property
   def  __magic_name__				(					self     :							List[str]     ):

      """simple docstring"""
      return {self.question_column: "question", self.context_column: "context", self.answers_column: "answers"}



