o
    TÃi:	  ã                   @   s:   d dl T d dlmZ 	 G dd„ deƒZG dd„ deƒZdS )é   )Ú*)ÚLayerContainerc                	   @   s`   e Zd ZU dZeed< eed< eed< eed< eed< e	ed< e	ed< d	d
dddddddœZ
dS )ÚQwenTransformerContainerz=
        Transformer layer container for the Qwen model.
    Úqkv_wÚqkv_bÚ
attn_out_wÚmlp_1_wÚmlp_2_wÚattn_norm_gammaÚmlp_norm_gammazqkv_w.paramszqkv_b.paramszattn_out_w.paramszmlp_1_w.up_paramszmlp_1_w.gate_paramszmlp_2_w.paramszattn_norm_gamma.paramszmlp_norm_gamma.params)zattn.c_attn.weightzattn.c_attn.biaszattn.c_proj.weightzmlp.w1.weightzmlp.w2.weightzmlp.c_proj.weightzln_1.weightzln_2.weightN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚFusedQKVParameterÚ__annotations__ÚAttentionOutputParameterÚGatedMLPParameterÚMLP2ParameterÚNormParameterÚPARAM_MAPPING© r   r   úo/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/qwen/container.pyr   )   s$   
 
ør   c                   @   s6   e Zd ZU dZeed< eed< eed< ddddœZd	S )
ÚQwenNonTransformerContainerzA
        Non-Transformer layer container for the Qwen model.
    Úword_embÚword_unembedÚ
final_normzword_emb.paramszfinal_norm.paramszword_unembed.params)ztransformer.wte.weightztransformer.ln_f.weightzlm_head.weightN)	r   r   r   r   ÚEmbeddingParameterr   ÚUnembedParameterr   r   r   r   r   r   r   A   s   
 
ýr   N)Úcommon_parametersÚlayer_container_baser   r   r   r   r   r   r   Ú<module>   s
   