+
    UV-j\	  ã            	      óL  a€ 0 t $ ^ RIHt ^ RIHt ^ RIHt ]! RRR7       ! R R4      4       tR]! RRR
RR	R7      /tR]	R&   ]P                  4        U Uu/ uF  q P                   F  qV bK  	  K  	  upp tRR R lltR R ltR R ltRR R lltR R ltR R ltR# u upp i )é    )Úannotations)Ú	dataclass)ÚPathT)ÚfrozenÚslotsc                  óJ   € ] tR t^t$ R]R&   R]R&   R]R&   R]R&   R]R&   RtR	# )
ÚBonsaiVariantÚstrÚnameútuple[str, ...]ÚaliasesÚrepo_idÚlocal_dir_nameÚ	precision© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__Ú__static_attributes__r   ó    Úm/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_vlm/models/bonsai/config.pyr	   r	      s   ‡ à
ƒIØÓØƒLØÓØ‡Nr   r	   ÚternaryÚ2bitz)prism-ml/bonsai-image-ternary-4B-mlx-2bitzbonsai-image-4B-ternary-mlx)r   r   r   r   r   zdict[str, BonsaiVariant]ÚVARIANTSc               ó    € V ^8„  d   QhRRRR/# )é   r   zstr | BonsaiVariantÚreturnr	   r   )Úformats   "r   Ú__annotate__r!   '   s   € ÷ 
ñ 
Ð)ð 
¸-ñ 
r   c                ó  € \        V \        4      '       d   V # V P                  4       P                  4       p \        V,          #   \
         d7   pR P                  \        \        4      4      p\        RT : RT 24      ThRp?ii ; i)z, zUnknown Bonsai variant z. Supported: N)	Ú
isinstancer	   ÚstripÚlowerÚ_ALIASESÚKeyErrorÚjoinÚsortedÚ
ValueError)r   ÚkeyÚexcÚ	supporteds   &   r   Úget_variantr.   '   sz   € Ü�$œ×&Ò&ØˆØ
�*‰*‹,×
Ñ
Ó
€CðÜ˜�}ÐøÜô Ø—I‘Iœf¤XÓ.Ó/ˆ	ÜØ% d¡X¨]¸9¸+ÐFó
àð	ûðús   ¸A ÁBÁ1BÂBc               ó   € V ^8„  d   QhRR/# )r   r   r   r   )r    s   "r   r!   r!   4   s   € ÷ ñ �ñ r   c                 ó    € \        \        4      # ©N)Útupler   r   r   r   Úlist_variantsr3   4   s   € Ü”‹?Ðr   c               ó   € V ^8„  d   QhRR/# )r   r   r   r   )r    s   "r   r!   r!   8   s   € ÷ !ñ !˜Dñ !r   c                 ó:   € \         P                  ! 4       R ,          # )Úmodels)r   Úcwdr   r   r   Údefault_models_dirr8   8   s   € Ü�8Š8‹:˜Õ Ð r   Nc               ó$   € V ^8„  d   QhRRRRRR/# )r   Úvariantr	   Ú
models_dirzstr | Path | Noner   r   r   )r    s   "r   r!   r!   <   s$   € ÷ )ñ )Øð)Ø(9ð)à	ñ)r   c                ót   € Ve   \        V4      P                  4       M	\        4       pW P                  ,          # r1   )r   Ú
expanduserr8   r   )r:   r;   Úroots   && r   Údefault_model_pathr?   <   s9   € ð
 Ò!ô 	ˆZÓ×#Ñ#Ô%äÓ!ð 	ð
 ×(Ñ(Õ(Ð(r   c               ó    € V ^8„  d   QhRRRR/# )r   Úvaluer
   r   ztuple[int, int]r   )r    s   "r   r!   r!   G   s   € ÷ 	ñ 	�cð 	˜oñ 	r   c                óü   € V P                  4       P                  R R4      p VP                  R^4      w  r#\        V4      p\        V4      p\        YER7       YE3#   \         d   p\	        RT : 24      ThRp?ii ; i)ô   Ã—ÚxzSize must be WIDTHxHEIGHT, got N)ÚwidthÚheight)r%   ÚreplaceÚsplitÚintr*   Úvalidate_dimensions)rA   Ú
normalizedÚwidth_sÚheight_srE   rF   r,   s   &      r   Ú
parse_sizerN   G   s‚   € Ø—‘“×&Ñ& t¨SÓ1€JðOØ&×,Ñ,¨S°!Ó4ÑˆÜ�G“ˆÜ�X“ˆô ˜eÕ3Øˆ=Ðøô ô OÜÐ:¸5¹)ÐDÓEÈ3ÐNûðOús   ¢*A ÁA;Á&A6Á6A;c               ó$   € V ^8„  d   QhRRRRRR/# )r   rE   rI   rF   r   ÚNoner   )r    s   "r   r!   r!   S   s&   € ÷ Oñ O #ð O¨sð O°tñ Or   c                ó¢   € R V 3RV33 FB  w  r#VR8  g   VR8”  d   \        V RV 24      hV^,          '       g   K4  \        V RV 24      h	  R# )rE   rF   é   i   z must be in [256, 2048], got z must be a multiple of 16, got N)r*   )rE   rF   ÚlabelrA   s   $$  r   rJ   rJ   S   sa   € Ø! 5Ð)¨H°fÐ+=Ó>‰ˆØ�3Œ;˜% $œ,Ü ˜wÐ&CÀEÀ7ÐKÓLÐLØ�2�:Ž:Ü ˜wÐ&EÀeÀWÐMÓNÐNó	 ?r   )Úbonsaizbonsai-ternaryr   zternary-mlxzbonsai-ternary-mlxr   z)prism-ml/bonsai-image-ternary-4b-mlx-2bit)r   r1   )Ú__conditional_annotations__Ú
__future__r   Údataclassesr   Úpathlibr   r	   r   r   Úvaluesr   r&   r.   r3   r8   r?   rN   rJ   )r:   ÚaliasrU   s   00@r   Ú<module>r[      s´   øðß "Ð "å !Ý ñ �$˜dÔ#÷ð ó $ðð ‰}Øð
ð <Ø4Øôð&€Ð
"ó ð& #+§/¡/Ô"3ôÙ"3�wÇÄ¸ˆ7‚NÁ�EÑ"3ò€÷

õõ!÷)õ	÷Oùócs   ÁB 