+
    TV-jC/  ã                  ó¤  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	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 ^RIHt ^R	IHtHtHt ^R
IHtHtHt ]! R4      t R/t!RRRRRRRRRRRRRRRRR^RRRR/R R llt"]]RRRRRR^RR3R R llt#R R lt$R R  lt%R! R" lt&R# R$ lt'R% R& lt(R' R( lt)R) R* lt*R+ R, lt+R- R. lt,R# )0é    )ÚannotationsN)ÚPath)ÚAnyÚIterableÚIteratorÚOptionalÚTypeVarÚUnion)Útqdm)Ú
load_model)Únormalize_for_wer)ÚSTTEvalSample)ÚDEFAULT_DATASET_REPOÚDEFAULT_REVISIONÚiter_seed_tts_english_samples)Ú	WERResultÚaggregate_werÚcompute_werÚTÚdataset_revisionÚdataset_splitÚexpected_countÚsummary_metadataÚlimitÚlanguageÚ
gen_kwargsÚskip_existingFÚdataset_batch_sizeÚmetricsÚverbosec                óX   € V ^8„  d   QhRRRRRRRRR	R
RR
RRRRRRRR
RRRRRRRRRRRR/# )é   ÚmodelúUnion[str, nn.Module]ÚsampleszIterable[STTEvalSample]Ú
output_dirú
str | PathÚdataset_nameÚstrr   úOptional[str]r   r   úOptional[int]r   úOptional[dict[str, Any]]r   r   r   r   Úboolr   Úintr   úOptional[Iterable[str]]r    Úreturnúdict[str, Any]© )Úformats   "Új/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_audio/stt/eval/runner.pyÚ__annotate__r5      sº   € ÷ Bñ BØ ðBà$ðBð ðBð
 ðBð $ðBð !ðBð "ðBð /ðBð ðBð ðBð )ðBð ðBð ðBð %ðBð  ð!Bð" ñ#Bó    c               ó”  € V^8  d   \        R4      h\        V4      p\        V4      pVP                  RRR7       VR,          p\	        V \
        4      '       d   T MV P                  P                  p\	        V \
        4      '       d   \        V 4      MT pT
;'       g    / pV'       d   \        V4      M/ p. p. p^ pRpV'       g   \        VRRR7      pM\        VR	RR7      p \        W4      pTpVf   TpMVe   \        VV4      p\        VVRRR7      p\        VV4       EFý  pV EFâ  pV'       d‡   VP                  V9   dv   VVP                  ,          pVP!                  V4       VP!                  \#        V4      4       T\%        VP'                  RR4      ;'       g    R4      ,          pV^,          pK’  \(        P*                  ! 4       p  \-        VVP.                  V	VVR7      p!\(        P*                  ! 4       T ,
          p"TT",          p\5        TP6                  4      p#\5        T!4      p$\9        T#T$4      p%TP!                  T%4       RTP                  R\        TP.                  4      RTP:                  RTP6                  RT!RT#RT$/T%P=                  4       CRT"R\?        TP.                  4      R\A        TPB                  4      /CpTP!                  T4       TPE                  \F        PH                  ! TRR7      R,           4       EKå  	  VP3                  4        EK   	  VPK                  4        V'       g   \M        R4      h\N        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       d   \M        R4      h\Q        V4      p&\S        R V 4       4      p'R \        V4      R!VR"VR#VR$\U        V4      R%VR&VR'VR(VR)V	/
V&CR*TR+T'R,V''       d
   VV',          MR
