Ë
    -Œ:j*  ã                   óR  — d Z ddlZddlmZmZ ddlZddlmZ ddlm	Z	m
Z
mZ ddlmZmZ ddlmZ dd	lmZmZmZmZmZmZmZmZmZmZ dd
lmZ ddlmZm Z   e! ee«      «      Z" ee«      Z# ejH                  de#D � ci c]  } | | “Œ c} e%¬«      Z&ee%dz   ejN                  ddjQ                  e"«      › d� ee"«      ¬«      f   Z) ed¬«      Z*e*jW                  dg d¢¬«      dddddeddddddfdee%dz   ejX                  d¬«      f   dedededee&dz   ejN                  d¬«      f   ded e)d!ee- ejN                  d"d#d$¬«      f   d%ee- ejN                  d&d'¬«      f   d(ee- ejN                  d)d*d+¬«      f   d,ed-ed.dfd/„«       Z.e*jW                  d0g d1¢¬«      	 	 dPd2ee% ejX                  d3¬«      f   ded-ed.dfd4„«       Z/e*jW                  d5d6d7g¬«      	 	 	 dQd2ee% ejX                  d8¬«      f   d,ed e)d-ed.df
d9„«       Z0e*jW                  d:g d;¢¬«      	 	 	 dQd2ee% ejX                  d8¬«      f   d<ee%dz   ejN                  d=d>¬«      f   d?ee%dz   ejN                  d@¬«      f   d-ed.df
dA„«       Z1e*jW                  dBdCdDg¬«      	 dRdBee% ejX                  dE¬«      f   d-ed.dfdF„«       Z2e*jW                  dGg dH¢¬«      	 	 	 dSd2ee% ejX                  d8¬«      f   dIee- ejN                  dJdK¬«      f   dLee- ejN                  dMdN¬«      f   d-ed.df
dO„«       Z3yc c} w )Ta  Contains commands to interact with datasets on the Hugging Face Hub.

Usage:
    # list datasets on the Hub
    hf datasets ls

    # list datasets with a search query
    hf datasets ls --search "code"

    # get info about a dataset
    hf datasets info HuggingFaceFW/fineweb
é    N)Ú	AnnotatedÚget_args)Úexecute_raw_sql_query)ÚCLIErrorÚRepositoryNotFoundErrorÚRevisionNotFoundError)ÚDatasetSort_TÚExpandDatasetProperty_T)ÚDatasetCardé   )
ÚREPO_LIST_DEFAULT_LIMITÚ	AuthorOptÚ	FilterOptÚLimitOptÚRevisionOptÚ	SearchOptÚTokenOptÚ
get_hf_apiÚmake_expand_properties_parserÚtyper_factory)Úlist_repo_files_cmd)Ú_dataclass_to_dictÚoutÚDatasetSortEnum)Útypez”Comma-separated properties to return. When used, only the listed properties (and id) are returned. Example: '--expand=downloads,likes,tags'. Valid: z, ú.)ÚhelpÚcallbackz"Interact with datasets on the Hub.)r   z	list | ls)zhf datasets lsz*hf datasets ls --sort downloads --limit 10zhf datasets ls --search "code"z*hf datasets ls --filter benchmark:officialz$hf datasets ls HuggingFaceFW/finewebz'hf datasets ls HuggingFaceFW/fineweb -Rz.hf datasets ls HuggingFaceFW/fineweb --tree -h)ÚexamplesFÚrepo_idzVDataset ID (e.g. `username/repo-name`) to list files from. If omitted, lists datasets.ÚsearchÚauthorÚfilterÚsortzSort results.ÚlimitÚexpandÚhuman_readablez--human-readablez-hz=Show sizes in human readable format (only for listing files).Úas_treez--treez3List files in tree format (only for listing files).Ú	recursivez--recursivez-Rz0List files recursively (only for listing files).ÚrevisionÚtokenÚreturnc           	      óÌ  — | �£|�t        j                  d«      ‚|�t        j                  d«      ‚|�t        j                  d«      ‚|�t        j                  d«      ‚|t        k7  rt        j                  d«      ‚|�t        j                  d«      ‚t        | d|||	|
|¬	«      S |rt        j                  d
«      ‚|	rt        j                  d«      ‚|rt        j                  d«      ‚|
�t        j                  d«      ‚t	        |¬«      }|r|j
                  nd}|j                  ||||||¬«      D �cg c]  }t        |«      ‘Œ }}t        j                  |«       yc c}w )z½List datasets on the Hub, or files in a dataset repo.

    When called with no argument, lists datasets on the Hub.
    When called with a dataset ID, lists files in that dataset repo.
    Nz'Cannot use --search when listing files.z'Cannot use --author when listing files.z'Cannot use --filter when listing files.z%Cannot use --sort when listing files.z&Cannot use --limit when listing files.z'Cannot use --expand when listing files.Údataset)r    Ú	repo_typer'   r(   r)   r*   r+   z(Cannot use --tree when listing datasets.z-Cannot use --recursive when listing datasets.z2Cannot use --human-readable when listing datasets.z,Cannot use --revision when listing datasets.©r+   )r#   r"   r!   r$   r%   r&   )
