ó
    ‚¤jÞR  ã                  óÎ  • S r 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	r	SSK
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Jr  S$S	 jrS%S
 jr    S&S jrS'S jrS(S jrS)S jrS*S jrS)S jrS+S jr S+S jr!S+S jr"S+S jr#S,S jr$S-S jr%S+S jr&S+S jr'S+S jr(S r)S r*S.S jr+S/S jr,S0S jr- S$         S1S jjr.S2S  jr/S3S! jr0      S4S" jr1S5S# jr2g)6zCUtility function for gradio/external.py, designed for internal use.é    )ÚannotationsN)Úencode_url_or_file_to_base64)ÚHfApiÚ ImageClassificationOutputElementÚInferenceClient)ÚHFValidationError)Ú
components)ÚErrorÚTooManyRequestsErrorc                óà   • [        US9n[        SU  35         UR                  U 5      nUR
                  nUR                  nXV4$ ! [         a  nSU ;   d  SU ;   a  [	        S5      Uee S nAff = f)N)Útokenz,Fetching model from: https://huggingface.co/z:fastestz	:cheapestzMTo use :cheapest or :fastest, upgrade huggingface_hub to huggingface_hub>=1.0)r   ÚprintÚ
model_infor   Ú
ValueErrorÚpipeline_tagÚtags)Ú
model_namer   Úhf_apir   ÚeÚpipeliner   s          Ú£C:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\gradio/external_utils.pyÚget_model_infor      sˆ   € Ü˜Ñ€FÜ	Ð8¸¸Ð
EÔFðØ×&Ñ& zÓ2ˆ
ð ×&Ñ&€HØ�?‰?€DØˆ>Ðøô ó Ø˜Ó# {°jÓ'@ÜØ_óàðð 	ûðús   ™A Á
A-ÁA(Á(A-c                óš  • [         R                  " SU  S35      nUR                  S:w  a!  [        R                  " SU  3[
        5        0 nO†[        R                  " SUR                  5      nUc  0 nO_[        [        R                  " UR                  S UR                  5       S    5      5      nUR                  S0 5      R                  S0 5      nU(       d  [        S	U  S
35      eUR                  5        HO  n[        U5       H=  u  pg[!        U["        5      (       d  M  [$        R&                  " U5      (       d  M9  SXV'   M?     MQ     U$ )Nzhttps://huggingface.co/z/resolve/main/README.mdéÈ   z%Cannot load examples from README for z,(?:^|[
])---[
]+([\S\s]*?)[
]+---([
]|$)éÿÿÿÿÚwidgetÚstructuredDataz&No example data found in README.md of z½ - Cannot build gradio demo. See the README.md here: https://huggingface.co/scikit-learn/tabular-playground/blob/main/README.md for a reference on how to provide example data to your model.ÚNaN)ÚhttpxÚgetÚstatus_codeÚwarningsÚwarnÚUserWarningÚreÚsearchÚtextÚnextÚyamlÚsafe_load_allÚspanr   ÚvaluesÚ	enumerateÚ
isinstanceÚfloatÚmathÚisnan)r   ÚreadmeÚexample_dataÚ
yaml_regexÚexample_yamlÚdataÚiÚvals           r   Úget_tabular_examplesr9   +   s,  € Ü�YŠYÐ0°°Ð<SÐTÓU€FØ×Ñ˜SÓ Ü�ŠÐ=¸j¸\ÐJÌKÔXØ‰ä—Y’YØDÀfÇkÁkó
ˆ
ð ÑØ‰LäÜ×"Ò" 6§;¡;Ð/F°·±Ó1BÀ2Ñ1FÐ#GÓHóˆLð (×+Ñ+¨H°bÓ9×=Ñ=Ð>NÐPRÓSˆLÞÜØ4°Z°Lð ALð Ló
ð 	
ð ×#Ñ#Ö%ˆÜ –o‰FˆAÜ˜#œu×%Ó%¬$¯*ª*°S¯/«/Ø�“ó &ñ &ð Ðó    c                óL  ^ • [        T R                  5       5      n[        U 4S jU 5       5      n/ n[        U5       Hb  n/ nU HF  nT U   =(       d    / nU[	        U5      :¼  a  UR                  S5        M3  UR                  Xt   5        MH     UR                  U5        Md     X4$ )Nc              3  óR   >#   • U  H  n[        TU   =(       d    / 5      v •  M     g 7f©N)Úlen)Ú.0Úheaderr3   s     €r   Ú	<genexpr>Úcols_to_rows.<locals>.<genexpr>M   s#   øé € ÐGºw°V”�\ &Ñ)×/¨R×0Ð0ºwùs   ƒ$'r   )ÚlistÚkeysÚmaxÚranger>   Úappend)r3   ÚheadersÚn_rowsr6   Ú	row_indexÚrow_datar@   Úcols   `       r   Úcols_to_rowsrM   I   s—   ø€ ô �<×$Ñ$Ó&Ó'€GÜÔG¹wÓGÓG€FØ€DÜ˜6–]ˆ	ØˆÛˆFØ˜vÑ&×,¨"ˆCØœC ›HÓ$Ø—‘ Ö&à—‘ ¡Ö/ñ ð 	�‰�HÖñ #ð ˆ=Ðr:   c                ó�   • 0 n[        U S   5       H(  u  p#U S    Vs/ s H  n[        XB   5      PM     snX'   M*     SSU00$ s  snf )NrH   r6   Úinputs)r-   Ústr)Úincoming_dataÚdata_column_wiser7   r@   Úrows        r   Úrows_to_colsrT   [   sZ   € ØÐÜ˜}¨YÑ7Ö8‰	ˆØ;HÈÒ;PÓ#QÒ;P°C¤C¨©¦KÑ;PÑ#QÐÓ ñ 9à�vÐ/Ð0Ð1Ð1ùò $Rs   �Ac                óZ   • U  Vs0 s H  oR                   UR                  _M     sn$ s  snf r=   )ÚlabelÚscore©ÚscoresÚcs     r   Úpostprocess_labelr[   g   s%   € Ù&,Ó-¢f �G‰G�Q—W‘WÒ¡fÑ-Ð-ùÒ-s   … (c                ó>   • U  Vs0 s H  oS   US   _M     sn$ s  snf )NÚ	token_strrW   © rX   s     r   Úpostprocess_mask_tokensr_   k   s%   € Ù06Ó7²¨1ˆk‰N˜A˜g™JÒ&±Ñ7Ð7ùÒ7ó   …c                ó    • U S   U S   U S   04$ ©NÚanswerrW   r^   )rc   s    r   Úpostprocess_question_answeringrd   o   s    € Ø�(Ñ˜f XÑ.°°w±Ð@Ð@Ð@r:   c                ó>   • U  Vs0 s H  oS   US   _M     sn$ s  snf rb   r^   rX   s     r   Ú%postprocess_visual_question_answeringrf   s   s%   € Ù-3Ó4ªV¨ˆh‰K˜˜7™Ò#©VÑ4Ð4ùÒ4r`   c                ó   ^ • SU 4S jjnU$ )Nc                óB   >• TR                  XR                  S5      US9$ )NÚ,)Úmulti_label)Úzero_shot_classificationÚsplit)ÚinputÚlabelsrj   Úclients      €r   Úzero_shot_classification_innerÚHzero_shot_classification_wrapper.<locals>.zero_shot_classification_innerx   s)   ø€ Ø×.Ñ.Ø—<‘< Ó$°+ð /ð 
ð 	
r:   )rm   rP   rn   rP   rj   Úboolr^   )ro   rp   s   ` r   Ú zero_shot_classification_wrapperrs   w   s   ø€ ÷
ð
 *Ð)r:   c                ó   ^ • SU 4S jjnU$ )Nc                óD   >• TR                  XR                  S5      5      $ )NÚ
)Úsentence_similarityrl   )rm   Ú	sentencesro   s     €r   Úsentence_similarity_innerÚ>sentence_similarity_wrapper.<locals>.sentence_similarity_inner�   s   ø€ Ø×)Ñ)¨%·±ÀÓ1FÓGÐGr:   )rm   rP   rx   rP   r^   )ro   ry   s   ` r   Úsentence_similarity_wrapperr{   €   s   ø€ ÷Hð %Ð$r:   c                ó   ^ • SU 4S jjnU$ )Nc                ó,   >• U TR                  U 5      -   $ r=   )Útext_generation)rm   ro   s    €r   Útext_generation_innerÚ6text_generation_wrapper.<locals>.text_generation_innerˆ   s   ø€ Ø�v×-Ñ-¨eÓ4Ñ4Ð4r:   ©rm   rP   r^   )ro   r   s   ` r   Útext_generation_wrapperr‚   ‡   s   ø€ ÷5ð !Ð r:   c                ó   ^ • U 4S jnU$ )Nc              3  óJ  >#   • U(       d  / nUR                  SU S.5         SnTR                  USS9 HH  nX#R                  (       a,  UR                  S   R                  R                  =(       d    SOS-  nUv •  MJ     g ! [
         a  n[        U5         S nAg S nAff = f7f)NÚuser©ÚroleÚcontentÚ T©ÚmessagesÚstreamr   )rG   Úchat_completionÚchoicesÚdeltarˆ   Ú	ExceptionÚhandle_hf_error)ÚmessageÚhistoryÚoutÚchunkr   ro   s        €r   Úchat_fnÚ'conversational_wrapper.<locals>.chat_fn�   s‘   øé € ÞØˆGØ�‰ °7Ñ;Ô<ð	ØˆCØ×/Ñ/¸ÈÐ/ÓN�Ø¿}¿}�u—}‘} QÑ'×-Ñ-×5Ñ5×;¸øÐRTÑT�Ø”	ò Oøô ó 	Ü˜A×Ñûð	üs/   ƒB#¢AB Â B#Â
B ÂBÂB#ÂB Â B#r^   ©ro   r–   s   ` r   Úconversational_wrapperr™   Ž   s   ø€ õ
ð €Nr:   c                óD  • [         R                  " U R                  5      R                  S5      nSnX!;   a  U$ U R                  R                  S5      nUS:X  a   U R                  5       S   nUS   nUS   nO SU SU 3nU$ ! [         a  n[        S5      UeS nAff = f)	Nzutf-8z;base64,zcontent-typeúapplication/jsonr   Úblobz7Cannot determine content type returned by external API.zdata:)	Úbase64Ú	b64encoderˆ   ÚdecoderH   r    ÚjsonÚKeyErrorr   )ÚrÚbase64_reprÚdata_prefixÚcontent_typer6   ÚkeÚ
new_base64s          r   Úencode_to_base64r¨   ž   s¶   € ä×"Ò" 1§9¡9Ó-×4Ñ4°WÓ=€KØ€KàÓ!ØÐà—y‘y—}‘} ^Ó4ˆàÐ-Ó-ðØ—v‘v“x ‘{�Ø# NÑ3�Ø" 6™l‘ð Ø˜\˜N¨(°;°-Ð@ˆ
ØÐøô ó Ü ØMóàðûðús   ÁB Â
BÂBÂBc                óê   • [        U5      S:X  a  U S 4/$ / nSnSnU H=  nUS   US   US   p7nUR                  XU S 45        UR                  XU U45        UnM?     UR                  XS  S 45        U$ )Nr   Úentity_groupÚstartÚend)r>   rG   )Úinput_stringÚ
ner_groupsÚoutputr¬   Úprev_endÚgroupÚentityr«   s           r   Úformat_ner_listr³   ¸   s›   € Ü
ˆ:ƒ˜!ÓØ˜tÐ$Ð%Ð%à€FØ
€CØ€HãˆØ" >Ñ2°E¸'±NÀEÈ%ÁL�sˆØ�‰�|¨UÐ3°TÐ:Ô;Ø�‰�|¨#Ð.°Ð7Ô8ØŠñ	 ð ‡M�M�< Ð% tÐ,Ô-Ø€Mr:   c                ó   ^ • SU 4S jjnU$ )Nc                ó<   >• TR                  U 5      n[        X5      $ r=   )Útoken_classificationr³   )rm   Úner_listro   s     €r   Útoken_classification_innerÚ@token_classification_wrapper.<locals>.token_classification_innerË   s   ø€ Ø×.Ñ.¨uÓ5ˆÜ˜uÓ/Ð/r:   r�   r^   )ro   r¸   s   ` r   Útoken_classification_wrapperrº   Ê   s   ø€ ÷0ð &Ð%r:   c                ó   ^ • SU 4S jjnU$ )Nc                óœ   >• TR                  U 5      nU Vs/ s H&  nUS   S   US   S   US   S   US   S   4US   4PM(     nnX4$ s  snf )NÚboxÚxminÚyminÚxmaxÚymaxrV   )Úobject_detection)rm   r   ÚaÚformatted_annotationsro   s       €r   Úobject_detection_innerÚ8object_detection_wrapper.<locals>.object_detection_innerÓ   s‰   ø€ Ø×-Ñ-¨eÓ4ˆñ !ó!
ò !�ð �e‘H˜VÑ$Ø�e‘H˜VÑ$Ø�e‘H˜VÑ$Ø�e‘H˜VÑ$ð	ð �'‘
óñ !ð 	ð !
ð Ð-Ð-ùò!
s   —-A	r�   r^   )ro   rÅ   s   ` r   Úobject_detection_wrapperrÇ   Ò   s   ø€ ÷.ð  "Ð!r:   c                ó   ^ • U 4S jnU$ )Nc                ó@  >• SSS[        U 5      0S.SUS./S./n TR                  USS	9nUR                  S
   R                  R                  $ ! [
         aD  n TR                  U 5      nSU SU S3s S nA$ ! [
         a    [        U5          S nAg f = fS nAff = f)Nr…   Ú	image_urlÚurl)ÚtyperÊ   r'   )rÌ   r'   r†   FrŠ   r   zImage description: z

User question: zZ

Note: This model doesn't support question-answering about images, only image captioning.)r   r�   rŽ   r’   rˆ   r�   Úimage_to_textr‘   )Úimager'   r‹   Úresponser   Úresultro   s         €r   r–   Ú+image_text_to_text_wrapper.<locals>.chat_fnç   sÑ   ø€ ð ð !,Ø&+Ô-IÈ%Ó-PÐ%Qñð $¨TÑ2ðñ	ð
ˆð
	#Ø×-Ñ-°xÈÐ-ÐNˆHØ×#Ñ# AÑ&×.Ñ.×6Ñ6Ð6øÜó 	#ð#à×-Ñ-¨eÓ4�Ø,¨V¨HÐ4GÈÀvð  Njð  kõ  køÜó #Ü ×"Ò"ð#þð	#ús5   œ2A Á
BÁA9Á3BÁ9BÂBÂBÂBÂBr^   r˜   s   ` r   Úimage_text_to_text_wrapperrÒ   æ   s   ø€ õ#ð4 €Nr:   c                ó<   • U(       d  U / / 4$ U US   S   US   S   4$ )NÚconversationÚgenerated_responsesÚpast_user_inputsr^   )r'   Ústates     r   Úchatbot_preprocessrØ     s:   € ÞØ�R˜ˆ|ÐàØˆnÑÐ3Ñ4ØˆnÑÐ0Ñ1ðð r:   c                óH   • [        [        U S   S   U S   S   SS95      nX4$ )NrÔ   rÖ   rÕ   F)Ústrict)rC   Úzip)rÏ   Úchatbot_historys     r   Úchatbot_postprocessrÝ     s>   € ÜÜØ�^Ñ$Ð%7Ñ8Ø�^Ñ$Ð%:Ñ;Øñ	
ó€Oð Ð$Ð$r:   c                ó   ^ ^• U U4S jnU$ )Nc                óÊ   >• TS;  a  [        ST< S35      eTR                  (       d   eTS:X  a  TR                  U TR                  S9$ TR                  U TR                  S9$ )N)Útabular_classificationÚtabular_regressionzpipeline type z not supportedrà   )Úmodel)Ú	TypeErrorrâ   rà   rá   )r6   ro   r   s    €€r   Útabular_innerÚ&tabular_wrapper.<locals>.tabular_inner  si   ø€ ØÐKÓKÜ˜n¨X©L¸ÐGÓHÐHØ�|�|Ðˆ|ØÐ/Ó/Ø×0Ñ0°¸V¿\¹\Ð0ÐJÐJà×,Ñ,¨T¸¿¹Ð,ÐFÐFr:   r^   )ro   r   rä   s   `` r   Útabular_wrapperræ     s   ù€ öGð Ðr:   c                ó  • U S    Vs/ s H  n[         R                  " U5      PM     snU S'   U S    Vs/ s H  n[         R                  " U5      PM     snU S'   1 SknU Vs0 s H  o3X   _M	     n nU $ s  snf s  snf s  snf )zGStreamlines the interface config dictionary to remove unnecessary keys.Úinput_componentsrO   Úoutput_componentsÚoutputs>   ÚtitlerO   Úarticlerê   ÚdescriptionÚflagging_options)r	   Úget_component_instance)ÚconfigÚ	componentÚ
parametersÚks       r   Ústreamline_spaces_interfacerô   .  s¡   € ð  Ð 2Ò3óâ3ˆIô 	×)Ò)¨)Ö4Ù3ñ€Fˆ8Ñð  Ð 3Ò4óâ4ˆIô 	×)Ò)¨)Ö4Ù4ñ€Fˆ9Ñò€Jñ %/Ó/¢J˜q�‘Šl¡J€FÐ/Ø€Mùò#ùòùò 0s   ˆ A5µ A:Á#A?c                ó4  • S[        U 5      ;   a  [        5       U eS[        U 5      ;   d  S[        U 5      ;   a  [        S5      U e[        U [        5      (       a  [        S5      U e[        [        U 5      =(       d    S[        U 5      R                   35      U e)NÚ429Ú401zYou must provide an api_keyz1Unauthorized, please make sure you are signed in.z™This model is not supported by any Hugging Face Inference Provider. Please check the supported models at https://huggingface.co/docs/inference-providers.zAn error occurred: )rP   r   r
   r.   ÚStopIterationrÌ   Ú__name__)r   s    r   r‘   r‘   D  s�   € Ø”�A“ƒÜ"Ó$¨!Ð+Ø	”#�a“&‹Ð9¼SÀ»VÓCÜÐGÓHÈaÐOÜ	�A”}×	%Ñ	%Üðdó
