ó
    >:j9Y ã                  ó–  • S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKrS SKJ	r	J
r
Jr  S SKJr  S SKJrJrJr  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJrJrJr  S SKrS SKrS SKJ r J!r!  S SKJ"r#  S SKJ$r%  S SK&J'r'J(r(  S SK)J*r*  S SKJ+r+  S SK,J-r-  S SKJ.r.  S SK/J0r0  S SK1J2r2  S SK3J4r4J5r5  S SK6J7r8  S SK9J:r:  S SK;J<r<  S SK=J>r>J?r?J@r@  \@" 5       (       a#  S SKAJBrBJCrCJDrDJErEJFrF   S SKAJGrH   S SKAJJrK   S SKAJLrM   S SKNJGrO   S SKPJQrQ   S SKPJSrS  \R¨                  " \U5      rV\(       a  S S KWJXrX  S S!KYJZrZ  S S"K[J\r\   " S# S$\.5      r]/ S%Qr^/ S&Qr_S.S' jr`S/S( jraS0S) jrbS1S* jrc\ " S+ S,\ 5      5       rdS2S- jreg! \I a    SrH N•f = f! \I a    SrK Nœf = f! \I a    SrM N£f = f! \I a    SrO Nªf = f! \I\R4 a    SrQ N³f = f! \I\R4 a    SrS N¼f = f)3é    )ÚannotationsN)ÚCounterÚUserDictÚdefaultdict)Úcopy)Ú	dataclassÚfieldÚfields)ÚPath)Úpython_version)Úpformat©Úindent)ÚTYPE_CHECKINGÚAnyÚLiteral)ÚCardDataÚ	ModelCard)Údataset_info)Ú
model_info)Ú
EvalResultÚeval_results_to_model_index)Ú	yaml_dump)Únn)Útqdm)ÚTrainerCallback)ÚCodeCarbonCallback)Úmake_markdown_table)ÚTrainerControlÚTrainerState©Ú__version__)Úformat_modality)ÚBaseTrainingArguments)ÚfullnameÚis_accelerate_availableÚis_datasets_available)ÚDatasetÚDatasetDictÚIterableDatasetÚIterableDatasetDictÚValue)ÚImage)ÚAudio)ÚVideo)ÚAudioDecoder)ÚVideoDecoder)ÚBaseEvaluator)Ú	BaseModel)ÚBaseTrainerc                  ó°   ^ • \ rS rSrSU 4S jjr            S	S jr          S
S jr            SS jr            SS jrSr	U =r
$ )ÚBaseModelCardCallbackéL   c                ó.   >• [         TU ]  5         Xl        g ©N)ÚsuperÚ__init__Údefault_args_dict)Úselfr<   Ú	__class__s     €Úb/home/mande/repo/quber/.venv/lib/python3.13/site-packages/sentence_transformers/base/model_card.pyr;   ÚBaseModelCardCallback.__init__M   s   ø€ Ü‰ÑÔØ!2Õó    c                ó¨  • UR                   R                  S5        UR                  R                   Vs/ s H  n[	        U[
        5      (       d  M  UPM     nnU(       a  US   UR                   l        UR                  (       aU  UR                   R                  UR                  UR                   R                  UR                  S5      UR                   l	        UR                  (       aU  UR                   R                  UR                  UR                   R                  UR                  S5      UR                   l        [        UR                  5      n	UR                   R                  U	5        UR                   R                  (       dC  UR                  =(       d    UR                  =n
(       a  UR                   R!                  U
5        g g g s  snf )NÚgenerated_from_trainerr   ÚtrainÚeval)Úmodel_card_dataÚadd_tagsÚcallback_handlerÚ	callbacksÚ
isinstancer   Úcode_carbon_callbackÚtrain_datasetÚextract_dataset_metadataÚtrain_datasetsÚlossÚeval_datasetÚeval_datasetsÚ
get_lossesÚ
set_lossesÚwidgetÚset_widget_examples)r=   ÚargsÚstateÚcontrolÚmodelÚtrainerÚkwargsÚcallbackrI   ÚlossesÚdatasets              r?   Úon_init_endÚ!BaseModelCardCallback.on_init_endQ   sm  € ð 	×Ñ×&Ñ&Ð'?Ô@ð &-×%=Ñ%=×%GÒ%Gó
Ú%G˜Ì:ÐV^Ô`r×Ks�HÑ%Gð 	ð 
ö Ø9BÀ1¹ˆE×!Ñ!Ô6ð × × Ø38×3HÑ3H×3aÑ3aØ×%Ñ% u×'<Ñ'<×'KÑ'KÈWÏ\É\Ð[bó4ˆE×!Ñ!Ô0ð ××Ø27×2GÑ2G×2`Ñ2`Ø×$Ñ$ e×&;Ñ&;×&IÑ&IÈ7Ï<É<ÐY_ó3ˆE×!Ñ!Ô/ô ˜GŸL™LÓ)ˆà×Ñ×(Ñ(¨Ô0ð ×$Ñ$×+×+¸G×<PÑ<P×<iÐT[×TiÑTiÐ1i°Õ1iØ×!Ñ!×5Ñ5°gÕ>ð 2jÐ+ùò-
s   ´GÁGc                óÂ  • 1 SknUR                  5       nUR                  5        VV	s0 s H  u  p‰X†;  d  M  X‰_M     sn	nUR                  l        UR                  5        VV	s0 s H3  u  p‰X†;  d  M  X€R                  ;   d  M  X�R                  U   :w  d  M1  X‰_M5     sn	nUR                  l        [        R                  " 5       UR                  l        g s  sn	nf s  sn	nf )N>   Údo_evalÚdo_testÚdo_trainÚrun_nameÚ	hub_tokenÚ	report_toÚ
eval_delayÚ
eval_stepsÚ
output_dirÚ
save_stepsÚlogging_dirÚeval_strategyÚlogging_stepsÚsave_strategyÚlogging_strategyÚsave_total_limitÚgreater_is_betterÚpush_to_hub_tokenÚsamples_per_labelÚshow_progress_barÚlogging_first_stepÚevaluation_strategyÚmetric_for_best_model)Úto_dictÚitemsrF   Úall_hyperparametersr<   Únon_default_hyperparametersÚtimeÚ_training_start_time)
r=   rV   rW   rX   rY   r[   Úignore_keysÚ	args_dictÚkeyÚvalues
             r?   Úon_train_beginÚ$BaseModelCardCallback.on_train_beginv   sÎ   € ò
ˆð2 —L‘L“Nˆ	à)2¯©Ô):ô5
Ú):™:˜3¸cÑ>T‹JˆCŠJÑ):ò5
ˆ×ÑÔ1ð
 (Ÿo™oÔ/ô=
â/‘
�ØÑ%ó à*-×1GÑ1GÑ*Gó àLQ×UkÑUkÐloÑUpÑLpó ˆCŠJÙ/ò=
ˆ×ÑÔ9ô
 6:·Y²Y³[ˆ×ÑÕ2ùó5
ùó=
s"   ¨C·CÁ#CÁ2CÂCÂCc                óº  • U Vs0 s HY  nUR                  S5      (       d  M  UR                  S5      (       d  M3  SR                  UR                  S5      SS  5      XW   _M[     nn[	        U5      S:X  a  SU;   a  SUS   0nSU;   a"  UR
                  =R                  US   -  sl        UR
                  R                  (       aS  UR
                  R                  S	   S
   UR                  :X  a)  UR
                  R                  S	   R                  U5        g UR
                  R                  R                  UR                  UR                  S.UE5        g s  snf )NÚeval_Ú_lossÚ Ú_é   rO   úValidation LossÚeval_runtimeéÿÿÿÿÚStep©ÚEpochrŽ   )Ú
startswithÚendswithÚjoinÚsplitÚlenrF   Úevaluation_durationÚtraining_logsÚglobal_stepÚupdateÚappendÚepoch)	r=   rV   rW   rX   rY   Úmetricsr[   r�   Ú	loss_dicts	            r?   Úon_evaluateÚ!BaseModelCardCallback.on_evaluate¢   s<  € ñ ó
â�Ø�~‰~˜g×&ó 7à+.¯<©<¸×+@ó 7ˆC�H‰H�S—Y‘Y˜s“^ A BÐ'Ó(¨'©,Ò6Ùð 	ð 
ô
 ˆy‹>˜QÓ 6¨YÓ#6Ø*¨I°fÑ,=Ð>ˆIØ˜WÓ$Ø×!Ñ!×5Ò5¸ÀÑ9PÑPÕ5ð ×!Ñ!×/×/Ø×%Ñ%×3Ñ3°BÑ7¸Ñ?À5×CTÑCTÓTà×!Ñ!×/Ñ/°Ñ3×:Ñ:¸9ÕEà×!Ñ!×/Ñ/×6Ñ6à"Ÿ[™[Ø!×-Ñ-ñð  ðõùò!
s   …E£E»*Ec                ó\  • SU;   a¦  UR                   R                  (       aJ  UR                   R                  S   S   UR                  :X  a   US   UR                   R                  S   S'   g UR                   R                  R                  UR                  UR                  US   S.5        g g )NrO   r�   rŽ   úTraining Loss)r�   rŽ   r¡   )rF   r—   r˜   rš   r›   )r=   rV   rW   rX   rY   Úlogsr[   s          r?   Úon_logÚBaseModelCardCallback.on_logÃ   s™   € ð �T‹>à×%Ñ%×3×3Ø×)Ñ)×7Ñ7¸Ñ;¸FÑCÀu×GXÑGXÓXàKOÐPVÉ<�×%Ñ%×3Ñ3°BÑ7¸ÒHà×%Ñ%×3Ñ3×:Ñ:à!&§¡Ø %× 1Ñ 1Ø)-¨f©ñõð rA   )r<   )r<   údict[str, Any]ÚreturnÚNone)rV   r$   rW   r    rX   r   rY   r3   rZ   r4   r¦   r§   )
rV   r$   rW   r    rX   r   rY   r3   r¦   r§   )rV   r$   rW   r    rX   r   rY   r3   rœ   údict[str, float]r¦   r§   )rV   r$   rW   r    rX   r   rY   r3   r¢   r¨   r¦   r§   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r;   r_   rƒ   rž   r£   Ú__static_attributes__Ú__classcell__)r>   s   @r?   r6   r6   L   s  ø† ÷3ð#?à#ð#?ð ð#?ð  ð	#?ð
 ð#?ð ð#?ð 
ô#?ðJ*Aà#ð*Að ð*Að  ð	*Að
 ð*Að 
ô*AðXà#ðð ðð  ð	ð
 ðð "ðð 
ôðBà#ðð ðð  ð	ð
 ðð ðð 
÷ò rA   r6   )ÚlanguageÚlicenseÚlibrary_nameÚtagsÚdatasetsrœ   Úpipeline_tagrT   úmodel-indexÚco2_eq_emissionsÚ
base_model)	rY   rZ   Úeval_results_dictÚsave_dirÚusage_examples_displayÚ_asset_cacheÚ_cached_dictr~   r–   c                 óÜ   • [        5       [        [        R                  [        R                  S.n [        5       (       a
  SSKJn  XS'   [        5       (       a
  SSKJn  X S'   SSK	Jn  X0S'   U $ )N)ÚpythonÚsentence_transformersÚtransformersÚtorchr   r!   Ú
accelerater³   Ú
tokenizers)
r   Úsentence_transformers_versionrÀ   r"   rÁ   r&   rÂ   r'   r³   rÃ   )ÚversionsÚaccelerate_versionÚdatasets_versionÚtokenizers_versions       r?   Úget_versionsrÉ   ö   s^   € ä Ó"Ü!>Ü$×0Ñ0Ü×"Ñ"ñ	€Hô × Ñ Ý@à!3�ÑÜ×ÑÝ<à/�ÑÝ<à/ˆ\Ñà€OrA   c                ót   • U S:  a  U S S3$ U S-  nUS:  a  US S3$ U S-  nUS:  a  US S3$ U S-  nUS S	3$ )
zZFormat a duration in seconds to a human-readable string, e.g. "23 minutes" or "1.6 hours".é<   z.1fz secondsz minutesi  é   z hoursi€Q z days© )ÚsecondsÚminutesÚhoursÚdayss       r?   Úformat_durationrÒ     sn   € à�ƒ|Ø˜#�˜hÐ'Ð'Ø˜‰l€GØ�ƒ|Ø˜#�˜hÐ'Ð'Ø�d‰N€EØˆrƒzØ˜�˜FÐ#Ð#Ø�U‰?€DØ�3ˆZ�uÐÐrA   c                óH   • [        U [        5      (       a  [        U S5      $ U $ )Né   )rJ   ÚfloatÚround©r‚   s    r?   Ú
format_logrØ     s    € Ü�%œ×ÑÜ�U˜A‹ÐØ€LrA   c                ó(  • [        U [        5      (       a  [        U R                  5       5      nOU /nSnU[	        U5      :  aÎ  X   n [        U S5      (       a+  U R                  U;  a  UR                  U R                  5        [        U S5      (       a+  U R                  U;  a  UR                  U R                  5        [        U S5      (       a+  U R                  U;  a  UR                  U R                  5        US-  nU[	        U5      :  a  MÎ  U$ )Nr   rO   Údocument_regularizerÚquery_regularizerrŠ   )
rJ   ÚdictÚlistÚvaluesr•   ÚhasattrrO   rš   rÚ   rÛ   )rO   r]   Úloss_idxs      r?   rR   rR      sã   € Ü�$œ×ÑÜ�d—k‘k“mÓ$‰à�ˆð €HØ
”S˜“[Ó
 ØÑˆÜ�4˜× Ñ  T§Y¡Y°fÓ%<Ø�M‰M˜$Ÿ)™)Ô$Ü�4Ð/×0Ñ0°T×5NÑ5NÐV\Ó5\Ø�M‰M˜$×3Ñ3Ô4Ü�4Ð,×-Ñ-°$×2HÑ2HÐPVÓ2VØ�M‰M˜$×0Ñ0Ô1Ø�A‰ˆð ”S˜“[Õ
 ð €MrA   c                  óä  • \ rS rSr% Sr\" \S9rS\S'   Sr	S\S'   Sr
S\S	'   SrS\S
'   \" \S9rS\S'   \" \S9rS\S'   SrS\S'   \" S S9rS\S'   SrS\S'   \" SS9rS\S'   \" SSS9rS\S'   \" SSS9rS\S'   \" \SS9rS\S'   \" \SS9rS\S'   \" \SS9rS \S!'   \" \SS9rS"\S#'   \" \SS9rS\S$'   \" SSS9rS%\S&'   \" SSSS'9rS%\S('   \" \SS9rS\S)'   \" SSS9rS*\S+'   \" SSS9rS,\S-'   \" S.SS9rS/\S0'   \" \SS9r S1\S2'   \" SSS9r!S3\S4'   \" SSSS'9r"S5\S6'   \" \SSS79r#S\S8'   \" SSSS'9r$S\S9'   \" SSS9r%S\S:'   \" S;SS9r&S<\S='   \" SSSS'9r'S\S>'   \" \SSS79r(S?\S@'   \" SSSS'9r)SA\SB'   \" SCSS9r*SD\SE'   \" SFSS9r+SD\SG'   \" \,SS9r-S1\SH'   \" \." \/5      R`                  SI-  SSS'9r1SJ\SK'   \" SSSS'9r2SL\SM'   SzSN jr3 S{     S|SO jjr4S}SP jr5S~SQ jr6SSR jr7S€SS jr8SzST jr9\:S�SU j5       r;\:S‚SV j5       r<SƒS„SW jjr= S…         S†SX jjr>S‡SY jr?S{SˆSZ jjr@        S‰S[ jrA          SŠS\ jrBS‹S] jrCSŒS^ jrDS{S�S_ jjrESŽS` jrFS�Sa jrGS�Sb jrHSzSc jrIS‘Sd jrJSe rK\:S’Sf j5       rL\:S“Sg j5       rMSzSh jrNS”Si jrOS•Sj jrPS–Sk jrQS—S˜Sl jjrRS™Sm jrSSšSn jrT\:S›So j5       rUS›Sp jrVSœSq jrWS�Sr jrXS‘Ss jrYSžSt jrZS‘Su jr[S”Sv jr\S‘Sw jr]S{S”Sx jjr^Syr_g)ŸÚBaseModelCardDatai4  aë  A dataclass storing data used in the model card.

Args:
    language (`Optional[Union[str, List[str]]]`): The model language, either a string or a list,
        e.g. "en" or ["en", "de", "nl"]
    license (`Optional[str]`): The license of the model, e.g. "apache-2.0", "mit",
        or "cc-by-nc-sa-4.0"
    model_name (`Optional[str]`): The pretty name of the model.
    model_id (`Optional[str]`): The model ID when pushing the model to the Hub.
    train_datasets (`List[Dict[str, str]]`): A list of the names and/or Hugging Face dataset IDs of the training datasets.
        e.g. [{"name": "SNLI", "id": "stanfordnlp/snli"}, {"name": "MultiNLI", "id": "nyu-mll/multi_nli"}, {"name": "STSB"}]
    eval_datasets (`List[Dict[str, str]]`): A list of the names and/or Hugging Face dataset IDs of the evaluation datasets.
        e.g. [{"name": "SNLI", "id": "stanfordnlp/snli"}, {"id": "mteb/stsbenchmark-sts"}]
    task_name (`str`): The human-readable task the model is trained on.
    tags (`Optional[List[str]]`): A list of tags for the model.
    local_files_only (`bool`): If True, don't attempt to find dataset or base model information on the Hub.
        Defaults to False.
    generate_widget_examples (`bool`): If True, generate widget examples from the evaluation or training dataset,
        and compute their similarities. Defaults to True.

.. tip::

    Install `codecarbon <https://github.com/mlco2/codecarbon>`_ to automatically track carbon emission usage and
    include it in your model cards.
)Údefault_factoryzstr | list[str] | Noner¯   Nú
str | Noner°   Ú
model_nameÚmodel_idúlist[dict[str, str]]rN   rQ   Ú	retrievalÚ	task_namec                 ó
   • / SQ$ )N)úsentence-transformersúsentence-similarityzfeature-extractionrÍ   rÍ   rA   r?   Ú<lambda>ÚBaseModelCardData.<lambda>Y  s   € ó !
rA   ú	list[str]r²   FÚboolÚlocal_files_onlyT)ÚdefaultÚgenerate_widget_examples)rò   Úinitr·   Úbase_model_revision)rã   rô   r¥   r|   r{   z*dict[BaseEvaluator, dict[str, Any]] | Noner¸   zlist[dict[str, float]]r—   rT   zlist | NoneÚusage_examples)rò   rô   Úreprrº   Úlabel_example_listzCodeCarbonCallback | NonerK   zfloat | Noner~   g        rÕ   r–   údict[str, str]Ú	citationsú
int | NoneÚbest_model_stepúbool | NoneÚir_model)rã   rô   r÷   r³   ÚsimilaritiesÚ
first_saver�   ÚintÚwidget_stepr¹   rÜ   r»   zdict | Noner¼   rì   Ústrr´   rë   r±   Úversionzmodel_card_template.mdr   Útemplate_pathzBaseModel | NonerY   c                ó   • [        U R                  [        5      (       a  U R                  /U l        U R                  U R                  5      U l        U R                  U R
                  5      U l        U R                  (       aL  U R                  R                  S5      S:w  a,  [        R                  SU R                  < S35        S U l        g g g )NÚ/rŠ   zThe provided z} model ID should include the organization or user, such as "tomaarsen/mpnet-base-nli-matryoshka". Setting `model_id` to None.)
rJ   r¯   r  Úvalidate_datasetsrN   rQ   ræ   ÚcountÚloggerÚwarning©r=   s    r?   Ú__post_init__ÚBaseModelCardData.__post_init__†  s£   € ä�d—m‘m¤S×)Ñ)Ø!Ÿ]™]˜OˆDŒMà"×4Ñ4°T×5HÑ5HÓIˆÔØ!×3Ñ3°D×4FÑ4FÓGˆÔà�=�=˜TŸ]™]×0Ñ0°Ó5¸Ó:Ü�N‰NØ §¡Ñ0ð 1^ð ^ôð !ˆD�Mð ;ˆ=rA   c                óâ  • Uc  U R                   (       + n/ nU GH!  nSU;  a  SU;   a  US   US'   SU;   aò  U R                  (       dá   [        US   5      nUR                  (       a‚  U(       a{  SUR                  ;   ak  UR                  R	                  S5      nUbM  [        U[        5      (       a  U/nU H/  nXpR                   ;  d  M  U R                   R                  U5        M1     UR                  U R                  ;  a%  U R                  R                  UR                  5        UR                  U5        GM$     U$ ! [         a#    [        R                  SUS   < S35        US	  NDf = f)aá  
Validate (i.e. check if the dataset IDs exist on the Hub) and process a list of dataset dictionaries.

