+
    TV-jß  ã                   óL  € ^ RI Ht ^ RIHtHt ^ RIHt ^ RIH	t	 ^RI
Ht ^RIHtHtHt ] ! R R]4      4       t ! R R	]	P"                  4      t ! R
 R]	P"                  4      t ! R R]	P"                  4      t ! R R]	P"                  4      t ! R R]	P"                  4      tR# )é    )Ú	dataclass)ÚAnyÚOptionalN)Úswiglu)ÚBaseModelArgsÚcreate_attention_maskÚscaled_dot_product_attentionc                   ó4   a € ] tR t^t o RtRtV 3R ltRtV tR# )Ú	ModelArgsTi €  c                óÂ   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R	&   S[;R
&   S[;R&   S[;R&   S[;R&   S[;R&   # )é   Ú
model_typeÚhidden_sizeÚnum_hidden_layersÚintermediate_sizeÚnum_attention_headsÚattention_biasÚhead_dimÚrms_norm_epsÚ
vocab_sizeÚnum_key_value_headsÚpartial_rotary_factorÚ
rope_thetaÚrope_traditionalÚmax_position_embeddings)ÚstrÚintÚboolÚfloat)ÚformatÚ__classdict__s   "€Úc/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_lm/models/glm4.pyÚ__annotate__ÚModelArgs.__annotate__   s¶   ø‡ ‚ á�Oñ ñ Ññ ñ Ññ	 ñ
 Ññ ñ Ññ ñ Ññ ñ �Mñ ñ Ññ ñ �Oñ ñ Ññ ñ !Ñ ñ ñ Ññ ñ Ñ!ñ ñ !Ñ(ò ó    © N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__)r!   s   @r"   r   r      s   ø‡ € ð "ÐØ#(Ð÷ ƒ r%   r   c                   óP   a a€ ] tR t^t oV3R lV 3R lltV3R lR ltRtVtV ;t# )ÚGlm4MLPc                ó    <€ V ^8„  d   QhRS[ /# ©r   Úargs©r   )r    r!   s   "€r"   r#   ÚGlm4MLP.__annotate__    s   ø€ ÷ Yñ Y™Yñ Yr%   c                óú   <€ \         SV `  4        \        P                  ! VP                  ^VP
                  ,          RR7      V n        \        P                  ! VP
                  VP                  RR7      V n        R# )r   F©ÚbiasN)ÚsuperÚ__init__ÚnnÚLinearr   r   Úgate_up_projÚ	down_proj©Úselfr2   Ú	__class__s   &&€r"   r9   ÚGlm4MLP.__init__    sZ   ø€ Ü‰ÑÔÜŸIšIØ×Ñ˜a $×"8Ñ"8Õ8¸uô
ˆÔô Ÿš 4×#9Ñ#9¸4×;KÑ;KÐRWÔXˆŽr%   c                ó4   <€ V ^8„  d   QhRS[ P                  /# )r   Úreturn)ÚmxÚarray)r    r!   s   "€r"   r#   r4   '   s   ø€ ÷ 7ñ 7™RŸX™Xñ 7r%   c                óŽ   € V P                  V4      p\        P                  ! V^RR7      w  r#V P                  \	        W#4      4      # )r   )Úaxiséÿÿÿÿ)r<   rD   Úsplitr=   r   )r?   ÚxÚgateÚ	up_statess   &&  r"   Ú__call__ÚGlm4MLP.__call__'   s:   € Ø×Ñ˜aÓ ˆÜŸ(š( 1 a¨bÔ1‰ˆØ�~‰~œf TÓ5Ó6Ð6r%   )r=   r<   ©	r'   r(   r)   r*   r9   rM   r,   r-   Ú__classcell__©r@   r!   s   @@r"   r/   r/      s    ù‡ € ÷Yó Y÷7÷ 7ð 7r%   r/   c                   óT   a a€ ] tR t^-t oV3R lV 3R lltRV3R lR lltRtVtV ;t# )ÚGlm4Attentionc                ó    <€ V ^8„  d   QhRS[ /# r1   r3   )r    r!   s   "€r"   r#   ÚGlm4Attention.__annotate__.   s   ø€ ÷  
ñ  
™Yñ  
r%   c                óò  <€ \         SV `  4        \        VR VP                  VP                  ,          4      V n        VP                  V n        VP                  V n        V P
                  R,          V n	        \        P                  ! VP                  VP                  V P
                  ,          VP                  R7      V n        \        P                  ! VP                  VP                  V P
                  ,          VP                  R7      V n        \        P                  ! VP                  VP                  V P
                  ,          VP                  R7      V n        \        P                  ! VP                  V P
                  ,          VP                  RR7      V n        \        P"                  ! \%        V P
                  VP&                  ,          4      VP(                  VP*                  R7      V n        R# )r   r6   F)ÚdimsÚbaseÚtraditionalNg      à¿)r8   r9   Úgetattrr   r   r   Ún_headsr   Ú
n_kv_headsÚscaler:   r;   r   Úq_projÚk_projÚv_projÚo_projÚRoPEr   r   r   r   Úroper>   s   &&€r"   r9   ÚGlm4Attention.__init__.   se  ø€ Ü‰ÑÔÜØ�*˜d×.Ñ.°$×2JÑ2JÕJó
ˆŒð ×/Ñ/ˆŒØ×2Ñ2ˆŒØ—]‘] DÕ(ˆŒ
ä—i’iØ×ÑØ×$Ñ$ t§}¡}Õ4Ø×$Ñ$ô
ˆŒô
 —i’iØ×ÑØ×$Ñ$ t§}¡}Õ4Ø×$Ñ$ô
ˆŒô
 —i’iØ×ÑØ×$Ñ$ t§}¡}Õ4Ø×$Ñ$ô
ˆŒô
 —i’iØ×$Ñ$ t§}¡}Õ4°d×6FÑ6FÈUô
ˆŒô —G’GÜ�T—]‘] T×%?Ñ%?Õ?Ó@Ø—‘Ø×-Ñ-ô
ˆŽ	r%   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# ©r   rJ   ÚmaskÚcacherC   ©rD   rE   r   r   )r    r!   s   "€r"   r#   rU   P   sB   ø€ ÷ #ñ #Ù—‘ð#Ù!)©"¯(©(Õ!3ð#ÙCKÉCÅ=ð#á	�‰ñ#r%   c           	     ó  € VP                   w  rEpV P                  V4      V P                  V4      V P                  V4      r˜pVP	                  WEV P
                  R4      P                  ^ ^^^4      pVP	                  WEV P                  R4      P                  ^ ^^^4      pV	P	                  WEV P                  R4      P                  ^ ^^^4      p	VeM   V P                  WsP                  R7      pV P                  WƒP                  R7      pVP                  W‰4      w  r‰M"V P                  V4      pV P                  V4      p\        WxW“V P                  VR7      p
V
P                  ^ ^^^4      P	                  WER4      p
V P                  V
4      # )é   )Úoffset)rh   r]   rg   rH   )Úshaper^   r_   r`   Úreshaper[   Ú	transposer\   rc   rl   Úupdate_and_fetchr	   r]   ra   )r?   rJ   rg   rh   ÚBÚLÚDÚqueriesÚkeysÚvaluesÚoutputs   &&&&       r"   rM   ÚGlm4Attention.__call__P   sQ  € ð —'‘'‰ˆˆaà $§¡¨A£°·±¸A³ÀÇÁÈAÃ�vˆà—/‘/ !¨¯©°bÓ9×CÑCÀAÀqÈ!ÈQÓOˆØ�|‰|˜A $§/¡/°2Ó6×@Ñ@ÀÀAÀqÈ!ÓLˆØ—‘  d§o¡o°rÓ:×DÑDÀQÈÈ1ÈaÓPˆàÒØ—i‘i ·±�iÓ=ˆGØ—9‘9˜T¯,©,�9Ó7ˆDØ ×1Ñ1°$Ó?‰LˆD�&à—i‘i Ó(ˆGØ—9‘9˜T“?ˆDä-Ø˜6°d·j±jÀtô
ˆð ×!Ñ! ! Q¨¨1Ó-×5Ñ5°a¸BÓ?ˆØ�{‰{˜6Ó"Ð"r%   )	r   r_   r[   r\   ra   r^   rc   r]   r`   ©NNrO   rQ   s   @@r"   rS   rS   -   s   ù‡ € ÷ 
ó  
÷D#÷ #ò #r%   rS   c                   óT   a a€ ] tR t^kt oV3R lV 3R lltRV3R lR lltRtVtV ;t# )ÚGlm4DecoderLayerc                ó    <€ V ^8„  d   QhRS[ /# r1   r3   )r    r!   s   "€r"   r#   ÚGlm4DecoderLayer.__annotate__l   s   ø€ ÷ Vñ V™Yñ Vr%   c                óî  <€ \         SV `  4        \        VR 7      V n        \	        V4      V n        \        P                  ! VP                  VP                  R7      V n
        \        P                  ! VP                  VP                  R7      V n        \        P                  ! VP                  VP                  R7      V n        \        P                  ! VP                  VP                  R7      V n        R# ©)r2   )ÚepsN)r8   r9   rS   Ú	self_attnr/   Úmlpr:   ÚRMSNormr   r   Úinput_layernormÚpost_attention_layernormÚpost_self_attn_layernormÚpost_mlp_layernormr>   s   &&€r"   r9   ÚGlm4DecoderLayer.__init__l   s«   ø€ Ü‰ÑÔÜ&¨DÔ1ˆŒä˜4“=ˆŒÜ!Ÿzšz¨$×*:Ñ*:À×@QÑ@QÔRˆÔÜ(*¯
ª
Ø×Ñ $×"3Ñ"3ô)
ˆÔ%ô )+¯
ª
Ø×Ñ $×"3Ñ"3ô)
ˆÔ%ô #%§*¢*¨T×-=Ñ-=À4×CTÑCTÔ"UˆÖr%   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# rf   ri   )r    r!   s   "€r"   r#   r}   z   sB   ø€ ÷ ñ Ù—‘ðÙ!)©"¯(©(Õ!3ðÙCKÉCÅ=ðá	�‰ñr%   c                óâ   € WP                  V P                  V P                  V4      W#4      4      ,           pTpV P                  V P	                  V P                  V4      4      4      V,           pV# ©N)r†   r�   r„   r‡   r‚   r…   )r?   rJ   rg   rh   Úresiduals   &&&& r"   rM   ÚGlm4DecoderLayer.__call__z   so   € ð ×-Ñ-Ø�N‰N˜4×/Ñ/°Ó2°DÓ@ó
õ 
ˆð ˆà×#Ñ# D§H¡H¨T×-JÑ-JÈ1Ó-MÓ$NÓOØõð 	
ð ˆr%   )r„   r‚   r…   r‡   r†   r�   ry   rO   rQ   s   @@r"   r{   r{   k   s    ù‡ € ÷Vó V÷÷ ò r%   r{   c                   óT   a a€ ] tR t^ˆt oV3R lV 3R lltRV3R lR lltRtVtV ;t# )Ú	Glm4Modelc                ó    <€ V ^8„  d   QhRS[ /# r1   r3   )r    r!   s   "€r"   r#   ÚGlm4Model.__annotate__‰   s   ø€ ÷ Hñ H™Yñ Hr%   c                óX  <€ \         SV `  4        \        P                  ! VP                  VP
                  4      V n        \        VP                  4       Uu. uF  p\        VR 7      NK  	  upV n
        \        P                  ! VP
                  VP                  R7      V n        R# u upi r   )r8   r9   r:   Ú	Embeddingr   r   Úembed_tokensÚranger   r{   Úlayersrƒ   r   Únorm)r?   r2   Ú_r@   s   && €r"   r9   ÚGlm4Model.__init__‰   s}   ø€ Ü‰ÑÔÜŸLšL¨¯©¸$×:JÑ:JÓKˆÔä16°t×7MÑ7MÔ1Nó
