+
    TV-jæ  ã                   ó`  € ^ RI Ht ^ RIHtHt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I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ÚDictÚOptionalÚUnionN)Úswiglu)ÚBaseModelArgsÚcreate_attention_maskÚscaled_dot_product_attention)ÚSuScaledRoPEc                   ó@   a € ] tR t^t o RtRtRtRtRtV 3R lt	Rt
V tR# )Ú	ModelArgsFg    €„.ANc                óR  <€ 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&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[S[S[ S[S[ S[3,          3,          ,          ;R&   S[;R&   # )é   Ú
model_typeÚhidden_sizeÚdim_model_baseÚnum_hidden_layersÚintermediate_sizeÚnum_attention_headsÚrms_norm_epsÚ
vocab_sizeÚnum_key_value_headsÚq_lora_rankÚqk_nope_head_dimÚqk_rope_head_dimÚkv_lora_rankÚscale_depthÚ	scale_embÚmax_position_embeddingsÚattention_biasÚ
rope_thetaÚrope_traditionalÚrope_scalingÚtie_word_embeddings)ÚstrÚintÚfloatÚboolr   r   r   )ÚformatÚ__classdict__s   "€Úg/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_lm/models/minicpm3.pyÚ__annotate__ÚModelArgs.__annotate__   s*  ø‡ ‚ á�Oñ ñ Ññ ñ Ññ	 ñ
 Ññ ñ Ññ ñ Ññ ñ Ññ ñ �Oñ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ  Ññ! ñ" !Ñ ñ# ñ$ Ñ ñ% ñ& Ñ!ñ' ñ( Ñ"ñ) ñ* ™4¡¡U©3±¨:Õ%6Ð 6Õ7Õ8Ñ?ñ+ ñ, Ñ%ò- ó    © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r!   r"   r#   r$   r%   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__)r+   s   @r,   r   r      s)   ø‡ € ð$ !€NØ!€JØ"ÐØ;?€LØ %Ð÷- ƒ 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# )Ú	Attentionc                ó    <€ V ^8„  d   QhRS[ /# ©r   Úargs©r   )r*   r+   s   "€r,   r-   ÚAttention.__annotate__(   s   ø€ ÷ 7
ñ 7
™Yñ 7
r/   c                ó
  <€ \         SV `  4        Wn        V P                  P                  V n        V P                  P                  V n        V P                  P
                  V n        V P                  P                  V n        V P                  P                  V n        V P                  P                  V n	        V P                  P                  V n
        V P                  V P                  P                  ,          V n        V P                  V P                  ,           V n        V P                  R
,          V n        \        P                  ! V P                  V P                  V P
                  R7      V n        \        P"                  ! V P                  4      V n        \        P                  ! V P                  V P                  V P                  ,          RR7      V n        \        P                  ! V P                  V P                  V P                  ,           V P
                  R7      V n        \        P"                  ! V P                  4      V n        \        P                  ! V P                  V P                  V P                  V P                  ,
          V P                  ,           ,          RR7      V n        \        P                  ! V P                  V P                  ,          V P                  V P
                  R7      V n        \1        VP                  VP2                  VP4                  VP6                  P9                  RR4      VP6                  P9                  RR4      VP6                  P9                  RR4      R7      V n        R	# )ç      à?©ÚbiasFÚ original_max_position_embeddingsi   Úshort_factorg      ð?Úlong_factor)ÚdimsÚbaser    rC   rD   rE   Ng      à¿)ÚsuperÚ__init__r<   r   r   r!   r   r   Ú	num_headsr   r   Ú
