
    Xj                     t    d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
  ee          Zdeded	efd
ZdS )    N)
get_logger)Session)DPOTask)SFTTask)TrainingManagerdbtask_id	task_typec                   K   t          |           }	 	 |dk    rN|                     t                                        t          j        |k                                              }nM|                     t                                        t          j        |k                                              }|                    ||           d {V  |r	|j        dv rd S t          j
        d           d {V  nQ# t          $ rD}t                              d| d|            t          j
        d           d {V  Y d }~nd }~ww xY w9)NTsft)	completedfailed	cancelled   zError syncing task z: 
   )r   queryr   filteridfirstr   update_task_statusstatusasynciosleep	Exceptionloggererror)r   r	   r
   managertaskes         L/lsinfo/ai/hellotax_ai/training_center/backend/app/services/training_sync.pysync_training_statusr!      sm     b!!G$	$E!!xx((//
g0EFFLLNNxx((//
g0EFFLLNN,,Wi@@@@@@@@@ 4;*NNN-"""""""""" 	$ 	$ 	$LL=w==!==>>>-##############	$$s   CC9 C9 9
E:EE)r   common_loggingr   sqlalchemy.ormr   app.models.dpo_taskr   app.models.sft_taskr   app.services.training_managerr   __name__r   intstrr!        r    <module>r,      s     % % % % % % " " " " " " ' ' ' ' ' ' ' ' ' ' ' ' 9 9 9 9 9 9	H		$7 $S $S $ $ $ $ $ $r+   