
    9i                        S SK r S SK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  S SKJrJrJrJr  S S	KJr  \" 5       r " S
 S5      rSS\\\4   S\\\4   4S jjr\S:X  a`  \ R6                  " 5       r\R;                  S\S9  \R;                  S\SS9  \R=                  5       r\" \R@                  \RB                  5        gg)    N)ListUnion)HubApi)model_file_download)pipeline)Config)	ModelFile)call_pipeline_with_json$get_pipeline_information_by_pipelineget_task_input_examples(pipeline_output_to_service_base64_output)
get_loggerc                   ,    \ rS rSrS rSS\4S jjrSrg)DeployChecker   c                 "    [        5       U l        g N)r   api)selfs    _/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/modelscope/utils/deploy_checker.py__init__DeployChecker.__init__   s    8    Nmodel_idc                    U(       dd  U R                   R                  U5      n[        R                  SU SU 35        [	        U5      (       a  US   nO[        R                  U S35        [        U[        R                  US9n[        R                  " U5      nUR                  S5      n[        UUUSS9n[        U5      n[        U5      n	[        XU	5      n
[!        Xj5      nU$ )	NzAll model_revisions of `z`: r   z has no revision.)r   	file_pathrevisiontaskT)r   modelmodel_revisionexternal_engine_for_llm)r   list_model_revisionsloggerinfolenerrorr   r	   CONFIGURATIONr   	from_filesafe_getr   r   r   r
   r   )r   r   r    model_revisionsconfiguration_filecfgr   pplpipeline_infodatainfer_resultresults               r   check_modelDeployChecker.check_model   s    "hh;;HEOKK*8*C7HIK?##!0!3z):;<0--#% 12||F# )$(	*
 =SA 't,.}4H9$Mr   )r   r   )__name__
__module____qualname____firstlineno__r   strr2   __static_attributes__ r   r   r   r      s    C  r   r   models	revisionsc                 N   [        U [        5      (       d  U /n [        U[        5      (       d  U/U(       a  SO
[        U 5      -  n[        U 5      [        U5      :w  a.  [        R	                  S[        W5       S[        W5       S35        [        5       n[        X5       H5  u  p# UR                  X#5      n[        R                  U SU SU S35        M7     g ! [         a?  n[        R                  U SU SU S	[        R                  " 5        S35         S nAM~  S nAff = f)
N   zMThe number of models and revisions need to be equal: The number of models is z" while the number of revisions is . z: Deploy pre-check pass. 
z: Deploy pre-check failed: z. )
isinstancelistr%   r#   r&   r   zipr2   r$   BaseException	traceback	print_exc)r;   r<   r   r   checkerreses          r   check_deployrK   9   s   fd##i&&K	1s6{C	
6{c)n$u:,@XqR	

 oGv1	%%e6CKK5'8*,EcU"MN 2  	KK'8*$?s"YEXEXEZD[[]^ 	s   '/C
D$%4DD$__main__z
--model_id)typez
--revision)rM   defaultr   )"argparserF   typingr   r   modelscope.hub.apir   modelscope.hub.file_downloadr   modelscope.pipelinesr   modelscope.utils.configr   modelscope.utils.constantr	   modelscope.utils.input_outputr
   r   r   r   modelscope.utils.loggerr   r#   r   r8   rK   r4   ArgumentParserparseradd_argument
parse_argsargsr   r   r:   r   r   <module>r]      s       % < ) * /G G /	$ $NsDy) eCI6F . z$$&F
3/
3=D. r   