+
    UV-j  ã                   óÚ   € ^ RI t ^ RIHtHt ^ RIHtHt ^RIHt ] ! R R]4      4       t	] ! R R]4      4       t
] ! R	 R
]4      4       t] ! R R]4      4       t] ! R R]4      4       tR# )é    N)Ú	dataclassÚfield)ÚListÚOptional)ÚBaseModelConfigc                   ó¨   a a€ ] tR t^t oRtRtRt^t^t^t	^Ht
^tRt]! R R7      tRtRtR	tR	tR
tRt]V 3R l4       t]R 4       tV3R ltRtVtV ;t# )Ú	VitConfigÚmolmo2é€  iÐ  iÙ  c                 ó
   € R R .# )iz  © r   ó    Úm/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_vlm/models/molmo2/config.pyÚ<lambda>ÚVitConfig.<lambda>   s   € ÈÈcÉ
r   ©Údefault_factoryÚgelu_pytorch_tanhç�íµ ÷Æ°>ç        TÚsdpac                óp   <€ VP                  R ^4      ^8”  d   \        V4      p^VR &   \        SV `  V4      # )Únum_hidden_layers)ÚgetÚdictÚsuperÚ	from_dict)ÚclsÚparamsÚ	__class__s   &&€r   r   ÚVitConfig.from_dict   s=   ø€ ð �:‰:Ð)¨2Ó.°Ô3Ü˜&“\ˆFØ*,ˆFÐ&Ñ'Ü‰wÑ  Ó(Ð(r   c                óf   € V P                   w  rWP                  ,          W P                  ,          3# )N)Úimage_default_input_sizeÚimage_patch_size)ÚselfÚhÚws   &  r   Úimage_num_patchÚVitConfig.image_num_patch$   s,   € à×,Ñ,‰ˆØ×)Ñ)Õ)¨1×0EÑ0EÕ+EÐEÐEr   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[S[,          ;R
&   S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   # )é   Ú
model_typeÚhidden_sizeÚintermediate_sizer   Únum_attention_headsÚnum_key_value_headsÚhead_dimr$   Úimage_num_posr#   Ú
hidden_actÚlayer_norm_epsÚattention_dropoutÚresidual_dropoutÚfloat32_attentionÚattn_implementation©ÚstrÚintr   ÚfloatÚbool)ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚVitConfig.__annotate__   s×   ø‡ ‚ áÑñ ñ Ññ ñ Ñ!ñ	 ñ
 Ññ ñ Ñ!ñ ñ Ñ!ñ ñ Ññ ñ Ññ ñ Ññ ñ #¡3�iÑSñ ñ Ñ)ñ ñ Ñ ñ ñ Ñ"ñ ñ Ñ!ñ ñ  Ñ"ñ! ñ" Ñ%ò# r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r,   r-   r.   r   r/   r0   r1   r$   r2   r   r#   r3   r4   r5   r6   r7   r8   Úclassmethodr   Úpropertyr(   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r    r?   s   @@r   r	   r	      s”   ù‡ € à€JØ€KØ!ÐØÐØ!ÐØ!ÐØ€HØÐØ€MÙ*/Ñ@RÔ*SÐØ)€JØ €NØ"ÐØ!ÐØ"ÐØ%Ðàô)ó ð)ð ñFó ðF÷; … r   r	   c                   óx   a € ] tR t^*t o RtRtRtRt^t^t	^Ht
Rt]! R R7      tRtR	tRtRtR	tR
tV 3R ltRtV tR# )ÚAdapterConfigr
   r   é &  é 
  Úsiluc                 ó
   € RR.# )é   éýÿÿÿi÷ÿÿÿr   r   r   r   r   ÚAdapterConfig.<lambda>4   s   € ¸2¸r¹(r   r   r   Tr   c                óÞ   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[S[,          ;R	&   S[;R
&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   # )r+   r,   r-   r.   Útext_hidden_sizer/   r0   r1   r3   Ú
vit_layersÚimage_feature_dropoutÚpooling_attention_maskr5   r6   r7   r8   r9   )r>   r?   s   "€r   r@   ÚAdapterConfig.__annotate__*   sÊ   ø‡ ‚ áÑñ ñ Ññ ñ Ñ!ñ	 ñ
 Ñ ñ ñ Ñ!ñ ñ Ñ!ñ ñ Ññ ñ Ññ ñ ‘S•	ÑCñ ñ !Ñ&ñ ñ !Ñ'ñ ñ Ñ"ñ ñ Ñ!ñ ñ Ñ"ñ ñ  Ñ%ò! r   r   N)rB   rC   rD   rE   r,   r-   r.   rV   r/   r0   r1   r3   r   rW   rX   rY   r5   r6   r7   r8   rH   rI   rJ   ©r?   s   @r   rM   rM   *   sg   ø‡ € à€JØ€KØ!ÐØ ÐØ!ÐØ!ÐØ€HØ€JÙ!Ñ2BÔC€JØ#&ÐØ#'ÐØ"ÐØ!ÐØ"ÐØ%Ð÷! ƒ r   rM   c                   ó`   a € ] tR t^=t o ]! ]R7      t]! ]R7      t]	R 4       t
