+
    "Ý³j~  ã                   óH   € ^ RI Ht ^ RIHt  ! R R]P                  4      tR# )é    )Únn)ÚACT2FNc                   ó<   a a€ ] tR t^	t oRtV 3R ltR tRtVtV ;t	# )ÚLinearGlm4vTextMLPzHGLM4V text MLP with the fused gate/up projection split into two linears.c                ó”  <€ \         SV `  4        Wn        \        P                  ! VP
                  VP                  R R7      V n        \        P                  ! VP
                  VP                  R R7      V n        \        P                  ! VP                  VP
                  R R7      V n	        \        VP                  ,          V n        R# )F)ÚbiasN)ÚsuperÚ__init__Úconfigr   ÚLinearÚhidden_sizeÚintermediate_sizeÚ	gate_projÚup_projÚ	down_projr   Ú
hidden_actÚactivation_fn)Úselfr   Ú	__class__s   &&€ÚW/home/luca/screen-checking/.venv/lib/python3.14/site-packages/defuser/modeling/glm4v.pyr
   ÚLinearGlm4vTextMLP.__init__   s‰   ø€ Ü‰ÑÔØŒÜŸš 6×#5Ñ#5°v×7OÑ7OÐV[Ô\ˆŒÜ—y’y ×!3Ñ!3°V×5MÑ5MÐTYÔZˆŒÜŸš 6×#;Ñ#;¸V×=OÑ=OÐV[Ô\ˆŒÜ# F×$5Ñ$5Õ6ˆÖó    c                ó’   € V P                  V4      pV P                  V4      pV P                  W0P                  V4      ,          4      # )zFReproduce the original fused GLM4V text MLP using split linear layers.)r   r   r   r   )r   Úhidden_statesÚgateÚups   &&  r   ÚforwardÚLinearGlm4vTextMLP.forward   s;   € à�~‰~˜mÓ,ˆØ�\‰\˜-Ó(ˆà�~‰~˜b×#5Ñ#5°dÓ#;Õ;Ó<Ð<r   )r   r   r   r   r   )
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r
   r   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   Ú__classdict__s   @@r   r   r   	   s   ù‡ € ÙRõ7÷=ò =r   r   N)Útorchr   Útransformers.activationsr   ÚModuler   © r   r   Ú<module>r,      s   ðõ
 Ý +ô=˜Ÿ™ö =r   