Spaces:
Runtime error
Runtime error
File size: 1,245 Bytes
6216ecd fd0734b 6216ecd fd0734b |
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 |
import yaml
from pathlib import Path
import random
import tensorflow as tf
import numpy as np
import os
class Config:
def __init__(self,config_file_path:str):
"""loads config from config_file_path"""
with open(config_file_path,"r") as f:
self.config_dict = yaml.safe_load(f)
def __str__(self):
return str(self.config_dict)
def __getattr__(self,name):
return self.config_dict.get(name)
# exports constants
constants = Config("constants.yaml")
constants.config_dict['RAW_DATASET_DIR'] = Path(constants.config_dict['RAW_DATASET_DIR'])
constants.config_dict['INTERIM_DATASET_DIR'] = Path(constants.config_dict['INTERIM_DATASET_DIR'])
constants.config_dict['PROCESSED_DATASET_DIR'] = Path(constants.config_dict['PROCESSED_DATASET_DIR'])
config = None
def set_seed(seed: int = 42) -> None:
random.seed(seed)
np.random.seed(seed)
tf.random.set_seed(seed)
tf.experimental.numpy.random.seed(seed)
# When running on the CuDNN backend, two further options must be set
os.environ['TF_CUDNN_DETERMINISTIC'] = '1'
os.environ['TF_DETERMINISTIC_OPS'] = '1'
# Set a fixed value for the hash seed
os.environ["PYTHONHASHSEED"] = str(seed)
print(f"Random seed set as {seed}")
|