/Cp(V'       d   V(PW                  V4       \Y        VV(4       V(#   \0         d    TP3                  4        h i ; i  TPK                  4        i ; i)-é   z&dataset_batch_size must be at least 1.T)ÚparentsÚexist_okzpredictions.jsonlg        Úwúutf-8©ÚencodingÚaNzSTT WERÚutt)ÚtotalÚdescÚunitÚwall_time_sec)Ú	model_objÚ
audio_pathr   r   r    Úutt_idrF   Úsource_pathÚ	referenceÚ
hypothesisÚreference_normalizedÚhypothesis_normalizedÚaudio_duration_secÚmetadataF)Úensure_asciiÚ
z#No Seed-TTS samples were evaluated.c              3  óN   "  € T F  qP                  R R4      '       * x € K  	  R# 5i)rL   Ú N)Úget©Ú.0Úrecords   & r4   Ú	<genexpr>Ú#run_stt_wer_eval.<locals>.<genexpr>�   s    é € Ð
MÁW¸6�z‰zÐ1°2Ó6×6Ñ6ÃWùs   ‚#%z All model hypotheses were empty.c              3  óp   "  € T F,  pVP                  R 4      f   K  \        VR ,          4      x € K.  	  R# 5i)rM   N)rS   ÚfloatrT   s   & r4   rW   rX   …   s4   é € ð áˆFØ�:‰:Ð*Ó+ô 	,ŒˆfÐ)Õ*×+Ð+Ûùs   ‚6œ6r#   r(   r   r   Únum_samplesÚnum_skippedr   r   Úgeneration_kwargsr   Útotal_wall_time_secÚtotal_audio_duration_secÚrtf)-Ú
ValueErrorÚ_validate_metricsr   ÚmkdirÚ
isinstancer)   Ú	__class__Ú__name__r   Ú_load_existing_predictionsÚopenÚ_limit_iterableÚminr   Ú_batchedrG   ÚappendÚ_wer_result_from_recordrZ   rS   ÚtimeÚperf_counterÚ_transcribe_samplerF   Ú	ExceptionÚflushr   Úreference_textr   rH   Úto_dictÚ_wav_duration_secondsÚdictrN   ÚwriteÚjsonÚdumpsÚcloseÚRuntimeErrorÚallr   ÚsumÚlenÚupdateÚ_write_summary))r#   r%   r&   r(   r   r   r   r   r   r   r   r   r   r   r    Úoutput_pathÚpredictions_pathÚmodel_idrE   Úgenerate_kwargsÚexistingÚrecordsÚwer_resultsÚskippedÚtotal_wall_timeÚpredictions_fileÚsample_iterablerA   ÚprogressÚbatchÚsamplerV   ÚstartedrJ   Ú	wall_timerK   rL   Ú
wer_resultÚ
aggregatesÚaudio_duration_totalÚsummarys)   &&&$$$$$$$$$$$$                          r4   Úrun_stt_wer_evalr•      s  € ð$ ˜AÔÜÐAÓBÐBÜ Ó(€Gä�zÓ"€KØ×Ñ˜d¨TÐÔ2Ø"Ð%8Õ8Ðä" 5¬#×.Ò.‰u°E·O±O×4LÑ4L€HÜ%/°´s×%;Ò%;”
˜5Ô!À€IØ ×&Ð& B€Oß?LÔ)Ð*:Ô;ÐRT€Hà$&€GØ#%€KØ€GØ€OçÜÐ 0°#ÀÔHÑäÐ 0°#ÀÔHÐð7!Ü)¨'Ó9ˆØˆØŠ=Ø‰EØÒÜ˜˜uÓ%ˆEÜ˜¨u¸9È5ÔQˆÜ˜hÐ(:×;ˆEÜ�ß  V§]¡]°hÔ%>Ø% f§m¡mÕ4�FØ—N‘N 6Ô*Ø×&Ñ&Ô'>¸vÓ'FÔGØ#¤u¨V¯Z©Z¸ÈÓ-M×-TÐ-TÐQTÓ'UÕU�OØ˜q•L�GÙä×+Ò+Ó-�ð
Ü!3Ø"+Ø#)×#4Ñ#4Ø!)Ø#2Ø 'ô"�Jô !×-Ò-Ó/°'Õ9�	Ø 9Õ,�ä'8¸×9NÑ9NÓ'OÐ$Ü(9¸*Ó(EÐ%Ü(Ð)=Ð?TÓU�
Ø×"Ñ" :Ô.ð ˜fŸm™mØ ¤# f×&7Ñ&7Ó"8Ø! 6×#5Ñ#5Ø ×!6Ñ!6Ø  *Ø*Ð,@Ø+Ð-Bðð !×(Ñ(Ó*ðð $ YØ(Ô*?À×@QÑ@QÓ*RØ¤ V§_¡_Ó 5ñ�ð —‘˜vÔ&Ø ×&Ñ&¤t§z¢z°&ÀuÔ'MÐPTÕ'T×UñW  ðX ×"Ñ"×$ñ[ <ð^ 	×ÑÔ çÜÐ@ÓAÐAç
ƒsÑ
MÁWÓ
M‡s‡s‚sÑ
MÁWÓ
M×MÒMÜÐ=Ó>Ð>ä˜{Ó+€JÜñ áóó Ðð 	”�X“Ø˜ØÐ,Ø˜Ø”s˜7“|Ø�wØÐ0Ø�7Ø˜_Ø�Hðð ðð 	˜Ø"Ð$8Ø×9MˆÐ!5Ö5ÐSWñ€G÷  Ø�‰Ð'Ô(ä�; Ô(Ø€Nøô} !ô Ø$×*Ñ*Ô,Øðûð8 	×ÑÕ ús,   Ã%B>P5 Æ$-P5 ÇPÇ,D:P5 ÐP2Ð2P5 Ð5QTc               óP   € V ^8„  d   QhRRRRRRRRRR	R
RRRRRRRRRRRRRRRRR/# )r"   r#   r$   r&   r'   Údataset_repor)   Úrevisionr   r+   r   r*   r   r,   r   r-   Úfail_on_missing_audioÚaudio_cache_dirzOptional[str | Path]r   r.   r   r/   r    r0   r1   r2   )r3   s   "r4   r5   r5   ¡   s”   € ÷ -ñ -Ø ð-àð-ð ð-ð ð	-ð
 ð-ð ð-ð )ð-ð ð-ð  ð-ð *ð-ð ð-ð %ð-ð ð-ð ñ-r6   c                ó®   € \        V4      pV	'       d   \        V	4      MVR ,          p\        VVVVVR7      p\        V VVRVRVRVRRRR/VVVV
