
    =pj                         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  SS jr " S S	5      r " S
 S\5      r " S S\5      rg)    )deepcopy   )create_predictor)PaddlePredictorOption)build_dataset_checkerbuild_evaluatorbuild_exportorbuild_trainerbuild_weight_converterNc                     [        X US.UD6$ )N)
model_name	model_dir)_ModelBasedInference)r   r   argskwargss       I/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/paddlex/model.pycreate_modelr      s    59=C     c                   D    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
rg)
_BaseModel#   c                     [        S5      e)Nzcheck_dataset is not supported!	Exceptionselfr   r   s      r   check_dataset_BaseModel.check_dataset$   s    9::r   c                     [        S5      e)Nztrain is not supported!r   r   s      r   train_BaseModel.train'   s    122r   c                     [        S5      e)Nzevaluate is not supported!r   r   s      r   evaluate_BaseModel.evaluate*   s    455r   c                     [        S5      e)Nzexport is not supported!r   r   s      r   export_BaseModel.export-   s    233r   c                     [        S5      e)Nz&pdparams2safetensors is not supported!r   r   s      r   pdparams2safetensors_BaseModel.pdparams2safetensors0   s    @AAr   c                     [        S5      e)Nzpredict is not supported!r   r   s      r   predict_BaseModel.predict3   s    344r   c                     [        S5      e)Nzset_predict is not supported!r   r   s      r   set_predict_BaseModel.set_predict6   s    788r   c              /   D   #    U R                   " U0 UD6 S h  vN   g  N7fN)r,   r   s      r   __call___BaseModel.__call__9   s     <<0000      N)__name__
__module____qualname____firstlineno__r   r    r#   r&   r)   r,   r/   r3   __static_attributes__r6   r   r   r   r   #   s+    ;364B591r   r   c                   ,    \ rS rSrS rS rS rS rSrg)r   =   c                 $    [        U0 UD6U l        g r2   )r   
_predictorr   s      r   __init___ModelBasedInference.__init__>   s    *D;F;r   c              /   D   #    U R                   " U0 UD6 S h  vN   g  N7fr2   r?   r   s      r   r,   _ModelBasedInference.predictA   s     ??D3F333r5   c                 <    U R                   R                  " S0 UD6  g Nr6   )r?   set_predictor)r   r   s     r   rG   "_ModelBasedInference.set_predictorD   s    %%//r   c                     [        U R                  U5      (       a  [        U R                  U5      $ [        SU R                  R
                   SU S35      e)N'z' object has no attribute ')hasattrr?   getattrAttributeError	__class__r7   )r   names     r   __getattr__ _ModelBasedInference.__getattr__G   sO    4??D))4??D11''((CD6K
 	
r   rC   N)	r7   r8   r9   r:   r@   r,   rG   rP   r;   r6   r   r   r   r   =   s    <40
r   r   c                   V   ^  \ rS rSrSU 4S jjrS rS rS rS rS r	S r
S	 rS
rU =r$ )_ModelBasedConfigO   c                 d   > [         TU ]  5         Xl        UR                  R                  U l        g r2   )superr@   _configGlobalmodel_model_name)r   configr   r   rN   s       r   r@   _ModelBasedConfig.__init__P   s%    !==..r   c                    [        U R                  R                  5      nUR                  SS 5      nU R                  R                  R                  SS 5      n[        5       nUR                  SU5      nUR                  SU5      nUR                  SU5      nUR                  SU5      nUR                  SU5      n	UR                  SU5      n
0 nXTLa  X[S'   XdLa  XkS'   XtLa%  [        U[        5      (       a  [        S0 UD6OUUS	'   XLa  XS'   XLa  XS'   XLa  XS'   [        U R                  4UUS
.UD6nSU;   d   eX4$ )Nr   deviceengineengine_configkernel_optionuse_hpip
hpi_configgenai_config	pp_option)r   r^   inputr6   )r   rW   PredictpoprX   getobject
isinstancedictr   r   rZ   )r   predict_kwargsr   r^   UNSETr_   r`   ra   rb   rc   rd   create_predictor_kwargs	predictors                r   _build_predictor"_ModelBasedConfig._build_predictorU   su   !$,,"6"67"&&{D9	$$((48##He4&**?EB&**?EB!%%j%8#''e<
%)).%@"$06H-%7DO4% mT22 &66" $K0
  2:J/"4>L1$6BN3$

 &	
	 .(((((r   c                 L    [        U R                  5      nUR                  5       $ r2   )r   rW   check)r   dataset_checkers     r   r   _ModelBasedConfig.check_dataset~   s    /=$$&&r   c                 N    [        U R                  5      nUR                  5         g r2   )r
   rW   r    )r   trainers     r   r    _ModelBasedConfig.train   s    -r   c                 L    [        U R                  5      nUR                  5       $ r2   )r   rW   r#   )r   	evaluators     r   r#   _ModelBasedConfig.evaluate   s    #DLL1	!!##r   c                 L    [        U R                  5      nUR                  5       $ r2   )r	   rW   r&   )r   exportors     r   r&   _ModelBasedConfig.export   s    !$,,/  r   c                 L    [        U R                  5      nUR                  5       $ r2   )r   rW   convert)r   	converters     r   r)   &_ModelBasedConfig.pdparams2safetensors   s    *4<<8	  ""r   c              #   T   #    U R                  5       u  pU" S0 UD6 S h  vN   g  N7frF   )rq   )r   rm   rp   s      r   r,   _ModelBasedConfig.predict   s'     $($9$9$;!.~...s   (&()rW   rZ   r2   )r7   r8   r9   r:   r@   rq   r   r    r#   r&   r)   r,   r;   __classcell__)rN   s   @r   rS   rS   O   s1    /
')R'$!#/ /r   rS   r2   )copyr   	inferencer   -inference.models.runners.paddle_static.configr   modulesr   r   r	   r
   r   r   r   r   rS   r6   r   r   <module>r      sC     ' P 1 14
: 
$E/
 E/r   