+
    TV-jT  ã                   ó8  € ^ RI Ht ^ RIHt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Ht ^RIHtHt ^RIHt ^RIHt ^R	IHt ] ! R
 R]4      4       t ! R R]P<                  4      t]
P@                  R R l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 R]P<                  4      t' ! R R]P<                  4      t(R# )é    )Ú	dataclass)ÚAnyÚDictÚListÚOptionalÚTupleN)Úswiglu)ÚBaseModelArgsÚcreate_attention_maskÚcreate_ssm_maskÚscaled_dot_product_attention)ÚArraysCacheÚKVCache)Úgated_delta_update)ÚMultiLinear)Ú	SwitchGLUc                   ól   a € ] tR t^t o RtRtRtRtRtRt	^t
^ tRtRtRt^ t^tRt^t^tV 3R ltRtV tR# )Ú	ModelArgsNFÚsigmoidTç      ð?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[S[ S[3,          ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[S[S[ S[3,          ,          ;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   S[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Ú
vocab_sizeÚhidden_sizeÚnum_hidden_layersÚnum_attention_headsÚnum_key_value_headsÚintermediate_sizeÚhead_dimÚ
rope_thetaÚrms_norm_epsÚlinear_attn_configÚmodel_max_lengthÚnum_expertsÚmoe_intermediate_sizeÚkv_lora_rankÚrope_scalingÚtie_word_embeddingsÚqk_nope_head_dimÚqk_rope_head_dimÚ
v_head_dimÚmla_use_nopeÚnum_experts_per_tokenÚnum_shared_expertsÚmoe_router_activation_funcÚmoe_renormalizeÚrouted_scaling_factorÚfirst_k_dense_replaceÚmoe_layer_freqÚuse_grouped_topkÚnum_expert_groupÚ
topk_group)ÚstrÚintÚfloatr   r   r   Úbool)ÚformatÚ__classdict__s   "€Új/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_lm/models/kimi_linear.pyÚ__annotate__ÚModelArgs.__annotate__   s¶  ø‡ ‚ á�Oñ ñ �Oñ ñ Ññ	 ñ
 Ññ ñ Ññ ñ Ññ ñ Ññ ñ �Mñ ñ Ññ ñ Ññ ñ ™S¡#˜X�Ñ&ñ ñ Ññ ñ Ññ ñ Ññ ñ  Ññ! ñ" ™4¡¡S �>Õ*Ñ1ñ# ñ$ Ñ%ñ% ñ& ™s•mÑ*ñ' ñ( ™s•mÑ*ñ) ñ* ™•Ñ$ñ+ ñ, Ññ- ñ. Ñ"ñ/ ñ0 Ññ1 ñ2 !$Ñ/ñ3 ñ4 Ñ ñ5 ñ6 !Ñ&ñ7 ñ8 Ñ"ñ9 ñ: Ññ; ñ< Ñ!ñ= ñ> Ññ? ñ@ ÑòA ó    © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__)r=   s   @r>   r   r      si   ø‡ € ð" .2€LØ %ÐØ&*ÐØ&*ÐØ $€JØ€LØ!"ÐØÐØ&/ÐØ €OØ#&ÐØ!"ÐØ€NØ!ÐØÐØ€J÷A ƒ rA   r   c                   óT   a a€ ] tR t^9t oRV3R lV 3R llltV3R lR ltRtVtV ;t# )ÚKimiMLPc                óL   <€ V ^8„  d   QhRS[ RS[S[,          RS[S[,          /# )r   Úargsr   r   )r   r   r9   )r<   r=   s   "€r>   r?   ÚKimiMLP.__annotate__:   s1   ø€ ÷ <ñ <áð<ñ ™c•]ð<ñ $¡C�=ñ	<rA   c                ó*  <€ \         SV `  4        T;'       g    VP                  pT;'       g    VP                  p\        P
                  ! WER R7      V n        \        P
                  ! WER R7      V n        \        P
                  ! WTR R7      V n        R# )F©ÚbiasN)	ÚsuperÚ__init__r   r   ÚnnÚLinearÚ	gate_projÚup_projÚ	down_proj)ÚselfrM   r   r   ÚdimÚhiddenÚ	__class__s   &&&&  €r>   rS   ÚKimiMLP.__init__:   sl   ø€ ô 	‰ÑÔØ×-Ð-˜T×-Ñ-ˆØ"×<Ð< d×&<Ñ&<ˆÜŸš 3°UÔ;ˆŒÜ—y’y °5Ô9ˆŒÜŸš 6°UÔ;ˆŽrA   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# ©r   ÚxÚreturn©ÚmxÚarray)r<   r=   s   "€r>   r?   rN   G   s'   ø€ ÷ Jñ J™"Ÿ(™(ð J¡r§x¡xñ JrA   c                ót   € V P                  \        V P                  V4      V P                  V4      4      4      # ©N)rX   r	   rV   rW   )rY   r`   s   &&r>   Ú__call__ÚKimiMLP.__call__G   s)   € Ø�~‰~œf T§^¡^°AÓ%6¸¿¹ÀQ»ÓHÓIÐIrA   )rX   rV   rW   ©NN©	rC   rD   rE   rF   rS   rg   rH   rI   Ú__classcell__©r\   r=   s   @@r>   rK   rK   9   s!   ù‡ € ÷<õ <÷J÷ Jð JrA   rK   c                ó  € V ^8„  d   QhR\         P                  R\        \         P                  ,          R\        R\        R\        R\        R\
        R\        R	\        \         P                  \         P                  3,          /	# )
