2025-01-10 16:45:36 -08:00
|
|
|
import torch
|
2024-12-20 13:25:01 -08:00
|
|
|
import logging
|
|
|
|
|
|
2025-01-10 16:45:36 -08:00
|
|
|
from datetime import datetime
|
2024-12-20 13:25:01 -08:00
|
|
|
|
|
|
|
|
|
2025-01-10 16:45:36 -08:00
|
|
|
def get_model_server_logger():
|
2024-12-20 13:25:01 -08:00
|
|
|
"""
|
|
|
|
|
Get or initialize the logger instance for the model server.
|
|
|
|
|
|
|
|
|
|
Returns:
|
|
|
|
|
- logging.Logger: Configured logger instance.
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
# Check if the logger is already configured
|
2025-01-10 16:45:36 -08:00
|
|
|
logger = logging.getLogger("model_server")
|
|
|
|
|
|
|
|
|
|
# Return existing logger instance if already configured
|
2024-12-20 13:25:01 -08:00
|
|
|
if logger.hasHandlers():
|
|
|
|
|
return logger
|
|
|
|
|
|
2025-01-10 16:45:36 -08:00
|
|
|
# Configure logging to only log to console
|
2024-12-20 13:25:01 -08:00
|
|
|
logging.basicConfig(
|
|
|
|
|
level=logging.INFO,
|
2025-01-10 16:45:36 -08:00
|
|
|
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
|
|
|
|
|
handlers=[logging.StreamHandler()],
|
2024-12-20 13:25:01 -08:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
return logger
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_device():
|
2025-01-10 16:45:36 -08:00
|
|
|
if torch.cuda.is_available():
|
2024-12-20 13:25:01 -08:00
|
|
|
device = "cuda"
|
2025-01-10 16:45:36 -08:00
|
|
|
elif torch.backends.mps.is_available():
|
2024-12-20 13:25:01 -08:00
|
|
|
device = "mps"
|
|
|
|
|
else:
|
|
|
|
|
device = "cpu"
|
|
|
|
|
|
|
|
|
|
return device
|
2025-01-10 16:45:36 -08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_today_date():
|
|
|
|
|
# Get today's date
|
|
|
|
|
today = datetime.now()
|
|
|
|
|
|
|
|
|
|
# Get full date with day of week
|
|
|
|
|
full_date = today.strftime("%Y-%m-%d")
|
|
|
|
|
|
|
|
|
|
return full_date
|