+
    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 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^	tRtV 3R ltRt	V t
R# )ÚSliceConfigÚminicpmvéÀ  c                óJ   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   # )é   Ú
model_typeÚ
patch_sizeÚmax_slice_numsÚscale_resolution)ÚstrÚint)ÚformatÚ__classdict__s   "€Úo/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_vlm/models/minicpmo/config.pyÚ__annotate__ÚSliceConfig.__annotate__   s7   ø‡ ‚ áÑ ñ ñ Ññ ñ Ññ	 ñ
 Ñò ó    © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r   r   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__©r   s   @r   r	   r	      s!   ø‡ € à €JØ€JØ€NØÐ÷ ƒ r   r	   c                   ó^   a € ] tR t^t o RtRtRt^t^t^t	Rt
^tRtRtRtR tV 3R	 ltR
tV tR# )ÚVisionConfigÚsiglip_vision_modeli€  iÐ  r   Úgelu_pytorch_tanhg�íµ ÷Æ°>ç        c                ó:   € V P                   R 8X  d
   RV n         R# R# )Úsiglipr%   N©r   ©Úselfs   &r   Ú__post_init__ÚVisionConfig.__post_init__   s   € Ø�?‰?˜hÔ&Ø3ˆDŽOñ 'r   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&   # )r   r   Úhidden_sizeÚintermediate_sizeÚnum_hidden_layersÚnum_attention_headsÚnum_channelsÚ
image_sizer   Ú
hidden_actÚlayer_norm_epsÚattention_dropout©r   r   Úfloat)r   r   s   "€r   r   ÚVisionConfig.__annotate__   s’   ø‡ ‚ áÑ+ñ ñ Ññ ñ Ñ!ñ	 ñ
 Ññ ñ Ñ!ñ ñ Ññ ñ Ññ ñ Ññ ñ Ñ)ñ ñ Ñ ñ ñ Ñ"ò r   r*   N)r   r   r   r   r   r0   r1   r2   r3   r4   r5   r   r6   r7   r8   r-   r   r    r!   r"   s   @r   r$   r$      sL   ø‡ € à+€JØ€KØ!ÐØÐØ!ÐØ€LØ€JØ€JØ)€JØ €NØ"Ðò4÷ ƒ r   r$   c                   óB   a € ] tR t^#t o RtRtRtRtR tV 3R lt	Rt
