§
    }Štj¤'  ã            (       ó*  — d Z ddlZddlmZmZ ddl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 dd	lmZ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! ddl"m#Z#m$Z$  e% ee¦  «        ¦  «        Z& ee¦  «        Z' ej(        dd„ e'D ¦   «         e)¬¦  «        Z* ej(        dd„  e% ee¦  «        ¦  «        D ¦   «         e)¬¦  «        Z+ee)dz   e!dd ,                    e&¦  «        › d� ee&¦  «        ¬¦  «        f         Z- ed¬¦  «        Z.e. /                    dg d¢¬¦  «        dddddddddddeddddddfdee)dz   e d¬¦  «        f         deded ed!ee)dz   e!d"d#¬¦  «        f         d$ee0dz   e!d%d&¬¦  «        f         d'ee1e)         dz   e!d(d)¬¦  «        f         d*ee)dz   e!d+¬¦  «        f         d,ee1e)         dz   e!d- ee+¦  «        d.¬/¦  «        f         d0ee0 e!d1d2¬¦  «        f         d3ee*dz   e!d4¬¦  «        f         d5ed6e-d7ee0 e!d8d9d:¬¦  «        f         d;ee0 e!d<d=¬¦  «        f         d>ee0 e!d?d@dA¬¦  «        f         dBedCedDdf&dE„¦   «         Z2e. /                    dFdGdHg¬¦  «        	 	 	 dUdIee) e dJ¬¦  «        f         dBed6e-dCedDdf
dK„¦   «         Z3e. /                    dLg dM¢¬¦  «        	 	 	 dVdIee) e dJ¬¦  «        f         dNee0 e!dOdP¬¦  «        f         dQee0 e!dRdS¬¦  «        f         dCedDdf
dT„¦   «         Z4dS )WzBContains commands to interact with models on the Hugging Face Hub.é    N)Ú	AnnotatedÚget_args)ÚCLIErrorÚRepositoryNotFoundErrorÚRevisionNotFoundError)ÚExpandModelProperty_TÚModelSort_T)Ú
PROVIDER_T)Ú	ModelCardé   )ÚREPO_LIST_DEFAULT_LIMITÚ	AuthorOptÚ	FilterOptÚLimitOptÚRevisionOptÚ	SearchOptÚ
SoftChoiceÚTokenOptÚ
get_hf_apiÚmake_expand_properties_parserÚtyper_factory)Úlist_repo_files_cmd)ÚArgumentÚOption)Ú_dataclass_to_dictÚoutÚModelSortEnumc                 ó   — i | ]}||“ŒS © r   )Ú.0Úss     úX/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/huggingface_hub/cli/models.pyú
<dictcomp>r#   .   s   € Ð+HÐ+HÐ+H°Q¨A¨qÐ+HÐ+HÐ+Hó    )ÚtypeÚInferenceProviderEnumc                 ó   — i | ]}||“ŒS r   r   )r    Úps     r"   r#   r#   0   s   € ÐIÐIÐI q˜a ÐIÐIÐIr$   z”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 models on the Hub.)r*   z	list | ls)z(hf models ls --sort downloads --limit 10z1hf models ls --search "llama" --author meta-llamaz2hf models ls --pipeline-tag text-generation --warmz:hf models ls --num-parameters min:6B,max:128B --sort likesz'hf models ls --no-gated --author googlez)hf models ls --apps llama.cpp --apps vllmz?hf models ls --inference-provider fireworks-ai --sort downloadsz"hf models ls --warm --search llamaz-hf models ls meta-llama/Llama-3.2-1B-Instructz0hf models ls meta-llama/Llama-3.2-1B-Instruct -Rz7hf models ls meta-llama/Llama-3.2-1B-Instruct --tree -h)ÚexamplesFÚrepo_idzRModel ID (e.g. `username/repo-name`) to list files from. If omitted, lists models.ÚsearchÚauthorÚfilterÚpipeline_tagz--pipeline-tagz>Filter by pipeline tag (canonical task), e.g. 'summarization'.Úgatedz--gated/--no-gatedzRFilter by gated status. '--gated' for gated only, '--no-gated' for non-gated only.Úappsz--appszAFilter by app(s) that can run the model, e.g. 'ollama' or 'vllm'.Únum_parametersz2Filter by parameter count, e.g. 'min:6B,max:128B'.Úinference_providerz--inference-providerzGFilter by inference provider(s) serving the model, e.g. 'fireworks-ai'.)Ú
click_typer*   Úwarmz--warmzEOnly list models currently served by at least one inference provider.Ú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                 ó2  — | ��'|�t          j        d¦  «        ‚|�t          j        d¦  «        ‚|�t          j        d¦  «        ‚|�t          j        d¦  «        ‚|�t          j        d¦  «        ‚|�t          j        d¦  «        ‚|�t          j        d¦  «        ‚|�t          j        d	¦  «        ‚|	rt          j        d
¦  «        ‚|
�t          j        d¦  «        ‚|t          k    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¦  «        ‚|	r|�t          j        d¦  «        ‚t	          |¬¦  «        }|
r|
j        nd}d„ |                     ||||||||	rdnd||||¬¦  «        D ¦   «         }t          j        |¦  «         |€|	r|st          j	        d¦  «         dS dS dS )z³List models on the Hub, or files in a model repo.

    When called with no argument, lists models on the Hub.
    When called with a model ID, lists files in that model 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 --pipeline-tag when listing files.z1Cannot use --gated/--no-gated when listing files.z%Cannot use --apps when listing files.z/Cannot use --num-parameters when listing files.z3Cannot use --inference-provider when listing files.z%Cannot use --warm when listing files.z%Cannot use --sort when listing files.z&Cannot use --limit when listing files.z'Cannot use --expand when listing files.Úmodel)r-   Ú	repo_typer;   r<   r=   r>   r?   z&Cannot use --tree when listing models.z+Cannot use --recursive when listing models.z0Cannot use --human-readable when listing models.z*Cannot use --revision when listing models.z5Cannot use --warm together with --inference-provider.©r?   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r   )r   )r    Ú
