FROM nvidia/cuda:11.8.0-cudnn8-devel-ubuntu22.04 # Set environment variables ENV PYTHONUNBUFFERED=1 \ DEBIAN_FRONTEND=noninteractive \ CUDA_HOME=/usr/local/cuda-11.8 \ TRITON_PTXAS_PATH=/usr/local/cuda-11.8/bin/ptxas \ VLLM_USE_V1=0 # Install system dependencies RUN apt-get update && apt-get install -y \ python3.11 \ python3.11-dev \ python3-pip \ git \ wget \ && rm -rf /var/lib/apt/lists/* # Set python3.11 as default RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1 && \ update-alternatives --install /usr/bin/python python /usr/bin/python3.11 1 # Upgrade pip RUN python3 -m pip install --no-cache-dir --upgrade pip # Install PyTorch 2.6.0 with CUDA 11.8 RUN pip install --no-cache-dir \ torch==2.6.0 \ torchvision==0.21.0 \ torchaudio==2.6.0 \ --index-url https://download.pytorch.org/whl/cu118 # Install vLLM 0.8.5 from GitHub releases RUN pip install --no-cache-dir \ https://github.com/vllm-project/vllm/releases/download/v0.8.5/vllm-0.8.5%2Bcu118-cp38-abi3-manylinux1_x86_64.whl # Install Flash Attention 2.7.3 RUN pip install --no-cache-dir flash-attn==2.7.3 --no-build-isolation # Set working directory WORKDIR /app # Copy requirements and install Python dependencies COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # Copy application code COPY . . # Default command (can be overridden by HF Jobs) CMD ["python", "process_dataset.py", "--help"]