






'''simple docstring'''





from typing import TYPE_CHECKING

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


_UpperCamelCase						:						List[Any]  =					{
    """configuration_cpmant""": ["""CPMANT_PRETRAINED_CONFIG_ARCHIVE_MAP""", """CpmAntConfig"""],
    """tokenization_cpmant""": ["""CpmAntTokenizer"""],
}

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_UpperCamelCase						:						Optional[Any]  =					[
						    """CPMANT_PRETRAINED_MODEL_ARCHIVE_LIST""",
						    """CpmAntForCausalLM""",
						    """CpmAntModel""",
						    """CpmAntPreTrainedModel""",
						]


if TYPE_CHECKING:
						from .configuration_cpmant import CPMANT_PRETRAINED_CONFIG_ARCHIVE_MAP, CpmAntConfig
						from .tokenization_cpmant import CpmAntTokenizer

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_cpmant import (
												    CPMANT_PRETRAINED_MODEL_ARCHIVE_LIST,
												    CpmAntForCausalLM,
												    CpmAntModel,
												    CpmAntPreTrainedModel,
												)


else:
						import sys

						_UpperCamelCase						:						List[str]  =					_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)










"""simple docstring"""



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


_lowerCAmelCase	:	Any				=      logging.get_logger(__name__)

_lowerCAmelCase	:	Union[str, Any]				=      {
    # See all MEGATRON_BERT models at https://huggingface.co/models?filter=bert
}




class 			lowerCAmelCase__			(    __magic_name__   ):
   SCREAMING_SNAKE_CASE_    ='''megatron-bert'''
   def __init__(		self      :	Tuple							,			snake_case__      :	List[Any]=2_9_0_5_6							,			snake_case__      :	Any=1_0_2_4							,			snake_case__      :	Tuple=2_4							,			snake_case__      :	Optional[Any]=1_6							,			snake_case__      :	List[str]=4_0_9_6							,			snake_case__      :	Union[str, Any]="gelu"							,			snake_case__      :	int=0.1							,			snake_case__      :	Dict=0.1							,			snake_case__      :	str=5_1_2							,			snake_case__      :	Optional[Any]=2							,			snake_case__      :	Any=0.02							,			snake_case__      :	Optional[Any]=1e-12							,			snake_case__      :	str=0							,			snake_case__      :	Optional[Any]="absolute"							,			snake_case__      :	Optional[Any]=True							,			**snake_case__      :	Any							,			):


        '''simple docstring'''
        super().__init__(pad_token_id=snake_case__							,			**snake_case__							)

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