v_head_dimÚ
q_head_dimÚsoftmax_scaleÚnnÚLinearÚq_a_projÚRMSNormÚq_a_layernormÚq_b_projÚkv_a_proj_with_mqaÚkv_a_layernormÚ	kv_b_projÚo_projr   r"   r    r$   ÚgetÚrope©Úselfr<   Ú	__class__s   &&€r,   rI   ÚAttention.__init__(   sy  ø€ Ü‰ÑÔØŒ	à $§	¡	× :Ñ :ˆÔØ $§	¡	× :Ñ :ˆÔØ"Ÿi™i×6Ñ6ˆÔØ ŸI™I×2Ñ2ˆÔØŸ™×6Ñ6ˆŒØŸ9™9×0Ñ0ˆÔØŸ9™9×0Ñ0ˆÔà×*Ñ*¨d¯i©i×.KÑ.KÕKˆŒØ×/Ñ/°$×2GÑ2GÕGˆŒØ!Ÿ_™_°Õ6ˆÔäŸ	š	Ø×Ñ˜d×.Ñ.°T×5HÑ5Hô
ˆŒô  ŸZšZ¨×(8Ñ(8Ó9ˆÔäŸ	š	Ø×Ñ˜dŸn™n¨t¯©Õ>ÀUô
ˆŒô #%§)¢)Ø×ÑØ×Ñ × 5Ñ 5Õ5Ø×$Ñ$ô#
ˆÔô !Ÿjšj¨×):Ñ):Ó;ˆÔäŸšØ×ÑØ�N‰NØ�‰ ×!6Ñ!6Õ6¸¿¹ÕHõJàô	
ˆŒô —i’iØ�N‰N˜TŸ_™_Õ,Ø×ÑØ×$Ñ$ô
ˆŒô !Ø×&Ñ&Ø—‘Ø$(×$@Ñ$@Ø-1×->Ñ->×-BÑ-BØ2°Dó.ð ×*Ñ*×.Ñ.¨~¸sÓCØ×)Ñ)×-Ñ-¨m¸SÓAô	
ˆŽ	r/   c          	      óž   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[S[S[ P                  3,          ,          /# )r   ÚxÚmaskÚcache)ÚmxÚarrayr   r   r&   )r*   r+   s   "€r,   r-   r>   a   sH   ø€ ÷ 4#ñ 4#á�8‰8ð4#ñ ‘r—x‘xÕ ð4#ñ ™™S¡"§(¡(˜]Õ+Õ,ñ	4#r/   c           	     ó$  € VP                   w  rEpV P                  V P                  V P                  V4      4      4      pVP	                  WEV P
                  R4      P                  ^ ^^^4      p\        P                  ! WpP                  .RR7      w  r‰V P                  V4      p
\        P                  ! W P                  .RR7      w  r«VP	                  WE^V P                  4      P                  ^ ^^^4      pV P                  V P                  V
4      4      pVP	                  WEV P
                  R4      P                  ^ ^^^4      p\        P                  ! WÀP                  .RR7      w  rÞVe:   V P                  W“P                   R7      p	V P                  W³P                   R7      pM"V P                  V	4      p	V P                  V4      p\        P"                  ! W´V P
                  WPP                  34      p\        P$                  ! W‰.RR7      p\        P$                  ! Wß.RR7      pVe   VP'                  VV4      w  pp\)        VVWãV P*                  VR7      pVP                  ^ ^^^4      P	                  WER4      pV P-                  V4      # )é   )Úaxis)Úoffset)ra   Úscaler`   éÿÿÿÿ)ÚshaperS   rR   rP   ÚreshaperJ   Ú	transposerb   Úsplitr   rT   r   r   rV   rU   rY   rg   Úbroadcast_toÚconcatenateÚupdate_and_fetchr   rM   rW   )r[   r_   r`   ra   ÚBÚLÚ_ÚqÚq_nopeÚq_peÚcompressed_kvÚk_peÚkvÚk_nopeÚvaluesÚk_pe_broadcastedÚqueriesÚkeysÚoutputs   &&&&               r,   Ú__call__ÚAttention.__call__a   s1  € ð —'‘'‰ˆˆað �M‰M˜$×,Ñ,¨T¯]©]¸1Ó-=Ó>Ó?ˆØ�I‰I�a˜DŸN™N¨BÓ/×9Ñ9¸!¸QÀÀ1ÓEˆÜ—x’x ×$9Ñ$9Ð#:ÀÔD‰ˆð ×/Ñ/°Ó2ˆÜ Ÿhšh }×7HÑ7HÐ6IÐPRÔSÑˆØ�|‰|˜A ! T×%:Ñ%:Ó;×EÑEÀaÈÈAÈqÓQˆà�^‰^˜D×/Ñ/°Ó>Ó?ˆØ�Z‰Z˜˜dŸn™n¨bÓ1×;Ñ;¸A¸qÀ!ÀQÓGˆäŸš "×'<Ñ'<Ð&=ÀBÔG‰ˆð ÒØ—9‘9˜T¯,©,�9Ó7ˆDØ—9‘9˜T¯,©,�9Ó7‰Dà—9‘9˜T“?ˆDØ—9‘9˜T“?ˆDô Ÿ?š?Ø�d—n‘n a×)>Ñ)>Ð?ó
Ðô
 —.’. & °bÔ9ˆô �~Š~˜vÐ8¸rÔBˆð ÒØ ×1Ñ1°$¸Ó?‰LˆD�&ô .Ø�T˜6°d×6HÑ6HÈtô
ˆð ×!Ñ! ! Q¨¨1Ó-×5Ñ5°a¸BÓ?ˆØ�{‰{˜6Ó"Ð"r/   )r<   r!   r   rU   rT   rV   r   rJ   rW   rR   rP   rS   rL   r   r   r   rY   rM   rK   ©NN©	r1   r2   r3   r4   rI   r€   r6   r7   Ú__classcell__©r\   r+   s   @@r,   r9   r9   '   s   ù‡ € ÷7
ó 7
÷r4#÷ 4#ò 4#r/   r9   c                   ó8   a a€ ] tR t^˜t oV 3R ltR tRtVtV ;t# )ÚMLPc                óP  <€ \         SV `  4        \        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        R# ©FrA   N)	rH   rI   rN   rO   r   r   Ú	gate_projÚup_projÚ	down_projrZ   s   &&€r,   rI   ÚMLP.__init__™   sq   ø€ Ü‰ÑÔÜŸš 4×#3Ñ#3°T×5KÑ5KÐRWÔXˆŒÜ—y’y ×!1Ñ!1°4×3IÑ3IÐPUÔVˆŒÜŸš 4×#9Ñ#9¸4×;KÑ;KÐRWÔXˆŽr/   c                ót   € V P                  \        V P                  V4      V P                  V4      4      4      # ©N)rŒ   r   rŠ   r‹   )r[   r_   s   &&r,   r€   ÚMLP.__call__Ÿ   s)   € Ø�~‰~œf T§^¡^°AÓ%6¸¿¹ÀQ»ÓHÓIÐIr/   )rŒ   rŠ   r‹   rƒ   r…   s   @@r,   r‡   r‡   ˜   s   ù‡ € õY÷Jò J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# )ÚDecoderLayerc                ó    <€ V ^8„  d   QhRS[ /# r;   r=   )r*   r+   s   "€r,   r-   ÚDecoderLayer.__annotate__¤   s   ø€ ÷ 8ñ 8™Yñ 8r/   c                ó¼  <€ \         SV `  4        Wn        VP                  V n        VP                  V n        \        V4      V n        \        V4      V n        \        P                  ! VP                  VP                  R 7      V n        \        P                  ! VP                  VP                  R 7      V n        VP                  V n        VP                  V n        R# )©ÚepsN)rH   rI   r<   r   r   r9   Ú	self_attnr‡   ÚmlprN   rQ   r   Úinput_layernormÚpost_attention_layernormr   rZ   s   &&€r,   rI   ÚDecoderLayer.__init__¤   s¤   ø€ Ü‰ÑÔØŒ	Ø×+Ñ+ˆÔØ!%×!7Ñ!7ˆÔä" 4›ˆŒÜ�t“9ˆŒÜ!Ÿzšz¨$×*:Ñ*:À×@QÑ@QÔRˆÔÜ(*¯
ª
Ø×Ñ $×"3Ñ"3ô)
ˆÔ%ð  ×+Ñ+ˆÔØ!%×!7Ñ!7ˆÖr/   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# )r   r_   r`   ra   Úreturn)rb   rc   r   r   )r*   r+   s   "€r,   r-   r”   ´   sH   ø€ ÷ 
ñ 
á�8‰8ð
ñ ‘r—x‘xÕ ð
ñ ™�}ð	
ñ
 
�‰ñ
r/   c                óL  € V P                  V P                  V4      W#4      pWV P                  V P                  R ,          ,          ,          ,           pV P	                  V P                  V4      4      pWTV P                  V P                  R ,          ,          ,          ,           pV# )r@   )r˜   rš   r   r   r™   r›   )r[   r_   r`   ra   ÚrÚhÚouts   &&&&   r,   r€   ÚDecoderLayer.__call__´   sƒ   € ð �N‰N˜4×/Ñ/°Ó2°DÓ@ˆØ�T×%Ñ%¨×)?Ñ)?ÀÕ)DÕEÕFÕFˆØ�H‰H�T×2Ñ2°1Ó5Ó6ˆØ�t×'Ñ'¨4×+AÑ+AÀ3Õ+FÕGÕHÕHˆØˆ
r/   )r<   r   rš   r™   r   r›   r   r˜   r‚   rƒ   r…   s   @@r,   r’   r’   £   s   ù‡ € ÷8ó 8÷ 
÷ 
ò 
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# )ÚMiniCPM3Modelc                ó    <€ V ^8„  d   QhRS[ /# r;   r=   )r*   r+   s   "€r,   r-   ÚMiniCPM3Model.__annotate__Â   s   ø€ ÷ Hñ H™Yñ Hr/   c                óª  <€ \         SV `  4        Wn        VP                  V n        V P                  ^ 8”  g   Q h\        P
                  ! VP                  VP                  4      V n        \        VP                  4       Uu. uF  p\        V4      NK  	  upV n        \        P                  ! VP                  VP                  R7      V n        R# u upi )r   r–   N)rH   rI   r<   r   rN   Ú	Embeddingr   Úembed_tokensÚranger   r’   ÚlayersrQ   r   Únorm)r[   r<   rs   r\   s   && €r,   rI   ÚMiniCPM3Model.__init__Â   s™   ø€ Ü‰ÑÔØŒ	ØŸ/™/ˆŒØ�‰ Ô"Ð"Ð"äŸLšL¨¯©¸$×:JÑ:JÓKˆÔÜ38¸×9OÑ9OÔ3PÓQÑ3P¨a”| DÖ)Ñ3PÑQˆŒÜ—J’J˜t×/Ñ/°T×5FÑ5FÔGˆŽ	ùò Rs   ÂCc                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# ©r   Úinputsr`   ©rb   rc   )r*   r+   s   "€r,   r-   r§   Ì   s'   ø€ ÷ ñ á—‘ðñ �h‰hñr/   c                ó,  € V P                  V4      V P                  P                  ,          pVf   \        WC4      pVf   R .\	        V P
                  4      ,          p\        V P
                  V4       F  w  rVV! WBV4      pK  	  V P                  V4      # r�   )rª   r<   r   r
   Úlenr¬   Úzipr­   )r[   r±   r`   ra   r¡   ÚlayerÚcs   &&&&   r,   r€   ÚMiniCPM3Model.__call__Ì   s   € ð ×Ñ˜fÓ%¨¯	©	×(;Ñ(;Õ;ˆàŠ<Ü(¨Ó2ˆDàŠ=Ø�FœS §¡Ó-Õ-ˆEä˜DŸK™K¨Ö/‰HˆEÙ�a˜qÓ!ŠAñ 0ð �y‰y˜‹|Ðr/   )r<   rª   r¬   r­   r   r‚   rƒ   r…   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[ /# r;   r=   )r*   r+   s   "€r,   r-   ÚModel.__annotate__á   s   ø€ ÷ Tñ T™Yñ Tr/   c                ó  <€ \         SV `  4        Wn        VP                  V n        \	        V4      V n        V P                  P                  '       g5   \        P                  ! VP                  VP                  R R7      V n        R# R# r‰   )rH   rI   r<   r   r¥   Úmodelr%   rN   rO   r   r   Úlm_headrZ   s   &&€r,   rI   ÚModel.__init__á   s]   ø€ Ü‰ÑÔØŒ	ØŸ/™/ˆŒÜ" 4Ó(ˆŒ
à�y‰y×,×,Ð,ÜŸ9š9 T×%5Ñ%5°t·±ÈUÔSˆDŽLñ -r/   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# r°   r²   )r*   r+   s   "€r,   r-   r¼   ê   s'   ø€ ÷ ñ á—‘ðñ �h‰hñr/   c                ó<  € V P                  WV4      pV P                  P                  '       gI   V P                  W@P                  P                  V P                  P
                  ,          ,          4      pV# V P                   P                  P                  V4      pV# r�   )r¾   r<   r%   r¿   r   r   rª   Ú	as_linear)r[   r±   r`   ra   r¢   s   &&&& r,   r€   ÚModel.__call__ê   sv   € ð �j‰j˜ uÓ-ˆà�y‰y×,×,Ð,Ø—,‘,˜s§i¡i×&;Ñ&;¸d¿i¹i×>VÑ>VÕ&VÕWÓXˆCð ˆ
ð —*‘*×)Ñ)×3Ñ3°CÓ8ˆCàˆ
r/   c                ó.   € V P                   P                  # r�   )r¾   r¬   )r[   s   &r,   r¬   ÚModel.layersù   s   € à�z‰z× Ñ Ð r/   )r<   r¿   r¾   r   r‚   )r1   r2   r3   r4   rI   r€   Úpropertyr¬   r6   r7   r„   r…   s   @@r,   rº   rº   à   s4   ù‡ € ÷Tó T÷ò ð ñ!ó ÷!ð !r/   rº   )Údataclassesr   Útypingr   r   r   r   Úmlx.coreÚcorerb   Úmlx.nnrN   Úactivationsr   rG   r	   r
   r   Ú
rope_utilsr   r   ÚModuler9   r‡   r’   r¥   rº   r0   r/   r,   Ú<module>rÐ      s’   ðõ "ß -Ó -å Ý å ß TÑ TÝ $ð ô&�ó &ó ð&ô0n#�—	‘	ô n#ôbJˆ"�)‰)ô Jô�2—9‘9ô ô<�B—I‘Iô ô>!ˆB�I‰Iö !r/   