great-ai/src/great_ai/utilities/parallel_map/parallel_map_configuration.py

25 lines
739 B
Python

from typing import Optional
from pydantic import BaseModel
from ..logger import get_logger
logger = get_logger("parallel_map")
class ParallelMapConfiguration(BaseModel):
concurrency: int
chunk_count: Optional[int]
chunk_length: int
input_length: Optional[int]
serialized_map_function: bytes
def pretty_print(self, prefix=" ⚙️ "):
logger.info(f"{prefix} concurrency: {self.concurrency}")
logger.info(f"{prefix} chunk length: {self.chunk_length}")
logger.info(
f"{prefix} chunk count: {self.chunk_count if self.chunk_count else 'unknown'}"
)
logger.info(
f"{prefix} function size: {len(self.serialized_map_function) / 1024:.0f} kB"
)