
    |-jf                     N    d dl Z d dlmZ ddlmZ ddlmZ  G d de          ZdS )	    N)Path   )BaseTrainer   )MODELSc                   4    e Zd ZdZeZdefdZd Zde	fdZ
dS )VideoClsTrainerz"Image Classification Model Trainersrc_label_dict_pathc                     t          | j        j                                      d          }t	          j        ||           dS )zzdump 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      l/var/www/html/banglarbhumi/venv/lib/python3.11/site-packages/paddlex/modules/video_classification/trainer.pydump_label_dictzVideoClsTrainer.dump_label_dict   sA     #4#5#<==FFGWXX+-@AAAAA    c                 .   | j         j        r$| j                            | j         j                   | j         j        r$| j                            | j         j                   | j         j        r$| j                            | j         j                   | j                            | j	        j
        d           | j         j        $| j                            | j         j                   | j         j        dk    r$| j                            | j         j                   t          | j	        j
                                      d          }|                                r|                     |           | j         j        &| j                            | j         j        d           | j        j        &| j                            | j        j        d           | j         j        $| j                            | j         j                   | j         j        $| j                            | j         j                   | j         j        $| j                            | j         j                   | j	        j        &| j                            | j	        j                   dS dS )zupdate training configVideoClsDatasetN z	label.txttrain)modeeval)train_configlog_interval
pdx_configupdate_log_intervaleval_intervalupdate_eval_intervalsave_intervalupdate_save_intervalupdate_datasetr   dataset_dirnum_classesupdate_num_classespretrain_weight_pathupdate_pretrained_weightsr   r   existsr   
batch_sizeupdate_batch_sizeeval_configlearning_rateupdate_learning_rateepochs_iters_update_epochswarmup_stepsupdate_warmup_epochsr   _update_output_dir)r   label_dict_paths     r   update_configzVideoClsTrainer.update_config$   sf   ) 	PO//0A0NOOO* 	RO001B1PQQQ* 	RO001B1PQQQ&&*,=	
 	
 	
 (4O..t/@/LMMM1R77O55!6   t1=>>GGTT!!## 	2  111'3O--!,7 .    &2O--d.>.IPV-WWW*6O001B1PQQQ)5O**4+<+IJJJ)5O001B1OPPP$0O..t/A/HIIIII 10r   returnc                     d|                                  i}| j        j        | j        j        dk    r| j        j        |d<   | j                            dd          |d<   | j                            dd          |d<   |S )	zget key-value arguments of model training function

        Returns:
            dict: the arguments of training function.
        deviceNr   resume_pathdy2stFampOFF)
get_devicer   r:   get)r   
train_argss     r   get_train_kwargsz VideoClsTrainer.get_train_kwargsI   s      1 12
)5!-33(,(9(EJ}%"/33GUCC
7 -11%??
5r   N)__name__
__module____qualname____doc__r   entitiesstrr   r6   dictrA    r   r   r	   r	      sm        ,,HB3 B B B B#J #J #JJ$      r   r	   )r   pathlibr   baser   
model_listr   r	   rI   r   r   <module>rM      s                      B B B B Bk B B B B Br   