+
    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                   ó,   a € ] tR t^t o V 3R ltRtV tR# )Ú	ModelArgsc                óÂ   <€ 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&   # )é   Úhidden_sizeÚnum_hidden_layersÚintermediate_sizeÚnum_attention_headsÚnum_key_value_headsÚrms_norm_epsÚ
vocab_sizeÚattention_biasÚhead_dimÚmax_position_embeddingsÚmlp_biasÚ
model_typeÚ
rope_thetaÚtie_word_embeddings)ÚintÚfloatÚboolÚstr)ÚformatÚ__classdict__s   "€Úe/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_lm/models/helium.pyÚ__annotate__ÚModelArgs.__annotate__   sµ   ø‡ ‚ áÑñ ñ Ññ ñ Ññ	 ñ
 Ññ ñ Ññ ñ Ññ ñ �Oñ ñ Ññ ñ �Mñ ñ !Ñ ñ ñ �Nñ ñ �Oñ ñ Ññ ñ Ñò ó    © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__)r!   s   @r"   r   r      s   ø‡ ‡ „ 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# )ÚHeliumAttentionc                ó    <€ V ^8„  d   QhRS[ /# ©r   Úargs©r   )r    r!   s   "€r"   r#   ÚHeliumAttention.__annotate__    s   ø€ ÷ Nñ N™Yñ Nr%   c                ó–  <€ \         SV `  4        VP                  pVP                  ;V n        pVP
                  f   Q hVP
                  ;V n        pVP                  V,          pVR,          V n        \        P                  ! W#V,          VP                  R7      V n        \        P                  ! W$V,          VP                  R7      V n        \        P                  ! W$V,          VP                  R7      V n        \        P                  ! W5,          VRR7      V n        \        P                  ! VRVP                   R7      V n        R # )N©ÚbiasFT)ÚtraditionalÚbaseg      à¿)ÚsuperÚ__init__r   r   Ún_headsr   Ú
