#!/usr/bin/env bash set -euo pipefail : "${APP_DIR:=/app}" export PYTORCH_CUDA_ALLOC_CONF="expandable_segments:True,max_split_size_mb:128" export CUDA_MODULE_LOADING="LAZY" echo "=======================================================" echo " VINCIE - Start (VINCIE-3B, 8x L40S)" echo "=======================================================" # 1) Builder (garante Apex/Flash e deps CUDA) echo "🛠️ Iniciando o builder.sh para compilar/instalar dependências CUDA..." if [ -f "/app/builder.sh" ]; then /bin/bash /app/builder.sh echo "✅ Builder finalizado." else echo "⚠️ Aviso: builder.sh não encontrado. Pulando etapa de compilação de dependências." fi python3 - <<'PY' import os from services.vince_server import VinceServer try: VinceServer.setup_dependencies() except Exception as e: print("Erro no setup") PY export OUTPUT_ROOT="${OUTPUT_ROOT:-/app/outputs}" export INPUT_ROOT="${INPUT_ROOT:-/app/inputs}" mkdir -p "$OUTPUT_ROOT" "$INPUT_ROOT" echo "[vince][start] Verificando ambiente como usuário: $(whoami)" # Env da UI export GRADIO_SERVER_NAME="0.0.0.0" export GRADIO_SERVER_PORT="${PORT:-7860}" export GRADIO_ENABLE_QUEUE="True" tree -L 4 /app tree -L 4 /data echo "[vince][start] Lançando app_vince.py..." # Executa diretamente o python. exec python /app/app_vince.py