Bdy^dZddlmZddlmZejeZGddeZdS)z Moss model configuration)logging)PretrainedConfigcZeZdZdZdZdddddZ dfd ZxZS) MossConfiga This is the configuration class to store the configuration of a [`MossModel`]. It is used to instantiate a Moss model according to the specified arguments, defining the model architecture. Instantiating a configuration with the defaults will yield a similar configuration to that of the Moss [fnlp/moss-moon-003-base](https://huggingface.co/fnlp/moss-moon-003-base) architecture. Configuration objects inherit from [`PretrainedConfig`] and can be used to control the model outputs. Read the documentation from [`PretrainedConfig`] for more information. Args: vocab_size (`int`, *optional*, defaults to 107008): Vocabulary size of the Moss model. Defines the number of different tokens that can be represented by the `inputs_ids` passed when calling [`MossModel`]. n_positions (`int`, *optional*, defaults to 2048): The maximum sequence length that this model might ever be used with. Typically set this to something large just in case (e.g., 512 or 1024 or 2048). n_embd (`int`, *optional*, defaults to 4096): Dimensionality of the embeddings and hidden states. n_layer (`int`, *optional*, defaults to 28): Number of hidden layers in the Transformer encoder. n_head (`int`, *optional*, defaults to 16): Number of attention heads for each attention layer in the Transformer encoder. rotary_dim (`int`, *optional*, defaults to 64): Number of dimensions in the embedding that Rotary Position Embedding is applied to. n_inner (`int`, *optional*, defaults to None): Dimensionality of the inner feed-forward layers. `None` will set it to 4 times n_embd activation_function (`str`, *optional*, defaults to `"gelu_new"`): Activation function, to be selected in the list `["relu", "silu", "gelu", "tanh", "gelu_new"]`. resid_pdrop (`float`, *optional*, defaults to 0.1): The dropout probability for all fully connected layers in the embeddings, encoder, and pooler. embd_pdrop (`int`, *optional*, defaults to 0.1): The dropout ratio for the embeddings. attn_pdrop (`float`, *optional*, defaults to 0.1): The dropout ratio for the attention. layer_norm_epsilon (`float`, *optional*, defaults to 1e-5): The epsilon to use in the layer normalization layers. initializer_range (`float`, *optional*, defaults to 0.02): The standard deviation of the truncated_normal_initializer for initializing all weight matrices. use_cache (`bool`, *optional*, defaults to `True`): Whether or not the model should return the last key/values attentions (not used by all models). Example: ```python >>> from modeling_moss import MossModel >>> from configuration_moss import MossConfig >>> # Initializing a moss-moon-003-base configuration >>> configuration = MossConfig() >>> # Initializing a model (with random weights) from the configuration >>> model = MossModel(configuration) >>> # Accessing the model configuration >>> configuration = model.config ```moss n_positionsn_embdn_headn_layer)max_position_embeddings hidden_sizenum_attention_headsnum_hidden_layers@Ngelu_newh㈵>{Gz?T,TFc 0||_||_||_||_||_||_||_||_| |_| |_ | |_ | |_ | |_ ||_ ||_||_||_t#jd|||d|dS)N) bos_token_id eos_token_idtie_word_embeddings) vocab_sizen_ctxrr r r n_inner rotary_dimactivation_function resid_pdrop embd_pdrop attn_pdroplayer_norm_epsiloninitializer_range use_cacherrsuper__init__)selfr!rr"r r r r$r#r%r&r'r(r)r*r+rrrkwargs __class__s P/Users/treediagram/Downloads/ChuanhuChatGPT/modules/models/configuration_moss.pyr-zMossConfig.__init__Ks,% &    $#6 &$$"4!2"(( %LVi  ms     )rrrrrrrNrrrrrrTrrF)__name__ __module__ __qualname____doc__ model_type attribute_mapr- __classcell__)r0s@r1rr s6 6 pJ#0'& M&!'+ + + + + + + + + + r2rN) r6transformers.utilsr transformers.configuration_utilsr get_loggerr3loggerrr r2r1r>s&&&&&&======  H % %l l l l l !l l l l l r2