r   ÚgatesrQ   Útop_kÚn_groupr7   r2   ÚrenormalizeÚscore_functionra   )rc   rd   r   r9   r:   r;   r8   r   )r<   s   "r>   r?   r?   L   s�   € ÷ )0ñ )0Ü�8‰8ð)0ä
”2—8‘8Õ
ð)0ô ð)0ô ð	)0ô
 ð)0ô !ð)0ô ð)0ô ð)0ô Œ2�8‰8”R—X‘XÐÕñ)0rA   c           	      ó´  € VR 8X  d   \         P                  ! V 4      pM0VR8X  d   \         P                  ! V RRR7      pM\        RV R24      hTp	Ve"   W�P	                  VP
                  4      ,           pV^8”  dß   \         P                  ! VRVR3R7      p\         P                  ! V^RR7      P                  RRR	7      p
W4,
          p\         P                  ! W«^,
          RR
7      RRV1R3,          p\         P                  ! V\         P                  ! V4      \         P                  ! RVP
                  R7      RR7      p\         P                  ! VRR4      p\         P                  ! V) V^,
          RR
7      RRV13,          p\         P                  ! W�RR7      pV^8”  d+   V'       d#   VP                  RRR	7      R,           pWŽ,          pWØV,          3# )r   ÚsoftmaxT)ÚaxisÚprecisez#Unsupported MoE router activation 'Ú'N)ru   Úshape©ru   )ru   Úkeepdims)Úkthru   .ºNNNg        ©Údtypeg#B’¡œÇ;éÿÿÿÿéþÿÿÿ)rc   r   rt   Ú
ValueErrorÚastyper~   Ú	unflattenÚtopkÚsumÚargpartitionÚput_along_axisÚstop_gradientrd   ÚflattenÚtake_along_axis)rn   rQ   ro   rp   r7   r2   rq   rr   ÚscoresÚorig_scoresÚgroup_scoresÚkÚ	group_idxÚindsÚdenominators   &&&&&&&&       r>   Ú_group_expert_selectr’   K   sŒ  € ð ˜Ô"Ü—’˜EÓ"‰Ø	˜9Ô	$Ü—’˜E¨°DÔ9‰äÐ>¸~Ð>NÈaÐPÓQÐQà€KØÒØŸ+™+ f§l¡lÓ3Õ3ˆà�„{Ü—’˜f¨2°g¸r°]ÔCˆÜ—w’w˜v q¨rÔ2×6Ñ6¸BÈÐ6ÓNˆØÕ ˆÜ—O’O L¸!µeÀ"ÔEÀcÈ2ÈAÈ2ÈqÀjÕQˆ	Ü×"Ò"ØÜ×Ò˜YÓ'Ü�HŠH�S §¡Ô-Øô	
ˆô —’˜F B¨Ó+ˆä�?Š?˜F˜7¨°­	¸Ô;¸CÀÀ%À¸KÕH€DÜ×Ò ¸Ô;€Fàˆq„y—[Ø—j‘j b°4�jÓ8¸5Õ@ˆØÕ%ˆàÐ/Õ/Ð/Ð/rA   c                   óP   a a€ ] tR t^xt oV3R lV 3R lltV3R lR ltRtVtV ;t# )ÚKimiSparseMoEc                ó    <€ V ^8„  d   QhRS[ /# ©r   rM   ©r   )r<   r=   s   "€r>   r?   ÚKimiSparseMoE.__annotate__y   s   ø€ ÷ 'ñ '™Yñ 'rA   c                óØ  <€ \         SV `  4        Wn        VP                  pVP                  pVf   \        R4      h\        P                  ! W#RR7      V n        \        W!P                  V4      V n        \        P                  ! V3\        P                  R7      V n        VP                   '       d1   VP                  VP                   ,          p\#        WR7      V n        R # R V n        R # )Nz,num_experts must be specified for MoE layersFrP   r}   )r   )rR   rS   rM   r   r%   r�   rT   rU   Úgater   r&   Ú
switch_mlprc   ÚzerosÚfloat32Úe_score_correction_biasr/   rK   Úshared_experts)rY   rM   r[   ÚexpertsÚshared_hiddenr\   s   &&   €r>   rS   ÚKimiSparseMoE.__init__y   s°   ø€ Ü‰ÑÔØŒ	Ø×!Ñ!ˆØ×"Ñ"ˆØŠ?ÜÐKÓLÐLä—I’I˜f°EÔ:ˆŒ	Ü# F×,FÑ,FÈÓPˆŒÜ')§x¢x°°
Ä"Ç*Á*Ô'MˆÔ$à×"×"Ð"Ø ×6Ñ6¸×9PÑ9PÕPˆMÜ")¨$Ô"PˆDÖà"&ˆDÖrA   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# r_   rb   )r<   r=   s   "€r>   r?   r˜   ‹   s#   ø€ ÷ ñ ™"Ÿ(™(ð ¡r§x¡xñ rA   c           
     óþ  € V P                  V4      p\        VV P                  V P                  P                  V P                  P
                  V P                  P                  V P                  P                  V P                  P                  V P                  P                  4      w  r4V P                  W4      pWTR,          ,          P                  RR7      pV P                  e   WPP                  V4      ,           pV# ).ry   ©.Nr€   )rš   r’   rž   rM   r.   r6   r7   r2   r1   r0   r›   r…   rŸ   )rY   r`   r‹   r�   ÚweightsÚouts   &&    r>   rg   ÚKimiSparseMoE.__call__‹   sÄ   € Ø—‘˜1“ˆÜ,ØØ×(Ñ(Ø�I‰I×+Ñ+Ø�I‰I×&Ñ&Ø�I‰I× Ñ Ø�I‰I×+Ñ+Ø�I‰I×%Ñ%Ø�I‰I×0Ñ0ó	
‰ˆð �o‰o˜aÓ&ˆØ˜YÕ'Õ'×,Ñ,°"Ð,Ó5ˆØ×ÑÒ*Ø×+Ñ+¨AÓ.Õ.ˆCØˆ
rA   )rM   rž   rš   rŸ   r›   rj   rl   s   @@r>   r”   r”   x   s   ù‡ € ÷'ó '÷$÷ ð rA   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# )ÚKimiMLAAttentionc                ó    <€ V ^8„  d   QhRS[ /# r–   r—   )r<   r=   s   "€r>   r?   ÚKimiMLAAttention.__annotate__Ÿ   s   ø€ ÷ Vñ V™Yñ VrA   c                ób  <€ \         SV `  4        Wn        VP                  V n        VP
                  V n        VP                  ;'       g    VP                  V n        VP                  ;'       g    ^ V n        V P                  V P                  ,           V n	        VP                  ;'       g    VP                  V n
        VP                  V n        V P                  R,          V n        VP                  p\        P                  ! W P                  V P                  ,          RR7      V n        \        P                  ! VVP                  V P                  ,           RR7      V n        \        P$                  ! VP                  VP&                  R7      V n        \+        V P                  VP                  V P                  4      V n        \+        VP                  V P                  V P                  4      V n        \        P                  ! V P                  V P                  ,          VRR7      V n        R# )r   FrP   ©ÚepsNç      à¿)rR   rS   rM   r   Ú	num_headsr   r*   r    r+   Ú
