

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


__snake_case			:     Dict										=      logging.get_logger(__name__)

__snake_case			:     Dict										=      {
    'facebook/nllb-moe-54B': 'https://huggingface.co/facebook/nllb-moe-54b/resolve/main/config.json',
}



class lowerCamelCase			(  lowercase_						):



			'''simple docstring'''






			__snake_case        =	'nllb-moe'
			__snake_case        =	['past_key_values']
			__snake_case        =	{'num_attention_heads': 'encoder_attention_heads', 'hidden_size': 'd_model'}


			def __init__(				self	:						Optional[Any]		,      lowerCAmelCase_	:						str=12_81_12		,      lowerCAmelCase_	:						List[str]=10_24		,      lowerCAmelCase_	:						str=12		,      lowerCAmelCase_	:						List[str]=40_96		,      lowerCAmelCase_	:						Optional[Any]=16		,      lowerCAmelCase_	:						int=12		,      lowerCAmelCase_	:						int=40_96		,      lowerCAmelCase_	:						Optional[Any]=16		,      lowerCAmelCase_	:						Optional[int]=0.05		,      lowerCAmelCase_	:						Tuple=0.05		,      lowerCAmelCase_	:						Tuple=True		,      lowerCAmelCase_	:						List[str]=True		,      lowerCAmelCase_	:						int="relu"		,      lowerCAmelCase_	:						List[str]=10_24		,      lowerCAmelCase_	:						int=0.1		,      lowerCAmelCase_	:						Any=0.1		,      lowerCAmelCase_	:						Any=0.0		,      lowerCAmelCase_	:						Dict=0.02		,      lowerCAmelCase_	:						Union[str, Any]=2		,      lowerCAmelCase_	:						Optional[int]=True		,      lowerCAmelCase_	:						List[Any]=False		,      lowerCAmelCase_	:						List[Any]="float32"		,      lowerCAmelCase_	:						Dict=False		,      lowerCAmelCase_	:						int=1_28		,      lowerCAmelCase_	:						List[Any]=64		,      lowerCAmelCase_	:						str=4		,      lowerCAmelCase_	:						Dict=4		,      lowerCAmelCase_	:						List[str]=0.001		,      lowerCAmelCase_	:						Any=0.001		,      lowerCAmelCase_	:						Union[str, Any]="all"		,      lowerCAmelCase_	:						Optional[Any]=False		,      lowerCAmelCase_	:						Any=False		,      lowerCAmelCase_	:						str=1.0		,      lowerCAmelCase_	:						Tuple=0.2		,      lowerCAmelCase_	:						Tuple=1		,      lowerCAmelCase_	:						int=0		,      lowerCAmelCase_	:						List[str]=2		,      lowerCAmelCase_	:						Dict=False		,      **lowerCAmelCase_	:						Optional[Any]		,      )      ->		Optional[Any]:





									'''simple docstring'''
									A__					:       int     =vocab_size
									A__					:       List[Any]     =max_position_embeddings
									A__					:       Dict     =d_model
									A__					:       Optional[int]     =encoder_ffn_dim
									A__					:       List[Any]     =encoder_layers
									A__					:       int     =encoder_attention_heads
									A__					:       List[Any]     =decoder_ffn_dim
									A__					:       Union[str, Any]     =decoder_layers
									A__					:       Union[str, Any]     =decoder_attention_heads
									A__					:       List[str]     =dropout
									A__					:       List[Any]     =attention_dropout
									A__					:       Any     =activation_dropout
									A__					:       Optional[int]     =activation_function
									A__					:       Dict     =init_std
									A__					:       Union[str, Any]     =encoder_layerdrop
									A__					:       Optional[int]     =decoder_layerdrop
									A__					:       Any     =use_cache
									A__					:       List[str]     =encoder_layers
									A__					:       List[Any]     =scale_embedding  # scale factor will be sqrt(d_model) if True
									A__					:       List[str]     =router_z_loss_coef
									A__					:       Dict     =router_aux_loss_coef
									A__					:       Optional[Any]     =decoder_sparse_step
									A__					:       List[str]     =encoder_sparse_step
									A__					:       List[Any]     =num_experts
									A__					:       Union[str, Any]     =expert_capacity
									A__					:       List[str]     =router_bias
									if router_dtype not in ["float32", "float16", "bfloat16"]:
															raise ValueError(f"`router_dtype` must be one of 'float32', 'float16' or 'bfloat16', got {router_dtype}"			)
									A__					:       Optional[Any]     =router_dtype

									A__					:       Dict     =router_ignore_padding_tokens
									A__					:       Union[str, Any]     =batch_prioritized_routing
									A__					:       int     =second_expert_policy
									A__					:       Any     =normalize_router_prob_before_dropping
									A__					:       Tuple     =moe_eval_capacity_token_fraction
									A__					:       Optional[Any]     =moe_token_dropout
									A__					:       Optional[Any]     =output_router_logits
									super().__init__(
									    pad_token_id=lowerCAmelCase_		,      bos_token_id=lowerCAmelCase_		,      eos_token_id=lowerCAmelCase_		,      is_encoder_decoder=lowerCAmelCase_		,      decoder_start_token_id=lowerCAmelCase_		,      **lowerCAmelCase_		,      )




'''simple docstring'''



from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_speech_available, is_torch_available


__snake_case			:     Any										=      {
    'configuration_audio_spectrogram_transformer': [
        'AUDIO_SPECTROGRAM_TRANSFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'ASTConfig',
    ]
}

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__snake_case			:     Optional[int]										=      [
		    'AUDIO_SPECTROGRAM_TRANSFORMER_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'ASTForAudioClassification',
		    'ASTModel',
		    'ASTPreTrainedModel',
		]

try:
		if not is_speech_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__snake_case			:     List[Any]										=      ['ASTFeatureExtractor']

if TYPE_CHECKING:
		from .configuration_audio_spectrogram_transformer import (
		    AUDIO_SPECTROGRAM_TRANSFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP,
		    ASTConfig,
		)

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_audio_spectrogram_transformer import (
				    AUDIO_SPECTROGRAM_TRANSFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
				    ASTForAudioClassification,
				    ASTModel,
				    ASTPreTrainedModel,
				)

		try:
				if not is_speech_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .feature_extraction_audio_spectrogram_transformer import ASTFeatureExtractor


else:
		import sys

		__snake_case			:     Optional[Any]										=      _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)

