mirror of
https://github.com/Akkudoktor-EOS/EOS.git
synced 2025-06-28 00:46:53 +00:00
Add documentation that covers: - configuration - prediction Add Python scripts that support automatic documentation generation for configuration data defined with pydantic. Adapt EOS configuration to provide more methods for REST API and automatic documentation generation. Adapt REST API to allow for EOS configuration file load and save. Sort REST API on generation of openapi markdown for docs. Move logutil to core/logging to allow configuration of logging by standard config. Make Akkudoktor predictions always start extraction of prediction data at start of day. Previously extraction started at actual hour. This is to support the code that assumes prediction data to start at start of day. Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
26 lines
797 B
Python
26 lines
797 B
Python
"""Abstract and base classes for optimization."""
|
|
|
|
from pydantic import ConfigDict
|
|
|
|
from akkudoktoreos.core.coreabc import ConfigMixin, PredictionMixin
|
|
from akkudoktoreos.core.logging import get_logger
|
|
from akkudoktoreos.core.pydantic import PydanticBaseModel
|
|
|
|
logger = get_logger(__name__)
|
|
|
|
|
|
class OptimizationBase(ConfigMixin, PredictionMixin, PydanticBaseModel):
|
|
"""Base class for handling optimization data.
|
|
|
|
Enables access to EOS configuration data (attribute `config`) and EOS prediction data (attribute
|
|
`prediction`).
|
|
|
|
Note:
|
|
Validation on assignment of the Pydantic model is disabled to speed up optimization runs.
|
|
"""
|
|
|
|
# Disable validation on assignment to speed up optimization runs.
|
|
model_config = ConfigDict(
|
|
validate_assignment=False,
|
|
)
|