T predictions WIP

This commit is contained in:
Dobromir Popov
2025-11-22 01:02:19 +02:00
parent a7def3b788
commit f967f0a142
7 changed files with 200 additions and 39 deletions

View File

@@ -1916,8 +1916,14 @@ class AnnotationDashboard:
def get_available_models():
"""Get list of available models with their load status"""
try:
# Use self.available_models which is a simple list of strings
# Don't call training_adapter.get_available_models() as it may return objects
# Ensure self.available_models is a list
if not isinstance(self.available_models, list):
logger.warning(f"self.available_models is not a list: {type(self.available_models)}. Resetting to default.")
self.available_models = ['Transformer', 'COB_RL', 'CNN', 'DQN']
# Ensure self.loaded_models is a list/set
if not hasattr(self, 'loaded_models'):
self.loaded_models = []
# Build model state dict with checkpoint info
logger.info(f"Building model states for {len(self.available_models)} models: {self.available_models}")
@@ -1973,12 +1979,16 @@ class AnnotationDashboard:
logger.error(f"Error getting available models: {e}")
import traceback
logger.error(f"Traceback: {traceback.format_exc()}")
# Return a fallback list so the UI doesn't hang
return jsonify({
'success': False,
'error': {
'code': 'MODEL_LIST_ERROR',
'message': str(e)
}
'success': True,
'models': [
{'name': 'Transformer', 'loaded': False, 'can_train': False, 'can_infer': False},
{'name': 'COB_RL', 'loaded': False, 'can_train': False, 'can_infer': False}
],
'loaded_count': 0,
'available_count': 2,
'error': str(e)
})
@self.server.route('/api/load-model', methods=['POST'])