ÚtyperÚBadParameterr   r   r   ÚvalueÚlist_datasetsr   r   Útable)r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   ÚapiÚsort_keyÚdataset_infoÚresultss                   ú^/var/www/html/tokenscope/api/venv/lib/python3.12/site-packages/huggingface_hub/cli/datasets.pyÚdatasets_lsr;   F   s‰  € ð\ ÐØÐÜ×$Ñ$Ð%NÓOÐOØÐÜ×$Ñ$Ð%NÓOÐOØÐÜ×$Ñ$Ð%NÓOÐOØÐÜ×$Ñ$Ð%LÓMÐMØÔ+Ò+Ü×$Ñ$Ð%MÓNÐNØÐÜ×$Ñ$Ð%NÓOÐOÜ"ØØØ)ØØØØô
ð 	
ñ Ü× Ñ Ð!KÓLÐLÙÜ× Ñ Ð!PÓQÐQÙÜ× Ñ Ð!UÓVÐVØÐÜ× Ñ Ð!OÓPÐPä
˜5Ô
!€CÙ!ˆt�zŠz t€Hð  ×-Ñ-ØØØØØØð .ó 
ö
àô 	˜<Õ(ð
€Gð 
ô ‡I�IˆgÕùò
s   Ä7E!Úleaderboard)z4hf datasets leaderboard SWE-bench/SWE-bench_VerifiedzLhf datasets leaderboard SWE-bench/SWE-bench_Verified --limit 5 --format jsonzIhf datasets ls --filter benchmark:official  # list available leaderboardsÚ
dataset_idz?The benchmark dataset ID (e.g. `SWE-bench/SWE-bench_Verified`).c                 ó0  — t        |¬«      }|j                  | ¬«      }|d| D �cg c]  }t        |«      ‘Œ }}t        j                  |g d¢d¬«       t        j
                  d«       |r't        j
                  d|d	   j                  › d
�«       yyc c}w )zØList model scores from a dataset leaderboard. This command helps find the best models for a task or compare models by benchmark scores. Use 'hf datasets ls --filter benchmark:official' to list available leaderboards.r0   )r    N)ÚrankÚmodel_idr3   Úsourcer@   ©ÚheadersÚid_keyzPUse 'hf datasets ls --filter benchmark:official' to list available leaderboards.zUse 'hf models info r   z' to get details about a model.)r   Úget_dataset_leaderboardr   r   r5   Úhintr@   )r=   r%   r+   r6   r<   Úentryr9   s          r:   Údatasets_leaderboardrH   ¤   s•   € ô ˜5Ô
!€CØ×-Ñ-°jÐ-ÓA€KØ6AÀ&À5Ð6IÖJ¨UÔ! %Õ(ÐJ€GÐJÜ‡I�IØÚ7Øõô
 ‡H�HÐ_Ô`ÙÜ�‰Ð'¨°A©×(?Ñ(?Ð'@Ð@_Ð`Õað ùò Ks   ¦BÚinfoz&hf datasets info HuggingFaceFW/finewebz9hf datasets info my-dataset --expand downloads,likes,tagsz+The dataset ID (e.g. `username/repo-name`).c                 óð   — t        |¬«      }	 |j                  | ||¬«      }t        j                  |«       y# t        $ r}t        d| › d�«      |‚d}~wt        $ r}t        d|› d| › d�«      |‚d}~ww xY w)	z$Get info about a dataset on the Hub.r0   )r    r*   r&   z	Dataset 'z' not found.Nz
