JoaoK90
Apply approved Motion Studio dark theme and Advanced controls
cc90e76
Raw History Blame Contribute Delete
1.58 kB
"""Real Style-SALAD inference on Hugging Face ZeroGPU."""
import spaces # Initialize ZeroGPU before importing Torch or touching CUDA.
from pathlib import Path
import logging
import os
import sys
ROOT = Path(__file__).resolve().parent
MODEL_ROOT = ROOT / 'upstream'
CACHE_ROOT = Path(os.environ.get('STYLE_SALAD_CACHE', '/tmp/style-salad-cache'))
OUTPUT_ROOT = CACHE_ROOT / 'outputs'
REFERENCE_ROOT = CACHE_ROOT / 'references'
OUTPUT_ROOT.mkdir(parents=True, exist_ok=True)
REFERENCE_ROOT.mkdir(parents=True, exist_ok=True)
os.environ['STYLE_SALAD_ROOT'] = str(MODEL_ROOT)
os.environ['SPACE_OUTPUT_DIR'] = str(OUTPUT_ROOT)
os.environ['STYLE_REFERENCE_CACHE'] = str(REFERENCE_ROOT)
os.environ['GRADIO_TEMP_DIR'] = str(CACHE_ROOT / 'gradio')
os.environ['GRADIO_ANALYTICS_ENABLED'] = 'False'
os.environ['TOKENIZERS_PARALLELISM'] = 'false'
os.environ['MPLBACKEND'] = 'Agg'
sys.path.insert(0, str(ROOT / 'adapter'))
logging.basicConfig(level=logging.INFO)
from asset_bootstrap import ensure_cloud_assets
ensure_cloud_assets(MODEL_ROOT)
os.environ['AUTO_DOWNLOAD_ASSETS'] = '0'
os.environ['HF_HUB_OFFLINE'] = '1'
os.environ['TRANSFORMERS_OFFLINE'] = '1'
from cloud_app import build_demo, launch_style
demo = build_demo()
if __name__ == '__main__':
demo.launch(
server_name='0.0.0.0', server_port=int(os.environ.get('PORT', '7860')),
share=False, max_file_size='20mb', show_error=False,
allowed_paths=[str(OUTPUT_ROOT), str(REFERENCE_ROOT)],
blocked_paths=[str(MODEL_ROOT / 'checkpoints'), str(ROOT / '.git')],
**launch_style(),
)