Spaces:
Paused
Paused
Upload start.sh
Browse files
start.sh
CHANGED
|
@@ -1,18 +1,40 @@
|
|
| 1 |
-
#!/bin/bash
|
|
|
|
| 2 |
|
| 3 |
-
|
| 4 |
-
|
|
|
|
| 5 |
|
| 6 |
-
#
|
| 7 |
-
|
| 8 |
-
|
| 9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
-
#
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 15 |
|
|
|
|
|
|
|
|
|
|
| 16 |
|
| 17 |
|
| 18 |
# ---------------------- Builder (Apex + Q8) ----------------------
|
|
@@ -37,27 +59,17 @@ else
|
|
| 37 |
fi
|
| 38 |
|
| 39 |
|
|
|
|
|
|
|
| 40 |
|
| 41 |
-
# Inicializa VincieService de forma persistente
|
| 42 |
-
log "Inicializando VincieService com persistência em /data..."
|
| 43 |
-
python -c "
|
| 44 |
-
import os
|
| 45 |
-
from services.vincie import VincieService
|
| 46 |
|
| 47 |
-
|
| 48 |
-
os.environ['REPOS_DIR'] = '$REPOS_DIR'
|
| 49 |
-
os.environ['MODELS_DIR'] = '$MODELS_DIR'
|
| 50 |
|
| 51 |
-
svc = VincieService(repo_dir='$REPOS_DIR/VINCIE', ckpt_dir='$MODELS_DIR')
|
| 52 |
-
svc.ensure_repo() # Garante repositório persistente
|
| 53 |
-
svc.ensure_model() # Garante modelo persistente
|
| 54 |
-
log('VincieService inicializado com sucesso.')
|
| 55 |
-
" || log "Erro ao inicializar VincieService"
|
| 56 |
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
|
|
|
| 1 |
+
#!/usr/bin/env bash
|
| 2 |
+
set -euo pipefail
|
| 3 |
|
| 4 |
+
echo "======================================================="
|
| 5 |
+
echo " ADUC-SDR — Start (VINCIE/SeedVR, 8× L40S)"
|
| 6 |
+
echo "======================================================="
|
| 7 |
|
| 8 |
+
# ---------------------- Env base ----------------------
|
| 9 |
+
export CUDA_VISIBLE_DEVICES="${CUDA_VISIBLE_DEVICES:-0,1,2,3,4,5,6,7}"
|
| 10 |
+
export TORCH_DTYPE="${TORCH_DTYPE:-bfloat16}"
|
| 11 |
|
| 12 |
+
# SDPA/FA toggles
|
| 13 |
+
export ENABLE_FLASH_SDP="${ENABLE_FLASH_SDP:-1}"
|
| 14 |
+
export ENABLE_MEMORY_EFFICIENT_SDP="${ENABLE_MEMORY_EFFICIENT_SDP:-1}"
|
| 15 |
+
export ENABLE_MATH_SDP="${ENABLE_MATH_SDP:-0}"
|
| 16 |
+
export FLASH_ATTENTION_DISABLE="${FLASH_ATTENTION_DISABLE:-0}"
|
| 17 |
+
export XFORMERS_FORCE_DISABLE="${XFORMERS_FORCE_DISABLE:-1}"
|
| 18 |
|
| 19 |
+
# CUDA/NCCL/perf — single-node robust
|
| 20 |
+
export CUDA_MODULE_LOADING="${CUDA_MODULE_LOADING:-LAZY}"
|
| 21 |
+
export CUDA_DEVICE_MAX_CONNECTIONS="${CUDA_DEVICE_MAX_CONNECTIONS:-32}"
|
| 22 |
+
export CUDA_DEVICE_ORDER="${CUDA_DEVICE_ORDER:-PCI_BUS_ID}"
|
| 23 |
+
export PYTORCH_CUDA_ALLOC_CONF="${PYTORCH_CUDA_ALLOC_CONF:-max_split_size_mb:512,garbage_collection_threshold:0.8}"
|
| 24 |
+
export OMP_NUM_THREADS="${OMP_NUM_THREADS:-8}"
|
| 25 |
+
export MKL_NUM_THREADS="${MKL_NUM_THREADS:-8}"
|
| 26 |
+
export NCCL_DEBUG="${NCCL_DEBUG:-INFO}"
|
| 27 |
+
export NCCL_ASYNC_ERROR_HANDLING="${NCCL_ASYNC_ERROR_HANDLING:-1}"
|
| 28 |
+
export NCCL_P2P_DISABLE="${NCCL_P2P_DISABLE:-0}"
|
| 29 |
+
export NCCL_IB_DISABLE="${NCCL_IB_DISABLE:-1}"
|
| 30 |
+
export NCCL_SOCKET_IFNAME="${NCCL_SOCKET_IFNAME:-lo}"
|
| 31 |
+
export NCCL_BLOCKING_WAIT=1
|
| 32 |
+
export TORCH_NCCL_BLOCKING_WAIT=1
|
| 33 |
+
export NCCL_TIMEOUT="${NCCL_TIMEOUT:-600}"
|
| 34 |
|
| 35 |
+
# HF caches
|
| 36 |
+
export HF_HOME="${HF_HOME:-/app/.cache/huggingface}"
|
| 37 |
+
unset TRANSFORMERS_CACHE
|
| 38 |
|
| 39 |
|
| 40 |
# ---------------------- Builder (Apex + Q8) ----------------------
|
|
|
|
| 59 |
fi
|
| 60 |
|
| 61 |
|
| 62 |
+
# ---------------------- Banner ----------------------
|
| 63 |
+
./info.sh || true
|
| 64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 65 |
|
| 66 |
+
ls -la /app && ls -R /app | head -n 2000
|
|
|
|
|
|
|
| 67 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 68 |
|
| 69 |
+
echo "🚀 Subindo serviços..."
|
| 70 |
+
|
| 71 |
+
# Exemplo: subir UI mínima SD Img2Img (ajuste conforme seu app)
|
| 72 |
+
# python app_animatediff_min.py
|
| 73 |
+
|
| 74 |
+
# Ou subir VINCIE UI se for o caso
|
| 75 |
+
python app_vince.py
|