#!/usr/bin/env bash set -euo pipefail # ---- Make all caches writable in Spaces (avoid /.cache) ---- export HF_CACHE_DIR="${HF_CACHE_DIR:-/tmp/hf-cache}" mkdir -p "$HF_CACHE_DIR" /tmp/pycache export HOME=/tmp export XDG_CACHE_HOME="$HF_CACHE_DIR" export HF_HOME="$HF_CACHE_DIR" export HUGGINGFACE_HUB_CACHE="$HF_CACHE_DIR" export TRANSFORMERS_CACHE="$HF_CACHE_DIR" export HF_DATASETS_CACHE="$HF_CACHE_DIR/datasets" export TORCH_HOME="$HF_CACHE_DIR" export PYTHONPYCACHEPREFIX=/tmp/pycache # ---- Disable FlashAttention by default (safe on T4/L4) ---- # ---- Start FastAPI (internal) ---- uvicorn app:app --host 0.0.0.0 --port 8000 --no-server-header --forwarded-allow-ips="*" & # ---- Start Streamlit (public) ---- exec streamlit run ui.py \ --server.address=0.0.0.0 \ --server.port="${PORT:-7860}" \ --server.headless=true \ --server.enableCORS=false \ --server.enableXsrfProtection=false