| | FROM pytorch/pytorch:2.0.1-cuda11.7-cudnn8-runtime |
| |
|
| | |
| | ENV DEBIAN_FRONTEND=noninteractive |
| | ENV PYTHONUNBUFFERED=1 |
| | ENV HF_HOME=/app/.cache/huggingface |
| | ENV TRANSFORMERS_CACHE=/app/.cache/huggingface/transformers |
| | ENV PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 |
| |
|
| | |
| | RUN mkdir -p /app/.cache/huggingface/transformers && \ |
| | chmod -R 777 /app |
| |
|
| | |
| | RUN apt-get update && apt-get install -y --no-install-recommends \ |
| | build-essential \ |
| | git \ |
| | curl \ |
| | ca-certificates \ |
| | python3-pip \ |
| | python3-dev \ |
| | && rm -rf /var/lib/apt/lists/* |
| |
|
| | |
| | WORKDIR /app |
| |
|
| | |
| | COPY requirements.txt . |
| | RUN pip3 install --no-cache-dir --upgrade pip && \ |
| | pip3 install --no-cache-dir -r requirements.txt |
| |
|
| | |
| | RUN pip3 install --no-cache-dir \ |
| | transformers==4.37.2 \ |
| | timm==0.9.11 \ |
| | accelerate==0.30.0 \ |
| | safetensors==0.4.1 \ |
| | einops |
| |
|
| | |
| | COPY no_flash_attn_test.py /app/app.py |
| |
|
| | |
| | RUN echo ' |
| | echo "Starting diagnostics..." \n\ |
| | echo "===== System Information =====" \n\ |
| | python3 -c "import sys; print(f\"Python version: {sys.version}\")" \n\ |
| | python3 -c "import torch; print(f\"PyTorch version: {torch.__version__}\")" \n\ |
| | echo "\n===== CUDA Information =====" \n\ |
| | python3 -c "import torch; print(f\"CUDA available: {torch.cuda.is_available()}\")" \n\ |
| | if [ $(python3 -c "import torch; print(torch.cuda.is_available())") = "True" ]; then \n\ |
| | python3 -c "import torch; print(f\"CUDA version: {torch.version.cuda}\")" \n\ |
| | python3 -c "import torch; print(f\"GPU count: {torch.cuda.device_count()}\")" \n\ |
| | python3 -c "import torch; for i in range(torch.cuda.device_count()): print(f\"GPU {i}: {torch.cuda.get_device_name(i)}\")" \n\ |
| | python3 -c "import torch; print(f\"Total GPU memory: {torch.cuda.get_device_properties(0).total_memory / 1024 / 1024 / 1024:.2f} GB\")" \n\ |
| | fi \n\ |
| | echo "\n===== Package Information =====" \n\ |
| | pip3 list | grep -E "transformers|einops|torch|timm|accelerate|safetensors" \n\ |
| | echo "\n===== NVIDIA System Information =====" \n\ |
| | if command -v nvidia-smi &> /dev/null; then \n\ |
| | nvidia-smi \n\ |
| | else \n\ |
| | echo "nvidia-smi not found" \n\ |
| | fi \n\ |
| | echo "\n===== Starting Application =====" \n\ |
| | exec "$@"' > /entrypoint.sh && \ |
| | chmod +x /entrypoint.sh |
| |
|
| | |
| | EXPOSE 7860 |
| |
|
| | |
| | ENTRYPOINT ["/entrypoint.sh"] |
| |
|
| | |
| | CMD ["python3", "app.py"] |