Spaces:
Paused
Paused
File size: 6,758 Bytes
fb56537 802ea4a b1a8506 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a 8413983 802ea4a 9b2c1db fb56537 1091009 802ea4a fb56537 e0fce16 fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 8413983 802ea4a 691e419 bd316c1 92d6a21 0a254ca cec8c3a e67b24b fb56537 802ea4a fb56537 6f75721 496130e e0fce16 496130e 3fb8cde 8413983 e0fce16 8413983 fc425c7 496130e e0fce16 8413983 496130e e0fce16 496130e e0fce16 496130e 8413983 4bb1817 0945505 1283acb 4bb1817 1283acb 4bb1817 38ad644 836c0f8 1e7ad66 fb56537 8413983 fb56537 8413983 802ea4a fb56537 1ffefe0 fb56537 802ea4a fb56537 cf55b31 fb56537 802ea4a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 |
# =============================================================================
# DOCKERFILE - ADUC-SDR: AI Video Suite v4.1.0
# Base: CUDA 12.8.0 | PyTorch 2.8.0+cu128
# Otimizado para Hugging Face Spaces com 8x NVIDIA L40S GPUs
# =============================================================================
# Base CUDA 12.8.0
FROM nvidia/cuda:12.8.0-devel-ubuntu22.04
# =============================================================================
# METADADOS
# =============================================================================
LABEL maintainer="Carlos Rodrigues dos Santos & Development Partner"
LABEL description="ADUC-SDR: Production-Ready Multi-GPU AI Video Generation Suite with Wan2.2, SeedVR, LTX, MMAudio"
LABEL version="4.1.0"
LABEL cuda_version="12.8.0"
LABEL python_version="3.10"
LABEL pytorch_version="2.8.0+cu128"
LABEL gpu_optimized_for="8x_NVIDIA_L40S"
# Otimizações específicas do sistema
ENV OMP_NUM_THREADS=8
ENV MKL_NUM_THREADS=8
ENV CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7
ENV CUDA_DEVICE_MAX_CONNECTIONS=32
# Cache e Memory Management
ENV PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512
ENV CUDA_MODULE_LOADING=LAZY
ENV TORCH_CUDNN_V8_API_ENABLED=1
# Constantes de Performance para Build
ENV CUDA_CACHE_MAXSIZE=2147483648
ENV CUDA_CACHE_DISABLE=0
ENV TORCH_HOME=/app/.cache/torch
ENV HF_HOME=/app/.cache/huggingface
ENV HF_DATASETS_CACHE=/app/.cache/datasets
# Constantes de Memory Management
ENV PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512,garbage_collection_threshold:0.8
ENV CUDA_LAUNCH_BLOCKING=0
ENV CUDA_DEVICE_ORDER=PCI_BUS_ID
# Constantes de Model Loading
ENV TRANSFORMERS_CACHE=/app/.cache/transformers
ENV DIFFUSERS_CACHE=/app/.cache/diffusers
ENV MODEL_CACHE_STRATEGY=aggressive
# =============================================================================
# VARIÁVEIS DE AMBIENTE GLOBAIS
# =============================================================================
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=UTC
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
ENV PYTHONUNBUFFERED=1
ENV PYTHONDONTWRITEBYTECODE=1
ENV PIP_NO_CACHE_DIR=1
ENV PIP_DISABLE_PIP_VERSION_CHECK=1
# Otimizações de CUDA e Build
ENV NVIDIA_VISIBLE_DEVICES=all
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
ENV TORCH_CUDA_ARCH_LIST="8.9"
ENV MAX_JOBS=90
# Caminhos da Aplicação
ENV APP_HOME=/app
WORKDIR $APP_HOME
# =============================================================================
# PACOTES DO SISTEMA E PYTHON 3.10
# =============================================================================
RUN apt-get update && \
apt-get install -y --no-install-recommends \
build-essential cmake git git-lfs curl wget ffmpeg ninja-build \
python3.10 python3.10-dev python3.10-distutils python3-pip \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
RUN ln -sf /usr/bin/python3.10 /usr/bin/python3 && \
ln -sf /usr/bin/python3.10 /usr/bin/python && \
python3 -m pip install --upgrade pip
# =============================================================================
# INSTALAÇÃO DE BIBLIOTECAS DE ALTA PERFORMANCE
# =============================================================================
# 1. Instala PyTorch 2.8.0 e ferramentas de build
RUN pip -v install \
torch>=2.8.0+cu128 \
torchvision \
torchaudio \
--index-url https://download.pytorch.org/whl/cu128
RUN pip install \
packaging \
ninja \
cmake \
pybind11 \
scikit-build \
cython \
numpy==1.24.4
# =============================================================================
# CLONAGEM E INSTALAÇÃO DOS REPOSITÓRIOS DA APLICAÇÃO
# =============================================================================
RUN git clone https://github.com/Wan-Video/Wan2.2.git && \
#cd Wan2.2 && pip install -v -r requirements.txt && pip install -v -r requirements_s2v.txt && cd .. && \
echo "Copiando 'wan' para /app/wan..." && \
cp -r Wan2.2/wan /app/wan
# VINCIE
RUN git clone https://github.com/bytedance-seed/VINCIE.git && \
#cd VINCIE && pip install -v -r requirements.txt && cd .. && \
#echo "Copiando módulos do SeedVR para /app/..." && \
#cp /VINCIE/generate.py /app/VINCIE/ 2>/dev/null || echo "vincie_service.py não encontrado"
#cp -r VINCIE /app/VINCIE && \
#cp -r VINCIE/projects /app/projects && \
#cp -r VINCIE/data /app/data && \
cp -r VINCIE/configs/. /app/configs/
# SeedVR
RUN git clone https://github.com/bytedance-seed/SeedVR.git && \
#cd SeedVR && pip install -v -r requirements.txt && cd .. && \
#echo "Copiando módulos do SeedVR para /app/..." && \
#cp -r SeedVR/common /app/common && \
#cp -r SeedVR/projects /app/projects && \
#cp -r SeedVR/data /app/data && \
cp -r SeedVR/configs_3b /app/configs_3b
# MMAudio
#RUN git clone https://github.com/hkchengrex/MMAudio.git && \
# cd MMAudio && pip install -v -e . && cd .. && \
# echo "Copiando 'mmaudio' para /app/mmaudio..." && \
# cp -r MMAudio/mmaudio /app/mmaudio
# LTX-Video
RUN git clone https://github.com/Lightricks/LTX-Video.git && \
#cd LTX-Video && pip install -v -e .[inference] && cd .. && \
echo "Copiando 'ltx_video' para /app/ltx_video..." && \
cp -r LTX-Video/ltx_video /app/ltx_video
# opcionais
RUN pip uninstall -y bitsandbytes triton && \
pip install -v bitsandbytes --index-url https://pypi.org/simple/ && \
pip install -v triton
# =============================================================================
# INSTALAÇÃO DO RESTANTE DAS DEPENDÊNCIAS
# =============================================================================
COPY requirements.txt .
# Instala os pacotes restantes do requirements.txt
# A linha do flash-attention no arquivo será ignorada se já estiver instalado, mas é bom limpá-la.
RUN pip install -r requirements.txt
# =============================================================================
# INSTALAÇÃO DIFFUSERS-ADUC-SDR
# =============================================================================
COPY diffusers-aduc-sdr.txt .
RUN pip install --no-cache-dir diffusers-aduc-sdr.txt
#
# =============================================================================
# COPIA O CÓDIGO DA APLICAÇÃO E CONFIGURA PERMISSÕES
# =============================================================================
COPY . .
RUN useradd -m -u 1000 -s /bash appuser && \
chown -R appuser:appuser $APP_HOME && \
mkdir -p /app && chown -R appuser:appuser /app
USER appuser
# =============================================================================
# PONTO DE ENTRADA
# =============================================================================
RUN chmod +x ./start.sh
ENTRYPOINT ["./start.sh"]
CMD ["gradio"] |