Args:
    dataset_list (list[dict[str, Any]]): List of dataset metadata dictionaries.
    infer_languages (bool | None, optional): Whether to infer languages from the dataset information.
        If None (default), languages will be inferred only if `self.language` is empty.

Returns:
    list[dict[str, Any]]: The validated and possibly updated list of dataset dictionaries.
ÚnameÚidr¯   zThe dataset `id` z5 does not exist on the Hub. Setting the `id` to None.)r¯   rñ   Úget_dataset_infoÚcardDataÚgetrJ   r  rš   r  r³   Ú	Exceptionr
  r  )r=   Údataset_listÚinfer_languagesÚoutput_dataset_listr^   ÚinfoÚdataset_languager¯   s           r?   r  Ú#BaseModelCardData.validate_datasets•  sH  € ð Ñ"à"&§-¡-Ô/ˆOØ ÐÜ#ˆGØ˜WÓ$Ø˜7“?Ø&-¨d¡m�G˜F‘Oà�w‹ t×'<×'<ð6Ü+¨G°D©MÓ:�Dð —}—}®¸ZÈ4Ï=É=Ó=XØ+/¯=©=×+<Ñ+<¸ZÓ+HÐ(Ø+Ñ7Ü)Ð*:¼C×@Ñ@Ø4DÐ3EÐ 0Û,< Ø#+·=±=Õ#@Ø$(§M¡M×$8Ñ$8¸Ö$Bñ -=ð
 —w‘w d§m¡mÓ3ØŸ™×,Ñ,¨T¯W©WÔ5à×&Ñ& w×/ñ9 $ð: #Ð"øô) !ó &Ü—N‘NØ+¨G°D©MÑ+<Ð<qÐrôð   šð	&ús   Á	EÅ*E.Å-E.c                ó  • SS0nU H&  n UR                   X#R                  R                  '   M(     [	        [
        5      nUR                  5        H  u  p5XE   R                  U5        M     SS jnUR                  5        VVs0 s H  u  pQU" U5      U_M     snnU l        U R                  W Vs0 s H  o3R                  R                  U_M     sn Vs/ s H  nSU 3PM
     sn5        g ! [         a     Mó  f = fs  snnf s  snf s  snf )NzSentence Transformersa¨  
@inproceedings{reimers-2019-sentence-bert,
    title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
    author = "Reimers, Nils and Gurevych, Iryna",
    booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
    month = "11",
    year = "2019",
    publisher = "Association for Computational Linguistics",
    url = "https://arxiv.org/abs/1908.10084",
}
c                ód   • [        U 5      S:”  a  SR                  U S S 5      S-   U S   -   $ U S   $ )NrŠ   ú, r�   z and r   )r•   r“   )r]   s    r?   Ú	join_listÚ/BaseModelCardData.set_losses.<locals>.join_listÝ  s:   € Ü�6‹{˜Q‹Ø—y‘y ¨¨ Ó-°Ñ7¸&À¹*ÑDÐDØ˜!‘9ÐrA   zloss:)r]   rï   r¦   r  )
Úcitationr>   r©   r  r   rÝ   rz   rš   rú   rG   )r=   r]   rú   rO   Úinverted_citationsr!  r  s          r?   rS   ÚBaseModelCardData.set_lossesÆ  s  € à#ð 
&ð
ˆ	ó ˆDðØ59·]±]�	Ÿ.™.×1Ñ1Ó2ñ ô
 )¬Ó.ÐØ'Ÿo™oÖ/‰NˆDØÑ(×/Ñ/°Ö5ñ 0ô	ð
 Oa×NfÑNfÔNhÔiÒNhÑ:J¸(™) FÓ+¨XÒ5ÑNhÒiˆŒØ�‰Ñ]cÓ2dÒ]cÐUY·>±>×3JÑ3JÈDÒ3PÑ]cÒ2dÓeÒ2d¨$˜˜t˜f“~Ñ2dÑeÕføô ó Úðüó jùÚ2dùÒes#   ‹"C-ÂC>Â1 DÃD	Ã-
