MarketSync / config.py
hyeonjoo's picture
Update config.py
a636b1d verified
# config.py
import logging
from pathlib import Path
# --- Paths ---
PROJECT_ROOT = Path(__file__).resolve().parent
PATH_DATA_DIR = PROJECT_ROOT / 'data'
PATH_VECTORSTORE_DIR = PROJECT_ROOT / 'vectorstore'
ASSETS = PROJECT_ROOT / "assets"
# Data Files
PATH_FINAL_DF = PATH_DATA_DIR / 'final_df.csv'
PATH_FESTIVAL_DF = PATH_DATA_DIR / 'festival_df.csv'
# Vectorstore Paths
PATH_FAISS_MARKETING = PATH_VECTORSTORE_DIR / 'faiss_marketing'
PATH_FAISS_FESTIVAL = PATH_VECTORSTORE_DIR / 'faiss_festival'
# --- API ---
API_SERVER_URL = "http://127.0.0.1:8000"
API_PROFILE_ENDPOINT = f"{API_SERVER_URL}/profile"
API_MERCHANTS_ENDPOINT = f"{API_SERVER_URL}/merchants"
# --- Models ---
LLM_MODEL_NAME = "gemini-2.5-flash"
EMBEDDING_MODEL = "dragonkue/BGE-m3-ko"
# --- RAG Weights ---
FESTIVAL_EMBEDDING_WEIGHT = 0.4
FESTIVAL_DYNAMIC_WEIGHT = 0.6
# --- Logging ---
LOGGING_LEVEL = logging.INFO
LOGGING_FORMAT = "%(asctime)s - [%(levelname)s] - %(name)s (%(funcName)s): %(message)s"
def get_logger(name: str):
"""
ํ‘œ์ค€ํ™”๋œ ํฌ๋งท์œผ๋กœ ๋กœ๊ฑฐ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
"""
logging.basicConfig(level=LOGGING_LEVEL, format=LOGGING_FORMAT)
logger = logging.getLogger(name)
logger.setLevel(LOGGING_LEVEL)
return logger