SuperAI_Forecast / backend /forecast_worker_protocol.py
Thang6822
Update HF Space deployment
4106e0f
from __future__ import annotations
from dataclasses import dataclass, field
from typing import Any, Dict, List, Literal, Optional
WorkerCommandKind = Literal["preload", "forecast", "shutdown"]
WorkerResponseKind = Literal["preload", "forecast", "shutdown", "status", "exit"]
@dataclass(frozen=True)
class ForecastWorkerCommand:
kind: WorkerCommandKind
job_id: str
model_key: str
df_records: List[Dict[str, Any]] = field(default_factory=list)
horizon: int = 0
interval: str = ""
step_seconds: int = 0
symbol: str = ""
@dataclass(frozen=True)
class ForecastWorkerResponse:
kind: WorkerResponseKind
job_id: str
model_key: str
success: bool
payload: Optional[Dict[str, Any]] = None
error: Optional[str] = None
device: str = "not_loaded"
loaded: bool = False
pid: int = 0