
    9i                         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	  S SK
Jr  S SKJr  S SKJrJrJrJrJrJr  S SKJr  S SKJrJrJr  / S	QrS
 rSS jrS rS rS r S r!S r"\ RF                  S 5       r$g)    N)Future)partial)Path)
MethodType)BinaryIODictIterableListOptionalUnion) DEFAULT_MODELSCOPE_DATA_ENDPOINT)
CommitInfoCommitOperationCommitOperationAdd)
z\w+\.binz\w+\.safetensorsz\w+\.pthz\w+\.ptz\w+\.h5z	\w+\.ckptz\w+\.zipz	\w+\.onnxz\w+\.tarz\w+\.gzc                  8   / n / SQnSS/n/ SQn[         R                  R                  S5      b  SSKn[        R
                  S   nUR                  nU H  nSUR                  5       ;   a  M  Xg   nU H{  n	[        U V
s/ s H  n
[        R                  " X5      PM     sn
5      (       d  M:   [         R                  " S	U 3UR                  5      n[        X5      n	U R                  U	5        M}     M     [         R                  R                  S
5      b   SSKn[!        U5      nU Vs/ s H  oR#                  S5      (       a  M  UPM     nnU R%                  U VV
s/ s HG  n[        U V
s/ s H  n
[        R                  " U
U5      PM     sn
5      (       d  M;  [        UU5      PMI     sn
n5        [         R                  R                  S5      Gbx   SSKn[        R
                  S   n[)        US5      (       a  UR                  nU H  nSUR                  5       ;   a  M  Xg   nU H{  n	[        U V
s/ s H  n
[        R                  " X5      PM     sn
5      (       d  M:   [         R                  " S	U 3UR                  5      n[        X5      n	U R                  U	5        M}     M     U $ [!        U5      nU Vs/ s H  oR#                  S5      (       a  M  UPM     nnU R%                  U VV
s/ s HG  n[        U V
s/ s H  n
[        R                  " U
U5      PM     sn
5      (       d  M;  [        UU5      PMI     sn
n5         U $ U $ s  sn
f !    GM  = fs  snf s  sn
f s  sn
nf !    GN= fs  sn
f !    GMU  = fs  snf s  sn
f s  sn
nf !    U $ = f)z/Find all modules in transformers/peft/diffusers)zAuto.*zT5.*BitsAndBytesConfigGenerationConfigzAwq.*zGPTQ.*BatchFeaturezQwen.*zLlama.*zIntern.*z
Deepseek.*PretrainedConfigPreTrainedTokenizerPreTrainedModelPreTrainedTokenizerFastz.*PeftModel.*z.*Config)z^(?!TF|Flax).*Pipeline$z^(?!TF|Flax).*Autoencoder.*z^(?!TF|Flax).*Model$z^(?!TF|Flax).*Adapter$ImageProjectionz^(?!TF|Flax).*UNet$z^(?!TF|Flax).*Scheduler$transformersNr   dummy.peft__	diffusers_import_structure)	importlibutil	find_specr   sysmodulesr    loweranyre	fullmatchimport_module__name__getattrappendr   dir
startswithextendr   hasattr)all_imported_modulestransformers_include_namespeft_include_namesdiffusers_include_namesr   lazy_moduler    keyvaluesvaluenamemoduler   
attributesattrimports_importr   s                     `/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/modelscope/utils/hf_util/patcher.pyget_all_imported_modulesrA       s   "" *:6
 ~~/;kk.1'99$C#))+%&+F$>$>D T1$>  !*!8!8uI|'<'<"> ' 6,33E:  	 %$ ~~'3	 TJ!+!+??43H   !''6=)6=7<NF<NDBLLw/<NF B&g&g)  ~~,8#	 ++k2K{$788$/$A$A!,C#))+- .3F!',C ,CD !#T 9,C   %)2)@)@&'uIy/A/A*C(/(> 4 ; ;E B "(	 -8   !-
%/%/Tt7LDZ   %++AH-AHg$;$;D T73$;  2GK1-   CF)	4 % $
-7	B  s   ? M.A MM. *MMM(
.!M#
M(
M(
N 8 M6'A M; NN5N
!N	%
N
3N
M#M(
.M3;N	N
Nc                 4  ^^   SS jmU4S jnU4S jnU4S jnU4S jn  SSSS[         [        [        [        [           4      S	[         [        [        [        [           4      4UU4S
 jjjn/ nU  GH:  mTb  [	        TS5      (       d  M  TR
                  nSUR                  5       ;   =(       d    SUR                  5       ;   n	U	(       d  0 n
OS[        0n
 [	        TS5      n[	        TS5      n[	        TS5      n[	        TS5      nU(       d  SUR                  5       ;   aR  U(       aK   U(       d(  U(       d!  U(       d  U(       d  UR                  T5        M  UR                  U" T40 U
D65        GM  U(       a  [	        TS5      (       d  [        R                  " TR                  5      R                  nSU;   =(       a    SU;   nTR                  Tl        U(       d  [        [        U40 U
D65      Tl        O[        [        U40 U
D65      Tl        U(       a<  [	        TS5      (       d+  TR                   Tl        [        [        U40 U
D65      Tl        U(       a<  [	        TS5      (       d+  TR$                  Tl        [        [        U40 U
D65      Tl        UR                  T5        GM=     S nSSKJn  [	        US5      (       d%  UR,                  Ul        UUl        SSKJn  UUl        U$ !    GM  = f!   UR                  T5         GM  = f)zPatch all class to download from modelscope

Args:
    wrap: Wrap the class or monkey patch the original class

Returns:
    The classes after patched
c                 D   SSK Jn  UR                  SS 5      nS nU(       a  U S3n[        R                  R                  U 5      (       dS  UR                  SS 5      nUb  US:X  a  SnUb  UnU" U UUUS9nU(       a  [        R                  R                  X5      nU$ U nU$ )	Nr   snapshot_download	subfolderz/*revisionmainmaster)rG   ignore_file_patternallow_file_pattern)
modelscoperE   popospathexistsjoin)	pretrained_model_name_or_pathrJ   rK   kwargsrE   rF   file_filterrG   	model_dirs	            r@   get_model_dir._patch_pretrained_class.<locals>.get_model_dir   s     	1JJ{D1	&Kr*Kww~~;<<zz*d3H8v#5#&%0")-!$7#5	7I
 GGLL>	  6I    c                    > T" UUR                  SS5      UR                  SS5      40 UD6nU R                  R                  " X/UQ70 UD6$ )zPatch all from_pretrainedrJ   NrK   rM   _from_pretrained_origin__func__clsrR   
model_argsrS   rU   rV   s        r@   #patch_pretrained_model_name_or_pathD_patch_pretrained_class.<locals>.patch_pretrained_model_name_or_path   k     ""?"(**-BD"I"(**-A4"H, %+,	 **33C K5?KCIK 	KrX   c                    > T" UUR                  SS5      UR                  SS5      40 UD6nU R                  R                  " X/UQ70 UD6$ )zPatch all get_config_dictrJ   NrK   )rM   _get_config_dict_originr\   r]   s        r@   patch_get_config_dict6_patch_pretrained_class.<locals>.patch_get_config_dict   rb   rX   c                    > T" UUR                  SS5      UR                  SS5      40 UD6nU R                  R                  " XU/UQ70 UD6$ )zPatch all peft.from_pretrainedrJ   NrK   rZ   )r^   modelmodel_idr_   rS   rU   rV   s         r@   patch_peft_model_id4_patch_pretrained_class.<locals>.patch_peft_model_id   sj    !("(**-BD"I"(**-A4"H, %+,	 **33C	 K5?KCIK 	KrX   c                    > T" UUR                  SS5      UR                  SS5      40 UD6nU R                  R                  " X40 UD6$ )zPatch all _get_peft_typerJ   NrK   )rM   _get_peft_type_originr\   )r^   ri   rS   rU   rV   s       r@   patch_get_peft_type4_patch_pretrained_class.<locals>.patch_get_peft_type   sU    !("(**-BD"I"(**-A4"H, %+,	 ((11#KFKKrX   module_classr   rJ   rK   c                   >^ ^^^ [         R                  UU4S j5       mUUU 4S jn " UUUUU 4S jST 5      n[        T S5      (       d  U?O<[        R
                  " T	R                  5      R                  nSU;   a  SU;   a  XEl        [        T S5      (       d  U?[        T S	5      (       d  U?[        T S
5      (       d  U?	T R                  Ul
        T R                  Ul        U$ )a  Get a custom wrapper class for  auto classes to download the models from the ModelScope hub
Args:
    module_class (`PreTrainedModel`): The actual module class
    ignore_file_pattern (`str` or `List`, *optional*, default to `None`):
        Any file pattern to be ignored, like exact file names or file extensions.
    allow_file_pattern (`str` or `List`, *optional*, default to `None`):
        Any file pattern to be included, like exact file names or file extensions.
Returns:
    The wrapped class
c              3     >#    SU ;  a  TU S'   SU ;  a  TU S'   U R                  S5       c  Ub  S nSUR                  :X  a  SSKJn  US/nO~SUR                  ;   a  SSKJn  US/nOcS	UR                  ;   a?  [        Ub+  [        US
5      (       a  UR                  R                  5       O/ 5      / SQ-   nOSUR                  ;   a  / SQnX0S'   S v   U R                  SS 5        U R                  SS 5        g 7f)NrK   rJ   r   r   )GENERATION_CONFIG_NAME*.pyConfig)CONFIG_NAME	Tokenizervocab_files_names)zchat_template.jinjaz*.jsonrt   z*.txtz*.modelz
*.tiktoken	Processor)getr+   transformers.utilsrs   r   rv   listr1   rx   r8   rM   )rS   rp   r^   extra_allow_file_patternrs   rv   rK   rJ   s         r@   file_pattern_contextP_patch_pretrained_class.<locals>.get_wrapped_class.<locals>.file_pattern_context   s    #61/A+,$F20C,-zz(*-126B6N+/(%)>)>>I.0, !6!6680;W/E, L$9$99/3<?O#C)<== ..557CE0GJ0, !L$9$990,
 0H+,JJ,d3JJ+T2s   C5C8c                    > T" U5         T" U4TTS.UD6nS S S 5        TR                   " U W/UQ70 UD6nU$ ! , (       d  f       N'= f)N)rp   r^   )from_pretrained)	rh   ri   r_   rS   rU   
module_objr~   rV   rp   s	         r@   r   K_patch_pretrained_class.<locals>.get_wrapped_class.<locals>.from_pretrained  sl    %f-)!-$ 		 . &55eY M7AMEKMJ  .-s	   8
Ac                      >^  \ rS rSr\UUU4S j5       r\UUUUU4S j5       r\UUUUU4S j5       r S	S\\	\
R                  4   S\4U 4S jjjrSrU =r$ )
H_patch_pretrained_class.<locals>.get_wrapped_class.<locals>.ClassWrapperi  c                    > T" UTU 5         T" U40 UD6nS S S 5        TR                   " W/UQ70 UD6nTR                  R                  S5      (       a  XEl        U$ ! , (       d  f       NL= f)N	AutoModel)r   r+   r/   rU   )	r^   rR   r_   rS   rU   r   r~   rV   rp   s	         r@   r   X_patch_pretrained_class.<locals>.get_wrapped_class.<locals>.ClassWrapper.from_pretrained  s     *&,D -.K !806!8I E *996 *6.46
  ((33K@@+4(!! EDs   
A
A*c                    > T" UT	U 5         T" U4TTS.UD6nS S S 5        T	R                   " W40 UD6nU$ ! , (       d  f       N#= fN)rJ   rK   )_get_peft_type)
r^   ri   rS   rU   r   rK   r~   rV   rJ   rp   s
        r@   r   W_patch_pretrained_class.<locals>.get_wrapped_class.<locals>.ClassWrapper._get_peft_type$  s^    )&,D - !",?+=!" !	!"I E *88MfM
!! EDs	   6
Ac                    > T" UT
U 5         T" U4T	TS.UD6nS S S 5        T
R                   " W/UQ70 UD6nU$ ! , (       d  f       N&= fr   )get_config_dict)r^   rR   r_   rS   rU   r   rK   r~   rV   rJ   rp   s         r@   r   X_patch_pretrained_class.<locals>.get_wrapped_class.<locals>.ClassWrapper.get_config_dict0  sn     *&,D -5!",?+=!" !	!"I E *996 *6.46
!! EDs	   9
Asave_directorysafe_serializationc                   > UR                  SS5      nU(       a  SSKJn  SSKJn  SSKJn  UR                  S5      nUR                  SS 5      nUR                  S	UR                  [        R                  R                  5      S
   5      n	U" 5       n
U
R                  U5        U
R                  U	5        U" X5        [        TU ]<  " SUUSS.UD6  U(       a
  U" W	UWWS9  g g )Npush_to_hubFr   )r   HubApi)
Repositorytokencommit_messagerepo_id)r   r   r   )	repo_name
output_dirr   r    )rM   modelscope.hub.push_to_hubr   modelscope.hub.apir   modelscope.hub.repositoryr   rz   splitrN   rO   seplogincreate_reposupersave_pretrained)selfr   r   rS   r   r   r   r   r   r   api	__class__s              r@   r   X_patch_pretrained_class.<locals>.get_wrapped_class.<locals>.ClassWrapper.save_pretrained>  s     %jj>F9D"JJw/E%+ZZ0@$%GN &

!&,,RWW[[9"=!?I !(CIIe$OOI.~9' #1'9 % 	 "+#1'5#	% rX   r   )T)r+   
__module____qualname____firstlineno__classmethodr   r   r   r   strrN   PathLikeboolr   __static_attributes____classcell__)r   rK   r~   rV   rJ   rp   s   @r@   ClassWrapperr     sv    " " 	" 	" 	" " " "  ,0$% %c2;;&6 7$% %)$% $%rX   r   r   rh   ri   r   r   r   )
contextlibcontextmanagerr1   r   inspect	signature
parametersr   r   r   r+   r   )
rp   rJ   rK   rS   r   r   r   r~   rV   vars
   ```    @r@   get_wrapped_class2_patch_pretrained_class.<locals>.get_wrapped_class   s      
	"	"!	3 
#!	3F	N	% N	%< N	%` |%677, **3+>+>?JJJ*$z)A/>,|%566+|%677,|%677, , 5 5$0$=$=!rX   r+   	tokenizerconfigr   r   r   r   pipeliner[   rh   ri   rm   rd   c                     SSK Jn  SU ;   aM  U R                  S5      u  p@[        R                  R                  U5      (       d  SSKJn  U" U5      nUS-   U -   n U" U /UQ70 UD6$ )Nr   )$origin_get_class_from_dynamic_modulez--rD   )!transformers.dynamic_module_utilsr   r   rN   rO   rP   rL   rE   )class_referenceargsrS   r   r   rE   s         r@   get_class_from_dynamic_module>_patch_pretrained_class.<locals>.get_class_from_dynamic_module  sl    Z?"'6'<'<T'B$G77>>'**8+G4%n>O3O >d >6<> 	>rX   r   dynamic_module_utilsr   configuration_auto)NN)r   r   r   r
   r1   r+   r&   rJ   r-   r   r   r   r   r[   r   r   r   rm   r   rd   r   r   r   r   transformers.models.autor   )r2   wrapr`   re   rj   rn   r   all_available_modulesr:   
skip_modelignore_file_pattern_kwargshas_from_pretrainedhas_get_peft_typehas_get_config_dicthas_save_pretrainedr   is_peftr   r   r   rV   r   s                       @@r@   _patch_pretrained_classr      s    +/)-4KKKL DHBFf+f!)%T#Y*?!@f !)sDI~)> ?f fP #;gc:66|| DJJL0LH

4L
)+& &':*&	")#/@"A '-= >")#/@"A")#/@"A J$**,.3F2+4G 1:M)005)00)#L1KLN
 #733L,N ,N$..s/B/BCNN
!Z/LJ*4L.1.A.A+*5 C >"<>+?C' +6 3 >"<>+?C' !6M)N)N,/,>,>)%0/N3MN&P" #733L,N ,N.1.A.A+&11 :8:';# "((-y $|	> 2'9; ;DXDvDvA=Z:?;X8  }	2%,,S11s   0K70-L L 7K= Lc                    U  H  nUc  M   [        US5      n[        US5      n[        US5      nU(       a/  [        US5      (       a  UR                  Ul         [        US5        U(       a/  [        US5      (       a  UR                  Ul         [        US5        U(       d  M  [        US5      (       d  M  UR                  Ul         [        US5        M     SSKJ	n  [        US	5      (       a5  UR                  Ul        SS
KJn  UR                  Ul        [        US	5        g g !    GM*  = f!    N= f!    N= f!    GMA  = f)Nr   r   r   r[   rm   rd   r   r   r   r   )r1   r[   r   delattrrm   r   rd   r   r   r   r   r   r   r   )r2   r   r   r   r   r   r   s          r@   _unpatch_pretrained_classr     sB   #;	")#/@"A '-= >")#/@"A 730I#J#J"%"="=C67 .E!F!F!$!:!:C45 730I#J#J"%"="=C673 $: 2#%KLL=Q=v=v:?;O;t;t8$&LM	 M-	


s/   $D'D0D7
D>'D-0D47D;>Ec                    ^ SS K n SSK Jn  SSKJn  SSKJn  SSKJn  U" 5       mS S S S.S[        S[        S	[        [           S
[        [           S[        [        [        S 4   4
U4S jjjnS S S S S S SS.S[        S[        S[        [           S	[        [           S
[        [           S[        [        [        S 4   S[        [        [        S 4   S[        [        [        S 4   S[        4U4S jjjnS7S[        [        [        S 4   S[        4S jjnS SS.S[        S[        [        [        S 4   S[        SS4S jjnUS S S S SS S.S[        S[        [        [        4   S[        [           S[        [           S[        [           S[        [        [        S 4   S
[        [           S [        [        [        [           [        4      4S! jj5       n	SS"KJn
  US U
S S S#.S$[        [        [        [         ["        4   S[        S[        S[        [        [        S 4   S
[        [           S[        [           S[        [           4S% jj5       nUS S S U
S&.S[        S'[$        [&           S[        S[        [           S[        [        [        S 4   S	[        [           S
[        [           S[        [(        [*        [(           4   4S( jj5       n   S8S)[        [        [        4   S	[        [           S[        [           S*[        4S+ jjnSS,K Jn  [/        UR0                  S-5      (       d  UR0                  R2                  UR0                  l        S. UR0                  l        UR0                  R6                  UR0                  l        [;        XR0                  5      UR0                  l        [/        US/5      (       d1  U R<                  R>                  Ul         X`l        X`R<                  l        [/        US05      (       dM  URB                  Ul"        [;        XR5      Ul!        URB                  U l!        URB                  U R                  l!        [/        US15      (       dM  URF                  Ul$        [;        Xr5      Ul#        URF                  U l#        URF                  U R                  l#        [/        US25      (       dd  SS3K%J&n  URN                  Ul(        [;        X5      Ul'        URN                  U l'        URN                  U R                  l'        URN                  Ul'        [/        US45      (       dM  URR                  Ul*        [;        X5      Ul)        URR                  U l)        URR                  U R                  l)        [/        US55      (       d^  URV                  Ul,        [;        X5      Ul+        URV                  U l+        URV                  U R                  l+        URV                  Ul+        [/        US65      (       de  URZ                  Ul.        [;        X5      Ul-        URZ                  U l-        URZ                  U R                  l-        SS3K%J&n  URZ                  Ul-        g g )9Nr   hf_api)r   )future_compatible)
get_logger)	repo_typerG   r   r   filenamer   rG   r   c                   > Ub  TR                  S5        SSKJn  U" 5       nUR                  U5        Ub  US:X  a  SnUR	                  XUS9$ )z!Patch huggingface_hub.file_existsz[The passed in repo_type will not be used in modelscope. Now only model repo can be queried.r   r   rH   rI   )rG   )warningr   r   r   file_exists)	r   r   r   r   rG   r   r   r   loggers	           r@   _file_exists _patch_hub.<locals>._file_exists  sW      NNm 	.h		%x61Hw8DDrX   F)rF   r   rG   	cache_dir	local_dirr   local_files_onlyrF   r   r   r   c          	      @  > [        U	5      S:  a  TR                  S5        US;   d   SU S35       eUS;   a  SSKJn
  OSSKJn
  SS	KJn  U" 5       nUR                  U5        Ub  US
:X  a  SnU
" U U(       a  [        R                  R                  X!5      OUUUUUS9$ )z%Patch huggingface_hub.hf_hub_downloadr   zThe passed in library_name,library_version,user_agent,force_download,proxiesetag_timeout,headers,endpoint will not be used in modelscope.)Nrh   datasetz
repo_type=z is not supported in ModelScope)Nrh   model_file_downloaddataset_file_downloadr   rH   rI   )	file_pathr   r   r   rG   )lenr   modelscope.hub.file_downloadr   r   rL   r   r   rN   rO   rQ   )r   r   rF   r   rG   r   r   r   r   rS   file_downloadr   r   r   s                r@   _file_download"_patch_hub.<locals>._file_download  s     v;?NN23    	P$YK/NO	P  'Y[%h		%x61H ggll97&- 	rX   returnc                     SSK Jn  SSK Jn  U" 5       nUR                  U5        SUR	                  5       S   =(       d    S0$ )Nr   )ModelScopeConfigr   r:   unknown)r   r   r   r   get_user_info)r   r   r   r   r   s        r@   _whoami_patch_hub.<locals>._whoami6  s:    7-h		%(668;HyIIrX   )r   privater   RepoUrlc                x    SSK Jn  U" 5       nU(       a  SOSnUR                  " U4X'S.UD6nSSKJn	  U	" USUS9$ )	a  
Create a new repository on the hub.

Args:
    repo_id: The ID of the repository to create.
    token: The authentication token to use.
    private: Whether the repository should be private.
    **kwargs: Additional arguments.

Returns:
    RepoUrl: The URL of the created repository.
r   r   r   public)r   
visibility)r   rh   )urlr   r   )r   r   r   modelscope.utils.repo_utilsr   )
r   r   r   r   rS   r   r   r   repo_urlr   s
             r@   r   _patch_hub.<locals>.create_repo=  sM    $ 	.h")Yx
??C C;AC78wHHrX   rI   )path_in_repor   commit_descriptionr   rG   ignore_patternsfolder_pathr  r   r  r  c          
      n    SSK Jn
  Ub  US:X  a  SnU
" UUUUUUUS9  SSKJn  U" [         SU S3UUS S	9$ )
Nr   _push_files_to_hubrH   rI   )path_or_fileobjr  r   r   r  rG   r   )r   z/models/z/files)
commit_urlr   r  oid)r   r  r  r   r   )r   r   r  r  r   r  r   rG   r  rS   r  r   s               r@   upload_folder!_patch_hub.<locals>.upload_folderW  sc     	Bx61H'%)1	 	;/0	H)1
 	
rX   )DEFAULT_REPOSITORY_REVISION)r   rG   r   r  r  c          	      <    Ub  US:X  a  SnSSK Jn	  U	" XX4XVU5        g )NrH   rI   r   r
  )r   r  )
r   r  r  r   r   rG   r   r  rS   r  s
             r@   upload_file_patch_hub.<locals>.upload_file{  s,     x61HA?'#5G	IrX   )r  r   r   rG   
operationsc          
      @   SSK Jn	  U	" 5       n
[        U Vs/ s H  nSUR                  R                  ;  PM     sn5      (       a  [        S5      eUb  US:X  a  SnU Vs/ s H  oR                  PM     nnU
R                  UUUUUUU=(       d    SS9  g s  snf s  snf )	Nr   r   Addz<ModelScope create_commit only support Add operation for now.rH   rI   rh   )r   r  r   r  r   rG   r   )r   r   r'   r   r+   
ValueErrorr  r  )r   r   r  r   r  r   r   rG   rS   r   r   op	all_filess                r@   create_commit!_patch_hub.<locals>.create_commit  s     	.hZHZrR\\222ZHIINP Px61H2<=*B''*	=!)1*7 	 	, I
 >s   #B Brepo_id_or_pathignore_metadata_errorsc                    SSK Jn  U" 5       nUR                  U5        [        R                  R                  U5      (       a  UnO=US:X  d  Uc  SSKJn  U" US5      nO$US:X  a  SSKJn	  U	" US5      nO[        SU 35      e[        US	5       n
U " U
R                  5       US
9n[        UR                  S5      (       d  / UR                  l        UsS S S 5        $ ! , (       d  f       g = f)Nr   r   rh   r   z	README.mdr   r   z5repo_type should be `model` or `dataset`, but now is r)r  tags)r   r   r   rN   rO   rP   rL   r   r   r  openreadr1   datar!  )r^   r  r   r   r  r   r   r   r   r   f	repo_cards               r@   load_patch_hub.<locals>.load  s     	.h		%77>>/**'I'!Y%66+O[II)#8-o{KIG	{S  )S!Q1GII9>>622&(	# "!!s   AC
C*repocard_validate_originc                      g Nr   )r   rS   s     r@   <lambda>_patch_hub.<locals>.<lambda>  s    TrX   _hf_hub_download_origin_file_exists_origin_whoami_origin_create_repo_originhub_upload_folder_origin_upload_file_origin_create_commit_originr-  )NNF)/huggingface_hubr   huggingface_hub.hf_apir   r   rL   r   r   r   r   r   r   r   r
   modelscope.utils.constantr  bytesr   r	   r   r   r   r*  r1   RepoCardvalidater+  r'  _load_originr   r   hf_hub_downloadr0  r   r1  whoamir2  r{   r5  r   r3  r  r6  r  r7  r  r8  )r9  r   r   r   r   r   r   r   r   r  r  r  r  r'  r*  r5  r   s                   @r@   
_patch_hubrB    sC   &*8%\F $("&(,EE E
 C=E 3-E S$_%E E0 372615;?;?7;05$ $!$$ #+3-$ #+3-	$
 "*#$ #(T4"8$ #(T4"8$ $D#tO4$ *.$ $LJU4d?3 Jt J 59$)	I I !dD1I "	I
 "+I4  '+(,,0(,"*;?
 
 39%	

 sm
 !
 %SM
 S$_%
 3-
 "%S	3"78
 
B F )-"=(,,0I sD%9:I 	I
 I S$_%I 3-I !I %SMI I$  -1(,#'"=,, _-,
 , %SM, S$_%, C=, 3-, 
z6*--	., ,@ $(#',sDy) C= }	
 !%> )8$$&899-5->->-G-G*%A")1):):)?)?&!+D2C2C!D6455)8)F)F)V)V&*8'8F%%56011%+%7%7"':&,&8&8#-3-?-?*6+,, &"70!'(.%6011*%+%7%7"'9&,&8&8#-3-?-?* ,,6233'-';';$)-=(.(<(<%/5/C/C,6011%+%7%7"'9&,&8&8#-3-?-?*%116233'-';';$)-=(.(<(<%/5/C/C,*"00 4rX   c                     SS K n SSK Jn  SSK Jn  [        UR                  S5      (       a;  UR                  R
                  UR                  l        [        UR                  S5        [        UR                  S5      (       a;  UR                  R                  UR                  l	        [        UR                  S5        [        US5      (       aS  UR                  U R                  l        UR                  U l        UR                  U R                  l        [        US5        [        US5      (       aI  UR                  Ul        UR                  U l        UR                  U R                  l        [        US5        [        US5      (       aI  UR                  Ul        UR                   U l        UR                   U R                  l        [        US5        [        US	5      (       a`  SS
KJn  UR&                  Ul        UR(                  U l        UR(                  U R                  l        UR(                  Ul        [        US	5        [        US5      (       aI  UR*                  Ul        UR,                  U l        UR,                  U R                  l        [        US5        [        US5      (       aZ  UR.                  Ul        UR0                  U l        UR0                  U R                  l        UR0                  Ul        [        US5        [        US5      (       aa  UR2                  Ul        UR4                  U l        UR4                  U R                  l        SS
KJn  UR4                  Ul        [        US5        g g )Nr   r   r)  r+  r?  r0  r1  r2  r3  r4  r6  r7  r8  )r9  r   r*  r1   r=  r+  r>  r   r?  r'  r0  r   r@  r1  r   r2  rA  r{   r5  r3  r   r6  r  r7  r  r8  r  )r9  r   r*  r5  s       r@   _unpatch_hubrD    s   &(x  "455%-%6%6%G%G"!!#56x  .11!)!2!2!?!?!!>2v0118>8V8V%%5*0*H*H'8>8V8V%%512v,--#77&,&8&8#-3-?-?*-.v'((--!'(.%()v,--*#77&,&8&8#-3-?-?* ,,-.v.//%;;(.(<(<%/5/C/C,/0v,--#77&,&8&8#-3-?-?*%11-.v.//%;;(.(<(<%/5/C/C,*"00/0 0rX   c                  >    [        5         [        [        5       5        g r-  )rB  r   rA   r   rX   r@   	patch_hubrF  D  s    L467rX   c                  >    [        [        5       5        [        5         g r-  )r   rA   rD  r   rX   r@   unpatch_hubrH  I  s    689NrX   c               #   <   #    [        5         S v   [        5         g 7fr-  )rF  rH  r   rX   r@   patch_contextrJ  N  s     K	Ms   )F)%r   r!   r   rN   r(   r$   asyncior   	functoolsr   pathlibr   typesr   typingr   r   r	   r
   r   r   modelscope.hub.constantsr   r  r   r   r   rJ   rA   r   r   rB  rD  rF  rH  r   rJ  r   rX   r@   <module>rQ     s       	 	 
     B B E= = e PB!J
#NLR1j91x8

  rX   