Ù1N¨AÔ $×'Ñ1Nñ
ˆŒô —J’J˜t×/Ñ/°T×5FÑ5FÔGˆŽ	ùò
s   ÁB'c                óJ   <€ V ^8„  d   QhRS[ P                  RS[S[,          /# ©r   Úinputsrh   ri   )r    r!   s   "€r"   r#   r‘   ‘   s'   ø€ ÷ ñ á—‘ðñ ™�}ñr%   c                óþ   € V P                  V4      pVf   R .\        V P                  4      ,          p\        W2^ ,          4      p\	        V P                  V4       F  w  rVV! W4VR7      pK  	  V P                  V4      # )N)rh   )r”   Úlenr–   r   Úzipr—   )r?   rœ   rh   Úhrg   ÚlayerÚcs   &&&    r"   rM   ÚGlm4Model.__call__‘   so   € ð
 ×Ñ˜fÓ%ˆàŠ=Ø�FœS §¡Ó-Õ-ˆEä$ Q¨a­Ó1ˆä˜DŸK™K¨Ö/‰HˆEÙ�a QÔ'ŠAñ 0ð �y‰y˜‹|Ðr%   )r”   r–   r—   r‹   rO   rQ   s   @@r"   r�   r�   ˆ   s    ù‡ € ÷Hó H÷÷ ò r%   r�   c                   ód   a a€ ] tR t^£t oV3R lV 3R lltRV3R lR llt]R 4       tRtVt	V ;t
