245 lines
3.9 KiB
Python
245 lines
3.9 KiB
Python
# config.py
|
|
import logging
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
import mlflow
|
|
import pretty_errors # NOQA: F401 (imported but unused)
|
|
|
|
# Directories
|
|
ROOT_DIR = Path(__file__).parent.parent.absolute()
|
|
LOGS_DIR = Path(ROOT_DIR, "logs")
|
|
LOGS_DIR.mkdir(parents=True, exist_ok=True)
|
|
|
|
# Config MLflow
|
|
MODEL_REGISTRY = Path("/tmp/mlflow")
|
|
Path(MODEL_REGISTRY).mkdir(parents=True, exist_ok=True)
|
|
MLFLOW_TRACKING_URI = "file://" + str(MODEL_REGISTRY.absolute())
|
|
mlflow.set_tracking_uri(MLFLOW_TRACKING_URI)
|
|
|
|
# Logger
|
|
logging_config = {
|
|
"version": 1,
|
|
"disable_existing_loggers": False,
|
|
"formatters": {
|
|
"minimal": {"format": "%(message)s"},
|
|
"detailed": {"format": "%(levelname)s %(asctime)s [%(name)s:%(filename)s:%(funcName)s:%(lineno)d]\n%(message)s\n"},
|
|
},
|
|
"handlers": {
|
|
"console": {
|
|
"class": "logging.StreamHandler",
|
|
"stream": sys.stdout,
|
|
"formatter": "minimal",
|
|
"level": logging.DEBUG,
|
|
},
|
|
"info": {
|
|
"class": "logging.handlers.RotatingFileHandler",
|
|
"filename": Path(LOGS_DIR, "info.log"),
|
|
"maxBytes": 10485760, # 1 MB
|
|
"backupCount": 10,
|
|
"formatter": "detailed",
|
|
"level": logging.INFO,
|
|
},
|
|
"error": {
|
|
"class": "logging.handlers.RotatingFileHandler",
|
|
"filename": Path(LOGS_DIR, "error.log"),
|
|
"maxBytes": 10485760, # 1 MB
|
|
"backupCount": 10,
|
|
"formatter": "detailed",
|
|
"level": logging.ERROR,
|
|
},
|
|
},
|
|
"root": {
|
|
"handlers": ["console", "info", "error"],
|
|
"level": logging.INFO,
|
|
"propagate": True,
|
|
},
|
|
}
|
|
|
|
# Logger
|
|
logging.config.dictConfig(logging_config)
|
|
logger = logging.getLogger()
|
|
|
|
# Constraints
|
|
STOPWORDS = [
|
|
"i",
|
|
"me",
|
|
"my",
|
|
"myself",
|
|
"we",
|
|
"our",
|
|
"ours",
|
|
"ourselves",
|
|
"you",
|
|
"you're",
|
|
"you've",
|
|
"you'll",
|
|
"you'd",
|
|
"your",
|
|
"yours",
|
|
"yourself",
|
|
"yourselves",
|
|
"he",
|
|
"him",
|
|
"his",
|
|
"himself",
|
|
"she",
|
|
"she's",
|
|
"her",
|
|
"hers",
|
|
"herself",
|
|
"it",
|
|
"it's",
|
|
"its",
|
|
"itself",
|
|
"they",
|
|
"them",
|
|
"their",
|
|
"theirs",
|
|
"themselves",
|
|
"what",
|
|
"which",
|
|
"who",
|
|
"whom",
|
|
"this",
|
|
"that",
|
|
"that'll",
|
|
"these",
|
|
"those",
|
|
"am",
|
|
"is",
|
|
"are",
|
|
"was",
|
|
"were",
|
|
"be",
|
|
"been",
|
|
"being",
|
|
"have",
|
|
"has",
|
|
"had",
|
|
"having",
|
|
"do",
|
|
"does",
|
|
"did",
|
|
"doing",
|
|
"a",
|
|
"an",
|
|
"the",
|
|
"and",
|
|
"but",
|
|
"if",
|
|
"or",
|
|
"because",
|
|
"as",
|
|
"until",
|
|
"while",
|
|
"of",
|
|
"at",
|
|
"by",
|
|
"for",
|
|
"with",
|
|
"about",
|
|
"against",
|
|
"between",
|
|
"into",
|
|
"through",
|
|
"during",
|
|
"before",
|
|
"after",
|
|
"above",
|
|
"below",
|
|
"to",
|
|
"from",
|
|
"up",
|
|
"down",
|
|
"in",
|
|
"out",
|
|
"on",
|
|
"off",
|
|
"over",
|
|
"under",
|
|
"again",
|
|
"further",
|
|
"then",
|
|
"once",
|
|
"here",
|
|
"there",
|
|
"when",
|
|
"where",
|
|
"why",
|
|
"how",
|
|
"all",
|
|
"any",
|
|
"both",
|
|
"each",
|
|
"few",
|
|
"more",
|
|
"most",
|
|
"other",
|
|
"some",
|
|
"such",
|
|
"no",
|
|
"nor",
|
|
"not",
|
|
"only",
|
|
"own",
|
|
"same",
|
|
"so",
|
|
"than",
|
|
"too",
|
|
"very",
|
|
"s",
|
|
"t",
|
|
"can",
|
|
"will",
|
|
"just",
|
|
"don",
|
|
"don't",
|
|
"should",
|
|
"should've",
|
|
"now",
|
|
"d",
|
|
"ll",
|
|
"m",
|
|
"o",
|
|
"re",
|
|
"ve",
|
|
"y",
|
|
"ain",
|
|
"aren",
|
|
"aren't",
|
|
"couldn",
|
|
"couldn't",
|
|
"didn",
|
|
"didn't",
|
|
"doesn",
|
|
"doesn't",
|
|
"hadn",
|
|
"hadn't",
|
|
"hasn",
|
|
"hasn't",
|
|
"haven",
|
|
"haven't",
|
|
"isn",
|
|
"isn't",
|
|
"ma",
|
|
"mightn",
|
|
"mightn't",
|
|
"mustn",
|
|
"mustn't",
|
|
"needn",
|
|
"needn't",
|
|
"shan",
|
|
"shan't",
|
|
"shouldn",
|
|
"shouldn't",
|
|
"wasn",
|
|
"wasn't",
|
|
"weren",
|
|
"weren't",
|
|
"won",
|
|
"won't",
|
|
"wouldn",
|
|
"wouldn't",
|
|
]
|