C;Ã:C;c                ó   • Xl         g r9   )rü   )r=   Ústeps     r?   Úset_best_model_stepÚ%BaseModelCardData.set_best_model_stepå  s   € Ø#ÕrA   c                ó.  • [        U[        [        45      (       a  g [        U[        5      (       a	  [	        US9n/ U l        [        [        R                  " [        UR                  5       5      SS95      nSn[        UR                  5       SSSS9 GH  u  pE[        X   [        5      (       a  M  X   R                  R                  5        VVs/ s HE  u  pg[        U[        5      (       d)  [        U[        5      (       d  M1  UR                   S	;   d  MC  UPMG     nnnX   R#                  U5      n	[%        U	5      n
U
S
:X  a  M³  0 n['        U	R)                  [        R*                  " [-        U
5      [/        X:5      S95      5       H'  u  pÍ[1        S UR                  5        5       5      X¼'   M)     [3        [5        UR                  5       S S96 u  pïUS U [        XåS  S S S2   5      nnU GH¹  nXœ   R                  5        VVs/ s H  u  nnUS:w  d  M  UPM     nnn[%        U5      S:  a”  U(       a�  UR7                  5       nU	U   R                  5        VVs/ s H  u  nnUS:w  d  M  UPM     nnn[%        U5      S:X  a  UR9                  U5        OUR;                  US   5        [%        U5      S:  a	  U(       a  M�  [%        U5      S:  a  Mç  U Vs/ s H6  n[        U[        5      (       a  [        UR=                  5       5      S
   OUPM8     nnU R>                  S:X  aD  U R
                  R;                  US
   [        R*                  " USS  [%        U5      S-
  S9S.5        O1U R
                  R;                  S[        R@                  " U5      05        US S U l!        GM¼     GM     U RD                  (       a>  [G        S U RD                  RH                   5       5      (       a  U RK                  U5        g g g s  snnf s  snnf s  snnf s  snf )N)r^   é   )Úkéè  zComputing widget examplesÚexampleF)ÚdescÚunitÚleave>   ÚstringÚlarge_stringr   c              3  óL   #   • U  H  u  pUS :w  d  M  [        U5      v •  M     g7f)Údataset_nameN)r•   ©Ú.0r�   r‚   s      r?   Ú	<genexpr>Ú8BaseModelCardData.set_widget_examples.<locals>.<genexpr>  s#   é € Ð"hÂ±*°#ÐRUÐYgÑRg£:¤3 u§: :Âùs   ‚$’$c                ó   • U S   $ )NrŠ   rÍ   )Úxs    r?   rí   Ú7BaseModelCardData.set_widget_examples.<locals>.<lambda>  s   € ÀAÀaÂDrA   ©r�   r�   r3  rÔ   rŠ   rì   )Úsource_sentenceÚ	sentencesÚtextc              3  ó*   #   • U  H	  oS ;  v •  M     g7f)©r>  ÚmessageNrÍ   )r5  Úms     r?   r6  r7  7  s   é € ÐZÒDY¸qÐ':Ö:ÒDYùó   ‚)&rJ   r*   r+   r(   r)   rT   r   ÚrandomÚchoicesrÝ   Úkeysr   rz   ÚfeaturesrÜ   r,   ÚdtypeÚselect_columnsr•   Ú	enumerateÚselectÚsampleÚrangeÚminÚsumÚzipÚsortedÚpopÚextendrš   rÞ   r´   Úchoicerö   rY   ÚanyÚ
modalitiesÚ_set_multimodal_usage_examples)r=   r^   Údataset_namesÚnum_samples_to_checkr3  Únum_samplesÚcolumnÚfeatureÚcolumnsÚstr_datasetÚdataset_sizeÚlengthsÚidxrL  Úindicesr‰   Útarget_indicesÚbackup_indicesr�   Úsentencer=  Ú
backup_idxÚbackup_samples                          r?   rU   Ú%BaseModelCardData.set_widget_examplesè  s¯  € Ü�g¤Ô1DÐE×FÑFàä�gœw×'Ñ'Ü!¨'Ñ2ˆGàˆŒä¤§¢¬t°G·L±L³NÓ/CÀqÑ IÓJˆØ#ÐÜ)-Ø×ÑÓ!Ð(CÈ)Ð[`õ*
Ñ%ˆLô ˜'Ñ/´×AÑAáð (/Ñ'<×'EÑ'E×'KÑ'KÔ'Môâ'M‘O�FÜ˜g¤t×,Ñ,Ü˜w¬×.ó ð 4;·=±=ÐD^Ñ3^÷ Ù'Mð ñ ð "Ñ/×>Ñ>¸wÓGˆKÜ˜{Ó+ˆLØ˜qÓ ÙàˆGÜ(Ø×"Ñ"¤6§=¢=´°|Ó1DÌÐL`ÓHoÑ#pÓqö ‘�ô  #Ñ"hÀÇÁÄÓ"hÓh�“ñ ô
 œf W§]¡]£_¹.ÑIÐJ‰JˆGØ-4°\°kÐ-BÄDÈÐQ]ÐI^Ñ_cÐacÐ_cÑIdÓDe˜NˆNô &�à;FÑ;K×;QÑ;QÔ;SÔmÒ;S©-¨#¨xÐWZÐ^lÑWlŸXÑ;S�	ÑmÜ˜)“n qÓ(®^Ø!/×!3Ñ!3Ó!5�Jà6AÀ*Ñ6M×6SÑ6SÔ6Uô%Ú6U¡] S¨(ÐY\Ð`nÑYnŸÑ6Uð "ñ %ô ˜=Ó)¨QÓ.à!×(Ñ(¨Õ7ð "×(Ñ(¨°qÑ)9Ô:ô ˜)“n qÓ(¯^¨^ô �y“> AÓ%Ùñ
 luóÚktÐ_g´*¸XÄt×2LÑ2L”D˜Ÿ™Ó*Ó+¨AÒ.ÐRZÒZÑktð ð ð ×$Ñ$Ð(=Ó=Ø—K‘K×&Ñ&à/8¸©|Ü)/¯ª°yÀÀ°}ÌÈIËÐYZÑHZÑ)[ñõð —K‘K×&Ñ&¨´·²¸iÓ0HÐ'IÔJØ&/°° m�×#ôE &ñ=*
ðF �:�:œ#ÑZÀDÇJÁJ×DYÒDYÓZ×ZÑZØ×/Ñ/°Õ8ð [ˆ:ùóuùó. nùó%ùòs0   Ã0P ÄP ÄP ÈP
ÈP
ÉP
É-P
Ë=Pc           
     óÀ  ^^• [        [        UR                  5       5      5      n[        U[        5      (       d  [        U5      S:X  a  gU R                  (       aù  UR                   Vs/ s H  o3S:w  d  M
  UPM     nn[        U5      S:¼  aÇ  US   nUS   nUS   U   n/ n[        5       n	[        [        S[        U5      5      5       H{  n
X*   U   n[        U[        5      (       d  U R                  U5      O
[        U5      nUb  XÉ;   a  ME  Ub  U	R                  U5        UR                  U5        [        U5      S:¼  d  M{    O   U/U-   U l        g0 nUR"                  R%                  5        H¬  u  pïUS:X  a  M  [        U[&        5      (       a  UR(                  S;   a  S	XÞ'   M8  [*        (       a  [        U[*        5      (       a  S
XÞ'   M^  [,        (       a  [        U[,        5      (       a  SXÞ'   M„  [.        (       d  M‘  [        U[.        5      (       d  M¨  SXÞ'   M®     [        UR                  5       5      mSnU R0                  R2                   H8  m[        T[4        5      (       d  M  [7        U4S jT 5       5      (       d  M6  Tn  O   U(       a©  0 nU H3  nUR%                  5        H  u  nnUU:X  d  M  UU;  d  M  UUU'     M1     M5     [        S[        U5      5      n/ n[        U5       H@  n
X*   nUR                  UR%                  5        VVs0 s H  u  nnUUU   _M     snn5        MB     UU l        gU R0                  R2                   Hý  m[        T[        5      (       d  M  TS;  d  M"  TT;   d  M*  [        U4S jUR%                  5        5       5      n/ n[        5       n	[        [        S[        U5      5      5       H{  n
X*   U   n[        U[        5      (       d  U R                  U5      O
[        U5      nUb  XÉ;   a  ME  Ub  U	R                  U5        UR                  U5        [        U5      S:¼  d  M{    O   UU l          g   gs  snf s  snnf )a•  Override :attr:`usage_examples` with multimodal inputs when the model supports non-text modalities.

Respects the distinction between models that support modalities independently (e.g. CLIP
supports text OR image, but not combined) vs models that support combined modalities
(e.g. BLIP supports text+image together via a tuple modality ``("image", "text")``).

- If the model has a **tuple modality** matching the dataset columns, build multimodal dicts
  (e.g. ``{"text": "...", "image": <PIL.Image>}``).
- If the model only supports individual non-text modalities (no matching tuple), pick the
  **first non-text modality** and show single-modality examples.
r   Nr3  é   rŠ   éd   é   >   r0  r1  r>  ÚimageÚaudioÚvideoc              3  ó,   >#   • U  H	  oT;   v •  M     g 7fr9   rÍ   )r5  ÚpartÚavailable_modalitiess     €r?   r6  ÚCBaseModelCardData._set_multimodal_usage_examples.<locals>.<genexpr>w  s   øé € Ð2eÒ\dÐTXÐ;OÖ3OÒ\dùs   ƒr@  c              3  ó<   >#   • U  H  u  pUT:X  d  M  Uv •  M     g 7fr9   rÍ   )r5  ÚcrB  Úmodalitys      €r?   r6  rs  �  s   øé € ÐTÒ)B¡ ÀaÈ8ÁmŸ1™1Ò)Bùs   ƒ“	)ÚnextÚiterrÞ   rJ   r*   r•   rþ   Úcolumn_namesÚsetrM  rN  r  Ú_hash_assetÚhashÚaddrš   rö   rG  rz   r,   rH  ÚImageFeatureÚAudioFeatureÚVideoFeaturerY   rV  ÚtupleÚall)r=   r^   Úsub_datasetÚcolr]  Ú	query_colÚdoc_colÚqueryÚ	documentsÚseen_hashesÚir‚   Úcontent_hashÚcolumn_modalitiesr[  r\  Úcombined_modalityÚselected_columnsrq  ÚmodÚnum_examplesrö   rL  Úexamplesrr  rv  s                           @@r?   rW  Ú0BaseModelCardData._set_multimodal_usage_examples:  sæ  ù€ ô œ4 §¡Ó 0Ó1Ó2ˆÜ�k¤?×3Ñ3´s¸;Ó7GÈ1Ó7LØð �=�=Ø&1×&>Ò&>ÓXÒ&>˜sÈÑBW—sÑ&>ˆGÐXÜ�7‹|˜qÓ Ø# A™J�	Ø! !™*�à# A™ yÑ1�à�	Ü!›e�Üœs 3¬¨KÓ(8Ó9Ö:�AØ'™N¨7Ñ3�EÜBLÈUÔTW×BXÑBX 4×#3Ñ#3°EÔ#:Ô^bÐchÓ^i�LØ#Ñ/°LÓ4OÙ Ø#Ñ/Ø#Ÿ™¨Ô5Ø×$Ñ$ UÔ+Ü˜9“~¨Õ*Ùñ ;ð (- g°	Ñ&9�Ô#Øð -/ÐØ*×3Ñ3×9Ñ9Ö;‰OˆFØ˜Ó'ÙÜ˜'¤5×)Ñ)¨g¯m©mÐ?YÓ.YØ,2Ð!Ó)ß’¤*¨W´l×"CÑ"CØ,3Ð!Ó)ß’¤*¨W´l×"CÑ"CØ,3Ð!Ó)ß”¤*¨W´l×"CÓ"CØ,3Ð!Ó)ñ  <ô  #Ð#4×#;Ñ#;Ó#=Ó>Ðð +/ÐØŸ
™
×-Ô-ˆHÜ˜(¤E×*Ó*¬sÔ2eÑ\dÓ2e×/eÓ/eØ$,Ð!Ùñ .ö
 à/1ÐÛ)�Ø#4×#:Ñ#:Ö#<‘K�F˜CØ˜d•{ tÐ3CÕ'CØ17Ð(¨Ñ.Úó $=ñ *ô ˜q¤# kÓ"2Ó3ˆLØˆNÜ˜<Ö(�Ø$™�Ø×%Ñ%ÐHX×H^ÑH^ÔH`Ô&aÒH`¹H¸CÀ s¨F°3©KÒ'7ÑH`Ò&aÖbñ )ð #1ˆDÔØð Ÿ
™
×-Ô-ˆHÜ˜(¤C×(Ó(¨XÐ=PÕ-PÐU]ÐauÕUuÜÔTÐ):×)@Ñ)@Ô)BÓTÓT�Ø�Ü!›e�Üœs 3¬¨KÓ(8Ó9Ö:�AØ'™N¨3Ñ/�EÜBLÈUÔTW×BXÑBX 4×#3Ñ#3°EÔ#:Ô^bÐchÓ^i�LØ#Ñ/°LÓ4OÙ Ø#Ñ/Ø#Ÿ™¨Ô5Ø—O‘O EÔ*Ü˜8“}¨Õ)Ùñ ;ð '/�Ô#Ùò! .ùòE Yùóx 'bs   Á)	QÁ6QÌQc                óž  • U R                   (       a  U R                  (       d  g[        S U R                   5       5      (       a  g[        R                  R                  U R                   S5      n[        R                  " USS9  Sn/ nU R                   GH.  n[        U[        5      (       a  UR                  U5        M,  [        U[        5      (       a*  [        S U 5       5      (       a  UR                  U5        Mk  [        U[        5      (       a   / nU H„  n[        U[        5      (       a  UR                  U5        M+  U R                  XaU5      nU(       a  US-  nUR                  U5        M\  UR                  S	[        U5      R                   S
35        M†     UR                  U5        GM   [        U[        5      (       aŸ  U R                  U5      (       d‰  0 nUR!                  5        H_  u  pš[        U
[        5      (       a  X¨U	'   M   U R                  X¡U5      nU(       a  US-  nXxU	'   MD  S	[        U
5      R                   S
3X‰'   Ma     UR                  U5        GMÔ  U R                  XAU5      nU(       a  US-  nUR                  U5        GM  UR                  S	[        U5      R                   S
35        GM1     X0l        g)a   Save non-text items in :attr:`usage_examples` as files in an ``assets/`` subdirectory.

After saving, :attr:`usage_examples_display` is set with the same structure as
:attr:`usage_examples` but with relative file paths (e.g. ``"assets/image_0.jpg"``)
replacing raw data (PIL images, audio dicts, etc.). Text strings are kept as-is.

This is called during save, after :meth:`run_usage_snippet` encodes the original data.
:meth:`generate_usage_snippet` then uses :attr:`usage_examples_display` for the code block.
Nc              3  ó¢   #   • U  HE  n[        U[        5      =(       d)    [        U[        5      =(       a    [        S  U 5       5      v •  MG     g7f)c              3  óB   #   • U  H  n[        U[        5      v •  M     g 7fr9   ©rJ   r  ©r5  r9  s     r?   r6  ÚHBaseModelCardData.save_usage_example_assets.<locals>.<genexpr>.<genexpr>¯  s   é € ÐDfÒaeÐ\]ÄZÐPQÔSV×EWÐEWÒaeùó   ‚N)rJ   r  rÝ   r‚  ©r5  Úitems     r?   r6  Ú>BaseModelCardData.save_usage_example_assets.<locals>.<genexpr>®  s>   é € ð 
â+�ô �tœSÓ!×g¤j°´tÓ&<×&fÄÑDfÑaeÓDfÓAfÔgÚ+ùs   ‚AAÚassetsT©Úexist_okr   c              3  óB   #   • U  H  n[        U[        5      v •  M     g 7fr9   r–  r—  s     r?   r6  rœ  ¼  s   é € Ð/QÊDÀq´
¸1¼c×0BÐ0BÊDùr™  rŠ   Ú<Ú>)r¹   rö   r‚  ÚosÚpathr“   ÚmakedirsrJ   r  rš   rÝ   Ú_save_assetÚtyper©   rÜ   Ú_is_typed_media_dictrz   rº   )r=   Ú
assets_dirÚcounterÚdisplayr›  Údisplay_listÚelemÚrel_pathÚdisplay_dictr�   r‚   s              r?   Úsave_usage_example_assetsÚ+BaseModelCardData.save_usage_example_assets   sA  € ð �}�} D×$7×$7Øô ñ 
à×+Ò+ó
÷ 
ñ 
ð ä—W‘W—\‘\ $§-¡-°Ó:ˆ
Ü
�Š�J¨Ò.ØˆØˆà×'Õ'ˆDÜ˜$¤×$Ñ$Ø—‘˜tÖ$Ü˜D¤$×'Ñ'¬CÑ/QÉDÓ/Q×,QÑ,QØ—‘˜tÖ$Ü˜D¤$×'Ñ'à!�Û �DÜ! $¬×,Ñ,Ø$×+Ñ+¨DÖ1à#'×#3Ñ#3°DÀgÓ#N˜Þ#Ø# q™L˜GØ(×/Ñ/°Ö9à(×/Ñ/°!´D¸³J×4GÑ4GÐ3HÈÐ0JÖKñ !ð —‘˜|×,Ü˜D¤$×'Ñ'°×0IÑ0IÈ$×0OÑ0Oà!�Ø"&§*¡*¦,‘J�CÜ! %¬×-Ñ-Ø,1 SÓ)à#'×#3Ñ#3°EÀwÓ#O˜Þ#Ø# q™L˜GØ08¨Ó-à23´D¸³K×4HÑ4HÐ3IÈÐ0K˜LÓ-ñ #/ð —‘˜|×,ð  ×+Ñ+¨D¸gÓF�ÞØ˜q‘L�GØ—N‘N 8×,à—N‘N Q¤t¨D£z×':Ñ':Ð&;¸1Ð#=×>ñQ (ðT '.Õ#rA   c                ój   • [        U [        5      =(       a    SU ;   =(       a    SU ;   =(       d    SU ;   $ )zJCheck if a dict is an AudioDict or VideoDict (vs a multimodal input dict).ÚarrayÚsampling_rateÚvideo_metadata)rJ   rÜ   )r›  s    r?   r¨  Ú&BaseModelCardData._is_typed_media_dictå  s1   € ô ˜$¤Ó%×s¨'°T©/×s¸ÐRVÑ?V×?rÐZjÐnrÑZrÐsrA   c                ó(  • [         b   [        U [         5      (       a  U S   U S   S.n [        bd  [        U [        5      (       aO  U R                  n[	        [        USS5      UR                  UR                  UR                  UR                  45      $ [        (       aE  [        U [        5      (       a0  [	        U R                  5       U R                  U R                  45      $ [        U [        5      (       a›  SU ;   a•  SSKnU S   n[        U[         R"                  5      (       a  UR%                  5       R                  5       n[        X2R&                  5      (       a5  [	        UR                  5       UR(                  U R+                  S5      45      $ g)zPCompute a content hash for an asset value, or None if the type is not supported.Nr³  r´  ©r³  r´  r¤  r   )r0   rJ   r1   Úmetadatar|  ÚgetattrÚduration_secondsÚwidthÚheightÚ
num_framesÚPILImageÚtobytesÚsizeÚmoderÜ   ÚnumpyrÁ   ÚTensorÚcpuÚndarrayÚshaper  )r‚   rB  Únpr³  s       r?   r{  ÚBaseModelCardData._hash_assetê  s(  € ô Ñ#¬
°5¼,×(GÑ(GØ# G™n¸uÀ_Ñ?UÑVˆEäÑ#¬
°5¼,×(GÑ(GØ—‘ˆAÜœ  F¨DÓ1°1×3EÑ3EÀqÇwÁwÐPQ×PXÑPXÐZ[×ZfÑZfÐgÓhÐhßŠ8œ
 5¬(×3Ñ3Ü˜Ÿ™›¨%¯*©*°e·j±jÐAÓBÐBÜ�eœT×"Ñ" w°%Ó'7Ûà˜'‘NˆEÜ˜%¤§¡×.Ñ.ØŸ	™	›×)Ñ)Ó+�Ü˜%§¡×,Ñ,Ü˜UŸ]™]›_¨e¯k©k¸5¿9¹9À_Ó;UÐVÓWÐWØrA   c                ó   • U R                  U5      nUb  XPR                  ;   a  U R                  U   $ [        b   [        U[        5      (       a  US   US   S.n[        bü  [        U[        5      (       aç  [        UR                  SS5      nU(       a¸  [        R                  R                  U5      (       a”  SSK
n[        R                  R                  U5      S   =(       d    SnU S	U U 3n	S
U	 3n
[        R                  " USS9  UR                  U[        R                  R                  X)5      5        Ub  X R                  U'   U
$ U R                  U5      n[        R                  " USS9  [         (       ar  [        U[         5      (       a]  U SU S3n	S
U	 3n
UR#                  S5      R%                  [        R                  R                  X)5      5        Ub  X R                  U'   U
$ [        U[&        5      (       aÛ  SU;   aÕ  SU;   aÏ   SSKnUS   n[        U[*        R,                  5      (       d  [*        R.                  " U5      nUR0                  S:X  a  UR3                  S5      nU SU S3n	S
U	 3n
UR%                  [        R                  R                  X)5      UR5                  5       R7                  5       US   5        Ub  X R                  U'   U
$ [        U[&        5      (       Ga­  SU;   Ga¦  SU;   GaŸ   SSKnUS   n[        U[*        R,                  5      (       d  [*        R.                  " U5      nUR0                  S:X  a  US   nUR0                  S:X  a:  UR<                  S   S;   a'  UR<                  S   S;  a  UR?                  SSSS5      nUR@                  [*        RB                  :w  a‹  URE                  5       (       aG  URG                  5       S::  a3  US-  RI                  SS5      RK                  [*        RB                  5      nO/URI                  SS5      RK                  [*        RB                  5      nURM                  S0 5      RM                  SS5      nU S	U S3n	S
U	 3n
[        R                  R                  X)5      nUR7                  5       RO                  5       nUR<                  S   UR<                  S   nnURQ                  USS9 nURS                  S[U        U5      S 9nUUl+        UUl,        S!Ul-        U HF  nUR\                  R_                  US"S#9nURa                  U5       H  nURc                  U5        M     MH     URa                  5        H  nURc                  U5        M     SSS5        Ub  X R                  U'   U
$ [d        Rg                  S$[i        U5      Rj                   35        g! [8         a     GNüf = f! , (       d  f       N^= f! [8         a     NZf = f)%u  Save a non-text value to the assets directory, deduplicating by content hash.

Args:
    prefix: Prepended to filenames, e.g. ``"example_"`` â†’ ``"example_image_0.jpg"``.

Returns the relative path (e.g. ``"assets/image_0.jpg"``) on success, or ``None`` on failure.
Nr³  r´  r¸  r¤  r   rŠ   z.mp4Úvideo_úassets/Trž  Úimage_z.jpgÚRGBÚaudio_z.wavrµ  r)  rÔ   )rŠ   rl  rÔ   r�   rj  rl  g      ð?éÿ   ÚfpsrÌ   Úw)rÂ  Úh264)ÚrateÚyuv420pÚrgb24)Úformatz-Could not save predict example asset of type )6r{  r»   r0   rJ   r1   rº  r¹  r£  r¤  ÚisfileÚshutilÚsplitextr¥  Úcopy2r“   Ú_video_decoder_to_dictr¿  ÚconvertÚsaverÜ   Ú
torchaudiorÁ   rÄ  Ú	as_tensorÚndimÚ	unsqueezerÕ   rÅ  r  ÚavrÇ  ÚpermuterH  Úuint8Úis_floating_pointÚmaxÚclampÚtor  rÃ  ÚopenÚ
add_streamrÖ   r¼  r½  Úpix_fmtÚ
VideoFrameÚfrom_ndarrayÚencodeÚmuxr
  r  r§  r©   )r=   r‚   r©  ra  Úprefixr‹  Úsource_pathrÙ  ÚextÚfilenamer®  rß  r³  rã  rÑ  ÚfilepathÚframesr½  r¼  Ú	containerÚstreamÚ
frame_dataÚframeÚpackets                           r?   r¦  ÚBaseModelCardData._save_asset   s  € ð ×'Ñ'¨Ó.ˆØÑ#¨×8IÑ8IÓ(IØ×$Ñ$ \Ñ2Ð2ô Ñ#¬
°5¼,×(GÑ(GØ# G™n¸uÀ_Ñ?UÑVˆEäÑ#¬
°5¼,×(GÑ(GÜ! %§.¡.°&¸$Ó?ˆKÞœrŸw™wŸ~™~¨k×:Ñ:Ûä—g‘g×&Ñ& {Ó3°AÑ6×@¸&�Ø$˜X V¨C¨5°°Ð6�Ø$ X JÐ/�Ü—’˜J°Ò6Ø—‘˜[¬"¯'©'¯,©,°zÓ*LÔMØÑ+Ø6>×%Ñ% lÑ3Ø�Ø×/Ñ/°Ó6ˆEä
�Š�J¨Ò.÷ Š8œ
 5¬(×3Ñ3Ø ˜ ¨ u¨DÐ1ˆHØ   
Ð+ˆHØ�M‰M˜%Ó ×%Ñ%¤b§g¡g§l¡l°:Ó&HÔIØÑ'Ø2:×!Ñ! ,Ñ/ØˆOô �eœT×"Ñ" w°%Ó'7¸OÈuÓ<TðÛ!à˜g™�Ü! %¬¯©×6Ñ6Ü!ŸOšO¨EÓ2�EØ—:‘: “?Ø!ŸO™O¨AÓ.�EØ$˜X V¨C¨5°Ð5�Ø$ X JÐ/�Ø—‘¤§¡§¡¨ZÓ BÀEÇKÁKÃM×DUÑDUÓDWÐY^Ð_nÑYoÔpØÑ+Ø6>×%Ñ% lÑ3Ø�ô
 �eœT×"Ò" w°%Ô'7Ð<LÐPUÔ<Uð'Ûà˜g™�Ü! %¬¯©×6Ñ6Ü!ŸOšO¨EÓ2�EØ—:‘: “?Ø! !™H�Eà—:‘: “? u§{¡{°1¡~¸Ó'BÀuÇ{Á{ÐSUÁÐ^gÓGgà!ŸM™M¨!¨Q°°1Ó5�EØ—;‘;¤%§+¡+Ó-Ø×.Ñ.×0Ñ0°U·Y±Y³[ÀCÓ5GØ!&¨¡× 3Ñ 3°A°sÓ ;× >Ñ >¼u¿{¹{Ó K™à %§¡¨A¨sÓ 3× 6Ñ 6´u·{±{Ó C˜à—i‘iÐ 0°"Ó5×9Ñ9¸%ÀÓD�Ø$˜X V¨C¨5°Ð5�Ø$ X JÐ/�ÜŸ7™7Ÿ<™<¨
Ó=�ØŸ™›×*Ñ*Ó,�Ø &§¡¨Q¡°·±¸a±˜�Ø—W‘W˜X¨C�WÑ0°IØ&×1Ñ1°&¼uÀS»zÐ1ÐJ�FØ#(�F”LØ$*�F”MØ%.�F”NÛ&,˜
Ø "§¡× :Ñ :¸:ÈgÐ :Ð V˜Ø&,§m¡m°EÖ&:˜FØ%ŸM™M¨&Ö1ó ';ñ '-ð #)§-¡-¦/˜Ø!Ÿ™ fÖ-ñ #2÷ 1ð  Ñ+Ø6>×%Ñ% lÑ3Ø�ô 	�‰ÐFÄtÈEÃ{×G[ÑG[ÐF\Ð]Ô^Øøô_ ó Úðú÷: 1Õ0ûô ó Ùðús?   ÈCW ÌG W0 Ó$B#WÖW0 ×
W×W×
W-×)W0 ×0
W=×<W=c                ó`  • SSK Jn  [        U5      U R                  U'   [	        US5      (       aô  UR
                  =n(       aà  [        X5      (       a&  UR                   Vs/ s H  owR
                  PM     nnO[        U[        5      (       a  U/nUR                  5        VV	s0 s H  u  p‰X†;   d  M  X‰_M     n
nn	U R                  (       a5  U R                  S   S   U:X  a  U R                  S   R                  U
5        g U R                  R                  UUS.U
E5        g g g s  snf s  sn	nf )Nr   )ÚSequentialEvaluatorÚprimary_metricr�   rŽ   r�   )Ú%sentence_transformers.base.evaluationrþ  r   r¸   rß   rÿ  rJ   Ú
evaluatorsr  rz   r—   r™   rš   )r=   Ú	evaluatorrœ   r›   r%  rþ  Úprimary_metricsÚsub_evaluatorr�   r‚   Útraining_log_metricss              r?   Úset_evaluation_metricsÚ(BaseModelCardData.set_evaluation_metricsl  s  € õ 	Nä,0°«Mˆ×Ñ˜yÑ)ô �9Ð.×/Ñ/È	×H`ÑH`Ð5`°_Õ5`Ü˜)×9Ñ9ØU^×UiÒUiÓ"jÒUiÀM×#?Ô#?ÑUi�Ð"j�Ü˜O¬S×1Ñ1Ø#2Ð"3�àAHÇÁÄÔ#kÂ±:°3ÐTWÑTj£J C¢JÁÐ Ñ#kà×!×! d×&8Ñ&8¸Ñ&<¸VÑ&DÈÓ&LØ×"Ñ" 2Ñ&×-Ñ-Ð.BÕCà×"Ñ"×)Ñ)à!&Ø $ñð /ðõð 6aÐ/ùâ"jùó $ls   Á!D%Â$D*Â3D*c           	     óF  • Sn[        [        5      n[        5       nU Ho  nUS   nUS   nXt;  aB  X7   R                  S[	        U5       S35        [        X7   5      U:¼  a  UR                  U5        [        U5      U R                  :X  d  Mo    O   UR                  5        VVs/ s Hh  u  pxU R                  R                  (       a.  [        U[        5      (       a  U R                  R                  U   OUSSR                  U5      -   S-   S	.PMj     snnU l        g s  snnf )
Nrl  r>  Úlabelz<li>z</li>z<ul>Ú z</ul>)ÚLabelÚExamples)r   rÝ   rz  rš   r÷   r•   r}  Únum_classesrz   rY   ÚlabelsrJ   r  r“   rø   )	r=   r^   Únum_examples_per_labelr‘  Úfinished_labelsrL  r>  r	  Úexample_sets	            r?   Úset_label_examplesÚ$BaseModelCardData.set_label_examples‡  s  € Ø!"ÐÜœtÓ$ˆÜ›%ˆÛˆFØ˜&‘>ˆDØ˜7‘OˆEØÓ+Ø‘×&Ñ&¨¬d°4«j¨\¸Ð'?Ô@Ü�x‘Ó'Ð+AÓAØ#×'Ñ'¨Ô.Ü�?Ó# t×'7Ñ'7Õ7Ùñ ð '/§n¡nÔ&6ô#
ò
 '7Ñ"�ð 6:·Z±Z×5F×5FÌ:ÐV[Ô]`×KaÑKa˜Ÿ™×*Ñ*¨5Ò1ÐglØ" R§W¡W¨[Ó%9Ñ9¸GÑCôñ '7ò#
ˆÕùó #
s   Â$A/Dc           
     ó�  • [        U[        5      (       a>  UR                  5        VVVs/ s H  u  p#U R                  X2S9  H  nUPM     M      snnn$ U(       a  [        R
                  " SU5      (       a  S nU=(       d    UR                  R                  [        UR                  5      S.nUR                  R                  (       aT  UR                  UR                  R                  ;   a0  UR                  R                  UR                     R                  US'   UR                  =n(       aŽ  [        UR                  5       5      S   nUR                  S5      (       a\  SU;   aV  U[!        S5      S  R                  S5      nUS   US'   US	   R                  S
5      S   =n	(       a  [!        U	5      S:X  a  X•S'   U/$ s  snnnf )N)r3  z_dataset_\d+)r  r”   rÁ  r   zhf://datasets/Ú@r  rŠ   r  é(   Úrevision)rJ   r)   rz   Úinfer_datasetsÚreÚmatchr  r3  r  r”   Úsplitsr�  Údownload_checksumsrÝ   rF  r‘   r•   )
r=   r^   r3  rƒ  Úinferred_datasetÚdataset_outputÚ	checksumsÚsourceÚsource_partsr  s
             r?   r  Ú BaseModelCardData.infer_datasetsœ  sŒ  € Ü�gœ{×+Ñ+ð 29·±´õâ1@Ñ-�LØ(,×(;Ñ(;¸KÐ(;Ô(cÐ$ó !á(cñ !Ù1@óð ö œBŸHšH _°l×CÑCØˆLð !×= G§L¡L×$=Ñ$=Ü˜Ÿ™Ó'ñ
ˆð �<‰<×× 7§=¡=°G·L±L×4GÑ4GÓ#GØ%,§\¡\×%8Ñ%8¸¿¹Ñ%G×%TÑ%TˆN˜6Ñ"ð  ×2Ñ2Ð2ˆ9Õ2Ü˜)Ÿ.™.Ó*Ó+¨AÑ.ˆFØ× Ñ Ð!1×2Ñ2°s¸f³}Ø%¤cÐ*:Ó&;Ð&=Ð>×DÑDÀSÓI�Ø'3°A¡�˜tÑ$Ø ,¨Q¡× 5Ñ 5°cÓ :¸1Ñ =Ð=�HÕ=Ä3ÀxÃ=ÐTVÓCVØ19 :Ñ.àÐÐùô7s   ª%Gc                óR  • U(       d  0 $ [        U[        5      (       a9  [        U5      US'   US   R                  5        Vs/ s H  oDS:w  d  M
  UPM     nnOUR                  nU Vs/ s H	  nSU S3PM     snUS'   0 US'   [        U[        5      (       Ga  U GH^  nUSS	 U   nUS   n[        U[
        5      (       aá  U R                  R                  US
S9n[        U[        [        45      (       a)  SU;   a#  US   R                  SS9R                  5       n	Sn
OU Vs/ s H  n[        U5      PM     n	nSn
S[        [        U	5      S5       SU
 3[        [        U	5      [        U	5      -  S5       SU
 3[        [        U	5      S5       SU
 3S.S.US   U'   GM  [        U[        [         45      (       aX  [#        U5      nS[%        U5       Vs0 s H*  nU[        U5      S:”  a  SOS XÍ   [        U5      -  S 3_M,     snS.US   U'   GMz  [        U[&        5      (       aW  S[        [        U5      S5      [        [        U5      [        U5      -  S5      [        [        U5      S5      S.S.US   U'   GMæ  [        U[(        5      (       a“  [#        U Vs/ s H  n[        U5      PM     sn5      n[        U5      S:X  a  SS[        U5       S30S.US   U'   GMK  S[        U5       S3[        U5      [        U5      -  S S3[        U5       S3S.S.US   U'   GMŽ  [*        (       aí  [        U[*        5      (       aØ  U Vs/ s H&  n[        U[*        5      (       d  M  UR,                  PM(     nnU Vs/ s H&  n[        U[*        5      (       d  M  UR.                  PM(     nnS[        U5       S[        U5       S 3[        U5      [        U5      -   S[        U5      [        U5      -   S 3[        U5       S[        U5       S 3S.S.US   U'   GM†  [        U[        5      (       a  S!U;   a  S"U;   d  [0        bÛ  [        U[0        5      (       aÆ  U Vs/ s HX  n[        U[        5      (       a  S!U;   a  S"U;   d   [0        c  M-  [        U[0        5      (       d  MD  [        US!   5      US"   -  PMZ     nnU(       aL  S#[        U5      S S$3[        U5      [        U5      -  S S$3[        U5      S S$3US"    S%3S&.S.US   U'   GM{  S#0 S.US   U'   GM‰  [2        Gb¹  [        U[2        5      (       Ga£  U Vs/ s H9  n[2        c  M  [        U[2        5      (       d  M#  UR4                  R6                  PM;     nnU Vs/ s H9  n[2        c  M  [        U[2        5      (       d  M#  UR4                  R,                  PM;     nnU Vs/ s H9  n[2        c  M  [        U[2        5      (       d  M#  UR4                  R.                  PM;     nnU(       a¼  S'[        U5      S S([        U5       S[        U5       S 3[        U5      [        U5      -  S S([        U5      [        U5      -   S[        U5      [        U5      -   S 3[        U5      S S([        U5       S[        U5       S 3UR4                  R8                  S) S*.S.US   U'   GM<  S'0 S.US   U'   GMJ  [;        U5      0 S.US   U'   GMa     SAS, jnSS-0US   R=                  5        VVs0 s H  u  nnUUS.   _M     snnESS/0US   R=                  5        VVs0 s H  u  nnUU" US+   5      _M     snnE/n[?        [A        U5      RC                  S0S15      S25      US3'   USS4 US5'   XRS6'   U RE                  U5      u  US7'   nS8[;        U5      0US9'   [G        US:5      (       am  URI                  5       nSBS; jnUR=                  5        VVs0 s H  u  nnUU" U5      _M     nnn [J        RL                  " US<S=9n[?        S>U S?3S25      US9   S@'   U$ s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snf s  snnf s  snnf s  snnf ! [N         a    [Q        US<S=9n Nwf = f)Ca^  
Given a dataset, compute the following:
* Dataset Size
* Dataset Columns
* Dataset Stats
    - Strings: min, mean, max word count/token length
    - Integers: Counter() instance
    - Floats: min, mean, max range
    - List: number of elements or min, mean, max number of elements
* 3 Example samples
* Loss function name
    - Loss function config
rÁ  r   r3  ú<code>ú</code>r]  ÚstatsNr+  Údocument)ÚtaskÚattention_maskrŠ   )ÚdimÚtokensÚ
charactersr0  rj  rˆ   )rN  Úmeanrç  )rH  Údatar  Ú~r
  z.2%rÕ   rÝ   z	 elementsú.2frm  r9  z pxr³  r´  rn  Úsz Hz)rN  r-  rç  r´  ro  zs, ú.0f)rN  r-  rç  rÑ  r.  c                óZ   • SSR                  S U R                  5        5       5      -   S-   $ )Nz<ul><li>z	</li><li>c              3  ó4   #   • U  H  u  pU S U 3v •  M     g7f©z: NrÍ   r4  s      r?   r6  ÚRBaseModelCardData.compute_dataset_metrics.<locals>.to_html_list.<locals>.<genexpr>U  s   é € Ð4fÒYeÉ:È3¸°u¸B¸u¸gÕ5FÒYeùs   ‚z
</li></ul>)r“   rz   )r.  s    r?   Úto_html_listÚ?BaseModelCardData.compute_dataset_metrics.<locals>.to_html_listT  s.   € Ø! K×$4Ñ$4Ñ4fÐY]×YcÑYcÔYeÓ4fÓ$fÑfÐiuÑuÐurA   r§  rH  Údetailsú-:|ú--|ú  Ústats_tablerl  r‘  Ú_example_columnsÚexamples_tabler%   rO   Úget_config_dictc                ó|  • [        U [        R                  5      (       d  U $ U R                  R                  n/ n[        U S5      (       aI  [        U R                  S5      (       a.  UR                  [        U R                  R                  5      5        [        U S5      (       a"  U R                  (       a  UR                  S5        [        U S5      (       aF  U R                  5       R                  5        H$  u  p4UR                  U S[        U5       35        M&     U(       a  U SSR                  U5       S	3$ U$ )
NrF   r·   Útrust_remote_codeztrust_remote_code=Truer@  Ú=Ú(r  Ú))rJ   r   ÚModuler>   r©   rß   rF   rš   r÷   r·   rB  r@  rz   r“   )r‚   Úmodule_nameÚmodule_args_strr�   Úvals        r?   Úformat_config_valueÚFBaseModelCardData.compute_dataset_metrics.<locals>.format_config_valueg  s  € Ü! %¬¯©×3Ñ3Ø �LØ#Ÿo™o×6Ñ6�Ø"$�ô ˜5Ð"3×4Ñ4¼À×AVÑAVÐXd×9eÑ9eØ#×*Ñ*¬4°×0EÑ0E×0PÑ0PÓ+QÔRÜ˜5Ð"5×6Ñ6¸5×;R×;RØ#×*Ñ*Ð+CÔDä˜5Ð"3×4Ñ4Ø$)×$9Ñ$9Ó$;×$AÑ$AÖ$C™˜Ø'×.Ñ.°#°°a¼¸S»	°{Ð/CÖDñ %Dö #Ø)˜]¨!¨D¯I©I°oÓ,FÐ+GÀqÐIÐIØ"Ð"rA   rÔ   r   ú```json
ú
```Úconfig_code)r.  rÜ   ©r‚   r   r¦   r  ))rJ   r(   r•   rF  ry  r  rY   Ú
preprocessrÜ   r   rO  ÚtolistrÖ   rN  rç  r  rð   r   rQ  rÕ   rÝ   r¿  r¼  r½  r0   r1   r¹  r»  Úaverage_fpsr%   rz   r   r   ÚreplaceÚ_render_examples_tablerß   r@  ÚjsonÚdumpsÚ	TypeErrorr   )r=   r^   r   rO   r[  Údataset_columnsÚ
subsectionÚfirstÚ	tokenizedr`  Úsuffixre  rª  r�   ÚlstÚimgÚwidthsÚheightsÚdÚ	durationsÚvr7  r‚   Ústats_linesr‰   ÚconfigrJ  Ú
str_configs                               r?   Úcompute_dataset_metricsÚ)BaseModelCardData.compute_dataset_metrics»  s	  € ö& ØˆIä�gœw×'Ñ'ä#& w£<ˆL˜Ñ à4;¸A±J·O±OÔ4EÓbÒ4E¨&ÐSaÑIaŸvÑ4EˆOÐbˆOà%×2Ñ2ˆOáJYÓ"ZÊ/À V¨F¨8°7Ó#;É/Ñ"Zˆ�YÑØ "ˆ�WÑÜ�gœw×'Ò'Ü)�Ø$ U d˜^¨FÑ3�
Ø" 1™�Ü˜e¤S×)Ñ)Ø $§
¡
× 5Ñ 5°jÀzÐ 5Ð R�IÜ! )¬d´HÐ-=×>Ñ>ÐCSÐW`ÓC`Ø"+Ð,<Ñ"=×"AÑ"AÀaÐ"AÐ"H×"OÑ"OÓ"Q˜Ø!)™áAKÓ"LÂ°X¤3 x¦=Á˜Ð"LØ!-˜à!)ä&+¬C°«L¸!Ó&<Ð%=¸Q¸v¸hÐ#GÜ',¬S°«\¼CÀ»LÑ-HÈ!Ó'LÐ&MÈQÈvÈhÐ$WÜ&+¬C°«L¸!Ó&<Ð%=¸Q¸v¸hÐ#Gñ!ñ5�L Ñ)¨&Ô1ô   ¬¬T {×3Ñ3Ü% jÓ1�Gà!&ô (.¨g¤ó!â'6 ð  ¬3¨w«<¸!Ó+;¡CÀÐ#DÀWÁ\ÔTWÐXbÓTcÑEcÐdgÐDhÐ!iÒiÙ'6ñ!ñ5�L Ñ)¨&Ô1ô   ¤u×-Ñ-à!(ä#(¬¨Z«¸!Ó#<Ü$)¬#¨j«/¼CÀ
»OÑ*KÈQÓ$OÜ#(¬¨Z«¸!Ó#<ñ!ñ5�L Ñ)¨&Ô1ô   ¤t×,Ñ,Ü%¹:Ó&Fº:°C¤s¨3¦x¹:Ñ&FÓG�GÜ˜7“| qÓ(à%+à &¬3¨u«:¨,°iÐ(@ð%ñ9˜ WÑ-¨fÔ5ð &,ä*-¨g«,¨°yÐ'AÜ+.¨w«<¼#¸g»,Ñ+FÀsÐ*KÈ9Ð(UÜ*-¨g«,¨°yÐ'Añ%ñ9˜ WÑ-¨fÔ5÷  ’x¤J¨u´h×$?Ñ$?Ù7AÓ!_²z°ÄZÐPSÔU]×E^£) #§)¤)±z˜Ð!_Ù9CÓ"aº°#ÄzÐRUÔW_×G`£: 3§:¤:¹˜Ð"aà%,ä*-¨f«+¨°a¼¸G»°~ÀSÐ'IÜ+.¨v«;¼#¸f»+Ñ+EÐ*FÀaÌÈGËÔX[Ð\cÓXdÑHdÐGeÐehÐ(iÜ*-¨f«+¨°a¼¸G»°~ÀSÐ'Iñ%ñ9˜ WÑ-¨fÔ5ô % U¬D×1Ñ1°gÀÓ6FÈ?Ð^cÓKcÜ$Ñ0´ZÀÄ|×5TÑ5Tñ &0ó%â%/ Ü *¨1¬d× 3Ñ 3¸À1»ÈÐ\]ÓI]Ü ,ó Aô >HÈÌ<×=Xó AœC  '¡
›O¨a°Ñ.@Ô@Ù%/ð "ð %ö %à)0ä.1°)«n¸SÐ-AÀÐ+CÜ/2°9«~ÄÀIÃÑ/NÈsÐ.SÐSTÐ,UÜ.1°)«n¸SÐ-AÀÐ+CØ8=¸oÑ8NÐ7OÈsÐ5Sñ	)"ñ=˜L¨Ñ1°&Ô9ð GNÐWYÑ<Z˜L¨Ñ1°&Ô9Ü%Ò1´jÀÌ×6UÒ6Uñ &0ó%â%/ Ü+ó 8ä<FÀqÌ,×<Wó 8˜AŸJ™J×7Ô7Ù%/ð "ð %ñ &0ó"â%/ Ü+ó -ä<FÀqÌ,×<Wó -˜AŸJ™J×,Ô,Ù%/ð ð "ñ &0ó#â%/ Ü+ó .ä<FÀqÌ,×<Wó .˜AŸJ™J×-Ô-Ù%/ð  ð #ö
 %à)0ä.1°)«n¸SÐ-AÀÄSÈÃ[ÀMÐQRÔSVÐW^ÓS_ÐR`Ð`cÐ+dÜ/2°9«~ÄÀIÃÑ/NÈsÐ.SÐSVÔWZÐ[aÓWbÔfiÐjpÓfqÑWqÐVrÐrsÔtwÐxó  uAô  EHð  IPó  EQñ  uQð  tRð  RUð  -VÜ.1°)«n¸SÐ-AÀÄSÈÃ[ÀMÐQRÔSVÐW^ÓS_ÐR`Ð`cÐ+dØ.3¯n©n×.HÑ.HÈÐ-Mñ	)"ñ=˜L¨Ñ1°&Ô9ð GNÐWYÑ<Z˜L¨Ñ1°&Ô9äBJÈ5Ã/Ð[]Ñ8^˜ WÑ-¨fÔ5ñm *ôpvð �VÐeÀlÐSZÑF[×FaÑFaÔFcÔdÒFc¹
¸¸U  U¨7¡^Ò 3ÑFcÒdÐeØ�YÐuÐVbÐcjÑVk×VqÑVqÔVsÔ"tÒVsÉ
ÈÈU 3©°U¸6±]Ó(CÒ#CÑVsÒ"tÐuðˆKô +1Ô1DÀ[Ó1Q×1YÑ1YÐZ_ÐafÓ1gÐimÓ*nˆL˜Ñ'à'.¨r° {ˆL˜Ñ$Ø/>Ð+Ñ,Ø04×0KÑ0KÈLÓ0YÑ-ˆLÐ)Ñ*¨Að œ ›ð 
ˆ�VÑô �4Ð*×+Ñ+Ø×)Ñ)Ó+ˆFô#ð( IOÏÉÌÔWÊ¹*¸#¸u�cÑ.¨uÓ5Ò5ÉˆFÑWð7Ü!ŸZšZ¨°qÑ9�
ô 39¸9ÀZÀLÐPUÐ9VÐX\Ó2]ˆL˜Ñ  Ñ/ØÐùò[ cùò #[ùò #Mùò!ùò 'Gùò( "`ùÚ"aùò%ùò&%ùò
"ùò
#ùó0  eùÛ"tùóD Xøô ó 7Ü$ V°AÑ6’
ð7ús¨   Á	aÁaÁ(aÄ#aÇ1aÊa
ÍaÍ*aÎ a$Îa$Ñ",a)Òa)Ò)a)Õa.Õa.Õ,a.Öa3Öa3Ö2a3×a8×!a8×8a8Üa=Ýb
ß?b	àb âb&â%b&c                ó"  • U(       Ga'  U(       ar  [        U[        5      (       a  [        U5      [        U5      :w  d$  [        U[        5      (       a0  [        U5      S:w  a!  [        R                  SU SU SU S35        / nU(       d  U R                  U5      n[        U[        5      (       ak  [        UR                  5       UR                  5       U5       VVVs/ s H2  u  pVnU R                  UU[        U[        5      (       a  X5   OU5      PM4     nnnnOU R                  XS   U5      /nUS:X  aF  [        U Vs/ s H  oˆR                  SS5      PM     sn5      n	U	(       a  U R                  S	U	 35        U(       aq  US:X  ak  U R                  c^  [        U[        5      (       a!  [!        S
 UR                  5        5       5      n
O[!        UR"                  5      n
SS1U
-  (       a  SU l        U R%                  U5      $ s  snnnf s  snf )NrŠ   zThe number of `z?_datasets` in the model card data does not match the number of z1 datasets in the Trainer. Removing the provided `z$_datasets` from the model card data.r   rD   rÁ  zdataset_size:c              3  óJ   #   • U  H  oR                     H  o"v •  M     M     g 7fr9   )ry  )r5  rƒ  r[  s      r?   r6  Ú=BaseModelCardData.extract_dataset_metadata.<locals>.<genexpr>°  s    é € Ð"uÒ=M¨k×\tÕ\tÐRX¤6Ñ\t¡6Ò=Mùs   ‚!#r‡  ÚquestionT)rJ   r)   r•   r(   r
  r  r  rP  rF  rÞ   rg  rÜ   rO  r  rG   rþ   rz  ry  r  )r=   r^   Údataset_metadatarO   Údataset_typer3  Údataset_valuer   r¹  Únum_training_samplesry  s              r?   rM   Ú*BaseModelCardData.extract_dataset_metadata„  só  € ÷ ÞÜ˜G¤[×1Ñ1´cÐ:JÓ6KÌsÐSZË|Ó6[Ü˜w¬×0Ñ0´SÐ9IÓ5JÈaÓ5Oä—‘Ø% l ^Ð3rÐsð  sAð A.Ø.:¨^Ð;_ðaôð $&Ð æ#Ø#'×#6Ñ#6°wÓ#?Ð ä˜'¤;×/Ñ/ô FIØŸ™›¨¯©Ó(8Ð:JôFõ	$òFÑA˜°\ð ×0Ñ0Ø%Ø$Ü.8¸¼t×.DÑ.D˜Ò*È$öñ
Fð !ò 	$Ð ð %)×$@Ñ$@ÀÐ[\ÑJ]Ð_cÓ$dÐ#eÐ ð ˜7Ó"Ü#&ÑP`Ó'aÒP`ÀH¯©°V¸QÖ(?ÑP`Ñ'aÓ#bÐ Þ#Ø—‘ Ð.BÐ-CÐDÔEö �| wÓ.°4·=±=Ñ3HÜ˜'¤4×(Ñ(Ü"Ñ"u¸W¿^¹^Ô=MÓ"uÓu‘ä" 7×#7Ñ#7Ó8�Ø˜Ð$ |×3Ø $�”à×%Ñ%Ð&6Ó7Ð7ùô9	$ùò (bs   Ã9HÄ?Hc                ó*  • Xl         U R                  b  g SSKJn  X!R	                  5        Vs/ s H  o3R
                  PM     sn;   a  SU l        g S H9  nXAR                  ;   d  M  [        UR                  U   5      S:”  d  M2  SU l          g    g s  snf )Nr   )ÚRouterT)r‡  r'  ÚpassageÚcorpus)rY   rþ   Ú"sentence_transformers.base.modulesrs  Úchildrenr>   Úpromptsr•   )r=   rY   rs  ÚmoduleÚir_prompt_names        r?   Úregister_modelÚ BaseModelCardData.register_model¸  s~   € ØŒ
à�=‰=Ñ$Øå=à·^±^Ô5EÓFÒ5E¨6×&Ô&Ñ5EÑFÓFØ ˆDŒMØãHˆNØ§¡Õ.´3°u·}±}À^Ñ7TÓ3UÐXYÕ3YØ $�”Ùò Iùò	 Gs   ­Bc                ó   • Xl         g r9   ©ræ   )r=   ræ   s     r?   Úset_model_idÚBaseModelCardData.set_model_idÉ  s   € Ø �rA   c                ó¸   • U R                   (       a  g [        U5      nUR                  U l        Ub  US:X  a  UR
                  nX l        g! [         a     gf = f)NFÚmainT)rñ   Úget_model_infor  r  r·   Úsharõ   )r=   ræ   r  r   s       r?   Úset_base_modelÚ BaseModelCardData.set_base_modelÌ  s]   € à× × àð	Ü'¨Ó1ˆJð %Ÿ-™-ˆŒØÑ˜x¨6Ó1Ø!—~‘~ˆHØ#+Ô Øøô ó 	áð	ús   ”A Á
AÁAc                ó@   • [        U[        5      (       a  U/nXl        g r9   )rJ   r  r¯   )r=   r¯   s     r?   Úset_languageÚBaseModelCardData.set_languageÜ  s   € Ü�h¤×$Ñ$Ø �zˆHØ �rA   c                ó   • Xl         g r9   )r°   )r=   r°   s     r?   Úset_licenseÚBaseModelCardData.set_licenseá  s   € Ø�rA   c                óž   • [        U[        5      (       a  U/nU H/  nX R                  ;  d  M  U R                  R                  U5        M1     g r9   )rJ   r  r²   rš   )r=   r²   Útags      r?   rG   ÚBaseModelCardData.add_tagsä  s<   € Ü�dœC× Ñ Ø�6ˆDÛˆCØŸ)™)Õ#Ø—	‘	× Ñ  Ö%ò rA   c           
     óÞ  • U R                   R                  =nbÏ  UR                  R                  n[	        U5      nSR                  UR                  SS  5      /nUR                  R                  S5      nU[        S[        U5      5       Vs/ s H.  nSR                  US U 5      S-   SR                  XVS  5      -   PM0     sn-  nU H  nU R                  U5      (       d  M    g    g g s  snf )Nr  éþÿÿÿr‰   rŠ   )rY   Útransformers_modelre  Ú_name_or_pathr   r“   Úpartsr  r”   rM  r•   r…  )r=   r’  r·   Úbase_model_pathÚcandidate_model_idsr  ra  ræ   s           r?   Útry_to_set_base_modelÚ'BaseModelCardData.try_to_set_base_modelë  sï   € Ø"&§*¡*×"?Ñ"?Ð?ÐÑLØ+×2Ñ2×@Ñ@ˆJÜ" :Ó.ˆOð $'§8¡8¨O×,AÑ,AÀ"À#Ð,FÓ#GÐ"HÐð
 %×)Ñ)×/Ñ/°Ó4ˆFØÜQVÐWXÔZ]Ð^dÓZeÔQfó$ÚQfÈ#�—‘˜  ˜Ó&¨Ñ,¨s¯x©x¸¸t¸Ó/EÔEÑQfñ$ñ Ðó 0�Ø×&Ñ& x×0Ó0Ùò 0ð Mùò$s   Â5C*c                ó²  ^^• / n0 n/ nU R                   R                  5        GHŽ  u  pE[        USS5      m[        USS5      nT(       a�  [        U4S jUR	                  5        5       5      (       ae  UR                  5        VVs0 s H  u  pxU[        T5      S-   S U_M     nnnU(       a*  UR                  TS-   5      (       a  U[        T5      S-   S nS#S jn	UR                  5        VVs0 s H  u  pxXy" U5      _M     nnnUR                  5        V
Vs/ s H2  u  p«X¦:X  a  SU
 S3OU
X¦:X  a  S[        U5       S3O
[        U5      S	.PM4     nn
nUR                  n[        USS5      nS
n[        US5      (       a=  UR                  5       =n(       a&   [        R                  " USS9n[        SU S3S5      nUR!                  [#        U5      UUUUS.5        U4S jmUR%                  UR                  5        V
Vs/ s H�  u  p«T" U5      =nc  M  ['        UUR)                  5       R+                  SS5      U=(       d    SU(       a"  UR+                  SS5      R+                  SS5      OSU
R+                  SS5      R-                  5       U
US9PM‘     snn
5        UR/                  U5        GM‘     / nU Hû  nUS    Vs0 s H  nUS   US   _M     nn[1        U5      nU Hº  n[1        S US    5       5      nUS   US   :X  d  M&  UU:X  d  M.  US   US   :w  d  M<  US   US   :X  d  MJ  US    H.  nSU;   a  UR3                  S5      UUS   '   UUS      UUS   '   M0     [5        US   [6        5      (       d	  US   /US'   US   R!                  US   5          Mè     UR!                  U5        Mý     U H0  n[9        UR3                  S5      5      R+                  SS 5      US!'   M2     U[7        UR	                  5       5      [;        U R<                  U5      S".$ s  snnf s  snnf s  snn
f ! [         a    [        U5      n GNœf = fs  snn
f s  snf )$a=  Format the evaluation metrics for the model card.

The following keys will be returned:
- eval_metrics: A list of dictionaries containing the class name, description, dataset name, and a markdown table
  This is used to display the evaluation metrics in the model card.
- metrics: A list of all metric keys. This is used in the model card metadata.
- model-index: A list of dictionaries containing the task name, task type, dataset type, dataset name, metric name,
  metric type, and metric value. This is used to display the evaluation metrics in the model card metadata.
r  Nrÿ  c              3  óJ   >#   • U  H  oR                  TS -   5      v •  M     g7f)r‰   N)r‘   )r5  r�   r  s     €r?   r6  Ú8BaseModelCardData.format_eval_metrics.<locals>.<genexpr>  s   øé € ÐQÂ.¸3ŸN™N¨4°#©:×6Ð6Â.ùs   ƒ #rŠ   r‰   c                ón   •  [        U S5      (       a  U R                  5       $  U $ ! [         a     U $ f = f)z^Try to convert a value from a Numpy or Torch scalar to pure Python, if not already pure PythonrH  )rß   r›  r  r×   s    r?   Útry_to_pure_pythonÚABaseModelCardData.format_eval_metrics.<locals>.try_to_pure_python  sE   € ðÜ˜u g×.Ñ.Ø$Ÿz™z›|Ð+ð /ð �øô !ó ØØ�ðús   ‚ & ¦
4³4ú**)ÚMetricr,   r
  r@  rÔ   r   rL  rM  r<  )Ú
class_nameÚdescriptionr3  Útable_linesrN  c                ó¦   >•  [        U 5      $ ! [         a     Of = f[        U [        5      (       a  SU ;   a  T" U R	                  5       S   5      $ g )Nrˆ   r   )rÕ   r  rJ   r  r”   )Úmetric_valueÚtry_to_floats    €r?   r¦  Ú;BaseModelCardData.format_eval_metrics.<locals>.try_to_float=  sW   ø€ ðÜ  Ó.Ð.øÜ ó Ùðúô ˜l¬C×0Ñ0°S¸LÓ5HÙ'¨×(:Ñ(:Ó(<¸QÑ(?Ó@Ð@às   ƒ
 Ž
šrˆ   Ú-ÚunknownÚUnknown)ré   Ú	task_typern  r3  Úmetric_nameÚmetric_typer¥  r£  r   r,   c              3  ó*   #   • U  H	  oS    v •  M     g7f)r   NrÍ   )r5  Úlines     r?   r6  r›  _  s   é € Ð1pÒMoÀT°x¶.ÒMoùrC  r¡  r3  rN  r:  r;  Útable)Úeval_metricsrœ   rµ   ©r‚   r   r¦   r   )r¸   rz   rº  r‚  rF  r•   r‘   rØ   r¢  rß   r@  rU  rV  rW  r  r   rš   r%   rS  r   ÚlowerrS  Útitler™   rz  rR  rJ   rÝ   r   r   rå   )r=   r±  Úall_metricsÚeval_resultsr  rœ   rÿ  r�   r‚   r�  Ú
metric_keyr¥  r£  r¢  r3  rN  re  rf  Úmetric_value_floatÚgrouped_eval_metricsÚeval_metricr¯  Úeval_metric_mappingÚeval_metric_metricsÚgrouped_eval_metricÚgrouped_eval_metric_metricsr  r¦  s                             @@r?   Úformat_eval_metricsÚ%BaseModelCardData.format_eval_metricsþ  s«  ù€ ð ˆØˆØˆØ"&×"8Ñ"8×">Ñ">×"@ÑˆIÜ˜9 f¨dÓ3ˆDÜ$ YÐ0@À$ÓGˆNÞœÔQÀ'Ç,Á,Ä.ÓQ×QÑQØIPÏÉÌÔYÊ¹:¸3˜3œs 4›y¨1™}˜Ð/°Ò6É�ÑYÞ! n×&?Ñ&?ÀÀsÁ
×&KÑ&KØ%3´C¸³IÀ±M°OÐ%D�Nôð IPÏÉÌÔXÊ¹*¸#�sÐ.¨uÓ5Ò5ÉˆGÑXð 18·±´ôò 1@Ñ,�Jð 6@Ó5Q  : ,¨bÑ1ÐWaà!Ó3ð  "¤*¨\Ó":Ð!;¸2Ñ>ä# LÓ1ô	ñ 1@ð ñ ð $×/Ñ/ˆKÜ" 9¨f°dÓ;ˆLØˆKÜ�yÐ"3×4Ñ4ÀI×D]ÑD]ÓD_Ð:_¸&Õ:_ð-Ü!%§¢¨F¸1Ñ!=�Jô % y°°¸EÐ%BÀDÓI�à×Ñä"*¨9Ó"5Ø#.Ø$0Ø#.Ø#.ñôõ	ð ×Ñð 5<·M±M´Oôò 5DÑ0˜
Ù.:¸<Ó.HÐHÐ*ó”JØ"-Ø"-×"3Ñ"3Ó"5×"=Ñ"=¸cÀ3Ó"GØ%1×%>°YÞYe \×%9Ñ%9¸#¸sÓ%C×%KÑ%KÈCÐQTÔ%UÐktØ$.×$6Ñ$6°s¸CÓ$@×$FÑ$FÓ$HØ$.Ø%7ôñ 5Dòôð ×Ñ˜w×'ñY #Að^  "ÐÛ'ˆKØMXÐYfÒMgÓ"hÒMgÀT 4¨¡>°4¸±=Ò#@ÑMgÐÐ"hÜ"%Ð&9Ó":ÐÛ';Ð#Ü.1Ñ1pÐM`ÐanÒMoÓ1pÓ.pÐ+à Ñ-Ð1DÀ\Ñ1RÕRØ+Ð/JÕJØ# NÑ3Ð7JÈ>Ñ7ZÕZØ# MÑ2Ð6IÈ-Ñ6XÕXð !4°MÔ B˜Ø" d›?ØHLÏÉÐQXÓHY˜DÐ!4°^Ñ!DÑEà<OÐPTÐU]ÑP^Ñ<_˜˜[¨Ñ8Ó9ñ	 !Cô &Ð&9¸.Ñ&IÌ4×PÑPØ?RÐSaÑ?bÐ>cÐ+¨NÑ;Ø'¨Ñ7×>Ñ>¸{È>Ñ?ZÔ[Úñ% (<ð( %×+Ñ+¨KÖ8ñ/ (ó2 $8ÐÜ+>Ð?R×?VÑ?VÐWdÓ?eÓ+f×+nÑ+nØ�uó,Ð Ó(ñ $8ð 1Ü˜K×,Ñ,Ó.Ó/Ü6°t·±ÈÓUñ
ð 	
ùóU Zùó Yùóøô" !ó -Ü!$ V£“Jð-üó4ùò& #is7   ÂP Ã/P&Ä9P,ÆP2ÈQÈBQËQÐ2QÑ
Qc                óÄ  ^• / mU R                    H3  nUR                  5        H  nUT;  d  M  TR                  U5        M     M5     SU4S jjn[        TUS9nU R                    VVs/ s HR  nU Vs0 s HA  nUUS   U R                  :X  a  SX%;   a  [        XR   5      OS S3OUR                  US5      _MC     snPMT     nnn[        U5      nUSU;   S.$ s  snf s  snnf )Nc                ó’   >• U S:X  a  gU S:X  a  gU S:X  a  gU S:X  a  gU R                  S	5      (       a  g
TR                  U 5      S-   $ )Nr�   r   rŽ   rŠ   r¡   rj  r‹   rl  rO   rÔ   r)  )r’   Úindex)r�   Úeval_lines_keyss    €r?   Úsort_metricsÚ<BaseModelCardData.format_training_logs.<locals>.sort_metricsˆ  sV   ø€ Ø�g‹~ØØ�f‹}ØØ�oÓ%ØØÐ'Ó'ØØ�|‰|˜F×#Ñ#ØØ"×(Ñ(¨Ó-°Ñ1Ð1rA   r;  rŽ   rŸ  r¨  )Ú
eval_linesÚexplain_bold_in_eval)r�   r  r¦   r  )r—   rF  rš   rQ  rü   rØ   r  r   )	r=   Úlinesr�   rÅ  Úsorted_eval_lines_keysr¯  r—   rÇ  rÄ  s	           @r?   Úformat_training_logsÚ&BaseModelCardData.format_training_logs  s  ø€ àˆØ×'Ô'ˆEØ—z‘z–|�Ø˜oÕ-Ø#×*Ñ*¨3Ö/ó $ñ (÷	2ô "(¨¸\Ñ!JÐð ×*Ò*ô
ò +�ñ 2ó	ò 2�Cð Ø˜‘< 4×#7Ñ#7Ó7ð °3³;œ* T¡YÔ/ÀCÐHÈÑKà—X‘X˜c 3Ó'ò(ñ 2ô	ñ +ð 	ñ 
ô )¨Ó7ˆ
à$Ø$(¨JÑ$6ñ
ð 	
ùòùó
s   Á(
CÁ2ACÂ:CÃCc                ó  ^ ^^• T R                   R                  m[        T R                   SS5      nSUU 4S jjmSU4S jjnU" T 5      nUb  U$ U(       a   [        U5      nU" U5      nUb  U$  [        S5      e! [         a     Nf = f)a5  Convert a ``VideoDecoder`` to a ``VideoDict`` by extracting all frames.

Tries multiple strategies to extract frames:
1. ``get_frames_at`` on the original decoder (random-access batch)
2. Recreate a fresh decoder from source path and retry
3. Collect frames one-by-one via ``decoder[i]`` (random-access seek)
r¤  Nc                ó\   >• TTR                   R                  [        [        U 5      5      S.$ )N)rÑ  Útotal_num_framesÚframes_indices)r¹  r¾  rÝ   rM  )Únum_decoded_framesrÑ  r‚   s    €€r?   Ú_make_metadataÚ@BaseModelCardData._video_decoder_to_dict.<locals>._make_metadata±  s+   ø€ àØ$)§N¡N×$=Ñ$=Ü"&¤uÐ-?Ó'@Ó"Añð rA   c                óÊ  >• [        U 5      nXS-
  4 HS  n U R                  [        [        U5      5      5      nUR                  T" UR                  R
                  S   5      S.s  $    / n[        U5       H  n UR                  X   5        M     U(       a(  [        R                  " U5      T" [        U5      5      S.$ g ! [         a     M¼  f = f! [         a       MO  f = f)NrŠ   r   )r³  rµ  )
r•   Úget_frames_atrÝ   rM  r.  rÇ  r  rš   rÁ   Ústack)ÚdecoderÚnr¾  rö  Ú	collectedrŠ  rÒ  s         €r?   Ú_try_decodeÚ=BaseModelCardData._video_decoder_to_dict.<locals>._try_decode¸  sà   ø€ Ü�G“ˆAà  a¡%›j�
ðØ$×2Ñ2´4¼¸jÓ8IÓ3JÓK�Fà!'§¡Ù*8¸¿¹×9JÑ9JÈ1Ñ9MÓ*Nñò ñ )ð ˆIÜ˜1–X�ðØ×$Ñ$ W¡ZÖ0ñ ö
 ä"Ÿ[š[¨Ó3Ù&4´S¸³^Ó&Dñð ð
 øô! !ó Úðûô !ó Ûðús$   —ACÁ;CÃ
CÃCÃ
C"Ã!C"z)Could not decode frames from VideoDecoder)rÑ  r  r¦   r¥   )r¦   zdict[str, Any] | None)r¹  rR  rº  r1   r  ÚRuntimeError)r‚   r¤  rÚ  ÚresultÚfreshrÒ  rÑ  s   `    @@r?   rÜ  Ú(BaseModelCardData._video_decoder_to_dict¥  sœ   ú€ ð �n‰n×(Ñ(ˆÜ�u—~‘~ v¨tÓ4ˆ÷	ð 	÷	ñ: ˜UÓ#ˆØÑØˆMö ðÜ$ TÓ*�Ù$ UÓ+�ØÑ%Ø!�Mð &ô
 ÐFÓGÐGøô ó Ùðús   ÁA; Á;
BÂBc                ó  • [         b*  [        U [         5      (       a  [        R                  U 5      $ [        U [        5      (       a9  U R                  5        VVs0 s H  u  pU[        R                  U5      _M     snn$ U $ s  snnf )z¾Convert a value to a format suitable for model inference.

``VideoDecoder`` objects are converted to a ``VideoDict`` via :meth:`_video_decoder_to_dict`.
All other values are returned as-is.
)r1   rJ   râ   rÜ  rÜ   rz   Ú_prepare_for_inference)r‚   r*  rc  s      r?   rá  Ú(BaseModelCardData._prepare_for_inferenceå  sm   € ô Ñ#¬
°5¼,×(GÑ(GÜ$×;Ñ;¸EÓBÐBÜ�eœT×"Ñ"ØOTÏ{É{Ì}Ô]Ê}ÁtÀq�AÔ(×?Ñ?ÀÓBÒBÉ}Ò]Ð]Øˆùó ^s   Á"Bc                ó2   • U R                   c
  / SQU l         g g )N©zThe weather is lovely today.zIt's so sunny outside!zHe drove to the stadium.)rö   r  s    r?   Úrun_usage_snippetÚ#BaseModelCardData.run_usage_snippetò  s   € Ø×ÑÑ&ò#ˆDÕð 'rA   c                ó  • U R                   =(       d    U R                  nU(       d  U R                  S5      $ U R                  =(       d    Un[        S U 5       5      nU(       a  U R	                  U5      $ U R                  U5      $ )at  Generate the Python usage code snippet for the model card.

Returns the code block (including \`\`\` delimiters) showing how to use this model.
Called after :meth:`run_usage_snippet` has set :attr:`usage_examples` and :attr:`similarities`.

Subclasses can override this to generate snippets for different model types (e.g. IR models,
cross-encoders) or multimodal inputs.
Nc              3  óX   #   • U  H   n[        U[        [        45      (       + v •  M"     g 7fr9   )rJ   r  rÝ   rš  s     r?   r6  Ú;BaseModelCardData.generate_usage_snippet.<locals>.<genexpr>  s!   é € ÐPÊÀœz¨$´´d°Ó<×<Ñ<Êùs   ‚(*)rº   rö   Ú_generate_text_snippetrU  Ú_generate_non_text_snippet)r=   r«  r   Úhas_non_texts       r?   Úgenerate_usage_snippetÚ(BaseModelCardData.generate_usage_snippetú  su   € ð ×-Ñ-×D°×1DÑ1DˆÞØ×.Ñ.¨tÓ4Ð4ð ×$Ñ$×/¨ˆÜÑPÉÓPÓPˆÞØ×2Ñ2°7Ó;Ð;à×*Ñ*¨7Ó3Ð3rA   c           
     óN  • [        U SS5      n[        U SS5      nU R                  =(       d    UnU=(       d    / SQnU R                  5       nSU 3SSS	U S
U S3SS/nU H  nUR                  SU< S35        M     UR	                  SSSS[        U5       SU S3SSS/5        U R                  (       a-  UR                  S5        UR                  U R                  5        O,UR	                  SS[        U5       S[        U5       S3/5        SSR                  U5      -   S-   $ )z#Generate a text-only usage snippet.Ú_snippet_model_classÚSentenceTransformerÚ_snippet_default_model_idÚsentence_transformers_model_idrä  ú"from sentence_transformers import r
  õ   # Download from the ðŸ¤— Hubúmodel = ú("ú")ú# Run inferencezsentences = [ú    Ú,Ú]z$embeddings = model.encode(sentences)úprint(embeddings.shape)ú# [r  ú.# Get the similarity scores for the embeddingsú7similarities = model.similarity(embeddings, embeddings)úprint(similarities)úprint(similarities.shape)ú
```python
Ú
rM  )rº  ræ   Ú"_get_snippet_output_dimensionalityrš   rS  r•   rÿ   r“   )	r=   r«  Úmodel_classÚdefault_model_idræ   r‘  Ú
output_dimrÉ  r>  s	            r?   rê  Ú(BaseModelCardData._generate_text_snippet  sO  € ä˜dÐ$:Ð<QÓRˆÜ" 4Ð)DÐFfÓgÐØ—=‘=×4Ð$4ˆØ÷ 
ò 
ˆð
 ×<Ñ<Ó>ˆ
ð 1°°Ð>ØØ*Ø�{�m 2 h Z¨rÐ2ØØð
ˆó ˆDØ�L‰L˜4 ™x qÐ)Ö*ñ à�‰àØ6Ø)Ø”c˜(“m�_ B z l°!Ð4ØØ@ØIðô
	
ð ××Ø�L‰LÐ.Ô/Ø�L‰L˜×*Ñ*Õ+à�L‰Là/Øœ#˜h›-˜¨¬3¨x«=¨/¸Ð;ðôð ˜tŸy™y¨Ó/Ñ/°'Ñ9Ð9rA   c           
     óP  • [        U SS5      n[        U SS5      nU R                  =(       d    UnU R                  5       nSU 3SSSU S	U S
3SS/nU H'  nUR                  SU R	                  U5       S35        M)     UR                  SSSS[        U5       SU S3SSS/5        U R                  (       a-  UR                  S5        UR                  U R                  5        O,UR                  SS[        U5       S[        U5       S3/5        SSR                  U5      -   S-   $ )zYGenerate a usage snippet for non-text inputs (multimodal dicts or single-modality items).rð  rñ  rò  ró  rô  r
  rõ  rö  r÷  rø  rù  z
inputs = [rú  rû  rü  z!embeddings = model.encode(inputs)rý  rþ  r  rÿ  r   r  r  r  r  rM  )	rº  ræ   r  rš   Ú_format_snippet_valuerS  r•   rÿ   r“   )r=   r«  r  r  ræ   r  rÉ  r›  s           r?   rë  Ú,BaseModelCardData._generate_non_text_snippet?  sJ  € ä˜dÐ$:Ð<QÓRˆÜ" 4Ð)DÐFfÓgÐØ—=‘=×4Ð$4ˆØ×<Ñ<Ó>ˆ
ð 1°°Ð>ØØ*Ø�{�m 2 h Z¨rÐ2ØØð
ˆó ˆDØ�L‰L˜4 × :Ñ :¸4Ó @ÐAÀÐCÖDñ à�‰àØ3Ø)Ø”c˜'“l�^ 2 j \°Ð3ØØ@ØIðô
	
ð ××Ø�L‰LÐ.Ô/Ø�L‰L˜×*Ñ*Õ+à�L‰Là/Øœ#˜g›,˜ r¬#¨g«,¨°qÐ9ðôð ˜tŸy™y¨Ó/Ñ/°'Ñ9Ð9rA   c                óZ  • US   nUS   (       d  SU4$ [        US   [        US   5      S      5      n/ n[        U5       HA  n0 nU H%  nUS   U   U   n	U R                  X’5      u  p¢X§U'   M'     UR	                  U5        MC     [        [        U5      R                  SS5      S5      U4$ )zþRender the examples table for a dataset, saving non-text values as assets when possible.

Returns:
    A tuple of ``(rendered_table, new_asset_counter)``. The counter should be passed to
    subsequent calls to avoid filename collisions across datasets.
r>  r‘  r
  r   r:  r;  r<  )r•   rÝ   rM  Ú_format_and_save_examplerš   r   r   rS  )r=   r   Úasset_counterrX  rZ  Úexamples_linesÚ
sample_idxr]  r[  r‚   Úcells              r?   rT  Ú(BaseModelCardData._render_examples_tableh  sÐ   € ð 'Ð'9Ñ:ˆØ˜J×'Ø�}Ð$Ð$Ü˜, zÑ2´4¸ÀZÑ8PÓ3QÐRSÑ3TÑUÓVˆØˆÜ Ö,ˆJØˆGÛ)�Ø$ ZÑ0°Ñ8¸ÑD�Ø&*×&CÑ&CÀEÓ&YÑ#�Ø"&˜“ñ *ð ×!Ñ! 'Ö*ñ -ô Ô)¨.Ó9×AÑAÀ%ÈÓOÐQUÓVÐXeÐeÐerA   c                óô  • [         =(       a    [        U[         5      =(       dt    [        SL=(       a    [        U[        5      =(       dN    [        U[        5      =(       a    SU;   =(       a    SU;   =(       d    [        SL=(       a    [        U[        5      nU(       a  U R
                  (       d  SU R                  U5       S3U4$ U R                  U5      nUb/  X@R                  ;   a   U R                  XR                  U   5      U4$ [        R                  R                  U R
                  S5      nU R                  XUSS9nU(       a  U R                  X5      US	-   4$ SU R                  U5       S3U4$ )
a*  Format a dataset example value for the model card table, saving non-text values as assets.

Delegates the actual file I/O to :meth:`_save_asset` and wraps the resulting path in the
appropriate HTML tag via :meth:`_example_asset_html`.

Returns:
    A tuple of ``(html_cell_content, new_counter)``.
Nr³  r´  r$  r%  r�  Úexample_)rñ  rŠ   )r¿  rJ   r0   rÜ   r1   r¹   Ú_format_example_valuer{  r»   Ú_example_asset_htmlr£  r¤  r“   r¦  )r=   r‚   rª  Úis_mediar‹  r©  r®  s          r?   r  Ú*BaseModelCardData._format_and_save_example}  sO  € ô ×5œ* U¬HÓ5÷ NÜ DÐ(×L¬Z¸¼|Ó-L÷Nä˜5¤$Ó'×Y¨G°uÑ,<×YÀÐTYÑAY÷Nô  DÐ(×L¬Z¸¼|Ó-Lð	 	ö ˜tŸ}Ÿ}Ø˜D×6Ñ6°uÓ=Ð>¸gÐFÈÐOÐOð ×'Ñ'¨Ó.ˆØÑ#¨×8IÑ8IÓ(IØ×+Ñ+¨E×3DÑ3DÀ\Ñ3RÓSÐU\Ð\Ð\ä—W‘W—\‘\ $§-¡-°Ó:ˆ
Ø×#Ñ# E°wÀzÐ#ÐRˆÞØ×+Ñ+¨EÓ<¸gÈ¹kÐIÐIà˜×2Ñ2°5Ó9Ð:¸'ÐBÀGÐKÐKrA   c                ó¦  • [         (       a  [        U[         5      (       a  SU S3$ [        b  [        U[        5      (       d!  [        U[        5      (       a*  SU;   a$  SU;   a  [	        US   5      US   -  nSU SUS S3$ [
        b5  [        U[
        5      (       a   UR                  nS	U S
UR                  S S3$ SU R                  U5       S3$ )z6Generate an inline HTML tag for a saved example asset.z
<img src="z" width="200">r³  r´  z<audio controls src="z"><code>&lt;audio r0  zs&gt;</code></audio>z!<video controls width="200" src="z"><code>&lt;video zs&gt;</code></video>r$  r%  )	r¿  rJ   r0   rÜ   r•   r1   r¹  r»  r  )r=   r‚   r®  ÚdurationrB  s        r?   r  Ú%BaseModelCardData._example_asset_html›  sâ   € çŠ8œ
 5¬(×3Ñ3Ø ˜z¨Ð8Ð8äÑ$¬°E¼<×)HÑ)HÜ�uœd×#Ñ#¨°5Ó(8¸_ÐPUÓ=Uä˜5 ™>Ó*¨U°?Ñ-CÑCˆHØ*¨8¨*Ð4FÀxÐPSÀnÐThÐiÐiÜÑ#¬
°5¼,×(GÑ(GØ—‘ˆAà3°H°:ð >#Ø#$×#5Ñ#5°cÐ":Ð:NðPðð ˜×2Ñ2°5Ó9Ð:¸'ÐBÐBrA   c           	     óv  • [         b   [        U [         5      (       a  U S   U S   S.n [        bZ  [        U [        5      (       aE  U R                  nSUR                  S SUR
                   SUR                   S	UR                  S
 S3	$ [        (       a2  [        U [        5      (       a  SU R
                   SU R                   S3$ [        U [        5      (       a-  SU ;   a'  SU ;   a!  [        U S   5      U S   -  nSUS SU S    S3$ [        U [        5      (       a  SU ;   a  SU ;   a  g[        U [        5      (       a#  [        U 5      S:”  a  [        U SS 5      SS S-   $ [        U [        5      (       a  [        U 5      S:”  a  U SS S-   $ [        U 5      R                  SS5      R                  SS5      nU$ )zAFormat a dataset example value for the model card examples table.Nr³  r´  r¸  z
&lt;video r0  zs r9  z @ r2  zfps&gt;z
&lt;image z&gt;z
&lt;audio zs @ z Hz&gt;rµ  z&lt;video&gt;r)  r�   z, ...]r+  z...r  z<br>Ú|z\|)r0   rJ   r1   r¹  r»  r¼  r½  rR  r¿  rÜ   r•   rÝ   r  rS  )r‚   rB  r  rÝ  s       r?   r  Ú'BaseModelCardData._format_example_value­  s¤  € ô Ñ#¬
°5¼,×(GÑ(GØ# G™n¸uÀ_Ñ?UÑVˆEÜÑ#¬
°5¼,×(GÑ(GØ—‘ˆAØ × 2Ñ 2°3Ð7°r¸!¿'¹'¸À!ÀAÇHÁHÀ:ÈSÐQR×Q^ÑQ^Ð_bÐPcÐcjÐkÐkßŠ8œ
 5¬(×3Ñ3Ø §¡˜}¨A¨e¯l©l¨^¸4Ð@Ð@Ü�eœT×"Ñ" w°%Ó'7¸OÈuÓ<TÜ˜5 ™>Ó*¨U°?Ñ-CÑCˆHØ ¨˜~¨T°%¸Ñ2HÐ1IÈÐQÐQÜ�eœT×"Ñ" w°%Ó'7Ð<LÐPUÓ<UØ"Ü�eœT×"Ñ"¤s¨5£z°A£~Ü�u˜R˜a�y“> # 2Ð&¨Ñ1Ð1Ü�eœS×!Ñ!¤c¨%£j°4Ó&7Ø˜˜$�< %Ñ'Ð'Ü�U“×#Ñ# D¨&Ó1×9Ñ9¸#¸uÓEˆØˆrA   c                ó˜  ^ • [        U[        5      (       a0  UR                  S5      (       a  [        T R	                  U5      5      $ [        U[
        5      (       a/  SR                  U 4S jUR                  5        5       5      nSU S3$ [        U[        5      (       a!  SR                  U 4S jU 5       5      nSU S3$ [        U5      $ )	zùFormat a value for inclusion in a code snippet.

Strings are shown as repr (quoted), and asset paths are converted to Hub URLs
when model_id is available. Dicts and lists are formatted recursively so that
nested asset paths also get URL conversion.
rÌ  r  c              3  óV   >#   • U  H  u  pU< S TR                  U5       3v •  M      g7fr5  ©r  )r5  r*  rc  r=   s      €r?   r6  Ú:BaseModelCardData._format_snippet_value.<locals>.<genexpr>Î  s,   øé € ÐbÒTaÉDÈA ¡ R¨×(BÑ(BÀ1Ó(EÐ'FÕGÒTaùs   ƒ&)Ú{Ú}c              3  óF   >#   • U  H  nTR                  U5      v •  M     g 7fr9   r"  )r5  rc  r=   s     €r?   r6  r#  Ñ  s   øé € ÐKÂUÀ˜d×8Ñ8¸×;Ð;ÂUùs   ƒ!Ú[rü  )	rJ   r  r‘   r÷   Ú_asset_path_to_urlrÜ   r“   rz   rÝ   )r=   r‚   r”  Úelemss   `   r?   r  Ú'BaseModelCardData._format_snippet_valueÄ  sª   ø€ ô �eœS×!Ñ! e×&6Ñ&6°y×&AÑ&AÜ˜×/Ñ/°Ó6Ó7Ð7Ü�eœT×"Ñ"Ø—I‘IÔbÐTY×T_ÑT_ÔTaÓbÓbˆEØ˜�w˜b�>Ð!Ü�eœT×"Ñ"Ø—I‘IÔKÁUÓKÓKˆEØ�u�g˜Q�<ÐÜ�E‹{ÐrA   c                óL   • U R                   (       a  SU R                    SU 3$ U$ )z]Convert a relative asset path to a Hub URL if model_id is available, otherwise keep relative.úhttps://huggingface.co/ú/resolve/main/r~  )r=   Úrelative_paths     r?   r(  Ú$BaseModelCardData._asset_path_to_urlÕ  s&   € à�=�=Ø,¨T¯]©]¨O¸>È-ÈÐYÐYØÐrA   c                ó|   • U R                   (       a   U R                   R                  5       $ g! [         a     gf = f)NÚ?)rY   Úget_embedding_dimensionr  r  s    r?   r  Ú4BaseModelCardData._get_snippet_output_dimensionalityÛ  s=   € Ø�:�:ðØ—z‘z×9Ñ9Ó;Ð;ð øô ó ØØðús   “. ®
;º;c                ó:  • U R                   R                  R                  5       n[        UR                  5      S-  [        UR
                  5      SSUR                  S:H  UR                  UR                  S.nUR                  (       a  UR                  US'   SU0$ )Nr+  Ú
codecarbonzfine-tuningÚY)Ú	emissionsÚenergy_consumedr   Útraining_typeÚon_cloudÚ	cpu_modelÚram_total_sizeÚhardware_usedr¶   )
rK   ÚtrackerÚ_prepare_emissions_datarÕ   r7  r8  r:  r;  r<  Ú	gpu_model)r=   Úemissions_datar¶   s      r?   Úget_codecarbon_dataÚ%BaseModelCardData.get_codecarbon_dataã  s•   € Ø×2Ñ2×:Ñ:×RÑRÓTˆô ˜~×7Ñ7Ó8¸4Ñ?Ü$ ^×%CÑ%CÓDØ"Ø*Ø&×/Ñ/°3Ñ6Ø'×1Ñ1Ø,×;Ñ;ñ	,
Ðð ×#×#Ø0>×0HÑ0HÐ˜_Ñ-Ø"Ð$4Ð5Ð5rA   c                ó.  • U R                   c  S S S S.$ [        R                  " 5       U R                   -
  nXR                  -
  n[        U5      U R                  (       a  [        U R                  5      OS U R                  (       a  [        U5      S.$ S S.$ )N)Útraining_timeÚevaluation_timeÚ
total_time)r~   r}   r–   rÒ   )r=   Útotal_durationÚtraining_durations      r?   Úget_training_duration_dataÚ,BaseModelCardData.get_training_duration_dataó  sŽ   € Ø×$Ñ$Ñ,Ø%)¸dÐRVÑWÐWÜŸš› t×'@Ñ'@Ñ@ˆØ*×-EÑ-EÑEÐä,Ð->Ó?ØLP×Ld×Ldœ¨t×/GÑ/GÔHÐjnØ=A×=U×=Uœ/¨.Ó9ñ
ð 	
ð \`ñ
ð 	
rA   c                óþ   • U R                   c  0 $ U R                   R                   Vs/ s H  n[        U5      R                  5       PM     nnU R                   R                  [        U R                   5      US.$ s  snf )N)Úmodel_max_lengthÚmodel_stringÚsupported_modalities)rY   rV  r#   r´  Úmax_seq_lengthr  )r=   rB  rO  s      r?   Úget_model_specific_metadataÚ-BaseModelCardData.get_model_specific_metadataþ  sk   € Ø�:‰:ÑØˆIØDHÇJÁJ×DYÒDYÓZÒDY¸q¤°Ó 2× 8Ñ 8Ö :ÑDYÐÐZà $§
¡
× 9Ñ 9Ü §
¡
›OØ$8ñ
ð 	
ùò  [s   ¨#A:c                óÂ   • U R                   (       a/  U R                  R                  R                   SU R                    3$ U R                  R                  R                  $ )Nz
 based on )r·   rY   r>   r©   r  s    r?   Úget_default_model_nameÚ(BaseModelCardData.get_default_model_name  sF   € Ø�?�?Ø—j‘j×*Ñ*×3Ñ3Ð4°J¸t¿¹Ð>OÐPÐPà—:‘:×'Ñ'×0Ñ0Ð0rA   c                ó†  • U R                   (       a"  U R                  (       d   U R                  5         U R                  (       d  U R                  5       U l         U R                  5         0 U l	         U R                  5         U R                  (       aR  SnU R                  U R                  4 H4  nU H+  nSU;   d  M  SU;   d  M   U R                  XB5      u  US'   nM-     M6     [        U 5       Vs0 s H"  oUR                   [#        XR                   5      _M$     nn U R%                  5       US'   U R&                  (       a    UR)                  U R+                  5       5        U R,                  (       a    UR)                  U R/                  5       5        [1        U R,                  5      S:„  US'   U R2                  (       a[  U R2                  R4                  (       a@  U R2                  R4                  R6                  b  UR)                  U R9                  5       5        UR)                  U R;                  5       5        UR)                  U R=                  5       5        SU l         [>         H  nURA                  US 5        M     X`l!        U$ ! [         a     GN`f = f! [         a#  n[        R                  SU 35         S nAGNUS nAff = f! [         a#  n[        R                  SU 35         S nAGNmS nAff = f! [         a$  n[        R                  SU 35         S nAGMn  S nAff = fs  snf ! [         a(  n[        R                  S	U 35        S
US'    S nAGN)S nAff = f! [         a#  n[        R                  SU 35         S nAGN(S nAff = f! [         a#  n[        R                  SU 35         S nAGN'S nAff = f)Nz,Error while computing usage snippet output: z)Error while saving usage example assets: r   r‘  r>  r?  z)Error while re-rendering examples table: Úusage_snippetz&Error while generating usage snippet: r
  z+Error while formatting evaluation metrics: z&Error while formatting training logs: rk  Úhide_eval_linesF)"r   r·   r—  r  rå   rT  rå  r
  r  r»   r°  r¹   rN   rQ   rT  r
   r  rº  rí  r¸   r™   r¿  r—   rË  r•   rK   r>  Ú_start_timerB  rJ  rQ  ÚIGNORED_FIELDSrR  r¼   )r=   ÚexcÚexample_asset_counterr  r   r	   Ú
super_dictr�   s           r?   ry   ÚBaseModelCardData.to_dict  sH  € à�?�? 4§?§?ðØ×*Ñ*Ô,ð
 ��Ø"×9Ñ9Ó;ˆDŒOð	QØ×"Ñ"Ô$ð
 ˆÔð
	NØ×*Ñ*Ô,ð �=�=Ø$%Ð!Ø!%×!4Ñ!4°d×6HÑ6HÓ I�Û$0�LØ! \Õ1Ð6HÈLÕ6Xð^ØTX×ToÑToØ ,óUÑQ˜LÐ)9Ñ:Ò<Qó %1ñ !Jô JPÐPTÌÓVÊÀ—j‘j¤'¨$·
±
Ó";Ò;Éˆ
ÐVð	-Ø*.×*EÑ*EÓ*GˆJ�Ñ'ð ×!×!ðTØ×!Ñ! $×":Ñ":Ó"<Ô=ð
 ××ðOØ×!Ñ! $×";Ñ";Ó"=Ô>ô ),¨D×,>Ñ,>Ó(?À#Ñ(Eˆ
Ð$Ñ%ð ×%×%Ø×)Ñ)×1×1Ø×)Ñ)×1Ñ1×=Ñ=ÑIà×Ñ˜d×6Ñ6Ó8Ô9à×Ñ˜$×9Ñ9Ó;Ô<ð 	×Ñ˜$×:Ñ:Ó<Ô=ØˆŒç!ˆCØ�N‰N˜3 Ö%ñ "ð 'ÔàÐøôo ó Úðûô ó 	QÜ�N‰NÐIÈ#ÈÐO×PÒPûð	Qûô ó 	NÜ�N‰NÐFÀsÀeÐL×MÒMûð	Nûô  )ó ^Ü"ŸN™NÐ-VÐWZÐV[Ð+\×]Ó]ûð^üò Wøô
 ó 	-Ü�N‰NÐCÀCÀ5ÐIÔJØ*,ˆJ�×'ûð	-ûô ó TÜ—‘Ð!LÈSÈEÐR×SÒSûðTûô ó OÜ—‘Ð!GÈÀuÐM×NÒNûðOús§   ¤J ÁJ Á3K ÃK8Ã3)L)ÄL. ÅM# Å5N Ê
JÊJÊ
KÊ"K Ë KË
K5ËK0Ë0K5Ë8
L&ÌL!Ì!L&Ì.
M Ì8MÍM Í#
NÍ-NÎNÎ
O ÎN;Î;O c           	     ó  • U R                   b  U R                   nS U l         OU R                  5       n[        UR                  5        VVs0 s H  u  p4U[        ;   d  M  US / 4;  d  M  X4_M     snnSUS9R                  5       $ s  snnf )NF)Ú	sort_keysÚ
line_break)r¼   ry   r   rz   ÚYAML_FIELDSÚstrip)r=   ra  r.  r�   r‚   s        r?   Úto_yamlÚBaseModelCardData.to_yamll  s�   € Ø×ÑÑ(Ø×$Ñ$ˆDØ $ˆDÕà—<‘<“>ˆDÜØ*.¯*©*¬,Ôiª,™J˜C¸#ÄÑ:L‹ZÐQVÐ_cÐegÐ^hÑQh‹ZˆSŠZ©,ÒiØØ!ñ
÷ ‰%‹'ð		ùÛis   Á
B
ÁB
Á(B
)r»   r¼   r·   rõ   rü   rú   rQ   r   rþ   rø   r¯   r°   rY   ræ   rå   rN   rö   rº   rT   )r¦   r§   r9   )r  úlist[dict[str, Any]]r  rý   r¦   rf  )r]   úlist[nn.Module]r¦   r§   )r%  r  r¦   r§   )r^   úDataset | DatasetDictr¦   r§   )r^   r)   r¦   r§   )r›  rÜ   r¦   rð   )r‚   r   r¦   rû   )r
  )
r‚   r   r©  r  ra  r  rñ  r  r¦   rä   )r   r   )
r  r2   rœ   r¥   r›   r  r%  r  r¦   r§   )r^   r(   r¦   r§   )r^   rh  r3  rä   r¦   rç   )r^   z Dataset | IterableDataset | Noner   r¥   rO   z'dict[str, nn.Module] | nn.Module | Noner¦   rù   )
r^   rh  rm  rf  rO   ú nn.Module | dict[str, nn.Module]rn  zLiteral['train', 'eval']r¦   rf  )rY   r3   r¦   r§   )ræ   r  r¦   r§   )ræ   r  r  rä   r¦   rð   )r¯   ústr | list[str]r¦   r§   )r°   r  r¦   r§   )r²   rj  r¦   r§   ©r¦   r¥   )r‚   r   r¦   r¥   r²  )r¦   r  )r«  zlist[str] | Noner¦   r  )r«  zlist[str | dict[str, str]]r¦   r  )r   )r   rÜ   r  r  r¦   útuple[str, int])r‚   r   rª  r  r¦   rl  )r‚   r   r®  r  r¦   r  rO  )r.  r  r¦   r  )r¦   z	int | str)r¦   zdict[str, str | None])`r©   rª   r«   r¬   Ú__doc__r	   rÝ   r¯   Ú__annotations__r°   rå   ræ   rN   rQ   ré   r²   rñ   ró   r·   rõ   rÜ   r|   r{   r¸   r—   rT   rö   rº   rø   rK   r~   r–   rú   rü   rþ   r³   rÿ   r   r  r¹   r»   r¼   r´   r±   rÉ   r  r   Ú__file__Úparentr  rY   r  r  rS   r&  rU   rW  r°  Ústaticmethodr¨  r{  r¦  r  r  r  rg  rM   r{  r  r…  rˆ  r‹  rG   r—  r¿  rË  rÜ  rá  rå  rí  rê  rë  rT  r  r  r  r  r(  r  rB  rJ  rQ  rT  ry   rd  r­   rÍ   rA   r?   râ   râ   4  sœ  ‡ ññ6 (-¸TÑ'B€HÐ$ÓBØ€GˆZÓØ!€J�
Ó!Ø€HˆjÓÙ+0ÀÑ+F€NÐ(ÓFÙ*/ÀÑ*E€MÐ'ÓEØ'€IˆzÓ'Ùñ
ñ€Dˆ)ó ð #Ð�dÓ"Ù%*°4Ñ%8Ð˜dÓ8ñ #¨4°eÑ<€J�
Ó<Ù&+°D¸uÑ&EÐ˜ÓEÙ27ÈÐSXÑ2YÐ ÓYÙ*/ÀÈ5Ñ*QÐ˜ÓQÙDIÐZ^ÐejÑDkÐÐAÓkÙ,1À$ÈUÑ,S€MÐ)ÓSÙ#(¸ÀEÑ#J€FÐ ÓJÙ"'°¸5Ñ"A€N�KÓAÙ*/¸À5ÈuÑ*UÐ˜KÓUÙ/4ÀTÐPUÑ/VÐÐ,ÓVÙ6;ÀDÈuÑ6UÐÐ3ÓUÙ).°tÀ%Ñ)HÐ˜,ÓHÙ!&¨s¸Ñ!?Ð˜Ó?Ù %°dÀÑ G€Iˆ~ÓGÙ"'°¸5Ñ"A€O�ZÓAÙ!¨$°UÀÑG€HˆkÓGÙ°¸5ÀuÑM€HˆiÓMÙ$¨T¸ÀEÑJ€L�*ÓJñ  T°Ñ6€J�Ó6Ù R¨eÑ4€K�Ó4Ù ¨°EÀÑF€HˆjÓFÙ¨t¸%ÀeÑL€L�$ÓLÙ %¨d¸ÀUÑ K€L�+ÓKñ Ð&;À%ÑH€L�#ÓHÙÐ&=ÀEÑJ€L�#ÓJÙ#°LÀuÑM€Gˆ^ÓMÙ©¨X«×(=Ñ(=Ð@XÑ(XÐ_dÐkpÑq€M�4Óqñ $¨D°uÀ5ÑI€EÐÓIô!ð  RVð/#Ø0ð/#ØCNð/#à	õ/#ôbgô>$ôP9ôddôLC.ðJ ótó ðtð óó ðö*jðZ ^_ðØ&ðØ1?ðØHKðØWZðà	õô6
ö* ð>Gà1ðGð %ðGð 6ð	Gð
 
ôGðR28à&ð28ð /ð28ð /ð	28ð
 /ð28ð 
ô28ôhô"!öô !ô
ô&ôô&
òB$
ðL ó=Hó ð=Hð~ ó
ó ð
ôô4ô.,:ô\':öRfô*Lô<Cð$ óó ðô,ô"ôô6ô 	
ô
ô1ô\÷|
ñ 
rA   râ   c                óú   • [         R                  " U R                  U R                  R                  SS9nUR                  n[        U R                  SS 5      nU(       a  SU S3nUR                  SSU S35      nU$ )	Nu   ðŸ¤—)Ú	card_datar  Úhf_emojiræ   r,  r-  zsrc="assets/zsrc="rÌ  )r   Úfrom_templaterF   r  Úcontentrº  rS  )rY   Ú
model_cardrv  ræ   Úbase_urls        r?   Úgenerate_model_cardry  y  s~   € Ü×(Ò(Ø×'Ñ'°u×7LÑ7L×7ZÑ7ZÐekñ€Jð × Ñ €Gô �u×,Ñ,¨j¸$Ó?€HÞØ,¨X¨J°nÐEˆØ—/‘/ .°E¸(¸À7Ð2KÓLˆà€NrA   rk  )rÎ   rÕ   r¦   r  )r‚   zfloat | int | strr¦   r   )rO   ri  r¦   rg  )rY   r3   r¦   r  )fÚ
__future__r   rU  Úloggingr£  rD  r  r}   Úcollectionsr   r   r   r   Údataclassesr   r	   r
   Úpathlibr   Úplatformr   Úpprintr   Útextwrapr   Útypingr   r   r   rÁ   rÀ   Úhuggingface_hubr   r   r   r  r   rƒ  Úhuggingface_hub.repocard_datar   r   Úhuggingface_hub.utilsr   r   Útqdm.autonotebookr   r   Útransformers.integrationsr   Útransformers.modelcardr   Útransformers.trainer_callbackr   r    r¿   r"   rÄ   Ú#sentence_transformers.base.modalityr#   Ú(sentence_transformers.base.training_argsr$   Úsentence_transformers.utilr%   r&   r'   r³   r(   r)   r*   r+   r,   r-   r~  ÚImportErrorr.   r  r/   r€  Ú	PIL.Imager¿  Útorchcodec.decodersr0   ÚOSErrorr1   Ú	getLoggerr©   r
  Ú/sentence_transformers.base.evaluation.evaluatorr2   Ú sentence_transformers.base.modelr3   Ú"sentence_transformers.base.trainerr4   r6   rb  rZ  rÉ   rÒ   rØ   rR   râ   ry  rÍ   rA   r?   Ú<module>r•     s­  ðÝ "ã Û Û 	Û Û 	Û ß 6Ñ 6Ý ß 0Ñ 0Ý Ý #Ý Ý ß .Ñ .ã Û ß /Ý <Ý 8ß QÝ +Ý Ý "Ý (Ý 8Ý 6ß Få NÝ ?Ý Jß _Ñ _á×ÑßZÕZðÝ2ðÝ2ðÝ2ðÝ+ðÝ0ðÝ0ð 
×	Ò	˜8Ó	$€æÝMÝ:Ý>ôM˜Oô Mò`€ò
€ôô,ôôð( ôA˜ó Aó ðAõH2øð_: ó ØŠðûð ó ØŠðûð ó ØŠðûð
 ó Ø‚Hðûð
 	�WÐó Ø‚Lðûð
 	�WÐó Ø‚Lðúsl   Ã"E3 Ã)F Ã0F Ã7F Ã>F+ ÄF; Å3E>Å=E>ÆFÆFÆFÆFÆF(Æ'F(Æ+
F8Æ7F8Æ;
GÇG