'''simple docstring'''




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


__lowercase				   =  logging.get_logger(__name__)

__lowercase				   =  {
    '''facebook/opt-125m''': '''https://huggingface.co/facebook/opt-125m/blob/main/config.json''',
    '''facebook/opt-350m''': '''https://huggingface.co/facebook/opt-350m/blob/main/config.json''',
    '''facebook/opt-1.3b''': '''https://huggingface.co/facebook/opt-1.3b/blob/main/config.json''',
    '''facebook/opt-2.7b''': '''https://huggingface.co/facebook/opt-2.7b/blob/main/config.json''',
    '''facebook/opt-6.7b''': '''https://huggingface.co/facebook/opt-6.7b/blob/main/config.json''',
    '''facebook/opt-13b''': '''https://huggingface.co/facebook/opt-13b/blob/main/config.json''',
}






class     a__( lowerCAmelCase__     ):


			'''simple docstring'''






			UpperCAmelCase_      :					Tuple								=	'''opt'''
			UpperCAmelCase_      :					Tuple								=	['''past_key_values''']



			def __init__(       self	,   __lowerCAmelCase=50272	,   __lowerCAmelCase=768	,   __lowerCAmelCase=12	,   __lowerCAmelCase=3072	,   __lowerCAmelCase=2048	,   __lowerCAmelCase=True	,   __lowerCAmelCase=False	,   __lowerCAmelCase=None	,   __lowerCAmelCase=0.1	,   __lowerCAmelCase=0.0	,   __lowerCAmelCase=12	,   __lowerCAmelCase="relu"	,   __lowerCAmelCase=0.0	,   __lowerCAmelCase=0.02	,   __lowerCAmelCase=True	,   __lowerCAmelCase=1	,   __lowerCAmelCase=2	,   __lowerCAmelCase=2	,   __lowerCAmelCase=True	,   __lowerCAmelCase=True	,   **__lowerCAmelCase	,   ):




					"""simple docstring"""


					super().__init__(
					    pad_token_id=__lowerCAmelCase	,   bos_token_id=__lowerCAmelCase	,   eos_token_id=__lowerCAmelCase	,   **__lowerCAmelCase	,   )
					lowerCAmelCase        =  vocab_size
					lowerCAmelCase        =  max_position_embeddings
					lowerCAmelCase        =  num_attention_heads
					lowerCAmelCase        =  word_embed_proj_dim if word_embed_proj_dim is not None else hidden_size
					lowerCAmelCase        =  ffn_dim
					lowerCAmelCase        =  hidden_size
					lowerCAmelCase        =  num_hidden_layers
					lowerCAmelCase        =  dropout
					lowerCAmelCase        =  attention_dropout
					lowerCAmelCase        =  activation_function
					lowerCAmelCase        =  init_std
					lowerCAmelCase        =  layerdrop
					lowerCAmelCase        =  use_cache
					lowerCAmelCase        =  do_layer_norm_before
					# We keep these variables at `True` for backward compatibility.
					lowerCAmelCase        =  enable_bias
					lowerCAmelCase        =  layer_norm_elementwise_affine

					# Note that the only purpose of `_remove_final_layer_norm` is to keep backward compatibility
					# with checkpoints that have been fine-tuned before transformers v4.20.1
					# see https://github.com/facebookresearch/metaseq/pull/164
					lowerCAmelCase        =  _remove_final_layer_norm





'''simple docstring'''




from ..utils import DummyObject, requires_backends






class     a__( metaclass=lowerCAmelCase__     ):


			'''simple docstring'''






			UpperCAmelCase_      :					Optional[int]								=	['''torch''', '''transformers''', '''k_diffusion''']



			def __init__(       self	,   *__lowerCAmelCase	,   **__lowerCAmelCase):




					"""simple docstring"""


					requires_backends(self	,   ["""torch""", """transformers""", """k_diffusion"""])



			@classmethod
			def 							a_	(       cls	,   *__lowerCAmelCase	,   **__lowerCAmelCase):




					"""simple docstring"""


					requires_backends(cls	,   ["""torch""", """transformers""", """k_diffusion"""])







			@classmethod
			def 							a_	(       cls	,   *__lowerCAmelCase	,   **__lowerCAmelCase):




					"""simple docstring"""


					requires_backends(cls	,   ["""torch""", """transformers""", """k_diffusion"""])




