Конвейер ML использует некоторые значения, которые находятся в файле конфигурации. Этот файл конфигурации представляет собой файл yaml.
Этот файл yaml предоставляется сценариям, которым он нужен, через сценарий с именем core.py.
Структура этой части кода такая
Код: Выделить всё
regression
|
-----config
| \----core.py
|
|----config.yml
|
|---train.py
|---predict.py
Код: Выделить всё
from config.core import configФайл core.py выглядит примерно так
Код: Выделить всё
from pydantic import BaseModel
from strictyaml import YAML
class Config(BaseModel):
value1: str
value2: str
def ParseConfigFile()->YAML:
# Here some code to parse the yaml file
def get_config()-> Config:
parsed_config=ParseConfigFile()
_config = Config(**parsed_config.data)
return _config
config = get_config()
print(f"Config: {config}") #-> Originally it was not here
- Это обычное явление или обычное? Разве это не дорого, поскольку читается файл yaml? Или есть лучший способ сделать это и загрузить yaml только один раз? Стоит ли вообще затрачивать на это усилий?
- Из config.core import config и из reгрессии.config.core import config эквивалент? (кстати, этот проект устанавливается с помощью setup.py и tox)
Подробнее здесь: https://stackoverflow.com/questions/790 ... iles-twice