govorov/backend/app/schemas/calculation.py

23 lines
667 B
Python

from pydantic import BaseModel, ConfigDict
from datetime import datetime
from typing import Optional, Dict, Any
class CalculationBase(BaseModel):
input_params: Dict[str, Any]
model_name: Optional[str] = None
class CalculationCreate(CalculationBase):
pass
class CalculationRead(CalculationBase):
id: int
output_results: Optional[Dict[str, Any]] = None
timestamp: datetime
objective_score: Optional[float] = None
model_config = ConfigDict(from_attributes=True)
class CalculationUpdate(BaseModel):
output_results: Optional[Dict[str, Any]] = None
objective_score: Optional[float] = None
model_name: Optional[str] = None