
    9iW                         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	  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  \" 5       rS
\S\4S jr SS
\S\\\\4      4S jjrSS\S\\   4S jjrg)    N)DictOptionalUnion)urlparse)HubApiModelScopeConfig)	FILE_HASH)GitCommandWrapper)ModelFileSystemCache)compute_hash)
get_loggermodel_root_pathreturnc                 h   S n[         R                  R                  [         R                  R                  U S5      5      (       aR  [	        5       nUR                  U 5      nUR                  S5      (       a  US S n[        U5      nUR                  SS  nU$ [        U 5      nUR                  5       nU$ )N.git   )
ospathexistsjoinr
   get_repo_remote_urlendswithr   r   get_model_id)r   model_cachegit_cmd_wrappergit_urlu_parsemodel_ids         Z/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/modelscope/hub/check_model.pyget_model_id_from_cacher!      s    K	ww~~bggll?F;<<+-!55oFF##crlG7#<<# O +?;++-O    
user_agentc                     [        U 5      nUR                  SS5      nS[        R                  " US90n[        R                  " 5       nS[
        R                  ;   a  UO0 UESS0En[        SS	9n UR                  X$S
9u  px[        U5      S:  a  US   n	OSn	 UR                  UU	SUUS9n
Sn[
        R                  R                  [
        R                  R                  U S5      5      (       d  [        U 5      nU
 H  nUS   S:X  a  M  Ub9  UR                  U5      (       a  M)  [        R!                  SUS    SU	 S35          g["        U;   d  MV  [%        [
        R                  R                  XS   5      5      nX["           :X  a  M  [        R!                  SUS    SU	 S35          g   g!   Sn	 GN= f!    g= f)zXCheck local model repo is latest.
Check local model repo is same as hub latest version.
___.z
user-agent)r#   CI_TESTSnapshotTrue   )timeout)r   use_cookiesr   masterT)r   revision	recursiveheadersr,   Nr   TypetreezModel file Namez' is different from the latest version `zQ`,This is because you are using an older version or the file is updated manually.Path)r!   replacer   get_user_agentget_cookiesr   environr   get_model_branches_and_tagslenget_model_filesr   r   r   r   loggerinfor	   r   )r   r#   r   r0   cookiessnapshot_header_api_	revisionslatest_revisionmodel_filesr   
model_filelocal_file_hashs                 r    check_local_model_is_latestrG   !   s   @*?;##E3/ ++zD
 #..0%."**%<' C
C
 FC
 b!	';;! < 8LA9~!"+A,"* **$# + 
 ww~~bggll?FCDD.?K%J&!V+&%%j11KK%j&8%99`ap`q rj k 
*&2_6HI'KO&Y*?? )*V*<)==detdu vn o 1 &	'&OLsD   A/F< 2%F2 F< F2 B.F< 	F< AF< /F< 2F96F< <G r   tokenc                     U b$  [         R                  R                  U 5      (       a  g[        5       nUR	                  U5         UR                  U S9  g! [         a     gf = f)NF)r   T)r   r   r   r   login	get_model	Exception)r   rH   r@   s      r    check_model_is_idrM   k   sX    277>>(33x

5	NNHN/ 		s   A 
A"!A")N)r   typingr   r   r   urllib.parser   modelscope.hub.apir   r   modelscope.hub.constantsr	   modelscope.hub.gitr
   modelscope.hub.utils.cachingr   modelscope.hub.utils.utilsr   modelscope.utils.loggerr   r<   strr!   rG   rM    r"   r    <module>rX      s    
 ( ( ! 7 . 0 = 3 .	S s $ .2GGtSy)*GT
 
HSM 
r"   