VVR	7      # )
zaudio-cache)r—   r˜   rš   r   r™   zseed-ttszen/standardr—   ÚlocaleÚenÚsetÚstandard)r#   r%   r&   r(   r   r   r   r   r   r   r   r   r   r    )r   r   r•   )r#   r&   r—   r˜   r   r   r   r   r™   rš   r   r   r    r�   Úaudio_cache_pathr%   s   &&&&&&&&&&&&&   r4   Úrun_seed_tts_evalr¡   ¡   s‹   € ô �zÓ"€Kç!0Œˆ_Ô°kÀMÕ6Qð ô ,Ø!ØØ(ØØ3ô€Gô ØØØØØ!Ø#Øà˜LØ�dØ�:ð
ð
 ØØ#Ø-ØØô%ð r6   c               ó    € V ^8„  d   QhRRRR/# )r"   r   r/   r0   z	list[str]r2   )r3   s   "r4   r5   r5   Ñ   s   € ÷ +ñ +Ð6ð +¸9ñ +r6   c                ó�  € T ;'       g    R . Uu. uF  qP                  4       NK  	  ppV'       g   \        R4      h\        \        V4      \        \        4      ,
          4      pV'       d9   RP                  \        4      pRP                  V4      p\        RV RV R24      h\        \        P                  V4      4      # u upi )Úwerz&At least one metric must be requested.z, zUnsupported metric(s): z. Supported: Ú.)	Úlowerra   Úsortedrž   ÚSUPPORTED_METRICSÚjoinÚlistrv   Úfromkeys)r   ÚmetricÚ