V tR# )Ú
TextConfigNFÚsiluc                ó  € V P                   f   V P                  V n         V P                  f   RRR. RO/V n        R # RV P                  9  d>   RV P                  9   d+   V P                  P                  R4      V P                  R&   R # R # R # )NÚtypeÚdefaultÚmrope_sectionÚ	rope_type)é   é   rE   )Únum_key_value_headsr3   Úrope_scalingÚpopr+   s   &r   r-   ÚTextConfig.__post_init__5   s€   € Ø×#Ñ#Ò+Ø'+×'?Ñ'?ˆDÔ$à×ÑÒ$ð "(¨°OÂ\Ð RˆDÖØ˜4×,Ñ,Ô,°À×@QÑ@QÔ1QØ(,×(9Ñ(9×(=Ñ(=¸kÓ(JˆD×Ñ˜fÓ%ñ 2RÑ,r   c          
      ó2  <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[;R	&   S[;R
&   S[;R&   S[S[S[ S[S[S[ S[S[S[,          3,          3,          ,          ;R&   S[;R&   S[;R&   S[ ;R&   # )r   r   r0   r1   r2   r3   Úrms_norm_epsÚ
vocab_sizerF   Úhead_dimÚ
rope_thetaÚmax_position_embeddingsrG   Útie_word_embeddingsÚattention_biasr6   )r   r   r:   r   r   r   ÚboolÚlist)r   r   s   "€r   r   ÚTextConfig.__annotate__#   sè   ø‡ ‚ á�Oñ ñ Ññ ñ Ññ	 ñ
 Ññ ñ Ññ ñ Ññ ñ �Oñ ñ "¡#�Ñ&ñ ñ �Mñ ñ Ññ ñ !Ñ ñ ñ ™4¡¡U©5±#±t¹TÁ#½YÐ+FÕ%GÐ GÕHÕIÑPñ ñ Ñ%ñ ñ Ñ ñ ñ  Ñò! r   )rF   rG   )r   r   r   r   rG   rP   rQ   r6   r-   r   r    r!   r"   s   @r   r=   r=   #   s+   ø‡ € ð MQ€LØ %ÐØ €NØ€Jò
K÷% ƒ r   r=   c                   ó\   a € ] tR t^Bt o RtRt^t^tRt^Pt	Rt
RtRtRtRtRtV 3R ltR	tV tR
# )ÚAudioConfigÚwhisperi   i   iÜ  r'   Úgelugñhãˆµøä>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&   # )r   r   Úd_modelÚencoder_layersÚencoder_attention_headsÚencoder_ffn_dimÚnum_mel_binsÚmax_source_positionsÚdropoutr8   Úactivation_dropoutÚactivation_functionr7   r9   )r   r   s   "€r   r   ÚAudioConfig.__annotate__B   sŸ   ø‡ ‚ áÑñ ñ Ññ ñ Ññ	 ñ
 !Ñ%ñ ñ Ññ ñ Ññ ñ Ñ$ñ ñ Ññ ñ Ñ"ñ ñ Ñ#ñ ñ Ñ%ñ ñ Ñ ò r   r   N)r   r   r   r   r   rZ   r[   r\   r]   r^   r_   r`   r8   ra   rb   r7   r   r    r!   r"   s   @r   rV   rV   B   sM   ø‡ € à€JØ€GØ€NØ#%ÐØ€OØ€LØ $ÐØ€GØ"ÐØ #ÐØ%ÐØ €N÷ ƒ r   rV   c                   ó|   a € ] tR t^Rt o RtRt^@tRt^tRt	Rt
RtRt^t^tRtRtRtRtRt]R 4       tV 3R ltRtV tR# )	ÚModelConfigNÚminicpmor   Tg      ð?c                óÖ  € \        V\        4      '       d   TMR p\        V4      pVP                  RR 4      pV'       g0   0 RmpVP                  4        UUu/ uF  w  rVWT9   g   K  WVbK  	  pppVe   \        V4      VR&   \        P                  V4      p\        VP                  R/ 4      4      pVP                  R4      R8X  d   RVR&   Ve   \        V4      VR&   \        P                  V4      p	\        VP                  R/ 4      4      p
Ve   \        V
4      VR&   \        V
4      ^ 8”  d   \        P                  V
4      MR pVP                  RR 4      p\        V\        4      '       d   \        P                  V4      MTpT ! R	RVRV	RVRV/VP                  4        UUu/ uF.  w  rVV\        P                  ! V 4      P                  9   g   K,  WVbK0  	  uppB # u uppi u uppi )
NÚtext_configr   Úvision_configr)   r%   Úaudio_configÚslice_config>   rM   r6   r   rN   rL   r0   rK   rG   rQ   r1   r2   r3   rF   rP   rO   r   )Ú
isinstanceÚdictrH   Úitemsr=   Ú	from_dictÚgetr$   ÚlenrV   r	   ÚinspectÚ	signatureÚ
parameters)ÚclsÚparamsÚsource_paramsÚtext_paramsÚtext_fieldsÚkÚvrh   Úvision_paramsri   Úaudio_paramsrj   Úslice_paramsrk   s   &&            r   ro   ÚModelConfig.from_dictg   sæ  € ä",¨V´T×":Ò":™ÀˆÜ�f“ˆð —j‘j °Ó5ˆßòˆKð" -3¯L©L¬NÔO©N¡D A¸aÑ>Nœ4˜1š4©NˆKÑOØÒ$Ü+/°Ó+<ˆM˜-Ñ(Ü ×*Ñ*¨;Ó7ˆä˜VŸZ™Z¨¸Ó<Ó=ˆØ×Ñ˜\Ó*¨hÔ6Ø*?ˆM˜,Ñ'ØÒ$Ü-1°-Ó-@ˆM˜/Ñ*Ü$×.Ñ.¨}Ó=ˆä˜FŸJ™J ~°rÓ:Ó;ˆØÒ$Ü,0°Ó,>ˆM˜.Ñ)ä36°|Ó3DÀqÔ3HŒK×!Ñ! ,Ô/Èdð 	ð —z‘z .°$Ó7ˆô ˜,¬×-Ò-ô ×!Ñ! ,Ô/àð 	ñ ñ 

Ø#ð

à'ð

ð &ð

ð &ð	

ð #ŸL™LœNôá*‘D�AØœ×)Ò)¨#Ó.×9Ñ9Ñ9ô �’Ù*òñ

ð 
	
ùó5 Pùó>s   Á
GÁ&GÆ%)G%ÇG%c                ó2  <€ V ^8„  d   Qh/ S[ ;R&   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&   S[;R&   S[;R&   S[S[,          ;R&   S[S[	S[,          ,          ;R&   # )r   rh   ri   rj   r   Ú	query_numr5   r   Úinit_visionÚ
init_audioÚinit_ttsÚbatch_vision_inputÚvision_batch_sizeÚaudio_pool_stepÚaudio_chunk_lengthÚstream_inputÚ
slice_moderk   Úeos_token_id)
r=   r$   r   rV   r   r   rR   r:   r	   rS   )r   r   s   "€r   r   ÚModelConfig.__annotate__R   s   ø‡ ‚ áÑñ ñ  Ññ ñ ™;Õ'Ñ.ñ	 ñ
 Ñ ñ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ Ñ#ñ ñ Ññ ñ Ññ ñ Ñ#ñ ñ  Ññ! ñ" Ññ# ñ$ ™;Õ'Ñ.ñ% ñ& ™4¡�9Õ%Ñ,ò' r   r   )r   r   r   r   rj   r   r�   r5   r   r‚   rƒ   r„   r…   r†   r‡   rˆ   r‰   rŠ   rk   r‹   Úclassmethodro   r   r    r!   r"   s   @r   re   re   R   ss   ø‡ € ð +/€LØ €JØ€IØ€JØ€JØ€KØ€JØ€HØ#ÐØÐØ€OØ #ÐØ€LØ€JØ*.€LØ(,€Làñ=
ó ð=
÷- ƒ r   re   )rr   Údataclassesr   Útypingr   r   r   Úbaser   r	   r$   r=   rV   re   r   r   r   Ú<module>r‘      s¡   ðÛ Ý !ß (Ñ (å "ð ô �/ó  ó ð ð ô4�?ó 4ó ð4ð$ ôK�ó Kó ðKð< ô!�/ó !ó ð!ð ôR
�/ó R
ó òR
r   