q_head_dimr,   r'   Úscaler   rT   rU   Úq_projÚkv_a_proj_with_mqaÚRMSNormr"   Úkv_a_layernormr   Úembed_qÚunembed_outÚo_proj)rY   rM   r[   r\   s   && €r>   rS   ÚKimiMLAAttention.__init__Ÿ   s‹  ø€ Ü‰ÑÔØŒ	Ø×1Ñ1ˆŒØ#'×#;Ñ#;ˆÔ Ø $× 5Ñ 5× FÐ F¸¿¹ˆÔØ $× 5Ñ 5× :Ð :¸ˆÔØ×/Ñ/°$×2GÑ2GÕGˆŒØŸ/™/×:Ð:¨T¯]©]ˆŒØ ×-Ñ-ˆÔØ—_‘_ dÕ*ˆŒ
à×!Ñ!ˆÜ—i’i ¯©¸¿¹Õ(HÈuÔUˆŒÜ"$§)¢)ØØ×Ñ × 5Ñ 5Õ5Øô#
ˆÔô
 !Ÿjšj¨×):Ñ):À×@QÑ@QÔRˆÔÜ"Ø×!Ñ! 4×#4Ñ#4°d·n±nó
ˆŒô 'Ø×Ñ˜tŸ™°·±ó
ˆÔô —i’i §¡°·±Õ @À&ÈuÔUˆŽrA   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# ©r   r`   ÚmaskÚcachera   )rc   rd   r   r   )r<   r=   s   "€r>   r?   r¬   »   sI   ø€ ÷ -#ñ -#á�8‰8ð-#ñ ‘r—x‘xÕ ð-#ñ ™Õ ð	-#ñ
 
�‰ñ-#rA   c           	     ó¬  € VP                   w  rEpV P                  V4      P                  WEV P                  V P                  4      pV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
4      p\        P                  ! V^R7      pVe   VP                  WË4      w  rËW�P                  ,          VP!                  RR4      ,          pVe`   \        P"                  ! VV\        P$                  ! \        P&                  ! VP(                  4      P*                  VP(                  4      4      pV^8X  d   V P-                  V4      pT;rïM$V P-                  VRR7      pV P/                  V4      p\1        WŽWóV P                  VR7      pV^8X  d   V P/                  V4      pVP                  ^ ^^^4      P                  WER4      pV P3                  V4      # )r   ry   F)Ú	transpose)r¿   r³   r¾   r   r€   )rx   r´   Úreshaper±   r²   rÁ   rc   Úsplitr*   rµ   r'   r+   r·   Úexpand_dimsÚupdate_and_fetchr³   ÚswapaxesÚwhererd   Úfinfor~   Úminr¸   r¹   r   rº   )rY   r`   r¾   r¿   ÚBÚLÚ_ÚqÚq_nopeÚq_peÚcompressed_kvÚk_peÚ	kv_latentÚ	pe_scoresrŽ   ÚvÚoutputs   &&&&             r>   rg   ÚKimiMLAAttention.__call__»   sò  € ð —'‘'‰ˆˆaà�K‰K˜‹N×"Ñ" 1¨¯©¸¿¹ÓIˆØ�K‰K˜˜1˜a Ó#ˆÜ—x’x ×$9Ñ$9Ð#:ÀÔD‰ˆà×/Ñ/°Ó2ˆÜ Ÿhšh }×7HÑ7HÐ6IÐPRÔSÑˆØ�|‰|˜A ! T×%:Ñ%:Ó;×EÑEÀaÈÈAÈqÓQˆØ×'Ñ'¨Ó6ˆ	ä—N’N 9°1Ô5ˆ	àÒØ#×4Ñ4°YÓE‰OˆIàŸJ™JÕ&¨$¯-©-¸¸BÓ*?Õ?ˆ	ØÒÜŸšØØÜ—’œŸš )§/¡/Ó2×6Ñ6¸	¿¹ÓHóˆIð �Œ6Ø—\‘\ &Ó)ˆFØÐˆA�à—‘˜Y°%�Ó8ˆAØ× Ñ  Ó+ˆAä-Ø�q¨T¯Z©Z¸iô
ˆð �Œ6Ø×%Ñ% fÓ-ˆFà×!Ñ! ! Q¨¨1Ó-×5Ñ5°a¸BÓ?ˆØ�{‰{˜6Ó"Ð"rA   )rM   r¸   r·   rµ   r'   r±   r   rº   r²   r´   r*   r+   r³   r¹   r,   ri   rj   rl   s   @@r>   rª   rª   ž   s    ù‡ € ÷Vó V÷8-#÷ -#ò -#rA   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# )ÚShortConv1dc                ó&   <€ V ^8„  d   QhRS[ RS[ /# )r   ÚchannelsÚkernel_size)r9   )r<   r=   s   "€r>   r?   ÚShortConv1d.__annotate__ì   s   ø€ ÷ 

ñ 

¡ð 

±3ñ 

rA   c           	     ór   <€ \         SV `  4        W n        \        P                  ! VVVR V^ R7      V n        R# )F)Úin_channelsÚout_channelsrÛ   rQ   ÚgroupsÚpaddingN)rR   rS   rÛ   rT   ÚConv1dÚconv)rY   rÚ   rÛ   r\   s   &&&€r>   rS   ÚShortConv1d.__init__ì   s6   ø€ Ü‰ÑÔØ&ÔÜ—I’IØ Ø!Ø#ØØØô
ˆŽ	rA   c                óö   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[ P                  ,          RS[S[ P                  ,          RS[S[ P                  S[ P                  3,          /# )r   r`   Ústater¾   Úlengthsra   )rc   rd   r   r   )r<   r=   s   "€r>   r?   rÜ   ø   sn   ø€ ÷ ñ á�8‰8ðñ ™Ÿ™Õ!ðñ ‘r—x‘xÕ ð	ñ
 ™"Ÿ(™(Õ#ðñ 
