+
    UV-j-	  ã                   óš   € ^ RI t ^ RIHt ^ RIHtHtHt ^RIHt ] ! R R]4      4       t	] ! R R]4      4       t
] ! R	 R
]4      4       tR# )é    N)Ú	dataclass)ÚDictÚOptionalÚUnion)ÚBaseModelConfigc                   ó\   a € ] tR t^t o Rt^tRt^tRtRt	^t
RtRtRtRtR	tV 3R
 ltRtV tR# )Ú
TextConfigi€  i   g�íµ ÷Æ°>i€Q i €  i@B FNTc                óò   <€ 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[S[S[ S[S[S[ 3,          3,          ,          ;R&   S[;R&   # )é   Ú
model_typeÚhidden_sizeÚnum_hidden_layersÚintermediate_sizeÚnum_attention_headsÚrms_norm_epsÚ
vocab_sizeÚnum_key_value_headsÚmax_position_embeddingsÚ
rope_thetaÚrope_traditionalÚrope_scalingÚtie_word_embeddings)ÚstrÚintÚfloatÚboolr   r   r   )ÚformatÚ__classdict__s   "€Ún/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_vlm/models/fastvlm/config.pyÚ__annotate__ÚTextConfig.__annotate__   sÃ   ø‡ ‚ á�Oñ ñ Ññ ñ Ññ	 ñ
 Ñ!ñ ñ Ñ!ñ ñ Ññ ñ Ññ ñ Ñ ñ ñ !Ñ(ñ ñ Ññ ñ Ñ"ñ ñ ™4¡¡U©5±#¨:Õ%6Ð 6Õ7Õ8Ñ?ñ ñ Ñ$ò ó    © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r   r   r   r   r   r   r   r   r   r   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__©r   s   @r   r	   r	      sQ   ø‡ € ð €KØÐØ!ÐØ!ÐØ€LØ€JØ ÐØ#(ÐØ€JØ"ÐØ;?€LØ $Ð÷ ƒ r"   r	   c                   óˆ   a € ] tR t^t o RtRtRtRt^@tRt	Rt
^t^tRtRt. ROt. ROt. ROt. ROt. ROtRt^tV 3R	 ltR
tV tR# )ÚVisionConfigÚllava_qwen2i   é   é   iè  gñhãˆµøä>g       @Nc                ób   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   # )r   r   r   r   Ú
image_sizeÚ
patch_sizeÚprojection_dim)r   r   )r   r   s   "€r   r    ÚVisionConfig.__annotate__   sQ   ø‡ ‚ áÑ#ñ ñ Ññ ñ Ñ!ñ	 ñ
 Ññ ñ Ññ ñ Ñò r"   r#   )r   é   é   é   r   )é`   éÀ   i€  r0   i   )r8   r8   r8   r8   r8   )TTTTT)NNN©é   r<   r;   )Úrepmixerr=   r=   Ú	attentionr>   )r$   r%   r&   r'   r   r   r   r2   r3   r4   Únum_classesÚdown_patch_sizeÚdown_strideÚlayer_scale_init_valueÚ	cls_ratioÚlayersÚ
embed_dimsÚ
mlp_ratiosÚdownsamplesÚpos_embs_shapesÚtoken_mixersÚrepmixer_kernel_sizer(   r)   r*   r+   s   @r   r-   r-      si   ø‡ € à#€JØ€KØ!ÐØ€JØ€JØ€NØ€KØ€OØ€KØ!ÐØ€Iâ€FÚ*€JÚ €JÚ0€KÚ8€OØQ€LØÐ÷) ƒ r"   r-   c                   ó\   a € ] tR t^0t o 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.   i]P Ú
mlp2x_gelur/   i    Úrightc                óv  a€ VP                  R / 4      '       g.   R0o\        \        V3R lVP                  4       4      4      VR &   VP                  R/ 4      '       g   / 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 )Útext_configÚvision_configc                 ó   <€ V ^ ,          S9  # )r   r#   )ÚxÚexcluded_keyss   &€r   Ú<lambda>Ú'ModelConfig.from_dict.<locals>.<lambda>C   s   ø€   1¥¨]Ò!:r"   r#   )ÚgetÚdictÚfilterÚitemsÚinspectÚ	signatureÚ
parameters)ÚclsÚparamsÚkÚvrT   s   &&  @r   Ú	from_dictÚModelConfig.from_dict=   s²   ø€ à�z‰z˜-¨×,Ò,à,Ð-ˆMÜ$(ÜÔ:¸F¿L¹L»NÓKó%ˆF�=Ñ!ð �z‰z˜/¨2×.Ò.Ø&(ˆF�?Ñ#áñ 
ð #ŸL™LœNôá*‘D�AØœ×)Ò)¨#Ó.×9Ñ9Ñ9ô �’Ù*òñ
ð 	
ùós   Á;)B5Â)B5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
&   # )r   rP   rQ   r   Úignore_indexÚimage_token_indexÚeos_token_idÚmm_projector_typeÚmm_hidden_sizeÚtokenizer_model_max_lengthÚtokenizer_padding_side)r	   r-   r   r   )r   r   s   "€r   r    ÚModelConfig.__annotate__0   s…   ø‡ ‚ áÑñ ñ  Ññ ñ Ñ#ñ	 ñ
 Ññ ñ Ñ!ñ ñ Ññ ñ Ñ)ñ ñ Ññ ñ !$Ñ*ñ ñ  Ñ)ò r"   r#   Niœÿÿÿi8ÿÿÿ)r$   r%   r&   r'   r   re   rf   rg   rh   ri   rj   rk   Úclassmethodrb   r(   r)   r*   r+   s   @r   rL   rL   0   sL   ø‡ € ð $€JØ€LØ!ÐØ€LØ)ÐØ€NØ&*ÐØ")Ðàñ
ó ð
÷ ƒ r"   rL   )r[   Údataclassesr   Útypingr   r   r   Úbaser   r	   r-   rL   r#   r"   r   Ú<module>rq      se   ðÛ Ý !ß (Ñ (å "ð ô%�ó %ó ð%ð  ô�?ó ó ðð, ô
�/ó 
ó ò
r"   