



"""simple docstring"""






import copy

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


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

_lowercase					:					int 		=		{}

class 			__SCREAMING_SNAKE_CASE      ( lowerCAmelCase_  ):


					'''simple docstring'''





					_a       =				'fsmt_decoder'



					def __init__(			self				:    Any,    lowerCamelCase				:    Union[str, Any]=0,    lowerCamelCase				:    List[str]=0	)->   Tuple:
								super().__init__()
								lowerCamelCase__						:						List[str]						      =vocab_size
								lowerCamelCase__						:						int						      =bos_token_id





class 			__SCREAMING_SNAKE_CASE      ( lowerCAmelCase_  ):


					'''simple docstring'''





					_a       =				'fsmt'
					_a       =				{'num_attention_heads': 'encoder_attention_heads', 'hidden_size': 'd_model'}



					def __init__(			self				:    int,    lowerCamelCase				:    Optional[Any]=["en", "de"],    lowerCamelCase				:    Any=4_2024,    lowerCamelCase				:    Tuple=4_2024,    lowerCamelCase				:    Dict="relu",    lowerCamelCase				:    str=1024,    lowerCamelCase				:    int=200,    lowerCamelCase				:    Union[str, Any]=1024,    lowerCamelCase				:    Dict=4096,    lowerCamelCase				:    Optional[int]=12,    lowerCamelCase				:    List[Any]=16,    lowerCamelCase				:    Optional[Any]=0.0,    lowerCamelCase				:    List[Any]=4096,    lowerCamelCase				:    int=12,    lowerCamelCase				:    Tuple=16,    lowerCamelCase				:    List[Any]=0.0,    lowerCamelCase				:    List[str]=0.0,    lowerCamelCase				:    int=0.1,    lowerCamelCase				:    Optional[int]=0.0,    lowerCamelCase				:    Union[str, Any]=0.02,    lowerCamelCase				:    List[Any]=2,    lowerCamelCase				:    List[Any]=True,    lowerCamelCase				:    str=True,    lowerCamelCase				:    int=False,    lowerCamelCase				:    Optional[Any]=5,    lowerCamelCase				:    Optional[Any]=1.0,    lowerCamelCase				:    Any=False,    lowerCamelCase				:    Union[str, Any]=True,    lowerCamelCase				:    Any=1,    lowerCamelCase				:    Optional[Any]=0,    lowerCamelCase				:    Tuple=2,    lowerCamelCase				:    Tuple=2,    **lowerCamelCase				:    Tuple,    )->   Dict:
								lowerCamelCase__						:						Tuple						      =langs
								lowerCamelCase__						:						str						      =src_vocab_size
								lowerCamelCase__						:						str						      =tgt_vocab_size
								lowerCamelCase__						:						List[Any]						      =d_model  # encoder_embed_dim and decoder_embed_dim

								lowerCamelCase__						:						Union[str, Any]						      =encoder_ffn_dim
								lowerCamelCase__						:						List[str]						      =encoder_layers
								lowerCamelCase__						:						Any						      =encoder_attention_heads
								lowerCamelCase__						:						Optional[int]						      =encoder_layerdrop
								lowerCamelCase__						:						Optional[Any]						      =decoder_layerdrop
								lowerCamelCase__						:						str						      =decoder_ffn_dim
								lowerCamelCase__						:						Union[str, Any]						      =decoder_layers
								lowerCamelCase__						:						Union[str, Any]						      =decoder_attention_heads
								lowerCamelCase__						:						Optional[Any]						      =max_position_embeddings
								lowerCamelCase__						:						Dict						      =init_std  # Normal(0, this parameter)
								lowerCamelCase__						:						List[str]						      =activation_function

								lowerCamelCase__						:						Optional[Any]						      =DecoderConfig(vocab_size=lowerCamelCase,    bos_token_id=lowerCamelCase	)
								if "decoder" in common_kwargs:
											del common_kwargs["decoder"]

								lowerCamelCase__						:						int						      =scale_embedding  # scale factor will be sqrt(d_model) if True

								# 3 Types of Dropout
								lowerCamelCase__						:						int						      =attention_dropout
								lowerCamelCase__						:						int						      =activation_dropout
								lowerCamelCase__						:						Optional[int]						      =dropout

								lowerCamelCase__						:						int						      =use_cache
								super().__init__(
								    pad_token_id=lowerCamelCase,    bos_token_id=lowerCamelCase,    eos_token_id=lowerCamelCase,    decoder_start_token_id=lowerCamelCase,    is_encoder_decoder=lowerCamelCase,    tie_word_embeddings=lowerCamelCase,    forced_eos_token_id=lowerCamelCase,    max_length=lowerCamelCase,    num_beams=lowerCamelCase,    length_penalty=lowerCamelCase,    early_stopping=lowerCamelCase,    **lowerCamelCase,    )




					def 						snake_case			(			self				:    List[str]	)->   int:
								lowerCamelCase__						:						List[str]						      =copy.deepcopy(self.__dict__	)
								lowerCamelCase__						:						Union[str, Any]						      =self.decoder.to_dict()
								lowerCamelCase__						:						int						      =self.__class__.model_type
								return output









"""simple docstring"""






from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_torch_available,
)


_lowercase					:					Any 		=		{
    "configuration_unispeech_sat": ["UNISPEECH_SAT_PRETRAINED_CONFIG_ARCHIVE_MAP", "UniSpeechSatConfig"],
}

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_lowercase					:					Any 		=		[
		    "UNISPEECH_SAT_PRETRAINED_MODEL_ARCHIVE_LIST",
		    "UniSpeechSatForAudioFrameClassification",
		    "UniSpeechSatForCTC",
		    "UniSpeechSatForPreTraining",
		    "UniSpeechSatForSequenceClassification",
		    "UniSpeechSatForXVector",
		    "UniSpeechSatModel",
		    "UniSpeechSatPreTrainedModel",
		]

if TYPE_CHECKING:
		from .configuration_unispeech_sat import UNISPEECH_SAT_PRETRAINED_CONFIG_ARCHIVE_MAP, UniSpeechSatConfig

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_unispeech_sat import (
				    UNISPEECH_SAT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    UniSpeechSatForAudioFrameClassification,
				    UniSpeechSatForCTC,
				    UniSpeechSatForPreTraining,
				    UniSpeechSatForSequenceClassification,
				    UniSpeechSatForXVector,
				    UniSpeechSatModel,
				    UniSpeechSatPreTrainedModel,
				)

else:
		import sys

		_lowercase					:					int 		=		_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)