‰r�x‰x™Ÿ™Ð!Õ	"ñrA   c                óÔ  € Ve    \         P                  ! VR,          V^ 4      pVfY   \         P                  ! VP                  ^ ,          V P                  ^,
          VP                  R,          3VP
                  R7      p\         P                  ! W!.^R7      p\        P                  ! V P                  V4      4      pV P                  ^,
          pVep   \         P                  ! V^ VP                  ^,          4      pVR,          \         P                  ! V4      ,           R,          p	\         P                  ! WY^R7      p
Wj3# \         P                  ! VRV) R 1R3,          4      p
Wj3# )Nr}   ry   r|   r¥   r   )r|   N)rc   rÇ   rœ   rx   rÛ   r~   ÚconcatenaterT   Úsilurã   ÚclipÚarangerŠ   Ú
contiguous)rY   r`   ræ   r¾   rç   Ú
conv_inputr§   Ún_keepÚendsÚ	positionsÚ	new_states   &&&&&      r>   rg   ÚShortConv1d.__call__ø   s  € ð ÒÜ—’˜˜i�¨!¨QÓ/ˆAàŠ=Ü—H’HØ—‘˜•˜T×-Ñ-°Õ1°1·7±7¸2µ;Ð?ÀqÇwÁwôˆEô —^’^ U J°QÔ7ˆ
Ü�gŠg�d—i‘i 
Ó+Ó,ˆØ×!Ñ! AÕ%ˆØÒÜ—7’7˜7 A q§w¡w¨q¥zÓ2ˆDØ˜g�¬¯ª°6Ó):Õ:¸IÕFˆIÜ×*Ò*¨:ÀqÔIˆIð ˆ~Ðô Ÿš j°°V°G±H¸a°Õ&@ÓAˆIàˆ~ÐrA   )rã   rÛ   rj   rl   s   @@r>   rØ   rØ   ë   s   ù‡ € ÷

ó 

÷÷ ð rA   rØ   c                   óT   a a€ ] tR tR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# )ÚKimiDeltaAttentioni  c                ó&   <€ V ^8„  d   QhRS[ RS[/# ©r   rM   Ú	layer_idx©r   r9   )r<   r=   s   "€r>   r?   ÚKimiDeltaAttention.__annotate__  s   ø€ ÷ $Iñ $I™Yð $I±3ñ $IrA   c           
     óz  <€ \         SV `  4        VP                  pW n        VR ,          V n        VR,          V n        VP                  R^4      V n        V P                  V P
                  ,          V n        VP                  p\        V P
                  4      R
,          V n        \        P                  ! W@P                  RR7      V n        \        P                  ! W@P                  RR7      V n        \        P                  ! W@P                  RR7      V n        \#        V P                  V P                  4      V n        \#        V P                  V P                  4      V n        \#        V P                  V P                  4      V n        \        P                  ! W@P
                  RR7      V n        \        P                  ! V P
                  V P                  RR7      V n        \        P                  ! W@P                  RR7      V n        \        P                  ! W@P
                  RR7      V n        \        P                  ! V P
                  V P                  RR7      V n        \4        P6                  ! \4        P8                  ! \4        P:                  P=                  RRV P                  3R7      4      R4      V n        \4        P@                  ! V P                  34      V n!        \        PD                  ! V P
                  VPF                  R7      V n$        \        P                  ! V P                  VRR7      V n%        R	# )r±   r    Úshort_conv_kernel_sizeFrP   r   g      0@)ÚlowÚhighrx   r®   Nr°   )r   é   é   )&rR   rS   r#   rø   r±   r    ÚgetÚconv_kernelÚprojection_dimr   r:   r³   rT   rU   r´   Úk_projÚv_projrØ   Úq_convÚk_convÚv_convÚf_a_projÚf_b_projÚb_projÚg_a_projÚg_b_projrc   rÄ   ÚlogÚrandomÚuniformÚA_logrœ   Údt_biasr¶   r"   Úo_normrº   )rY   rM   rø   Úcfgr[   r\   s   &&&  €r>   rS   ÚKimiDeltaAttention.__init__  s  ø€ Ü‰ÑÔØ×%Ñ%ˆà"ŒØ˜[Õ)ˆŒØ˜J�ˆŒØŸ7™7Ð#;¸QÓ?ˆÔà"Ÿn™n¨t¯}©}Õ<ˆÔØ×!Ñ!ˆä˜4Ÿ=™=Ó)¨TÕ1ˆŒ