n_kv_headsÚscaleÚnnÚLinearr   Úq_projÚk_projÚv_projÚo_projÚRoPEr   Úrope)Úselfr2   Údimr<   r=   r   Ú	__class__s   &&    €r"   r;   ÚHeliumAttention.__init__    sð   ø€ Ü‰ÑÔà×ÑˆØ!%×!9Ñ!9Ð9ˆŒ�wØ×'Ñ'Ò3Ð3Ð3Ø'+×'?Ñ'?Ð?ˆŒ˜*à×#Ñ# wÕ.ˆØ˜t•^ˆŒ
ä—i’i ¨xÕ%7¸d×>QÑ>QÔRˆŒÜ—i’i °(Õ%:À×ATÑATÔUˆŒÜ—i’i °(Õ%:À×ATÑATÔUˆŒÜ—i’i Õ 2°C¸eÔDˆŒÜ—G’G˜H°$¸T¿_¹_ÔMˆŽ	r%   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# ©r   ÚxÚmaskÚcacheÚreturn©ÚmxÚarrayr   r   )r    r!   s   "€r"   r#   r4   1   sH   ø€ ÷ #ñ #á�8‰8ð#ñ ‘r—x‘xÕ ð#ñ ™�}ð	#ñ
 
�‰ñ#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)rO   r>   rN   éÿÿÿÿ)ÚshaperA   rB   rC   Úreshaper<   Ú	transposer=   rF   rV   Úupdate_and_fetchr	   r>   rD   )rG   rM   rN   rO   ÚBÚLÚDÚqueriesÚkeysÚvaluesÚoutputs   &&&&       r"   Ú__call__ÚHeliumAttention.__call__1   sS  € ð —'‘'‰ˆˆ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%   )rB   r<   r=   rD   rA   rF   r>   rC   ©NN©	r'   r(   r)   r*   r;   rc   r,   r-   Ú__classcell__©rI   r!   s   @@r"   r/   r/      s    ù‡ € ÷Nó N÷"#÷ #ò #r%   r/   c                   óP   a a€ ] tR t^Ot oV3R lV 3R lltV3R lR ltRtVtV ;t# )Ú	HeliumMLPc                ó    <€ V ^8„  d   QhRS[ /# r1   r3   )r    r!   s   "€r"   r#   ÚHeliumMLP.__annotate__P   s   ø€ ÷ 
ñ 
™Yñ 
r%   c                óÐ  <€ \         SV `  4        VP                  V n        VP                  V n        \        P
                  ! V P                  V P                  VP                  R 7      V n        \        P
                  ! V P                  V P                  VP                  R 7      V n        \        P
                  ! V P                  V P                  VP                  R 7      V n	        R# )r6   N)
r:   r;   r   r   r?   r@   r   Ú	gate_projÚup_projÚ	down_proj©rG   r2   rI   s   &&€r"   r;   ÚHeliumMLP.__init__P   s£   ø€ Ü‰ÑÔØ×+Ñ+ˆÔØ!%×!7Ñ!7ˆÔäŸšØ×Ñ˜d×4Ñ4¸4¿=¹=ô
ˆŒô —y’yØ×Ñ˜d×4Ñ4¸4¿=¹=ô
ˆŒô ŸšØ×"Ñ" D×$4Ñ$4¸4¿=¹=ô
ˆŽr%   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# )r   rM   rP   ©rR   rS   )r    r!   s   "€r"   r#   rl   _   s'   ø€ ÷ Jñ J™"Ÿ(™(ð J¡r§x¡xñ Jr%   c                ót   € V P                  \        V P                  V4      V P                  V4      4      4      # ©N)rp   r   rn   ro   )rG   rM   s   &&r"   rc   ÚHeliumMLP.__call___   s)   € Ø�~‰~œf T§^¡^°AÓ%6¸¿¹ÀQ»ÓHÓIÐIr%   )rp   rn   r   r   ro   rf   rh   s   @@r"   rj   rj   O   s!   ù‡ € ÷
ó 
÷J÷ Jð Jr%   rj   c                   óT   a a€ ] tR t^ct 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# )ÚHeliumDecoderLayerc                ó    <€ V ^8„  d   QhRS[ /# r1   r3   )r    r!   s   "€r"   r#   ÚHeliumDecoderLayer.__annotate__d   s   ø€ ÷ 	
ñ 	
™Yñ 	
r%   c                óJ  <€ \         SV `  4        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        R# )©ÚepsN)r:   r;   r   r/   Ú	self_attnrj   Úmlpr?   ÚRMSNormr   Úinput_layernormÚpost_attention_layernormrq   s   &&€r"   r;   ÚHeliumDecoderLayer.__init__d   st   ø€ Ü‰ÑÔØ×+Ñ+ˆÔä(¨Ó.ˆŒÜ˜T“?ˆŒÜ!Ÿzšz¨$×*:Ñ*:À×@QÑ@QÔRˆÔÜ(*¯
ª
Ø×Ñ $×"3Ñ"3ô)
ˆÖ%r%   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# rL   rQ   )r    r!   s   "€r"   r#   r{   o   sH   ø€ ÷ 
ñ 
á�8‰8ð
ñ ‘r—x‘xÕ ð
ñ ™�}ð	
ñ
 