ð ð	ô
 ”C˜“F×FÐ 3´D¸³G×4DÑ4DÐ3EÐFÓGÈQÐNr:   c                ó€  ^ ^^^^• TR                  S0 5      nUUUUU 4S jnTR                  SS5      nTR                  SS5      n/ n	/ n
TR                  S/ 5       H’  nUR                  SS5      nUR                  SS5      nUR                  S0 5      nUR                  S	/ 5      nU(       a  US
SR                  U5       S3-  nU
R                  U5        U	R                  SU SU 35        M”     U(       a7  UR                  SS5      nU	R                  SU 35        U
R                  S5        / nU(       d  U(       a  UR                  U=(       d    U5        U	(       a"  UR                  S5        UR                  U	5        SR                  U5      Ul        U
(       až  / nU
 H?  nUR                  [
        R                  " U[
        R                  R                  S95        MA     UR                  [
        R                  " S[
        R                  R                  S95        [
        R                  " US9nUUl
        U$ )NÚrequestBodyc                 ó¤  >• TR                  S5       T 3nSS0nT(       a  ST 3US'   0 n0 nTR                  S/ 5      nTR                  S0 5      nSnU Hq  nU[        U 5      :  d  M  UR                  S	5      S
:X  a
  X   X8S   '   O9UR                  S	5      S:X  a$  UR                  SUS    S3[	        X   5      5      nUS-  nMs     Sn	U(       a4  U[        U 5      :  a%  UR                  S0 5      n
U
 H  nUS;   d  M  Sn	  O   U(       aD  U[        U 5      :  a5  U	(       a  X   nU(       a  SUS'   UnOSnO[
        R                  " X   5      n TR                  5       S:X  a  [        R                  " XUS9nOõTR                  5       S:X  a+  [        R                  " UUU	(       a  UOS U	(       d  UOS US9nO¶TR                  5       S:X  a+  [        R                  " UUU	(       a  UOS U	(       d  UOS US9nOwTR                  5       S:X  a+  [        R                  " UUU	(       a  UOS U	(       d  UOS US9nO8TR                  5       S:X  a  [        R                  " XUS9nO[        ST 35      eUR                  S;   a  UR                  5       $ SUR                  UR                  S .$ ! [          a  nS![	        U5       3s S nA$ S nAff = f)"NÚ/zContent-Typer›   zBearer ÚAuthorizationrò   rû   r   ÚinÚqueryÚnameÚpathÚ{Ú}é   Frˆ   ©úapplication/octet-streamzmultipart/form-dataTr  r:   r    )ÚparamsrH   Úpost)r  rˆ   r    rH   ÚputÚpatchÚdeletezUnsupported HTTP method: )r   éÉ   éÊ   éÌ   Úerror)Ú
__status__r!   r’   zError: )Úrstripr    r>   ÚreplacerP   r    ÚloadsÚlowerr   r	  r
  r  r  r   r!   r'   r�   )ÚargsrË   rH   r  Ú	body_dataÚoperation_paramsÚrequest_bodyÚparam_indexÚparamÚis_file_uploadrˆ   r¥   Ú	file_datarÏ   r   Ú
auth_tokenÚbase_urlÚendpoint_methodÚendpoint_operationÚendpoint_paths                  €€€€€r   Úendpoint_fnÚ'create_endpoint_fn.<locals>.endpoint_fn\  sÇ  ø€ Ø—‘ Ó%Ð& } oÐ6ˆà!Ð#5Ð6ˆÞØ)0°°Ð'=ˆG�OÑ$àˆØˆ	à-×1Ñ1°,ÀÓCÐØ)×-Ñ-¨m¸RÓ@ˆàˆÛ%ˆEØœS ›YÕ&Ø—9‘9˜T“? gÓ-Ø,0Ñ,=�F ™=Ò)Ø—Y‘Y˜t“_¨Ó.ØŸ+™+¨¨5°©=¨/¸Ð&<¼cÀ$ÑBSÓ>TÓU�CØ˜qÑ ’ñ &ð ˆÞ˜K¬#¨d«)Ó3Ø"×&Ñ& y°"Ó5ˆGÛ '�ØÐ#VÕVØ%)�NÙñ !(ö
 ˜K¬#¨d«)Ó3ÞØ Ñ-�	ÞØ.H�G˜NÑ+Ø )‘Ià #‘Iä ŸJšJ tÑ'8Ó9�	ð)	&Ø×$Ñ$Ó&¨%Ó/Ü Ÿ9š9 SÀÑI‘Ø ×&Ñ&Ó(¨FÓ2Ü Ÿ:š:ØØ!Þ)7™I¸TÞ*8™¸dØ#ñ‘ð !×&Ñ&Ó(¨EÓ1Ü Ÿ9š9ØØ!Þ)7™I¸TÞ*8™¸dØ#ñ‘ð !×&Ñ&Ó(¨GÓ3Ü Ÿ;š;ØØ!Þ)7™I¸TÞ*8™¸dØ#ñ‘ð !×&Ñ&Ó(¨HÓ4Ü Ÿ<š<¨ÀGÑL‘ä Ð#<¸_Ð<MÐ!NÓOÐOà×#Ñ#Ð';Ó;Ø—}‘}“Ð&ð #*Ø#+×#7Ñ#7Ø'Ÿ}™}ñð øô
 ó 	&ØœS ›V˜HÐ%Õ%ûð	&ús%   ÅD>J- ÊJ- Ê-
KÊ7K
ËKË
KÚsummaryr‰   rí   rò   r  ÚschemaÚenumz (Choices: z, Ú)z    z: zURL of filez    request_body: r  zParameters:rv   )r  Úkindr  )rò   )r    ÚjoinrG   ÚextendÚ__doc__ÚinspectÚ	ParameterÚPOSITIONAL_OR_KEYWORDÚVAR_POSITIONALÚ	SignatureÚ__signature__)r"  r   r!  r  r  r  r#  r%  rí   Ú
param_docsÚparam_namesr  Ú
param_nameÚ
param_descÚparam_schemaÚ
param_enumÚ	body_descÚdocstring_partsÚ
sig_paramsr  Únew_sigs   `````                r   Úcreate_endpoint_fnr=  R  s	  ü€ ð &×)Ñ)¨-¸Ó<€L÷Q&ñ Q&ðf !×$Ñ$ Y°Ó3€GØ$×(Ñ(¨¸Ó;€Kà€JØ€Kà#×'Ñ'¨°bÖ9ˆØ—Y‘Y˜v rÓ*ˆ
Ø—Y‘Y˜}¨bÓ1ˆ
Ø—y‘y ¨2Ó.ˆØ!×%Ñ% f¨bÓ1ˆ
ÞØ˜K¨¯	©	°*Ó(=Ð'>¸aÐ@Ñ@ˆJØ×Ñ˜:Ô&Ø×Ñ˜D  ¨B¨z¨lÐ;Ö<ñ :ö Ø ×$Ñ$ ]°MÓBˆ	Ø×ÑÐ.¨y¨kÐ:Ô;Ø×Ñ˜>Ô*à€OÞ–gØ×Ñ˜{×5¨gÔ6ÞØ×Ñ˜}Ô-Ø×Ñ˜zÔ*àŸ)™) OÓ4€KÔæØˆ
ÛˆDØ×ÑÜ×!Ò!Ø¤G×$5Ñ$5×$KÑ$Kñöñ  ð 	×ÑÜ×Ò 6´×0AÑ0A×0PÑ0PÑQô	
ô ×#Ò#¨zÑ:ˆà$+ˆÔ!àÐr:   c                óÊ  • SS K nU R                  S5      nU R                  S5      nU R                  S0 5      nUR                  S5      nUR                  S5      nUR                  S5      nUb  UR                  UUUSUS	9nU$ US
;   a  UR                  UUUS9nU$ US:X  a  UR	                  UUUS9nU$ US:X  a  UR                  U S3SUS9nU$ UR                  UUUS9nU$ )Nr   r  rí   r&  rÌ   r'  ÚdefaultF)rŽ   rV   ÚvalueÚallow_custom_valueÚinfo©ÚnumberÚinteger©rV   r@  rB  ÚbooleanÚarrayz (JSON array)z[])Úgradior    ÚDropdownÚNumberÚCheckboxÚTextbox)	Ú
param_infoÚgrr5  Úparam_descriptionr7  Ú
param_typeÚenum_valuesÚdefault_valuerñ   s	            r   Úcomponent_from_parameter_schemarT  à  sK  € Ûà—‘ Ó'€JØ"Ÿ™ }Ó5Ðà—>‘> (¨BÓ/€LØ×!Ñ! &Ó)€JØ×"Ñ" 6Ó*€KØ ×$Ñ$ YÓ/€MàÑØ—K‘KØØØØ$Ø"ð  ð 
ˆ	ð@ Ðð3 
Ð,Ó	,Ø—I‘IØØØ"ð ð 
ˆ	ð0 Ðð' 
�yÓ	 Ø—K‘KØØØ"ð  ð 
ˆ	ð$ Ðð 
�wÓ	Ø—J‘JØ�L Ð.ØØ"ð ð 
ˆ	ð Ðð —J‘JØØØ"ð ð 
ˆ	ð Ðr:   c                óf  • SU ;   aª  U S   nUR                  S5      (       aF  UR                  S5      S   nUR                  S0 5      R                  S0 5      R                  U0 5      $ UR                  S5      (       a3  UR                  S5      SS	 nUnU H  nUR                  U0 5      nM     U$ U $ )
z*Resolve schema references in OpenAPI spec.z$refz#/components/schemas/rý   r   r	   Úschemasz#/r  N)Ú
startswithrl   r    )r&  ÚspecÚref_pathÚschema_nameÚ
path_partsÚcurrentÚparts          r   Úresolve_schema_refr^    s³   € à�ÓØ˜&‘>ˆØ×ÑÐ6×7Ñ7Ø"Ÿ.™.¨Ó-¨bÑ1ˆKØ—8‘8˜L¨"Ó-×1Ñ1°)¸RÓ@×DÑDÀ[ÐRTÓUÐUØ× Ñ  ×&Ñ&Ø!Ÿ™¨Ó,¨Q¨RÐ0ˆJØˆGÛ"�Ø!Ÿ+™+ d¨BÓ/’ñ #àˆNØ€Mr:   c                óˆ  • SSK nU (       d  gU R                  S0 5      nU R                  SS5      nUR                  5        Hf  u  pVUS;   d  M  [        UR                  S0 5      U5      nUR                  S5      S	:X  d  M@  UR                  S
5      S:X  d  MW  UR	                  SS9s  $    UR                  S0 5      nU(       d3  UR                  5        H  u  pVUR                  S5      (       d  M  Un  O   U(       d  g[        UR                  S0 5      U5      nUR                  S0 5      n	U	(       dê  UR                  S5      S:X  aÕ  UR                  S0 5      n
0 n	U
R                  5        H­  u  p¼[        XÁ5      nUR                  S5      nUS	:X  a  UR                  SS5      X›'   M=  US;   a  UR                  SS5      X›'   MY  US:X  a  UR                  SS5      X›'   Mu  US:X  a  UR                  S/ 5      X›'   M‘  US:X  d  M™  UR                  S0 5      X›'   M¯     UR                  S[        R                  " U	SS9US9nU$ )z>Create a Gradio component from an OpenAPI request body schema.r   Nrˆ   rí   zRequest Bodyr  r&  rÌ   ÚstringÚformatÚbinaryÚFile)rV   r›   zapplication/ÚexampleÚobjectÚ
propertiesr‰   rC  rG  FrH  é   )ÚindentrF  )	rI  r    Úitemsr^  rc  rW  rM  r    Údumps)r  rX  rO  rˆ   rí   r¥   Úcontent_schemar&  Újson_contentrS  rf  Ú	prop_nameÚprop_schemaÚ	prop_typerñ   s                  r   Ú"component_from_request_body_schemarp    s  € ó æØà×Ñ˜y¨"Ó-€GØ×"Ñ" =°.ÓA€Kà(/¯©®Ñ$ˆØÐNÕNÜ'¨×(:Ñ(:¸8ÀRÓ(HÈ$ÓOˆFØ�z‰z˜&Ó! XÕ-°&·*±*¸XÓ2FÈ(Õ2RØ—w‘w V�wÐ,Ò,ñ	 )8ð —;‘;Ð1°2Ó6€LÞØ,3¯M©M®OÑ(ˆLØ×&Ñ& ~×6Ó6Ø-�Ùñ -<ö
 Øä × 0Ñ 0°¸2Ó >ÀÓE€Fà—J‘J˜y¨"Ó-€MÞ˜VŸZ™Z¨Ó/°8Ó;Ø—Z‘Z ¨bÓ1ˆ
ØˆØ&0×&6Ñ&6Ö&8Ñ"ˆIÜ,¨[Ó?ˆKØ#Ÿ™¨Ó/ˆIØ˜HÓ$Ø+6¯?©?¸9ÀbÓ+I�Ó(ØÐ3Ó3Ø+6¯?©?¸9ÀaÓ+H�Ó(Ø˜iÓ'Ø+6¯?©?¸9ÀeÓ+L�Ó(Ø˜gÓ%Ø+6¯?©?¸9ÀbÓ+I�Ó(Ø˜hÕ&Ø+6¯?©?¸9ÀbÓ+I�Ó(ñ '9ð —
‘
ØÜ�jŠj˜¨qÑ1Øð ð €Ið Ðr:   c                ó†   • SSSSSS.nUR                  U R                  5       S5      nSU S	U S
U R                  5        S3$ )Nz#61affez#49cc90z#fca130z#f93e3ez#50e3c2)ÚGETÚPOSTÚPUTÚDELETEÚPATCHz#999z_<span style='display:inline-block;min-width:48px;padding:2px 10px;border-radius:4px;background:zh;color:white;font-weight:bold;font-family:monospace;margin-right:8px;text-align:center;border:2px solid z);box-shadow:0 1px 2px rgba(0,0,0,0.08);'>z</span>)r    Úupper)ÚmethodÚ	color_mapÚcolors      r   Ú
method_boxr{  X  sb   € àØØØØñ€Ið �M‰M˜&Ÿ,™,›.¨&Ó1€Eðà�Wð ?Ø?D¸gð Fà�L‰L‹NÐ˜7ð	$ðr:   r=   )r   rP   Úreturnzdict[str, list[float]])r3   z#dict[str, list[float | str] | None]r|  z#tuple[list[str], list[list[float]]])rQ   Údictr|  z*dict[str, dict[str, dict[str, list[str]]]])rY   z&list[ImageClassificationOutputElement]r|  r}  )rY   zlist[dict[str, str | float]]r|  r}  )rc   r}  r|  ztuple[str, dict])ro   r   )r¢   zhttpx.Responser|  rP   )r­   rP   r®   zlist[dict[str, str | int]])ro   r   r   rP   )rð   r}  r|  r}  )r   r�   )
r"  rP   r   rP   r!  r}  r  rP   r  z
str | None)rN  r}  r|  zcomponents.Component)r&  r}  rX  r}  r|  r}  )r  r}  rX  r}  r|  zcomponents.Component | None)rx  rP   r|  rP   )3r,  Ú
__future__r   r�   r-  r    r0   r%   r"   r   r)   Úgradio_client.utilsr   Úhuggingface_hubr   r   r   Úhuggingface_hub.errorsr   rI  r	   Úgradio.exceptionsr
   r   r   r9   rM   rT   r[   r_   rd   rf   rs   r{   r‚   r™   r¨   r³   rº   rÇ   rÒ   rØ   rÝ   ræ   rô   r‘   r=  rT  r^  rp  r{  r^   r:   r   Ú<module>rƒ     s"  ðÙ Iå "ã Û Û Û Û 	Û ã Û Ý <ß TÑ TÝ 4å ß 9ôô*ð<Ø5ðà(ôô$2ô.ô8ôAô5ô*ô%ô!ôô ô4ô$&ô"ô(ò<ò%ôô*ô,Oð& "ðKØðKàðKð ðKð ð	Kð
 õKô\,ô^ð 6Øð6Ø"ð6à ô6õrr:   