ä—i’i ×(;Ñ(;À%ÔHˆŒÜ—i’i ×(;Ñ(;À%ÔHˆŒÜ—i’i ×(;Ñ(;À%ÔHˆŒä! $×"5Ñ"5°t×7GÑ7GÓHˆŒÜ! $×"5Ñ"5°t×7GÑ7GÓHˆŒÜ! $×"5Ñ"5°t×7GÑ7GÓHˆŒäŸ	š	 &¯-©-¸eÔDˆŒÜŸ	š	 $§-¡-°×1DÑ1DÈ5ÔQˆŒÜ—i’i ¯©¸UÔCˆŒäŸ	š	 &¯-©-¸eÔDˆŒÜŸ	š	 $§-¡-°×1DÑ1DÈ5ÔQˆŒä—^’^Ü�FŠF”2—9‘9×$Ñ$¨°4ÀÇÁÐ?PÐ$ÓQÓRØó
ˆŒ
ô —x’x ×!4Ñ!4Ð 6Ó7ˆŒä—j’j §¡°D×4EÑ4EÔFˆŒÜ—i’i × 3Ñ 3°VÀ%ÔHˆŽrA   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# r½   ©rc   rd   r   r   )r<   r=   s   "€r>   r?   rú   :  sN   ø€ ÷ G ñ G á�8‰8ðG ñ ‘r—x‘xÕ ðG ñ ™�}ð	G ñ
 
�‰ñG rA   c                ó  € VP                   w  rEpVP                  pVe   Vw  r‰r«VP                  pM
R pR p	R p
R pR pVf<   \        P                  ! W@P
                  ^,
          V P                  3VR7      pTpTp	Tp
V P                  V P                  V4      W‚V4      w  rèV P                  V P                  V4      W’V4      w  rùV P                  V P                  V4      W¢V4      w  pp
Ve   Wƒ^ &   W“^&   W£^&   VP                  WEV P                  V P                  4      pVP                  WEV P                  V P                  4      pVP                  WEV P                  V P                  4      pV P                   pV^,          \        P"                  P%                  VR R4      ,          pV\        P"                  P%                  VR R4      ,          pV P'                  V P)                  V4      4      P                  WEV P                  V P                  4      pV P+                  V4      P                  WEV P                  4      p\-        VVVVVV P.                  P                  V P                  ^4      V P0                  P                  V P                  V P                  4      VVV P2                  '       * R7
      w  ppVe   W³^&   VP5                  V4       V P7                  V P9                  V4      4      P                  WEV P                  V P                  4      pV P;                  VP                  WEV P                  V P                  4      4      \        P<                  ! V4      ,          P                  WER4      pV P?                  V4      # )Nr}   g�íµ ÷Æ°>)ræ   r¾   Ú
use_kernelr   ) rx   r~   rç   rc   rœ   r  r  r  r´   r  r  r  r  rÂ   r±   r    r³   ÚfastÚrms_normr
  r	  r  r   r  r  ÚtrainingÚadvancer  r  r  r   rº   )rY   r`   r¾   r¿   rÊ   ÚTrÌ   r~   Úq_stateÚk_stateÚv_stateÚ	ssm_staterç   Úsr  r  r  rÍ   rŽ   rÔ   Ú	inv_scaleÚa_logitsÚb_logitsr§   rš   s   &&&&                     r>   rg   ÚKimiDeltaAttention.__call__:  sà  € ð —'‘'‰ˆˆaØ—‘ˆàÒØ38Ñ0ˆG˜gØ—m‘m‰GàˆGØˆGØˆGØˆIØˆGàŠ?Ü—’˜!×-Ñ-°Õ1°4×3FÑ3FÐGÈuÔUˆAØˆGØˆGØˆGàŸ+™+ d§k¡k°!£n°gÀWÓM‰ˆØŸ+™+ d§k¡k°!£n°gÀWÓM‰ˆØŸ+™+ d§k¡k°!£n°gÀWÓM‰ˆ�àÒØ�!‰HØ�!‰HØ�!‰Hà�N‰N˜1 §¡°·±Ó?ˆØ�N‰N˜1 §¡°·±Ó?ˆØ�N‰N˜1 §¡°·±Ó?ˆà—J‘Jˆ	Ø˜�\œRŸW™W×-Ñ-¨a°°tÓ<Õ<ˆØœŸ™×(Ñ(¨¨D°$Ó7Õ7ˆà—=‘= §¡¨qÓ!1Ó2×:Ñ:Ø�$—.‘. $§-¡-ó
ˆð —;‘;˜q“>×)Ñ)¨!°·±Ó?ˆä+ØØØØØØ�J‰J×Ñ˜tŸ~™~¨qÓ1Ø�L‰L× Ñ  §¡°·±Ó?ØØØŸ=™=Ô(ô
‰ˆˆYð ÒØ �!‰HØ�M‰M˜!Ôà�}‰}˜TŸ]™]¨1Ó-Ó.×6Ñ6Ø�$—.‘. $§-¡-ó
ˆð �K‰K˜Ÿ™ A¨$¯.©.¸$¿-¹-ÓHÓIÜ�jŠj˜Óõç
‰'�!˜Ó
ð 	ð �{‰{˜3ÓÐrA   )r  r  r  r  r	  r
  r  r  r    r  r  rø   r±   r  rº   r  r  r´   r³   r  r  ri   rj   rl   s   @@r>   rõ   rõ     s$   ù‡ € ÷$Ió $I÷LG ÷ G ò G rA   rõ   c                   óT   a a€ ] tR tR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# )ÚKimiDecoderLayeri„  c                ó&   <€ V ^8„  d   QhRS[ RS[/# r÷   rù   )r<   r=   s   "€r>   r?   ÚKimiDecoderLayer.__annotate__…  s   ø€ ÷ 
ñ 
™Yð 
±3ñ 
rA   c                óH  <€ \         SV `  4        VP                  R ,          pV^,           V9   V n        V P                  '       d   \	        W4      V n        M\        V4      V n        VP                  ^ 8”  d9   W!P                  8¼  d)   W!P                  ,          ^ 8X  d   \        V4      V n        M\        V4      V n        \        P                  ! VP                  VP                   R7      V n        \        P                  ! VP                  VP                   R7      V n        R# )Ú
kda_layersr®   N)rR   rS   r#   Ú	is_linearrõ   Ú	self_attnrª   r%   r3   r4   r”   ÚmlprK   rT   r¶   r   r"   Úinput_layernormÚpost_attention_layernorm)rY   rM   rø   r-  r\   s   &&& €r>   rS   ÚKimiDecoderLayer.__init__…  sÔ   ø€ Ü‰ÑÔØ×,Ñ,¨\Õ:ˆ
Ø# a�-¨JÑ6ˆŒà�>�>ˆ>Ü/°Ó@ˆD�Nä-¨dÓ3ˆDŒNð ×Ñ˜qÔ Ø×7Ñ7Ô7Ø×/Ñ/Õ/°1Ô4ä$ TÓ*ˆD�Hä˜t“}ˆDŒHä!Ÿzšz¨$×*:Ñ*:À×@QÑ@QÔRˆÔÜ(*¯
ª
Ø×Ñ $×"3Ñ"3ô)
ˆÖ%rA   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[,          RS[ P                  /# r½   r  )r<   r=   s   "€r>   r?   r+  �  sH   ø€ ÷ 
ñ 
á�8‰8ð
ñ ‘r—x‘xÕ ð
ñ ™�}ð	
ñ
 
�‰ñ
rA   c                ó´   € Vf   R MTpV P                  V P                  V4      W$4      pW,           pV P                  V P                  V4      4      pWg,           # rf   )r/  r1  r0  r2  )rY   r`   r¾   r¿   Ú
attn_cacheÚyÚhÚzs   &&&&    r>   rg   ÚKimiDecoderLayer.__call__�  sQ   € ð #š]‘T°ˆ
Ø�N‰N˜4×/Ñ/°Ó2°DÓEˆØ�EˆØ�H‰H�T×2Ñ2°1Ó5Ó6ˆØ�uˆrA   )r1  r.  r0  r2  r/  ri   rj   rl   s   @@r>   r)  r)  „  s   ù‡ € ÷
ó 
÷0
÷ 
ò 
rA   r)  c                   óT   a a€ ] tR tR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# )ÚKimiLinearModeliª  c                ó    <€ V ^8„  d   QhRS[ /# r–   r—   )r<   r=   s   "€r>   r?   ÚKimiLinearModel.__annotate__«  s   ø€ ÷ 
ñ 
™Yñ 
rA   c                ó  <€ \         SV `  4        \        P                  ! VP                  VP
                  4      V n        \        VP                  4       Uu. uF  p\        W4      NK  	  upV n
        \        P                  ! VP
                  VP                  R 7      V n        VP                  R,          pV^ ,          ^,
          V n        \        \!        V P                  4      4       F  pV^,           V9  g   K  W n         R# 	  R# u upi )r®   r-  N)rR   rS   rT   Ú	Embeddingr   r   Úembed_tokensÚranger   r)  Úlayersr¶   r"   Únormr#   Ússm_idxÚlenÚattn_idx)rY   rM   Úir-  r\   s   &&  €r>   rS   ÚKimiLinearModel.__init__«  sÄ   ø€ Ü‰ÑÔÜŸLšL¨¯©¸$×:JÑ:JÓKˆÔÜ:?À×@VÑ@VÔ:WÓXÑ:W°QÔ'¨Ö0Ñ:WÑXˆŒÜ—J’J˜t×/Ñ/°T×5FÑ5FÔGˆŒ	Ø×,Ñ,¨\Õ:ˆ
Ø! !•} qÕ(ˆŒÜ”s˜4Ÿ;™;Ó'Ö(ˆAØ�A•˜jÖ(Ø !”Úó )ùò	 Ys   ÁD
c                ót   <€ V ^8„  d   QhRS[ P                  RS[S[S[,          ,          RS[ P                  /# ©r   Úinputsr¿   ra   ©rc   rd   r   r   r   )r<   r=   s   "€r>   r?   r>  ·  s:   ø€ ÷ ñ á—‘ðñ ™™S�	Õ"ðñ 
�‰ñ	rA   c                óz  € V P                  V4      pVf   R .\        V P                  4      ,          p\        W2V P                  ,          4      p\        W2V P                  ,          RR7      p\        V P                  V4       F%  w  rgVP                  '       d   TMTpV! W8VR7      pK'  	  V P                  V4      # )NT)Úreturn_array)r¾   r¿   )
rA  rF  rC  r   rE  r   rG  Úzipr.  rD  )	rY   rL  r¿   r8  Ússm_maskÚ	attn_maskÚlayerÚlayer_cacher¾   s	   &&&      r>   rg   ÚKimiLinearModel.__call__·  sš   € ð
 ×Ñ˜fÓ%ˆØŠ=Ø�FœS §¡Ó-Õ-ˆEä" 1¨D¯L©LÕ&9Ó:ˆÜ)¨!°4·=±=Õ-AÐPTÔUˆ	ä"% d§k¡k°5Ö"9ÑˆEØ$ŸŸ˜‘8°IˆDÙ�a¨+Ô6ŠAñ #:ð �y‰y˜‹|ÐrA   )rG  rA  rC  rD  rE  rf   rj   rl   s   @@r>   r<  r<  ª  s   ù‡ € ÷
ó 
÷÷ ò rA   r<  c                   óœ   a a€ ] tR tR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3R lR	 lt	]R
 4       t
]R 4       tRtVtV ;t# )ÚModeliÊ  c                ó    <€ V ^8„  d   QhRS[ /# r–   r—   )r<   r=   s   "€r>   r?   ÚModel.__annotate__Ë  s   ø€ ÷ Tñ T™Yñ TrA   c                ó  <€ \         SV `  4        Wn        VP                  V n        \	        V4      V n        VP                  '       d
   R V n        R # \        P                  ! VP                  VP                  RR7      V n        R # )NFrP   )rR   rS   rM   r   r<  Úmodelr)   Úlm_headrT   rU   r   r   )rY   rM   r\   s   &&€r>   rS   ÚModel.__init__Ë  s[   ø€ Ü‰ÑÔØŒ	ØŸ/™/ˆŒÜ$ TÓ*ˆŒ
