




"""simple docstring"""

from collections import OrderedDict
from typing import Mapping

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


UpperCamelCase__			:     Any			       =				logging.get_logger(__name__)

UpperCamelCase__			:     Any			       =				{
    "google/electra-small-generator": "https://huggingface.co/google/electra-small-generator/resolve/main/config.json",
    "google/electra-base-generator": "https://huggingface.co/google/electra-base-generator/resolve/main/config.json",
    "google/electra-large-generator": "https://huggingface.co/google/electra-large-generator/resolve/main/config.json",
    "google/electra-small-discriminator": (
        "https://huggingface.co/google/electra-small-discriminator/resolve/main/config.json"
    ),
    "google/electra-base-discriminator": (
        "https://huggingface.co/google/electra-base-discriminator/resolve/main/config.json"
    ),
    "google/electra-large-discriminator": (
        "https://huggingface.co/google/electra-large-discriminator/resolve/main/config.json"
    ),
}
class      A__   (   lowercase_  ):
	A_				:					Union[str, Any]      =   """electra"""




	def __init__( self	:						int   ,     lowercase	:						Optional[Any]=30_522   ,     lowercase	:						List[Any]=128   ,     lowercase	:						List[str]=256   ,     lowercase	:						str=12   ,     lowercase	:						Dict=4   ,     lowercase	:						int=1_024   ,     lowercase	:						Tuple="gelu"   ,     lowercase	:						Optional[int]=0.1   ,     lowercase	:						List[Any]=0.1   ,     lowercase	:						int=512   ,     lowercase	:						Tuple=2   ,     lowercase	:						str=0.02   ,     lowercase	:						Tuple=1e-12   ,     lowercase	:						int="first"   ,     lowercase	:						Tuple=True   ,     lowercase	:						int="gelu"   ,     lowercase	:						Optional[int]=0.1   ,     lowercase	:						Tuple=0   ,     lowercase	:						Optional[int]="absolute"   ,     lowercase	:						int=True   ,     lowercase	:						Optional[int]=None   ,     **lowercase	:						List[str]   ,     )       ->			Optional[int]:
						super().__init__(pad_token_id=lowercase   ,     **lowercase						)

						__snake_case        =						vocab_size
						__snake_case        =						embedding_size
						__snake_case        =						hidden_size
						__snake_case        =						num_hidden_layers
						__snake_case        =						num_attention_heads
						__snake_case        =						intermediate_size
						__snake_case        =						hidden_act
						__snake_case        =						hidden_dropout_prob
						__snake_case        =						attention_probs_dropout_prob
						__snake_case        =						max_position_embeddings
						__snake_case        =						type_vocab_size
						__snake_case        =						initializer_range
						__snake_case        =						layer_norm_eps

						__snake_case        =						summary_type
						__snake_case        =						summary_use_proj
						__snake_case        =						summary_activation
						__snake_case        =						summary_last_dropout
						__snake_case        =						position_embedding_type
						__snake_case        =						use_cache
						__snake_case        =						classifier_dropout

class      A__   (   lowercase_  ):




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








"""simple docstring"""

from .chunk_utils import chunk_layer
from .data_transforms import make_atomaa_masks
from .feats import atomaa_to_atomaa, frames_and_literature_positions_to_atomaa_pos, torsion_angles_to_frames
from .loss import compute_predicted_aligned_error, compute_tm
from .protein import Protein as OFProtein
from .protein import to_pdb
from .rigid_utils import Rigid, Rotation
from .tensor_utils import dict_multimap, flatten_final_dims, permute_final_dims


