srayuth
CUDA base image, pre-cache models, fix double loading
7bebf4c
raw
history blame
1.11 kB
import os
# Fix HuggingFace's invalid OMP_NUM_THREADS value (e.g., "3500m")
omp_threads = os.environ.get('OMP_NUM_THREADS', '')
if not omp_threads.isdigit():
os.environ['OMP_NUM_THREADS'] = '4'
from django.apps import AppConfig
class TransparentConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'transparent'
def ready(self):
"""Preload AI models when the app starts."""
import sys
is_runserver = 'runserver' in sys.argv
is_gunicorn = os.environ.get('GUNICORN_WORKER')
# With --noreload: RUN_MAIN is not set, load in main process
# Without --noreload: RUN_MAIN='true' in the reloader child process
is_reloader_child = os.environ.get('RUN_MAIN') == 'true'
if is_gunicorn or is_reloader_child or (is_runserver and '--noreload' in sys.argv):
from transparent.controllers.style_generator import StyleGenerator
from transparent.controllers.style_recommender import StyleRecommender
StyleGenerator.preload_models()
StyleRecommender.preload_models()