Improve AI logic

This commit is contained in:
Urtzi Alfaro
2025-11-05 13:34:56 +01:00
parent 5c87fbcf48
commit 394ad3aea4
218 changed files with 30627 additions and 7658 deletions

View File

@@ -39,7 +39,8 @@ router = APIRouter()
training_service = EnhancedTrainingService()
@router.get(
route_builder.build_base_route("models") + "/{inventory_product_id}/active"
route_builder.build_base_route("models") + "/{inventory_product_id}/active",
response_model=TrainedModelResponse
)
async def get_active_model(
tenant_id: str = Path(..., description="Tenant ID"),
@@ -90,21 +91,25 @@ async def get_active_model(
await db.commit()
return {
"model_id": str(model_record.id), # ✅ This is the correct field name
"model_id": str(model_record.id),
"tenant_id": str(model_record.tenant_id),
"inventory_product_id": str(model_record.inventory_product_id),
"model_type": model_record.model_type,
"model_path": model_record.model_path,
"features_used": model_record.features_used,
"hyperparameters": model_record.hyperparameters,
"version": 1, # Default version
"training_samples": model_record.training_samples or 0,
"features": model_record.features_used or [],
"hyperparameters": model_record.hyperparameters or {},
"training_metrics": {
"mape": model_record.mape,
"mae": model_record.mae,
"rmse": model_record.rmse,
"r2_score": model_record.r2_score
"mape": model_record.mape or 0.0,
"mae": model_record.mae or 0.0,
"rmse": model_record.rmse or 0.0,
"r2_score": model_record.r2_score or 0.0
},
"created_at": model_record.created_at.isoformat() if model_record.created_at else None,
"training_period": {
"start_date": model_record.training_start_date.isoformat() if model_record.training_start_date else None,
"end_date": model_record.training_end_date.isoformat() if model_record.training_end_date else None
}
"is_active": model_record.is_active,
"created_at": model_record.created_at,
"data_period_start": model_record.training_start_date,
"data_period_end": model_record.training_end_date
}
except HTTPException: