"""Base launcher class and config."""
from dataclasses import dataclass
from typing import Generic, TypeVar
from ml.core.config import BaseConfig, BaseObject
T = TypeVar("T", bound="BaseLauncher")
[docs]@dataclass
class BaseLauncherConfig(BaseConfig):
pass
LauncherConfigT = TypeVar("LauncherConfigT", bound=BaseLauncherConfig)
[docs]class BaseLauncher(BaseObject[LauncherConfigT], Generic[LauncherConfigT]):
[docs] def launch(self) -> None:
"""Launches the training process."""
raise NotImplementedError