
    9i                     F    S SK r S SKJr  SSKJr  SSKJr   " S S\5      rg)	    N)Path   )BaseTrainer   )MODELSc                   >    \ rS rSrSr\rS\4S jrS r	S\
4S jrSrg	)
FormulaRecTrainer   zText Recognition Model Trainersrc_label_dict_pathc                     [        U R                  R                  5      R                  S5      n[        R
                  " X5        g)zbdump label dict config

Args:
    src_label_dict_path (str): path to label dict file to be saved.
zlabel_dict.txtN)r   global_configoutputjoinpathshutilcopyfile)selfr   dst_label_dict_paths      k/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/paddlex/modules/formula_recognition/trainer.pydump_label_dict!FormulaRecTrainer.dump_label_dict   s4     #4#5#5#<#<=FFGWX+A    c                 	   U R                   R                  (       a/  U R                  R                  U R                   R                  5        U R                   R                  (       a/  U R                  R                  U R                   R                  5        U R                   R                  (       a/  U R                  R                  U R                   R                  5        U R                  S   S:X  a1  U R                  R                  U R                  R                  S5        OCU R                  S   S;   a0  U R                  R                  U R                  R                  S5        [        U R                  R                  5      R                  S5      nUR                  5       (       a,  U R                  R                  U5        U R                  U5        U R                   R                   (       a/  U R                  R#                  U R                   R                   5        U R                   R$                  bp  U R                  S   S:X  a/  U R                  R'                  U R                   R$                  SS	9  O.U R                  R)                  U R                   R$                  SS	9  U R*                  R$                  bp  U R                  S   S:X  a/  U R                  R'                  U R*                  R$                  S
S	9  O.U R                  R)                  U R*                  R$                  S
S	9  U R                   R,                  b/  U R                  R/                  U R                   R,                  5        U R                   R1                  SS5      b.  U R                  R3                  U R                   R4                  SS	9  U R*                  R1                  SS5      b.  U R                  R3                  U R*                  R4                  S
S	9  U R                   R6                  b/  U R                  R9                  U R                   R6                  5        U R                   R:                  bI  U R                   R:                  S:w  a/  U R                  R=                  U R                   R:                  5        U R                  R>                  b0  U R                  RA                  U R                  R>                  5        gg)zupdate training configmodelLaTeX_OCR_recLaTeXOCRDataSet)	UniMERNetzPP-FormulaNet-LzPP-FormulaNet-SzPP-FormulaNet_plus-LzPP-FormulaNet_plus-MzPP-FormulaNet_plus-SSimpleDataSetzdict.txtNtrain)modeeval	delimiter )!train_configlog_interval
pdx_configupdate_log_intervaleval_interval_update_eval_interval_by_epochsave_intervalupdate_save_intervalr   update_datasetdataset_dirr   r   existsupdate_label_dict_pathr   pretrain_weight_pathupdate_pretrained_weights
batch_sizeupdate_batch_size_pairupdate_batch_sizeeval_configlearning_rateupdate_learning_rategetupdate_delimiterr!   epochs_iters_update_epochsresume_path_update_checkpointsr   _update_output_dir)r   label_dict_paths     r   update_configFormulaRecTrainer.update_config%   s   ))OO//0A0A0N0NO**OO::!!// **OO001B1B1P1PQg&/9OO**""..0A ( -
 
 OO**"".. t11==>GG
S!!##OO22?C  111OO55!!66 ''3!!'*o=66%%00w 7  11%%00w 2  &&2!!'*o=66$$//f 7  11$$//f 2  **6OO001B1B1P1PQ  d3?OO,,T->->-H-Hw,WT2>OO,,T-=-=-G-Gf,U))5OO**4+<+<+I+IJ))5!!--3OO//0A0A0M0MN$$0OO..t/A/A/H/HI 1r   returnc                     U R                  5       U R                  R                  SS5      U R                  R                  SS5      S.$ )zkget key-value arguments of model training function

Returns:
    dict: the arguments of training function.
dy2stFampOFF)devicerC   rD   )
get_devicer#   r7   )r   s    r   get_train_kwargs"FormulaRecTrainer.get_train_kwargsq   sD     oo'&&**7E:$$((6
 	
r    N)__name__
__module____qualname____firstlineno____doc__r   entitiesstrr   r?   dictrH   __static_attributes__rJ   r   r   r	   r	      s,    (HB3 BJJX

$ 

r   r	   )r   pathlibr   baser   
model_listr   r	   rJ   r   r   <module>rW      s!        d
 d
r   