Revision 'z' not found on 'z'.)r   r8   r   r   r   r   Údict)r=   r*   r&   r+   r6   rI   Úes          r:   Údatasets_inforM   ¿   sŠ   € ô ˜5Ô
!€CðUØ×Ñ¨
¸XÈfÐÓUˆô
 ‡H�HˆT…Nøô	 #ò DÜ˜ : ,¨lÐ;Ó<À!ÐCûÜ ò UÜ˜ H :Ð-=¸j¸\ÈÐLÓMÐSTÐTûðUús!   Ž8 ¸	A5ÁAÁA5ÁA0Á0A5Úparquet)z(hf datasets parquet cfahlgren1/hub-statsz8hf datasets parquet cfahlgren1/hub-stats --subset modelsz6hf datasets parquet cfahlgren1/hub-stats --split trainz6hf datasets parquet cfahlgren1/hub-stats --format jsonÚsubsetz--subsetz(Filter parquet entries by subset/config.Úsplitz Filter parquet entries by split.c                 óD  — t        |¬«      }|j                  | |¬«      }|D �cg c]  }|�|j                  |k(  sŒ|‘Œ }}|D �cg c]1  }|j                  |j                  |j                  |j
                  dœ‘Œ3 }}t        j                  |g d¢d¬«       yc c}w c c}w )z/List parquet file URLs available for a dataset.r0   )r    ÚconfigN)rO   rP   ÚurlÚsizerS   rB   )r   Úlist_dataset_parquet_filesrP   rR   rS   rT   r   r5   )	r=   rO   rP   r+   r6   ÚentriesrG   Úfilteredr9   s	            r:   Údatasets_parquetrX   ×   s™   € ô  ˜5Ô
!€CØ×,Ñ,°ZÈÐ,ÓO€GØ#*ÖT˜%¨e¨m¸u¿{¹{ÈeÓ?S’ÐT€HÐTàjröØaf�5—<‘<¨%¯+©+¸e¿i¹iÐQV×Q[ÑQ[Ó\ð€Gð ô ‡I�IˆgÒAÈ%ÖPùò	 Uùòs   ¤B»BÁ6BÚsqlz–hf datasets sql "SELECT COUNT(*) AS rows FROM read_parquet('https://huggingface.co/api/datasets/cfahlgren1/hub-stats/parquet/models/train/0.parquet')"z�hf datasets sql "SELECT * FROM read_parquet('https://huggingface.co/api/datasets/cfahlgren1/hub-stats/parquet/models/train/0.parquet') LIMIT 5" --format jsonzRaw SQL query to execute.c                 ó–   — 	 t        | |¬«      }t	        j
                  |«       y# t        $ r}t        t        |«      «      |‚d}~ww xY w)zAExecute a raw SQL query with DuckDB against dataset parquet URLs.)Ú	sql_queryr+   N)r   ÚImportErrorr   Ústrr   r5   )rY   r+   ÚresultrL   s       r:   Údatasets_sqlr_   ð   sD   € ð&Ü&°¸EÔBˆô ‡I�IˆfÕøô ò &Ü”s˜1“vÓ AÐ%ûð&ús   ‚% ¥	A®AÁAÚcard)z&hf datasets card HuggingFaceFW/finewebz1hf datasets card HuggingFaceFW/fineweb --metadataz?hf datasets card HuggingFaceFW/fineweb --metadata --format jsonz-hf datasets card HuggingFaceFW/fineweb --textÚmetadataz