V 3R ltRtV tR# )ÚVisionConfigr   c                óª   € VP                  R / 4      pVP                  R/ 4      pV ! \        P                  V4      \        P                  V4      R7      # )Ú
vit_configÚadapter_config)r_   r`   )r   r	   r   rM   )r   r   Úvit_cfgÚadapter_cfgs   &&  r   r   ÚVisionConfig.from_dictB   sL   € à—*‘*˜\¨2Ó.ˆØ—j‘jÐ!1°2Ó6ˆÙÜ ×*Ñ*¨7Ó3Ü(×2Ñ2°;Ó?ô
ð 	
r   c                ó2   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   # )r+   r_   r`   )r	   rM   )r>   r?   s   "€r   r@   ÚVisionConfig.__annotate__=   s   ø‡ ‚ áÑ<ñ ñ "ÑHò r   r   N)rB   rC   rD   rE   r   r	   r_   rM   r`   rF   r   rH   rI   rJ   r[   s   @r   r]   r]   =   s2   ø‡ € á!°)Ô<€JÙ$)¸-Ô$H€Nàñ
ó ð
÷ ƒ r   r]   c                   ó„   a € ] tR t^Lt o RtRtRt^$t^ t^t	^€t
Rt^€tRtRtRtRtRtRtR	tR
tRtRtRtRtRtV 3R ltRtV tR
# )Ú
TextConfigr
   rO   rN   é€Q rP   r   r   i �  g    ÐSANTÚqwen3Fc                ó2  <€ 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[S[,          ;R&   S[;R&   S[ ;R&   S[;R&   S[;R&   S[;R&   # )r+   r,   r-   r.   r   r/   r0   r1   Ú
vocab_sizeÚadditional_vocab_sizer3   r4   r5   r6   Úembedding_dropoutÚmax_position_embeddingsÚ
rope_thetaÚrope_scalingÚuse_qk_normÚqk_norm_typeÚqkv_biasÚ	use_cacheÚ
norm_after)r:   r;   r<   r   r   r=   )r>   r?   s   "€r   r@   ÚTextConfig.__annotate__L   s%  ø‡ ‚ áÑñ ñ Ññ ñ Ñ!ñ	 ñ
 Ññ ñ Ñ!ñ ñ Ñ ñ ñ Ññ ñ Ññ ñ Ñ$ñ ñ Ññ ñ Ñ ñ ñ Ñ"ñ ñ Ñ!ñ ñ Ñ"ñ ñ  !Ñ(ñ! ñ" Ñ!ñ# ñ$ ™4•.Ñ'ñ% ñ& Ññ' ñ( Ññ) ñ* Ññ+ ñ, Ññ- ñ. Ñò/ r   r   )rB   rC   rD   rE   r,   r-   r.   r   r/   r0   r1   rk   rl   r3   r4   r5   r6   rm   rn   ro   rp   rq   rr   rs   rt   ru   rH   rI   rJ   r[   s   @r   rg   rg   L   sƒ   ø‡ € à€JØ€KØ!ÐØÐØ!ÐØ ÐØ€HØ€JØ!$ÐØ€JØ €NØ"ÐØ!ÐØ"ÐØ#(ÐØ!€JØ#'€LØ€KØ€LØ€HØ€IØ€J÷/ ƒ r   rg   c                   ó”   a € ] tR t^ft o ]! ]R7      t]! ]R7      tRt	Rt
RtRtRtRtRtR	tR
tRtRtRtRt]R 4       tV 3R ltRtV tR# )ÚModelConfigr   r
   rh   i„Q i�Q i†Q i‚Q iƒQ i‡Q iˆQ Fg{®Gáz”?Nc                ó0  € VP                  R 4      '       g*   RVP                  R/ 4      RVP                  R/ 4      /VR &   T ! R/ VP                  4        UUu/ uF.  w  r#V\        P                  ! V 4      P                  9   g   K,  W#bK0  	  uppB # u uppi )Úvision_configr_   r`   r   )r   ÚitemsÚinspectÚ	signatureÚ
