
    9i                         S SK Jr  SSKJrJr  SSK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   )PaddlePredictorOptioncreate_predictor)build_dataset_checkerbuild_evaluatorbuild_exportorbuild_trainerNc                     [        X US.UD6$ )N)
model_name	model_dir)_ModelBasedInference)r   r   argskwargss       M/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/paddlex/model.pycreate_modelr      s    59=C     c                   >    \ 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predict is not supported!r   r   s      r   predict_BaseModel.predict.   s    344r   c                     [        S5      e)Nzset_predict is not supported!r   r   s      r   set_predict_BaseModel.set_predict1   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__4   s     <<0000      N)__name__
__module____qualname____firstlineno__r   r   r"   r%   r(   r+   r/   __static_attributes__r2   r   r   r   r   !   s%    ;364591r   r   c                   ,    \ rS rSrS rS rS rS rSrg)r   8   c                 $    [        U0 UD6U l        g r.   )r   
_predictorr   s      r   __init___ModelBasedInference.__init__9   s    *D;F;r   c              /   D   #    U R                   " U0 UD6 S h  vN   g  N7fr.   r;   r   s      r   r(   _ModelBasedInference.predict<   s     ??D3F333r1   c                 <    U R                   R                  " S0 UD6  g Nr2   )r;   set_predictor)r   r   s     r   rC   "_ModelBasedInference.set_predictor?   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__r3   )r   names     r   __getattr__ _ModelBasedInference.__getattr__B   sO    4??D))4??D11''((CD6K
 	
r   r?   N)	r3   r4   r5   r6   r<   r(   rC   rL   r7   r2   r   r   r   r   8   s    <40
r   r   c                   P   ^  \ 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U =r$ )_ModelBasedConfigJ   c                 d   > [         TU ]  5         Xl        UR                  R                  U l        g r.   )superr<   _configGlobalmodel_model_name)r   configr   r   rJ   s       r   r<   _ModelBasedConfig.__init__K   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0 n	XTLa  [        S0 UD6U	S'   XdLa  XiS'   OSU	S'   XtLa  XyS'   XLa  XS'   [        U R                  4UUS	.U	D6n
S
U;   d   eX4$ )Nr   devicekernel_optionuse_hpip
hpi_configgenai_config	pp_optionF)r   rZ   inputr2   )
r   rS   PredictpoprT   getobjectr   r   rV   )r   predict_kwargsr   rZ   UNSETr[   r\   r]   r^   create_predictor_kwargs	predictors              r   _build_predictor"_ModelBasedConfig._build_predictorP   s/   !$,,"6"67"&&{D9	$$((48&**?EB!%%j%8#''e<
%)).%@"$%3H 44#K0  2:J/27#J/"4>L1$6BN3$

 &	
	 .(((((r   c                 L    [        U R                  5      nUR                  5       $ r.   )r   rS   check)r   dataset_checkers     r   r   _ModelBasedConfig.check_datasets   s    /=$$&&r   c                 N    [        U R                  5      nUR                  5         g r.   )r
   rS   r   )r   trainers     r   r   _ModelBasedConfig.trainw   s    -r   c                 L    [        U R                  5      nUR                  5       $ r.   )r   rS   r"   )r   	evaluators     r   r"   _ModelBasedConfig.evaluate{   s    #DLL1	!!##r   c                 L    [        U R                  5      nUR                  5       $ r.   )r	   rS   r%   )r   exportors     r   r%   _ModelBasedConfig.export   s    !$,,/  r   c              #   T   #    U R                  5       u  pU" S0 UD6 S h  vN   g  N7frB   )ri   )r   re   rh   s      r   r(   _ModelBasedConfig.predict   s'     $($9$9$;!.~...s   (&()rS   rV   r.   )r3   r4   r5   r6   r<   ri   r   r   r"   r%   r(   r7   __classcell__)rJ   s   @r   rO   rO   J   s,    /
!)F'$!/ /r   rO   r.   )copyr   	inferencer   r   modulesr   r   r	   r
   r   r   r   rO   r2   r   r   <module>r~      s>     > 1 1.
: 
$;/
 ;/r   