-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig_entity.py
55 lines (41 loc) · 972 Bytes
/
config_entity.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
from dataclasses import dataclass
from pathlib import Path
@dataclass(frozen=True)
class DataIngestionConfig:
root_dir: Path
source_URL: str
local_data_file: Path
unzip_dir: Path
@dataclass(frozen=True)
class DataValidationConfig:
root_dir: Path
STATUS_FILE: str
unzip_data_dir: Path
all_schema: dict
@dataclass(frozen=True)
class DataTransformationConfig:
root_dir: Path
data_path: Path
@dataclass(frozen=True)
class ModelTrainerConfig:
root_dir: Path
train_data_path: Path
test_data_path: Path
model_name: str
n_estimators: int
criterion: str
max_depth: int
min_samples_split: float
min_samples_leaf: float
bootstrap: bool
ccp_alpha: float
target_column: str
@dataclass(frozen=True)
class ModelEvaluationConfig:
root_dir: Path
test_data_path: Path
model_path: Path
all_params: dict
metric_file_name: Path
target_column: str
mlflow_uri: str