parameters)r   r   ÚkÚvs   &&  r   r   ÚModelConfig.from_dictz   s›   € ð �z‰z˜/×*Ò*à˜fŸj™j¨°rÓ:Ø  &§*¡*Ð-=¸rÓ"Bð'ˆF�?Ñ#ñ
 ñ 
ð #ŸL™LœNôá*‘D�AØœ×)Ò)¨#Ó.×9Ñ9Ñ9ô �’Ù*òñ
ð 	
ùós   Á)BÂB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&   S[S[S[,          ,          ;R&   # )r+   Útext_configrz   r,   Úimage_start_token_idÚlow_res_image_start_token_idÚimage_end_token_idÚimage_low_res_idÚimage_patch_idÚimage_col_idÚframe_start_token_idÚframe_end_token_idÚuse_frame_special_tokensÚtie_word_embeddingsÚinitializer_rangeÚeos_token_id)rg   r]   r:   r;   r=   r<   r   r   )r>   r?   s   "€r   r@   ÚModelConfig.__annotate__f   sÏ   ø‡ ‚ áÑ?ñ ñ  ÑEñ ñ Ññ	 ñ Ñ&ñ ñ #&Ñ.ñ ñ Ñ$ñ ñ Ñ"ñ ñ Ñ ñ ñ Ññ ñ Ñ&ñ ñ Ñ$ñ ñ #Ñ*ñ ñ  Ñ%ñ! ñ" Ñ#ñ# ñ$ ™4¡�9Õ%Ñ,ò% r   r   )rB   rC   rD   rE   r   rg   rƒ   r]   rz   r,   r„   r…   r†   r‡   rˆ   r‰   rŠ   r‹   rŒ   r�   rŽ   r�   rF   r   rH   rI   rJ   r[   s   @r   rx   rx   f   s|   ø‡ € á#°JÔ?€KÙ"'¸Ô"E€MØ€Jà &ÐØ(.Ð Ø$ÐØ"ÐØ €NØ€LØ &ÐØ$ÐØ%*Ðà %ÐØ#ÐØ(,€Làñ
ó ð
÷+ ƒ r   rx   )r|   Údataclassesr   r   Útypingr   r   Úbaser   r	   rM   r]   rg   rx   r   r   r   Ú<module>r”      sœ   ðÛ ß (ß !å "ð ôF�ó Fó ðFðB ô&�Oó &ó ð&ð$ ô
�?ó 
ó ð
ð ô�ó ó ðð2 ô"
�/ó "
ó ò"
r   