





'''simple docstring'''






from collections import OrderedDict
from typing import Mapping

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


lowerCAmelCase									=   logging.get_logger(__name__)

lowerCAmelCase									=   {
    "google/bigbird-roberta-base": "https://huggingface.co/google/bigbird-roberta-base/resolve/main/config.json",
    "google/bigbird-roberta-large": "https://huggingface.co/google/bigbird-roberta-large/resolve/main/config.json",
    "google/bigbird-base-trivia-itc": "https://huggingface.co/google/bigbird-base-trivia-itc/resolve/main/config.json",
    # See all BigBird models at https://huggingface.co/models?filter=big_bird
}
class 		lowerCamelCase	(   __snake_case							):
	snake_case_   = "big_bird"



	def __init__( self		,   a_=50_358		,   a_=768		,   a_=12		,   a_=12		,   a_=3_072		,   a_="gelu_new"		,   a_=0.1		,   a_=0.1		,   a_=4_096		,   a_=2		,   a_=0.02		,   a_=1e-1_2		,   a_=True		,   a_=0		,   a_=1		,   a_=2		,   a_=66		,   a_="block_sparse"		,   a_=True		,   a_=False		,   a_=64		,   a_=3		,   a_=None		,   **a_		,   ):
			super().__init__(
			    pad_token_id=a__		,   bos_token_id=a__		,   eos_token_id=a__		,   sep_token_id=a__		,   **a__		,   )

			lowerCAmelCase  :     Optional[int]       						= vocab_size
			lowerCAmelCase  :     List[Any]       						= max_position_embeddings
			lowerCAmelCase  :     Tuple       						= hidden_size
			lowerCAmelCase  :     Union[str, Any]       						= num_hidden_layers
			lowerCAmelCase  :     Union[str, Any]       						= num_attention_heads
			lowerCAmelCase  :     List[str]       						= intermediate_size
			lowerCAmelCase  :     Tuple       						= hidden_act
			lowerCAmelCase  :     Dict       						= hidden_dropout_prob
			lowerCAmelCase  :     List[str]       						= attention_probs_dropout_prob
			lowerCAmelCase  :     Optional[int]       						= initializer_range
			lowerCAmelCase  :     Optional[int]       						= type_vocab_size
			lowerCAmelCase  :     Optional[Any]       						= layer_norm_eps
			lowerCAmelCase  :     str       						= use_cache

			lowerCAmelCase  :     Tuple       						= rescale_embeddings
			lowerCAmelCase  :     Optional[Any]       						= attention_type
			lowerCAmelCase  :     Optional[Any]       						= use_bias
			lowerCAmelCase  :     int       						= block_size
			lowerCAmelCase  :     Tuple       						= num_random_blocks
			lowerCAmelCase  :     List[Any]       						= classifier_dropout






class 		lowerCamelCase	(   __snake_case							):



	@property
	def 	_lowerCamelCase     ( self						):
			if self.task == "multiple-choice":
					lowerCAmelCase  :     Union[str, Any]       						= {0: "batch", 1: "choice", 2: "sequence"}
			else:
					lowerCAmelCase  :     Union[str, Any]       						= {0: "batch", 1: "sequence"}
			return OrderedDict(
			    [
			        ("input_ids", dynamic_axis),
			        ("attention_mask", dynamic_axis),
			    ]						)







from ..utils import DummyObject, requires_backends






class    _UpperCamelCase     (       metaclass=__snake_case					):

				"""simple docstring"""







				lowerCAmelCase					=			['note_seq']

				def __init__(    self					, *a__					, **a__ )						->					Optional[int]:
					requires_backends(self					, ["""note_seq"""] )

				@classmethod
				def   _UpperCAmelCase       (    cls					, *a__					, **a__ )						->					Dict:
					requires_backends(cls					, ["""note_seq"""] )

				@classmethod
				def   _UpperCAmelCase       (    cls					, *a__					, **a__ )						->					Optional[int]:
					requires_backends(cls					, ["""note_seq"""] )



