Faham commited on
Commit
1b7aca0
·
1 Parent(s): a697707

UPDATE: resource monitor

Browse files
Files changed (1) hide show
  1. resource_monitor.py +28 -7
resource_monitor.py CHANGED
@@ -23,8 +23,10 @@ class ResourceMonitor:
23
  "network_recv_mb": [],
24
  "process_count": [],
25
  "yfinance_calls": 0,
26
- "prophet_training_time": 0,
27
  "streamlit_requests": 0,
 
 
28
  }
29
  self.start_time = None
30
  self.process = psutil.Process()
@@ -122,8 +124,12 @@ class ResourceMonitor:
122
  else 0
123
  ),
124
  "yfinance_calls": self.resource_data["yfinance_calls"],
125
- "prophet_training_time": self.resource_data["prophet_training_time"],
 
 
126
  "streamlit_requests": self.resource_data["streamlit_requests"],
 
 
127
  }
128
  except Exception as e:
129
  return {"error": str(e)}
@@ -132,14 +138,18 @@ class ResourceMonitor:
132
  """Increment yfinance API call counter."""
133
  self.resource_data["yfinance_calls"] += 1
134
 
135
- def add_prophet_training_time(self, seconds: float):
136
- """Add Prophet training time."""
137
- self.resource_data["prophet_training_time"] += seconds
138
 
139
  def increment_streamlit_requests(self):
140
  """Increment Streamlit request counter."""
141
  self.resource_data["streamlit_requests"] += 1
142
 
 
 
 
 
143
  def create_resource_dashboard(self) -> go.Figure:
144
  """Create a comprehensive resource dashboard."""
145
  if not self.resource_data["timestamps"]:
@@ -208,7 +218,7 @@ class ResourceMonitor:
208
 
209
  # Update layout
210
  fig.update_layout(
211
- title="System Resource Usage",
212
  xaxis_title="Time",
213
  height=600,
214
  hovermode="x unified",
@@ -246,8 +256,12 @@ class ResourceMonitor:
246
  "total_network_sent_mb": sum(self.resource_data["network_sent_mb"]),
247
  "total_network_recv_mb": sum(self.resource_data["network_recv_mb"]),
248
  "yfinance_calls": self.resource_data["yfinance_calls"],
249
- "prophet_training_time": self.resource_data["prophet_training_time"],
250
  "streamlit_requests": self.resource_data["streamlit_requests"],
 
 
 
 
251
  }
252
 
253
  def export_data(self, filename: str = None):
@@ -271,6 +285,13 @@ class ResourceMonitor:
271
  "network_recv_mb": self.resource_data["network_recv_mb"],
272
  "process_count": self.resource_data["process_count"],
273
  },
 
 
 
 
 
 
 
274
  }
275
 
276
  with open(filename, "w") as f:
 
23
  "network_recv_mb": [],
24
  "process_count": [],
25
  "yfinance_calls": 0,
26
+ "ridge_training_time": 0, # Updated from prophet_training_time
27
  "streamlit_requests": 0,
28
+ "ml_predictions": 0, # New counter for ML predictions
29
+ "feature_count": 35, # Number of technical indicators used
30
  }
31
  self.start_time = None
32
  self.process = psutil.Process()
 
124
  else 0
125
  ),
126
  "yfinance_calls": self.resource_data["yfinance_calls"],
127
+ "ridge_training_time": self.resource_data[
128
+ "ridge_training_time"
129
+ ], # Updated
130
  "streamlit_requests": self.resource_data["streamlit_requests"],
131
+ "ml_predictions": self.resource_data["ml_predictions"], # New
132
+ "feature_count": self.resource_data["feature_count"], # New
133
  }
134
  except Exception as e:
135
  return {"error": str(e)}
 
138
  """Increment yfinance API call counter."""
139
  self.resource_data["yfinance_calls"] += 1
140
 
141
+ def add_ridge_training_time(self, seconds: float):
142
+ """Add Ridge Regression training time."""
143
+ self.resource_data["ridge_training_time"] += seconds
144
 
145
  def increment_streamlit_requests(self):
146
  """Increment Streamlit request counter."""
147
  self.resource_data["streamlit_requests"] += 1
148
 
149
+ def increment_ml_predictions(self):
150
+ """Increment ML prediction counter."""
151
+ self.resource_data["ml_predictions"] += 1
152
+
153
  def create_resource_dashboard(self) -> go.Figure:
154
  """Create a comprehensive resource dashboard."""
155
  if not self.resource_data["timestamps"]:
 
218
 
219
  # Update layout
220
  fig.update_layout(
221
+ title="System Resource Usage - QueryStockAI with Ridge Regression",
222
  xaxis_title="Time",
223
  height=600,
224
  hovermode="x unified",
 
256
  "total_network_sent_mb": sum(self.resource_data["network_sent_mb"]),
257
  "total_network_recv_mb": sum(self.resource_data["network_recv_mb"]),
258
  "yfinance_calls": self.resource_data["yfinance_calls"],
259
+ "ridge_training_time": self.resource_data["ridge_training_time"], # Updated
260
  "streamlit_requests": self.resource_data["streamlit_requests"],
261
+ "ml_predictions": self.resource_data["ml_predictions"], # New
262
+ "feature_count": self.resource_data["feature_count"], # New
263
+ "ml_model": "Ridge Regression", # New
264
+ "technical_indicators": self.resource_data["feature_count"], # New
265
  }
266
 
267
  def export_data(self, filename: str = None):
 
285
  "network_recv_mb": self.resource_data["network_recv_mb"],
286
  "process_count": self.resource_data["process_count"],
287
  },
288
+ "ml_metrics": { # New section
289
+ "model_type": "Ridge Regression",
290
+ "feature_count": self.resource_data["feature_count"],
291
+ "training_time": self.resource_data["ridge_training_time"],
292
+ "predictions_made": self.resource_data["ml_predictions"],
293
+ "data_sources": ["yfinance", "technical_indicators"],
294
+ },
295
  }
296
 
297
  with open(filename, "w") as f: