




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


__SCREAMING_SNAKE_CASE     : Optional[Any]      =logging.get_logger(__name__)

__SCREAMING_SNAKE_CASE     : str      ={
    """MCG-NJU/videomae-base""": """https://huggingface.co/MCG-NJU/videomae-base/resolve/main/config.json""",
}






class       A      (		_lowerCAmelCase		):
     """simple docstring"""

     _snake_case:						Optional[Any]  ="videomae"




     def __init__(     self	: Optional[Any]						,	A__	: Optional[Any]=2_2_4						,	A__	: str=1_6						,	A__	: Union[str, Any]=3						,	A__	: Optional[Any]=1_6						,	A__	: Union[str, Any]=2						,	A__	: Dict=7_6_8						,	A__	: Dict=1_2						,	A__	: Optional[Any]=1_2						,	A__	: Any=3_0_7_2						,	A__	: Dict="gelu"						,	A__	: List[str]=0.0						,	A__	: Optional[int]=0.0						,	A__	: Union[str, Any]=0.02						,	A__	: Union[str, Any]=1E-12						,	A__	: str=True						,	A__	: Dict=True						,	A__	: Dict=6						,	A__	: Optional[int]=3_8_4						,	A__	: str=4						,	A__	: Tuple=1_5_3_6						,	A__	: Dict=True						,	**A__	: Union[str, Any]						,	)					->							Optional[Any]:
           super().__init__(**A__      )

           lowerCamelCase__   	=					image_size
           lowerCamelCase__   	=					patch_size
           lowerCamelCase__   	=					num_channels
           lowerCamelCase__   	=					num_frames
           lowerCamelCase__   	=					tubelet_size

           lowerCamelCase__   	=					hidden_size
           lowerCamelCase__   	=					num_hidden_layers
           lowerCamelCase__   	=					num_attention_heads
           lowerCamelCase__   	=					intermediate_size
           lowerCamelCase__   	=					hidden_act
           lowerCamelCase__   	=					hidden_dropout_prob
           lowerCamelCase__   	=					attention_probs_dropout_prob
           lowerCamelCase__   	=					initializer_range
           lowerCamelCase__   	=					layer_norm_eps
           lowerCamelCase__   	=					qkv_bias
           lowerCamelCase__   	=					use_mean_pooling

           lowerCamelCase__   	=					decoder_num_attention_heads
           lowerCamelCase__   	=					decoder_hidden_size
           lowerCamelCase__   	=					decoder_num_hidden_layers
           lowerCamelCase__   	=					decoder_intermediate_size
           lowerCamelCase__   	=					norm_pix_loss





from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_tokenizers_available,
    is_torch_available,
)


__SCREAMING_SNAKE_CASE     : Tuple      ={
    """configuration_open_llama""": ["""OPEN_LLAMA_PRETRAINED_CONFIG_ARCHIVE_MAP""", """OpenLlamaConfig"""],
}

try:
      if not is_sentencepiece_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __SCREAMING_SNAKE_CASE     : Dict      =["""LlamaTokenizer"""]

try:
      if not is_tokenizers_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __SCREAMING_SNAKE_CASE     : int      =["""LlamaTokenizerFast"""]

try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __SCREAMING_SNAKE_CASE     : Optional[Any]      =[
          """OpenLlamaForCausalLM""",
          """OpenLlamaModel""",
          """OpenLlamaPreTrainedModel""",
          """OpenLlamaForSequenceClassification""",
      ]


if TYPE_CHECKING:
      from .configuration_open_llama import OPEN_LLAMA_PRETRAINED_CONFIG_ARCHIVE_MAP, OpenLlamaConfig

      try:
            if not is_sentencepiece_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from transformers import LlamaTokenizer

      try:
            if not is_tokenizers_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from transformers import LlamaTokenizerFast

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_open_llama import (
                OpenLlamaForCausalLM,
                OpenLlamaForSequenceClassification,
                OpenLlamaModel,
                OpenLlamaPreTrainedModel,
            )


else:
      import sys

      __SCREAMING_SNAKE_CASE     : Union[str, Any]      =_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)