normalizedÚunsupportedÚ	supportedÚ	requesteds   &     r4   rb   rb   Ñ   s§   € Ø07×0BÐ0B¸E¸7Ð0BÓDÑ0B V—,‘,–.Ñ0B€JÐDßÜÐAÓBÐBäœ˜Z›¬3Ô/@Ó+AÕAÓB€KßØ—I‘IÔ/Ó0ˆ	Ø—I‘I˜kÓ*ˆ	ÜÐ2°9°+¸]È9È+ÐUVÐWÓXÐXä”—‘˜jÓ)Ó*Ð*ùò Es   �Cc               ó$   € V ^8„  d   QhRRRRRR/# )r"   ÚiterableúIterable[T]r   r+   r0   zIterator[T]r2   )r3   s   "r4   r5   r5   ß   s!   € ÷ ñ ˜kð °-ð ÀKñ r6   c              #  óX   "  € \        V 4       F  w  r#Ve
   W!8¼  d    R # Vx € K  	  R # 5i©N)Ú	enumerate)r²   r   ÚindexÚitems   &&  r4   ri   ri   ß   s(   é € Ü  Ö*‰ˆØÒ ¤ÚØŒ
ó +ùs   ‚(*c               ó$   € V ^8„  d   QhRRRRRR/# )r"   r²   r³   Ú
batch_sizer.   r0   zIterator[list[T]]r2   )r3   s   "r4   r5   r5   æ   s"   € ÷ ñ �{ð °ð Ð8Iñ r6   c              #  ó’   "  € . pV  F,  pVP                  V4       \        V4      V8¼  g   K&  Vx € . pK.  	  V'       d   Vx € R # R # 5irµ   )rl   r~   )r²   rº   r�   r¸   s   &&  r4   rk   rk   æ   sE   é € Ø€EÛˆØ�‰�TÔÜˆu‹:˜Ö#ØŠKØŠEñ	 ÷
 ØŒñ ùs   ‚&A­A¿Ac               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r"   rE   z	nn.ModulerF   r   r   r*   r   r1   r    r-   r0   r)   r2   )r3   s   "r4   r5   r5   ñ   sD   € ÷ !ñ !Øð!àð!ð ð!ð ð	!ð
 ð!ð 	ñ!r6   c                óV  € \         P                  ! V P                  4      p\        V4      pVe   W&R&   RVP                  9   d   WFR&   VP                  4        UUu/ uF  w  rxWuP                  9   g   K  WxbK  	  pppV P                  ! \        V4      3/ VB p	\        V	4      # u uppi )Nr   r    )ÚinspectÚ	signatureÚgeneraterv   Ú
parametersÚitemsr)   Ú_extract_text)
rE   rF   r   r   r    r¿   Úcall_kwargsÚkÚvÚresults
   &&&&&     r4   rp   rp   ñ   s¢   € ô ×!Ò! )×"4Ñ"4Ó5€IÜ�zÓ"€KØÒØ"*�JÑØ�I×(Ñ(Ô(Ø!(�IÑØ$/×$5Ñ$5Ô$7ÔUÑ$7™D˜A¸1×@TÑ@TÑ;T”4�1’4Ñ$7€KÑUà×Ò¤ J£Ñ?°;Ñ?€FÜ˜Ó Ð ùó Vs   ÁB%Á5B%c               ó    € V ^8„  d   QhRRRR/# )r"   rÇ   r   r0   r)   r2   )r3   s   "r4   r5   r5     s   € ÷ ñ ˜#ð  #ñ r6   c                ó8  € \        V R 4      '       d$   \        V P                  4      P                  4       # \	        V \        4      '       d   V P                  4       # \	        V \
        4      '       d(   R V 9   d!   \        V R ,          4      P                  4       # \        P                  ! V 4      '       g   \        V R4      '       d½   . pV  F•  p\        VR 4      '       d'   VP                  \        VP                  4      4       K;  \	        V\
        4      '       d+   R V9   d$   VP                  \        VR ,          4      4       K{  VP                  \        V4      4       K—  	  RP                  V4      P                  4       # \        V 4      P                  4       # )ÚtextÚ__iter__rR   )
Úhasattrr)   rÊ   Ústriprd   rv   r¾   Úisgeneratorrl   r©   )rÇ   Úpartsr¸   s   &  r4   rÃ   rÃ     s  € Üˆv�v×ÒÜ�6—;‘;Ó×%Ñ%Ó'Ð'Ü�&œ#×ÒØ�|‰|‹~ÐÜ�&œ$×Ò F¨fÔ$4Ü�6˜&•>Ó"×(Ñ(Ó*Ð*Ü×Ò˜6×"Ò"¤g¨f°j×&AÒ&AØˆÛˆDÜ�t˜V×$Ò$Ø—‘œS §¡›^Ö,Ü˜D¤$×'Ò'¨F°d¬NØ—‘œS  f¥Ó.Ö/à—‘œS ›YÖ'ñ ð �w‰w�u‹~×#Ñ#Ó%Ð%Üˆv‹;×ÑÓÐr6   c               ó    € V ^8„  d   QhRRRR/# )r"   r‚   r   r0   zdict[str, dict[str, Any]]r2   )r3   s   "r4   r5   r5     s   € ÷ ñ °ð Ð:Sñ r6   c                ó^  € V P                  4       '       g   / # / p\        V R RR7      ;_uu_ 4       pV FY  pVP                  4       '       g   K  \        P                  ! V4      pVP                  R4      pV'       g   KL  WA\        V4      &   K[  	  RRR4       V#   + '       g   i     T# ; i)Úrr<   r=   rG   N)Úexistsrh   rÍ   rx   ÚloadsrS   r)   )r‚   r†   rŠ   ÚlinerV   rG   s   &     r4   rg   rg     s�   € Ø×"Ñ"×$Ò$Øˆ	à)+€GÜ	Ð ¨g×	6Õ	6Ð:JÛ$ˆDØ—:‘:—<’<ÙÜ—Z’Z Ó%ˆFØ—Z‘Z Ó)ˆFß‰vØ'-œ˜F›Ó$ñ %÷ 
7ð €N÷ 
7Ö	6ð €Nús   ±A
BÂ BÂB,	c               ó    € V ^8„  d   QhRRRR/# )r"   rV   r1   r0   r   r2   )r3   s   "r4   r5   r5   (  s   € ÷ ñ  Nð °yñ r6   c                óä   € \        \        V R ,          4      \        V R,          4      \        V R,          4      \        V R,          4      \        V R,          4      \        V R,          4      R7      # )ÚsubstitutionsÚ	deletionsÚ
insertionsÚreference_tokensÚhypothesis_tokensr¤   )rØ   rÙ   rÚ   rÛ   rÜ   r¤   )r   r.   rZ   )rV   s   &r4   rm   rm   (  s^   € ÜÜ˜& Õ1Ó2Ü�f˜[Õ)Ó*Ü�v˜lÕ+Ó,Ü˜VÐ$6Õ7Ó8Ü˜fÐ%8Õ9Ó:Ü�&˜•-Ó ôð r6   c               ó    € V ^8„  d   QhRRRR/# )r"   Úpathr   r0   zOptional[float]r2   )r3   s   "r4   r5   r5   3  s   € ÷ ñ  ð ¨ñ r6   c                ó  €  \         P                  ! \        V 4      R 4      ;_uu_ 4       pVP                  4       pVP	                  4       pV'       d	   W#,          MRuuRRR4       #   + '       g   i     R# ; i  \
         d     R# i ; i)ÚrbN)Úwaverh   r)   Ú
getnframesÚgetframeraterq   )rÞ   Úwav_fileÚframesÚsample_rates   &   r4   ru   ru   3  sf   € ðÜ�YŠY”s˜4“y $×'Ô'¨8Ø×(Ñ(Ó*ˆFØ"×/Ñ/Ó1ˆKß+6�6Ö'¸D÷ (×'×'Ó'ûô ô Úðús.   ‚(A; ª2A'Á
A; Á'A8	Á2A; Á8A; Á;B
Â	B
c               ó$   € V ^8„  d   QhRRRRRR/# )r"   r�   r   r”   r1   r0   ÚNoner2   )r3   s   "r4   r5   r5   =  s!   € ÷ ?ñ ? ð ?¨~ð ?À$ñ ?r6   c                óè  € \        V R ,          RRR7      ;_uu_ 4       p\        P                  ! WR^R7       VP                  R4       RRR4       \        V R,          RRR7      ;_uu_ 4       pVP                  R	VR
,           R24       VR,          pVP	                  R4      '       d
   VR,          pVP	                  R4      '       d   V RVR,           2pVP                  RV R24       VP                  RVR,           R24       VP                  RVR,          ^d,          R R24       VP                  RVR,          ^d,          R R24       VP                  RVR,          ^d,          R RVR,          ^d,          R RVR,          ^d,          R R24       VR,          e   VP                  RVR,          R R24       RRR4       R#   + '       g   i     ELŒ; i  + '       g   i     R# ; i)zsummary.jsonr;   r<   r=   F)rO   ÚindentrP   Nzsummary.txtzModel: r#   r(   r—   r   Ú@z	Dataset: z	Samples: r[   zWER micro: Ú	wer_microz.3fz%
zWER macro: Ú	wer_macrozSub/Del/Ins: Úsubstitution_ratez% / Údeletion_rateÚinsertion_rater`   zRTF: )rh   rx   Údumprw   rS   )r�   r”   Úsummary_fileÚdataset_labels   &&  r4   r€   r€   =  sØ  € Ü	ˆk˜NÕ*¨C¸'×	BÕ	BÀlÜ�	Š	�'°eÀAÕFØ×Ñ˜4Ô ÷ 
Cô 
ˆk˜MÕ)¨3¸×	AÕ	AÀ\Ø×Ñ˜W W¨WÕ%5Ð$6°bÐ9Ô:Ø Õ/ˆØ�;‰;�~×&Ò&Ø# NÕ3ˆMØ�;‰;Ð)×*Ò*Ø,˜o¨Q¨wÐ7IÕ/JÐ.KÐLˆMØ×Ñ˜Y } o°RÐ8Ô9Ø×Ñ˜Y w¨}Õ'=Ð&>¸bÐAÔBØ×Ñ˜[¨°Õ)=ÀÕ)CÀCÐ(HÈÐLÔMØ×Ñ˜[¨°Õ)=ÀÕ)CÀCÐ(HÈÐLÔMØ×ÑØØÐ*Õ+¨cÕ1°#Ð6°dØ�Õ'¨#Õ-¨cÐ2°$ØÐ'Õ(¨3Õ.¨sÐ3°3ð8ô	
ð �5�>Ò%Ø×Ñ  w¨u¥~°cÐ&:¸"Ð=Ô>÷% 
BÑ	A÷	 
C×	BÐ	Bú÷ 
B×	AÐ	Aús   ž+GÁ.AG ÃC7G ÇG	Ç G1	)r¤   )-Ú
__future__r   r¾   rx   rn   rá   Úpathlibr   Útypingr   r   r   r   r	   r
   Úmlx.nnÚnnr   Úmlx_audio.stt.utilsr   Ú	normalizer   Úschemar   Úseed_ttsr   r   r   r¤   r   r   r   r   r¨   r•   r¡   rb   ri   rk   rp   rÃ   rg   rm   ru   r€   r2   r6   r4   Ú<module>rý      s#  ðÝ "ã Û Û Û Ý ß D× Då Ý å *å (Ý !÷ñ ÷
 7Ñ 6áˆCƒL€ØÐ ðBð '+ðBð $(ðBð %)ðBð 26ðBð  ðBð #ðBð ,0ðBð  ðBð  ðBð (,ðBð  ÷!BðP -Ø$ØØ"Ø+/ØØ"&Ø,0ØØ'+Ø÷-õ`+õõõ!õ&õ(õ õ÷?r6   