--metadataz'Output only the metadata from the card.Útextz--textz(Output only the text body (no metadata).c                 ód  — |r|rt        d«      ‚t        j                  | |¬«      }|r.t        j                  |j
                  j                  «       «       y|r t        j                  |j                  «       yt        j                  |j                  «       t        j                  d| › d�«       y)z7Get the dataset card (README) for a dataset on the Hub.z---metadata and --text are mutually exclusive.r0   zUse `hf datasets card z/ --metadata` to extract only the card metadata.N)
r   r   Úloadr   rK   ÚdataÚto_dictrb   ÚcontentrF   )r=   ra   rb   r+   r`   s        r:   Údatasets_cardrh     s}   € ñ  ‘DÜÐFÓGÐGÜ×Ñ˜J¨eÔ4€DÙÜ�‰�—‘×"Ñ"Ó$Õ%Ù	Ü�‰�—‘Õä�‰�—‘ÔÜ�‰Ð)¨*¨Ð5dÐeÕfó    )é   N)NNN)N)FFN)4Ú__doc__ÚenumÚtypingr   r   r1   Úhuggingface_hub._dataset_viewerr   Úhuggingface_hub.errorsr   r   r   Úhuggingface_hub.hf_apir	   r
   Úhuggingface_hub.repocardr   Ú
_cli_utilsr   r   r   r   r   r   r   r   r   r   Ú_file_listingr   Ú_outputr   r   ÚsortedÚ_EXPAND_PROPERTIESÚ_SORT_OPTIONSÚEnumr]   r   ÚOptionÚjoinÚ	ExpandOptÚdatasets_cliÚcommandÚArgumentÚboolr;   rH   rM   rX   r_   rh   )Úss   0r:   ú<module>r�      sZ  ðñó ß &ã å Aß [Ñ [ß IÝ 0÷÷ ÷ õ /ß ,ñ ™HÐ%<Ó=Ó>Ð Ù˜Ó'€Ø�$—)‘)Ð-¸mÖ/L¸°°1±Ò/LÐSVÔW€ð Øˆ$�JØ€E‡L�Lð dð  ei÷  enñ  enð  oAó  eBð  dCð  CDð  EÙ.Ð/AÓBôðñ€	ñ Ð"FÔG€ð ×ÑØòð ó ð  	ØØØð 	Ø-Øð 	ð 	ð 	Ø Øñ7OØØˆd‰
Øˆ�‰ÐtÔuð	wñðOð
 ðOð ðOð ðOð Ø˜$ÑØˆ�‰˜/Ô*ð	,ñðOð ðOð ðOð ØØˆ�‰Ð'¨Ð4sÔtð	vñðOð$ ØØˆ�‰�XÐ$YÔZð	\ñð%Oð, ØØˆ�‰�] DÐ/aÔbð	dñð-Oð4 ð5Oð6 ð7Oð8 
ò9OóðOðd ×ÑØòð ó ð ØñbØ˜#˜~˜uŸ~™~Ð3tÔuÐuÑvðbàðbð ðbð 
ò	bóðbð& ×ÑØ
à0ØCðð ó ð !ØØñ	Ø˜#˜~˜uŸ~™~Ð3`ÔaÐaÑbðàðð ðð ð	ð
 
òóðð" ×ÑØòð ó ð ptØZ^Øñ	QØ˜#˜~˜uŸ~™~Ð3`ÔaÐaÑbðQà�c˜D‘j , %§,¡,¨zÐ@jÔ"kÐkÑlðQð �S˜4‘Z  §¡Ð3UÔ!VÐVÑWðQð ð	Qð
 
òQóðQð  ×ÑØ	ð 	cð 	jðð ó ð ñ	Ø	�3˜˜Ÿ™Ð,GÔHÐHÑ	Ið	àð	ð 
ò	óð	ð ×ÑØ
òð ó ð mrØejØñ	gØ˜#˜~˜uŸ~™~Ð3`ÔaÐaÑbðgà˜˜l˜eŸl™l¨<Ð>gÔhÐhÑiðgð �D˜,˜%Ÿ,™, xÐ6`ÔaÐaÑ
bðgð ð	gð
 
ògóñgùòk 0Ms   Á>
L$
