o
    }o™i  ã                   @   sB   d dl m  mZ d dlmZmZmZ dd„ Zdd„ Z	dd„ Z
dS )	é    N)ÚChatGLM2Config6BÚChatGLM3Config6BÚChatGLMConfigc                  C   s  t ƒ } | jdks
J ‚| jdksJ ‚| jdksJ ‚| jdksJ ‚| jdks&J ‚| jdks-J ‚| jdks4J ‚| jdks;J ‚| j	dksBJ ‚| j
d	u sIJ ‚| jd
u sPJ ‚| jdksWJ ‚| jd
u s^J ‚| jtjksfJ ‚| jd
u smJ ‚| jdkstJ ‚| jd	u s{J ‚| jdks‚J ‚d S )Né   i   i€5  é    é   g{®Gáz”?g        ÚRMSNormFTg      à?Úropei þ  )r   Ú
num_layersÚhidden_sizeÚffn_hidden_sizeÚnum_attention_headsÚnum_query_groupsÚinit_method_stdÚhidden_dropoutÚattention_dropoutÚnormalizationÚadd_bias_linearÚadd_qkv_biasÚrotary_percentÚrotary_interleavedÚactivation_funcÚFÚsiluÚgated_linear_unitÚposition_embedding_typeÚ#share_embeddings_and_output_weightsÚmake_vocab_size_divisible_by©Úconfig© r    ú`/home/ubuntu/.local/lib/python3.10/site-packages/tests/collections/llm/gpt/model/test_chatglm.pyÚtest_chatglm_config   s&   r"   c                  C   ó   t ƒ } | jdks
J ‚d S )Ni €  )r   Ú
seq_lengthr   r    r    r!   Útest_chatglm2_config_6b*   ó   r%   c                  C   r#   )Ni    )r   r$   r   r    r    r!   Útest_chatglm3_config_6b/   r&   r'   )Útorch.nn.functionalÚnnÚ
functionalr   Ú&nemo.collections.llm.gpt.model.chatglmr   r   r   r"   r%   r'   r    r    r    r!   Ú<module>   s
   