model_infos     r"   ú
<listcomp>zmodels_ls.<locals>.<listcomp>À   s0   € ð ð ð àõ 	˜:Ñ&Ô&ðð ð r$   r7   )r0   r/   r.   r1   r2   r3   r4   Ú	inferencer5   r8   r9   r:   zsUse `--expand inferenceProviderMapping` to see which provider serves each model and the provider-specific model id.)
ÚclickÚBadParameterr   r   r   ÚvalueÚlist_modelsr   ÚtableÚhint)r-   r.   r/   r0   r1   r2   r3   r4   r5   r7   r8   r9   r:   r;   r<   r=   r>   r?   ÚapiÚsort_keyÚresultss                        r"   Ú	models_lsrR   @   s¾  € ðb ÑØÐÝÔ$Ð%NÑOÔOÐOØÐÝÔ$Ð%NÑOÔOÐOØÐÝÔ$Ð%NÑOÔOÐOØÐ#ÝÔ$Ð%TÑUÔUÐUØÐÝÔ$Ð%XÑYÔYÐYØÐÝÔ$Ð%LÑMÔMÐMØÐ%ÝÔ$Ð%VÑWÔWÐWØÐ)ÝÔ$Ð%ZÑ[Ô[Ð[Øð 	NÝÔ$Ð%LÑMÔMÐMØÐÝÔ$Ð%LÑMÔMÐMØÕ+Ò+Ð+ÝÔ$Ð%MÑNÔNÐNØÐÝÔ$Ð%NÑOÔOÐOÝ"ØØØ)ØØØØð
ñ 
ô 
ð 	
ð ð KÝÔ Ð!IÑJÔJÐJØð PÝÔ Ð!NÑOÔOÐOØð UÝÔ Ð!SÑTÔTÐTØÐÝÔ Ð!MÑNÔNÐNØð ZÐ"Ð.ÝÔ Ð!XÑYÔYÐYÝ
˜5Ð
!Ñ
!Ô
!€CØ!Ð+ˆtŒzˆz t€Hðð àŸ/š/ØØØØ%ØØØ)Ø $Ð.�f�f¨$Ø1ØØØð *ñ 
ô 
ðñ ô €Gõ" „IˆgÑÔÐØÐ&¨$Ð&¸Ð&ÝŒð Bñ	
ô 	
ð 	
ð 	
ð 	
ð 	'Ð&Ð&Ð&r$   Úinfoz/hf models info meta-llama/Llama-3.2-1B-Instructz<hf models info Qwen/Qwen3.5-9B --expand downloads,likes,tagsÚmodel_idz)The model ID (e.g. `username/repo-name`).c                 ó  — t          |¬¦  «        }	 |                     | ||¬¦  «        }nJ# t          $ r}t          d| › d�¦  «        |‚d}~wt          $ r}t          d|› d| › d�¦  «        |‚d}~ww xY wt          j        |¦  «         dS )	z"Get info about a model on the Hub.rD   )r-   r>   r:   zModel 'z' not found.Nz
Revision 'z' not found on 'z'.)r   rF   r   r   r   r   Údict)rT   r>   r:   r?   rO   rS   Úes          r"   Úmodels_inforX   Ø   sÁ   € õ ˜5Ð
!Ñ
!Ô
!€CðSØ�~Š~ h¸È&ˆ~ÑQÔQˆˆøÝ"ð @ð @ð @ÝÐ7 Ð7Ð7Ð7Ñ8Ô8¸aÐ?øøøøÝ ð Sð Sð SÝÐJ HÐJÐJ¸hÐJÐJÐJÑKÔKÐQRÐRøøøøðSøøøå„HˆT�N„N€N€N€Ns    ’+ «
A2µA	Á	A2ÁA-Á-A2Úcard)z$hf models card google/gemma-4-31B-itz/hf models card google/gemma-4-31B-it --metadataz=hf models card google/gemma-4-31B-it --metadata --format jsonz+hf models card google/gemma-4-31B-it --textÚmetadataz
--metadataz'Output only the metadata from the card.Útextz--textz(Output only the text body (no metadata).c                 óR  — |r|rt          d¦  «        ‚t          j        | |¬¦  «        }|r-t          j        |j                             ¦   «         ¦  «         dS |rt          j        |j        ¦  «         dS t          j        |j        ¦  «         t          j	        d| › d�¦  «         dS )z3Get the model card (README) for a model on the Hub.z---metadata and --text are mutually exclusive.rD   zUse `hf models card z/ --metadata` to extract only the card metadata.N)
r   r   Úloadr   rV   ÚdataÚto_dictr[   ÚcontentrN   )rT   rZ   r[   r?   rY   s        r"   Úmodels_cardra   ð   sº   € ð  ð H�Dð HÝÐFÑGÔGÐGÝŒ>˜(¨%Ð0Ñ0Ô0€DØð cÝŒ�”×"Ò"Ñ$Ô$Ñ%Ô%Ð%Ð%Ð%Ø	ð cÝŒ�”ÑÔÐÐÐåŒ�”ÑÔÐÝŒÐa¨ÐaÐaÐaÑbÔbÐbÐbÐbr$   )NNN)FFN)5Ú__doc__ÚenumÚtypingr   r   rI   Úhuggingface_hub.errorsr   r   r   Úhuggingface_hub.hf_apir   r	   Ú$huggingface_hub.inference._providersr
   Úhuggingface_hub.repocardr   Ú
_cli_utilsr   r   r   r   r   r   r   r   r   r   r   Ú_file_listingr   Ú
_frameworkr   r   Ú_outputr   r   ÚsortedÚ_EXPAND_PROPERTIESÚ_SORT_OPTIONSÚEnumÚstrr   r&   ÚjoinÚ	ExpandOptÚ
models_cliÚcommandÚboolÚlistrR   rX   ra   r   r$   r"   ú<module>rx      s8  ðð IÐ Hà €€€Ø &Ð &Ð &Ð &Ð &Ð &Ð &Ð &à €€€à [Ð [Ð [Ð [Ð [Ð [Ð [Ð [Ð [Ð [Ø EÐ EÐ EÐ EÐ EÐ EÐ EÐ EØ ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø .Ð .Ð .Ð .Ð .Ð .ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð /Ð .Ð .Ð .Ð .Ð .Ø (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,ð �V˜H˜HÐ%:Ñ;Ô;Ñ<Ô<Ð Ø�˜Ñ%Ô%€Ø�”	˜/Ð+HÐ+H¸-Ð+HÑ+HÔ+HÈsÐSÑSÔS€Ø!˜œ	ØÐIÐI¨F¨F°8°8¸JÑ3GÔ3GÑ,HÔ,HÐIÑIÔIÐPSðñ ô Ð ð
 Øˆ$�JØ
€Fð Eð  ei÷  enò  enð  oAñ  eBô  eBð  Eð  Eð  EØ.Ð.Ð/AÑBÔBðñ ô ðô€	ð ˆ]Ð BÐCÑCÔC€
ð ×ÒØðð ð ð ñ ô ð( 	ØØØð 	ð 	ð 	ð 	ð 	ð 	ð 	Ø-Øð 	ð 	ð 	Ø ØðuE
ð E
ØØˆd‰
ØˆÐjÐkÑkÔkð	môðE
ð
 ðE
ð ðE
ð ðE
ð Øˆd‰
ØˆÐÐ&fÐgÑgÔgð	iôðE
ð Øˆt‰ØˆØ Øeð	
ñ 	
ô 	
ð	ôðE
ð& ØˆSŒ	�DÑØˆˆxÐaÐbÑbÔbð	dôð'E
ð. Øˆd‰
ØˆÐHÐIÑIÔIð	Kôð/E
ð6 "ØˆSŒ	�DÑØˆØ"Ø!�zÐ"7Ñ8Ô8ØZð	
ñ 	
ô 	
ð	ôð7E
ðF ØØˆˆxÐeÐfÑfÔfð	hôðGE
ðN Ø˜ÑØˆ�OÐ$Ñ$Ô$ð	&ôðOE
ðV ðWE
ðX ðYE
ðZ ØØˆÐ! 4Ð.mÐnÑnÔnð	pôð[E
ðb ØØˆˆxÐSÐTÑTÔTð	VôðcE
ðj ØØˆˆ}˜dÐ)[Ð\Ñ\Ô\ð	^ôðkE
ðr ðsE
ðt ðuE
ðv 
ðwE
ð E
ð E
ñ!ô ð E
ðP ×ÒØ
à9ØFðð ñ ô ð !ØØð	ð Ø˜˜X˜XÐ+VÐWÑWÔWÐWÔXðàðð ðð ð	ð
 
ðð ð ñô ðð" ×ÒØ
ðð ð ð ñ ô ð glØ_dØð	cð cØ˜˜X˜XÐ+VÐWÑWÔWÐWÔXðcà˜˜f˜f \Ð8aÐbÑbÔbÐbÔcðcð �D˜&˜& Ð0ZÐ[Ñ[Ô[Ð[Ô
\ðcð ð	cð
 
ðcð cð cñô ðcð cð cr$   