# )ÚModelc                ó    <€ V ^8„  d   QhRS[ /# r1   r3   )r    r!   s   "€r"   r#   ÚModel.__annotate__¤   s   ø€ ÷ Pñ P™Yñ Pr%   c                óÖ   <€ \         SV `  4        Wn        VP                  V n        \	        V4      V n        \        P                  ! VP                  VP                  R R7      V n
        R# )Fr6   N)r8   r9   r2   r   r�   Úmodelr:   r;   r   r   Úlm_headr>   s   &&€r"   r9   ÚModel.__init__¤   sG   ø€ Ü‰ÑÔØŒ	ØŸ/™/ˆŒÜ˜t“_ˆŒ
Ü—y’y ×!1Ñ!1°4·?±?ÈÔOˆŽr%   c                óJ   <€ V ^8„  d   QhRS[ P                  RS[S[,          /# r›   ri   )r    r!   s   "€r"   r#   r§   «   s'   ø€ ÷ !ñ !á—‘ð!ñ ™�}ñ!r%   c                óF   € V P                  W4      pV P                  V4      # r‹   )r©   rª   )r?   rœ   rh   Úouts   &&& r"   rM   ÚModel.__call__«   s!   € ð
 �j‰j˜Ó'ˆØ�|‰|˜CÓ Ð r%   c                ó.   € V P                   P                  # r‹   )r©   r–   )r?   s   &r"   r–   ÚModel.layers³   s   € à�z‰z× Ñ Ð r%   )r2   rª   r©   r   r‹   )r'   r(   r)   r*   r9   rM   Úpropertyr–   r,   r-   rP   rQ   s   @@r"   r¥   r¥   £   s4   ù‡ € ÷Pó P÷!ò !ð ñ!ó ÷!ð !r%   r¥   )Údataclassesr   Útypingr   r   Úmlx.coreÚcorerD   Úmlx.nnr:   Úactivationsr   rX   r   r   r	   r   ÚModuler/   rS   r{   r�   r¥   r&   r%   r"   Ú<module>rº      sˆ   ðõ "ß  å Ý å ß TÑ Tð ô)�ó )ó ð)ô"7ˆb�i‰iô 7ô;#�B—I‘Iô ;#ô|�r—y‘yô ô:�—	‘	ô ô6!ˆB�I‰Iö !r%   