




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


UpperCamelCase__         =      logging.get_logger(__name__)

UpperCamelCase__         =      {
    """facebook/nllb-moe-54B""": """https://huggingface.co/facebook/nllb-moe-54b/resolve/main/config.json""",
}
class       a__   ( snake_case__				):
      _a							:   Dict =   """nllb-moe"""
      _a							:   str =   ["""past_key_values"""]
      _a							:   List[str] =   {"""num_attention_heads""": """encoder_attention_heads""", """hidden_size""": """d_model"""}






      def __init__(       self		,      _A=1_2_8_1_1_2		,      _A=1_0_2_4		,      _A=1_2		,      _A=4_0_9_6		,      _A=1_6		,      _A=1_2		,      _A=4_0_9_6		,      _A=1_6		,      _A=0.05		,      _A=0.05		,      _A=True		,      _A=True		,      _A="relu"		,      _A=1_0_2_4		,      _A=0.1		,      _A=0.1		,      _A=0.0		,      _A=0.02		,      _A=2		,      _A=True		,      _A=False		,      _A="float32"		,      _A=False		,      _A=1_2_8		,      _A=6_4		,      _A=4		,      _A=4		,      _A=0.0_01		,      _A=0.0_01		,      _A="all"		,      _A=False		,      _A=False		,      _A=1.0		,      _A=0.2		,      _A=1		,      _A=0		,      _A=2		,      _A=False		,      **_A		,      ):




           """simple docstring"""



           __lowerCAmelCase           =	vocab_size
           __lowerCAmelCase           =	max_position_embeddings
           __lowerCAmelCase           =	d_model
           __lowerCAmelCase           =	encoder_ffn_dim
           __lowerCAmelCase           =	encoder_layers
           __lowerCAmelCase           =	encoder_attention_heads
           __lowerCAmelCase           =	decoder_ffn_dim
           __lowerCAmelCase           =	decoder_layers
           __lowerCAmelCase           =	decoder_attention_heads
           __lowerCAmelCase           =	dropout
           __lowerCAmelCase           =	attention_dropout
           __lowerCAmelCase           =	activation_dropout
           __lowerCAmelCase           =	activation_function
           __lowerCAmelCase           =	init_std
           __lowerCAmelCase           =	encoder_layerdrop
           __lowerCAmelCase           =	decoder_layerdrop
           __lowerCAmelCase           =	use_cache
           __lowerCAmelCase           =	encoder_layers
           __lowerCAmelCase           =	scale_embedding  # scale factor will be sqrt(d_model) if True
           __lowerCAmelCase           =	router_z_loss_coef
           __lowerCAmelCase           =	router_aux_loss_coef
           __lowerCAmelCase           =	decoder_sparse_step
           __lowerCAmelCase           =	encoder_sparse_step
           __lowerCAmelCase           =	num_experts
           __lowerCAmelCase           =	expert_capacity
           __lowerCAmelCase           =	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}"""      )
           __lowerCAmelCase           =	router_dtype

           __lowerCAmelCase           =	router_ignore_padding_tokens
           __lowerCAmelCase           =	batch_prioritized_routing
           __lowerCAmelCase           =	second_expert_policy
           __lowerCAmelCase           =	normalize_router_prob_before_dropping
           __lowerCAmelCase           =	moe_eval_capacity_token_fraction
           __lowerCAmelCase           =	moe_token_dropout
           __lowerCAmelCase           =	output_router_logits
           super().__init__(
               pad_token_id=_A		,      bos_token_id=_A		,      eos_token_id=_A		,      is_encoder_decoder=_A		,      decoder_start_token_id=_A		,      **_A		,      )










import enum
import shutil
import sys


UpperCamelCase__      ,     UpperCamelCase__         =      shutil.get_terminal_size()

UpperCamelCase__         =      {"""UP""": """A""", """DOWN""": """B""", """RIGHT""": """C""", """LEFT""": """D"""}
class       a__   ( enum.Enum				):
						_a							:   Any =   0
						_a							:   Dict =   1







def      _a				(						SCREAMING_SNAKE_CASE_							:    Tuple				,				SCREAMING_SNAKE_CASE_							:    Dict=""					):
					sys.stdout.write(str(SCREAMING_SNAKE_CASE_					) + end					)
					sys.stdout.flush()







def      _a				(						SCREAMING_SNAKE_CASE_							:    Any				,				SCREAMING_SNAKE_CASE_							:    Union[str, Any]				,				SCREAMING_SNAKE_CASE_							:    str=""					):
					forceWrite(F"""\u001b[{color}m{content}\u001b[0m"""				,				SCREAMING_SNAKE_CASE_					)







def      _a				(						):
					forceWrite("\r"					)







def      _a				(						SCREAMING_SNAKE_CASE_							:    int				,				SCREAMING_SNAKE_CASE_							:    str					):
					forceWrite(F"""\033[{num_lines}{CURSOR_TO_CHAR[direction.upper()]}"""					)







def      _a				(						):
					forceWrite(" " * TERMINAL_WIDTH					)
					reset_cursor()







def      _a				(						):
					reset_cursor()
					forceWrite("-" * TERMINAL_WIDTH					)




