23 lines
667 B
Python
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 |