sync active training with UI if running
This commit is contained in:
@@ -2054,6 +2054,52 @@ class RealTrainingAdapter:
|
||||
'duration_seconds': session.duration_seconds,
|
||||
'error': session.error
|
||||
}
|
||||
|
||||
def get_active_training_session(self) -> Optional[Dict]:
|
||||
"""
|
||||
Get currently active training session (if any)
|
||||
|
||||
This allows the UI to resume tracking training progress after page reload
|
||||
|
||||
Returns:
|
||||
Dict with training info if active session exists, None otherwise
|
||||
"""
|
||||
# Find any session with 'running' status
|
||||
for training_id, session in self.training_sessions.items():
|
||||
if session.status == 'running':
|
||||
return {
|
||||
'training_id': training_id,
|
||||
'status': session.status,
|
||||
'model_name': session.model_name,
|
||||
'test_cases_count': session.test_cases_count,
|
||||
'current_epoch': session.current_epoch,
|
||||
'total_epochs': session.total_epochs,
|
||||
'current_loss': session.current_loss,
|
||||
'start_time': session.start_time
|
||||
}
|
||||
|
||||
return None
|
||||
|
||||
def get_all_training_sessions(self) -> List[Dict]:
|
||||
"""
|
||||
Get all training sessions (for debugging/monitoring)
|
||||
|
||||
Returns:
|
||||
List of all training session summaries
|
||||
"""
|
||||
sessions = []
|
||||
for training_id, session in self.training_sessions.items():
|
||||
sessions.append({
|
||||
'training_id': training_id,
|
||||
'status': session.status,
|
||||
'model_name': session.model_name,
|
||||
'current_epoch': session.current_epoch,
|
||||
'total_epochs': session.total_epochs,
|
||||
'start_time': session.start_time,
|
||||
'duration_seconds': session.duration_seconds
|
||||
})
|
||||
|
||||
return sessions
|
||||
|
||||
|
||||
# Real-time inference support
|
||||
|
||||
Reference in New Issue
Block a user