Ø×#×#Ð#ØˆDŽLäŸ9š9 T×%5Ñ%5°t·±ÈUÔSˆDŽLrA   c                ót   <€ V ^8„  d   QhRS[ P                  RS[S[S[,          ,          RS[ P                  /# rK  rM  )r<   r=   s   "€r>   r?   rY  Õ  s:   ø€ ÷ !ñ !á—‘ð!ñ ™™S�	Õ"ð!ñ 
�‰ñ	!rA   c                ó¬   € V P                  W4      pV P                  f&   V P                   P                  P                  V4      # V P                  V4      # rf   )r[  r\  rA  Ú	as_linear)rY   rL  r¿   r§   s   &&& r>   rg   ÚModel.__call__Õ  sF   € ð
 �j‰j˜Ó'ˆØ�<‰<ÒØ—:‘:×*Ñ*×4Ñ4°SÓ9Ð9Ø�|‰|˜CÓ Ð rA   c                ó.   € V P                   P                  # rf   )r[  rC  )rY   s   &r>   rC  ÚModel.layersß  s   € à�z‰z× Ñ Ð rA   c                óÀ   € . pV P                    FK  pVP                  '       d   VP                  \        ^R7      4       K2  VP                  \	        4       4       KM  	  V# )é   )Úsize)rC  r.  Úappendr   r   )rY   ÚcachesrS  s   &  r>   Ú
