


"""simple docstring"""
from typing import TYPE_CHECKING

# rely on isort to merge the imports
from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


UpperCAmelCase				=						{"""configuration_focalnet""": ["""FOCALNET_PRETRAINED_CONFIG_ARCHIVE_MAP""", """FocalNetConfig"""]}


try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 UpperCAmelCase				=						[
     """FOCALNET_PRETRAINED_MODEL_ARCHIVE_LIST""",
     """FocalNetForImageClassification""",
     """FocalNetForMaskedImageModeling""",
     """FocalNetBackbone""",
     """FocalNetModel""",
     """FocalNetPreTrainedModel""",
 ]

if TYPE_CHECKING:
 from .configuration_focalnet import FOCALNET_PRETRAINED_CONFIG_ARCHIVE_MAP, FocalNetConfig

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_focalnet import (
      FOCALNET_PRETRAINED_MODEL_ARCHIVE_LIST,
      FocalNetBackbone,
      FocalNetForImageClassification,
      FocalNetForMaskedImageModeling,
      FocalNetModel,
      FocalNetPreTrainedModel,
  )

else:
 import sys

 UpperCAmelCase				=						_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)





"""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				=						{
    """kssteven/ibert-roberta-base""": """https://huggingface.co/kssteven/ibert-roberta-base/resolve/main/config.json""",
    """kssteven/ibert-roberta-large""": """https://huggingface.co/kssteven/ibert-roberta-large/resolve/main/config.json""",
    """kssteven/ibert-roberta-large-mnli""": (
        """https://huggingface.co/kssteven/ibert-roberta-large-mnli/resolve/main/config.json"""
    ),
}




class 	lowercase__				(					A_				):
   __UpperCAmelCase							       =					'''ibert'''





   def __init__(							self      ,   SCREAMING_SNAKE_CASE=3_0522      ,   SCREAMING_SNAKE_CASE=768      ,   SCREAMING_SNAKE_CASE=12      ,   SCREAMING_SNAKE_CASE=12      ,   SCREAMING_SNAKE_CASE=3072      ,   SCREAMING_SNAKE_CASE="gelu"      ,   SCREAMING_SNAKE_CASE=0.1      ,   SCREAMING_SNAKE_CASE=0.1      ,   SCREAMING_SNAKE_CASE=512      ,   SCREAMING_SNAKE_CASE=2      ,   SCREAMING_SNAKE_CASE=0.02      ,   SCREAMING_SNAKE_CASE=1e-1_2      ,   SCREAMING_SNAKE_CASE=1      ,   SCREAMING_SNAKE_CASE=0      ,   SCREAMING_SNAKE_CASE=2      ,   SCREAMING_SNAKE_CASE="absolute"      ,   SCREAMING_SNAKE_CASE=False      ,   SCREAMING_SNAKE_CASE="none"      ,   **SCREAMING_SNAKE_CASE      ,   )  ->  Any:
      super().__init__(pad_token_id=SCREAMING_SNAKE_CASE      ,   bos_token_id=SCREAMING_SNAKE_CASE      ,   eos_token_id=SCREAMING_SNAKE_CASE      ,   **SCREAMING_SNAKE_CASE)

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







class 	lowercase__				(					A_				):





   @property
   def 		UpperCamelCase_  (							self)  ->  Mapping[str, Mapping[int, str]]:
      if self.task == "multiple-choice":
         _lowerCamelCase	:					Dict   =		{0: """batch""", 1: """choice""", 2: """sequence"""}
      else:
         _lowerCamelCase	:					Optional[int]   =		{0: """batch""", 1: """sequence"""}
      return OrderedDict(
          [
              ("""input_ids""", dynamic_axis),
              ("""attention_mask""", dynamic_axis),
          ])

