
from torch import nn







class        lowercase	(      nn.Module	):




							def __init__(       self     ,A__     ,A__):
												super().__init__()
												lowercase					=		class_size
												lowercase					=		embed_size
												# self.mlp1 = nn.Linear(embed_size, embed_size)
												# self.mlp2 = (nn.Linear(embed_size, class_size))
												lowercase					=		nn.Linear(A__     ,A__)





							def 				A__   (       self     ,A__):
												# hidden_state = nn.functional.relu(self.mlp1(hidden_state))
												# hidden_state = self.mlp2(hidden_state)
												lowercase					=		self.mlp(A__)
												return logits






import logging

from transformers import PretrainedConfig


lowercase__	:int										=					logging.getLogger(__name__)


lowercase__	:Dict										=					{
    "bertabs-finetuned-cnndm": "https://huggingface.co/remi/bertabs-finetuned-cnndm-extractive-abstractive-summarization/resolve/main/config.json",
}







class        lowercase	(      SCREAMING_SNAKE_CASE__	):
							lowercase_ : Optional[int]       ='''bertabs'''




							def __init__(       self     ,A__=3_0_5_2_2     ,A__=5_1_2     ,A__=6     ,A__=5_1_2     ,A__=8     ,A__=5_1_2     ,A__=0.2     ,A__=6     ,A__=7_6_8     ,A__=8     ,A__=2_0_4_8     ,A__=0.2     ,**A__     ,):
												super().__init__(**A__)

												lowercase					=		vocab_size
												lowercase					=		max_pos

												lowercase					=		enc_layers
												lowercase					=		enc_hidden_size
												lowercase					=		enc_heads
												lowercase					=		enc_ff_size
												lowercase					=		enc_dropout

												lowercase					=		dec_layers
												lowercase					=		dec_hidden_size
												lowercase					=		dec_heads
												lowercase					=		dec_ff_size
												lowercase					=		dec_dropout