make_cacheÚModel.make_cacheã  sD   € ØˆØ—[”[ˆEØ��ˆØ—‘œk¨qÔ1Ö2à—‘œg›iÖ(ñ	 !ð
 ˆrA   c                óz   <€ V ^8„  d   QhRS[ S[S[P                  3,          RS[ S[S[P                  3,          /# )r   r¦   ra   )r   r8   rc   rd   )r<   r=   s   "€r>   r?   rY  ì  s9   ø€ ÷ cñ c¡¡S©"¯(©( ]Õ 3ð c¹¹SÁ"Ç(Á(¸]Õ8Kñ crA   c                ó\	  € VP                  4        UUu/ uF   w  r#VP                  R 4      '       d   K  W#bK"  	  pppV P                  P                  '       d   VP	                  RR4       \        V P                  4       EF  w  rERV 2p\        VP                  \        4      '       Ed    V R2pV R2pR Fy  w  ršV RV	 R2pW±9   g   K  \        V P                  P                  4       Uu. uF  pVP	                  V RV R	V	 R24      NK  	  pp\        P                  ! V4      W R
V
 R2&   K{  	  R F,  pV RV R2pWñ9   g   K  VP	                  V4      W RV R2&   K.  	  V R2pVV9   d   VP	                  V4      W R2&   V R2pVV9   d   VP	                  V4      W R2&   \        VRR4      p\        V\        4      '       d¦   V R2pR  FU  w  ppV R	V R2pWñ9   g   K  VP	                  V4      pVP                   ^8X  d   VP#                  ^^4      pVVV R	V R2&   KW  	  V R2pVV9   d:   VV,          P                   ^8”  d"   \        P$                  ! VV,          R"4      VV&   V R2pV R2pVV9   g   EK  V P                  P&                  ;'       g    V P                  P(                  pV P                  P*                  ;'       g    V P                  P(                  pVV,           pV P                  P,                  pV R2V9   pVP	                  V4      pV'       d•   V P                  P.                  pVP	                  V R24      pVP	                  V R24      p VP0                  R!,          ^ ,          V,          p!VVP0                  R!,          ,          p"\        P2                  ! VVV V!V"R7      pVP%                  VVR!4      p\        P4                  ! VRRV1R3,          P7                  R!R#4      4      p#\        P4                  ! VRVR1R3,          4      p$V'       d[   \        P8                  ! V#X!X"R7      w  p#p%p&\        P8                  ! V$V!V"R7      w  p$p'p(V%VV R2&   V&VV R2&   V'VV R2&   V(VV R2&   V#VV R2&   V$VV R2&   EK  	  V# u uppi u upi )$z	model.mtpzlm_head.weightNzmodel.layers.z.block_sparse_moez.mlpz.experts.0.z.weightz	.experts.Ú.z.switch_mlp.z.shared_experts.z.gate.weightz.gate.e_score_correction_biasz.e_score_correction_biasr/  z
.self_attnz.conv.weightz.dt_biasz.kv_b_proj.weightz.kv_b_proj.scalesz.kv_b_proj.biases)ÚbitsÚ
group_sizer|   z.embed_q.scalesz.embed_q.biasesz.unembed_out.scalesz.unembed_out.biasesz.embed_q.weightz.unembed_out.weight))Úw1rV   )Úw2rX   )Úw3rW   )rV   rW   rX   ))Úq_conv1dr  )Úk_conv1dr  )Úv_conv1dr  r   )r   r€   )ÚitemsÚ
startswithrM   r)   ÚpopÚ	enumeraterC  Ú
isinstancer0  r”   rB  r%   rc   ÚstackÚgetattrrõ   ÚndimÚmoveaxisrÂ   r*   r    r,   r   r'   rx   Ú
dequantizerí   rÆ   Úquantize))rY   r¦   rŽ   rÔ   rø   rS  ÚprefixÚ
src_prefixÚ
dst_prefixÚsrcÚdstÚkeyrH  ÚstackedÚnameÚsrc_keyÚgate_keyÚbias_keyÚattnÚattn_prefixÚsrc_nameÚdst_nameÚwÚdt_keyÚkv_b_keyÚqk_nopeÚv_headr    r±   Ú	quantizedÚdimsÚscalesÚbiasesrn  ro  ÚwkÚwvÚwk_sÚwk_bÚwv_sÚwv_bs)   &&                                       r>   ÚsanitizeÚModel.sanitizeì  sÖ  € Ø$+§M¡M¤OÔU¡O™D˜A¸1¿<¹<È×;T”4�1’4¡OˆÑUà�9‰9×(×(Ð(Ø�K‰KÐ(¨$Ô/ä )¨$¯+©+× 6ÑˆIØ$ Y KÐ0ˆFä˜%Ÿ)™)¤]×3Ó3Ø &˜xÐ'8Ð9�
Ø &˜x t˜_�
ó!‘H�Cð
 (˜L¨°C°5¸Ð@�CØ–~ô &+¨4¯9©9×+@Ñ+@Ô%Aó#á%A ð $ŸK™K¨:¨,°iÀ¸sÀ!ÀCÀ5ÈÐ(PÖQÙ%Að  ð #ô LNÏ8Ê8Ø#óL˜ ,¨l¸3¸%¸wÐ GÓHñ!ó B�DØ!+ Ð,<¸T¸FÀ'ÐJ�GØÖ)à#ŸK™K¨Ó0ð   ,Ð.>¸t¸fÀGÐ LÓMñ Bð )˜\¨Ð6�Ø˜wÔ&Ø;B¿;¹;ÀxÓ;P�G˜l¨,Ð7Ñ8à(˜\Ð)FÐG�Ø˜wÔ&ØGNÇ{Á{Ø óH�G˜lÐ*BÐCÑDô ˜5 +¨tÓ4ˆDÜ˜$Ô 2×3Ò3Ø!' ¨
Ð3�ó+Ñ&�H˜hð
 "- ¨Q¨x¨j¸Ð@�GØÖ)Ø#ŸK™K¨Ó0˜ØŸ6™6 Qœ;Ø !§
¡
¨1¨aÓ 0˜AØKL˜ ; -¨q°°
¸,Ð GÓHñ+ð (˜=¨Ð1�Ø˜WÔ$Ø˜v•×+Ñ+¨aÔ/Ü*,¯*ª*°W¸Vµ_ÀeÓ*L˜ ™à#˜H JÐ/ˆKØ%˜Ð&7Ð8ˆHØ˜7×"ØŸ)™)×4Ñ4×JÐJ¸¿	¹	×8JÑ8J�ØŸ™×-Ñ-×CÐC°·±×1CÑ1C�Ø" VÕ+�Ø ŸI™I×9Ñ9�	à*˜mÐ+<Ð=ÀÑH�	Ø—K‘K Ó)�çØŸ9™9×1Ñ1�DØ$Ÿ[™[¨K¨=Ð8IÐ)JÓK�FØ$Ÿ[™[¨K¨=Ð8IÐ)JÓK�FØŸG™G B�K¨"Õ,°Õ5�DØ!%¨¯©°bÕ)9Õ!9�JÜŸšØ˜6 6°Àô�Að —I‘I˜i¨°2Ó6�Ü—]’] 1 Q¨¨¨°! ^Õ#4×#=Ñ#=¸bÀ"Ó#EÓF�Ü—]’] 1 Q¨©°! ^Õ#4Ó5�çÜ%'§[¢[°¸$È:Ô%V‘N�B˜˜dÜ%'§[¢[°¸$È:Ô%V‘N�B˜˜dØ?C�G˜{˜m¨?Ð;Ñ<Ø?C�G˜{˜m¨?Ð;Ñ<ØCG�G˜{˜mÐ+>Ð?Ñ@ØCG�G˜{˜mÐ+>Ð?Ñ@à;=�˜;˜- Ð7Ñ8Ø?A�˜;˜-Ð':Ð;Ô<ñw !7ðz ˆùóE Vùò$#s   ”R#´R#Ã.#R)c                ó   € R  R lpV# )c                ó$   € V ^8„  d   QhR\         /# )r   Úpath)r8   )r<   s   "r>   r?   Ú*Model.cast_predicate.<locals>.__annotate__S  s   € ÷ 	ñ 	œCñ 	rA   c                 óx   € R V 9   d   R# V P                  R4      '       g   V P                  R4      '       d   R# R# )rž   Fr  r  T©Úendswith)r£  s   &r>   Ú	predicateÚ'Model.cast_predicate.<locals>.predicateS  s0   € Ø(¨DÔ0ÙØ�}‰}˜W×%Ò%¨¯©°y×)AÒ)AÙÙrA   rB   ©rY   r¨  s   & r>   Úcast_predicateÚModel.cast_predicateQ  s   € õ	ð ÐrA   c                ó   € R  pV# )c                 ó@   € V P                  R 4      '       d   R^@R^/# R# )zmlp.gatero  rn  Tr¦  )r£  rÌ   s   &&r>   r¨  Ú(Model.quant_predicate.<locals>.predicate^  s#   € Ø�}‰}˜Z×(Ò(Ø$ b¨&°!Ð4Ð4ÙrA   rB   rª  s   & r>   Úquant_predicateÚModel.quant_predicate\  s   € ò	ð
 ÐrA   )rM   r\  r[  r   rf   )rC   rD   rE   rF   rS   rg   ÚpropertyrC  ri  rŸ  r«  r°  rH   rI   rk   rl   s   @@r>   rW  rW  Ê  sn   ù‡ € ÷Tó T÷!ò !ð ñ!ó ð!ò÷cð cðJ ñó ðð ñó ÷ð rA   rW  ))Údataclassesr   Útypingr   r   r   r   r   Úmlx.coreÚcorerc   Úmlx.nnrT   Úactivationsr	   Úbaser
   r   r   r   r¿   r   r   Úgated_deltar   Úmlar   Úswitch_layersr   r   ÚModulerK   Úcompiler’   r”   rª   rØ   rõ   r)  r<  rW  rB   rA   r>   Ú<module>r¿     sô   ðõ "ß 3Õ 3å Ý å ÷ó ÷ (Ý +Ý Ý $ð ô�ó ó ðôDJˆb�i‰iô Jð$ ‡�ô)0ó ð)0ôX#�B—I‘Iô #ôLJ#�r—y‘yô J#ôZ%�"—)‘)ô %ôPn ˜Ÿ™ô n ôb#�r—y‘yô #ôL�b—i‘iô ô@YˆB�I‰Iö YrA   