�‰ñ
r%   c                ó¨   € V P                  V P                  V4      W#4      pW,           pV P                  V P                  V4      4      pWT,           pV# rv   )r   r‚   r€   rƒ   )rG   rM   rN   rO   ÚrÚhÚouts   &&&&   r"   rc   ÚHeliumDecoderLayer.__call__o   sK   € ð �N‰N˜4×/Ñ/°Ó2°DÓ@ˆØ�EˆØ�H‰H�T×2Ñ2°1Ó5Ó6ˆØ�eˆØˆ
r%   )r   r‚   r€   rƒ   r   re   rf   rh   s   @@r"   ry   ry   c   s   ù‡ € ÷	
ó 	
÷
÷ 
ò 
r%   ry   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# )ÚHeliumModelc                ó    <€ V ^8„  d   QhRS[ /# r1   r3   )r    r!   s   "€r"   r#   ÚHeliumModel.__annotate__}   s   ø€ ÷ 
Hñ 
H™Yñ 
Hr%   c                óÀ  <€ \         SV `  4        VP                  V 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)r:   r;   r   r   r?   Ú	Embeddingr   Úembed_tokensÚrangery   Úlayersr�   r   Únorm)rG   r2   Ú_rI   s   && €r"   r;   ÚHeliumModel.__init__}   s£   ø€ Ü‰ÑÔØ!%×!7Ñ!7ˆÔØŸ/™/ˆŒà�‰ Ô"Ð"Ð"ÜŸLšL¨¯©¸$×:JÑ:JÓKˆÔä9>¸t×?UÑ?UÔ9VÓWÑ9V°AÔ)¨$Ö/Ñ9VÑWˆŒä—J’J˜t×/Ñ/°T×5FÑ5FÔGˆŽ	ùò Xs   ÂCc                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# ©r   ÚinputsrP   rt   )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4      pK  	  V P                  V4      # rv   )r‘   Úlenr“   r   Úzipr”   )rG   r™   rO   rˆ   rN   ÚlayerÚcs   &&&    r"   rc   ÚHeliumModel.__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   r   rv   rf   rh   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   ø€ ÷ Tñ T™Yñ Tr%   c                ó„  <€ \         SV `  4        Wn        VP                  V n        \	        V4      V n        VP                  V n        \        P                  ! VP                  VP                  R R7      V n
        VP                  '       g5   \        P                  ! VP                  VP                  R R7      V n
        R# R# )Fr6   N)r:   r;   r2   r   rŒ   Úmodelr   r?   r@   r   Úlm_headr   rq   s   &&€r"   r;   ÚModel.__init__œ   s‚   ø€ Ü‰ÑÔØŒ	ØŸ/™/ˆŒä  Ó&ˆŒ
àŸ/™/ˆŒÜ—y’y ×!1Ñ!1°4·?±?ÈÔOˆŒà×'×'Ð'ÜŸ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˜   rt   )r    r!   s   "€r"   r#   r£   ©   s'   ø€ ÷ 
ñ 
á—‘ð
ñ 
�‰ñ	
r%   c                óÐ   € V P                  W4      pV P                  P                  '       d(   V P                   P                  P	                  V4      pV# V P                  V4      pV# rv   )r¥   r2   r   r‘   Ú	as_linearr¦   )rG   r™   rO   r‰   s   &&& r"   rc   ÚModel.__call__©   sX   € ð
 �j‰j˜Ó'ˆØ�9‰9×(×(Ð(Ø—*‘*×)Ñ)×3Ñ3°CÓ8ˆCð ˆ
ð —,‘,˜sÓ#ˆCØˆ
r%   c                ó.   € V P                   P                  # rv   )r¥   r“   )rG   s   &r"   r“   ÚModel.layersµ   s   € à�z‰z× Ñ Ð r%   )r2   r¦   r¥   r   r   rv   )r'   r(   r)   r*   r;   rc   Úpropertyr“   r,   r-   rg   rh   s   @@r"   r¡   r¡   ›   s4   ù‡ € ÷Tó T÷
ò 
ð ñ!ó ÷!ð !r%   r¡   )Údataclassesr   Útypingr   r   Úmlx.coreÚcorerR   Úmlx.nnr?   Úactivationsr   r9   r   r   r	   r   ÚModuler/   rj   ry   rŒ   r¡   r&   r%   r"   Ú<module>r¶      sŠ   ðõ "ß  å Ý å ß TÑ Tð ô�ó ó ðô"-#�b—i‘iô -#ô`J�—	‘	ô Jô(˜Ÿ™ô ô2�"—)‘)ô ô>!ˆB�I‰Iö !r%   