Release / release (push) Waiting to run
* fix: update CUDA to 12.4.1 for Blackwell GPU support - Update Dockerfile base image from CUDA 12.1.0 to 12.4.1 - Update ldconfig path to cuda-12.4 - Update FlashInfer installation to use flashinfer-python package - Add NVIDIA B200 (Blackwell) to supported gpuIds in hub.json This fixes the "imagePullAsync: failed to get self-hosted image registry auth" error when deploying on Blackwell GPUs (RTX PRO 6000, B200) by aligning the Docker image CUDA version with the allowedCudaVersions in hub.json. Fixes: DR-1118 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * revert: remove NVIDIA B200 from default gpuIds The gpuIds in hub.json controls default GPU selection for deployments, not GPU compatibility. The CUDA 12.4 upgrade is sufficient to enable Blackwell GPU support. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: remove FlashInfer to avoid JIT compilation errors FlashInfer requires nvcc to JIT-compile CUDA kernels at runtime for new GPU architectures (like Blackwell SM 10.0). Since we use the CUDA base image without the toolkit, nvcc is not available. vLLM will use its built-in fallback sampling methods instead. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
50 lines
1.4 KiB
Docker
50 lines
1.4 KiB
Docker
FROM nvidia/cuda:12.4.1-base-ubuntu22.04
|
|
|
|
RUN apt-get update -y \
|
|
&& apt-get install -y python3-pip
|
|
|
|
RUN ldconfig /usr/local/cuda-12.4/compat/
|
|
|
|
# Install Python dependencies
|
|
COPY builder/requirements.txt /requirements.txt
|
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
|
python3 -m pip install --upgrade pip && \
|
|
python3 -m pip install --upgrade -r /requirements.txt
|
|
|
|
# Install vLLM
|
|
RUN python3 -m pip install vllm==0.11.0
|
|
|
|
# Setup for Option 2: Building the Image with the Model included
|
|
ARG MODEL_NAME=""
|
|
ARG TOKENIZER_NAME=""
|
|
ARG BASE_PATH="/runpod-volume"
|
|
ARG QUANTIZATION=""
|
|
ARG MODEL_REVISION=""
|
|
ARG TOKENIZER_REVISION=""
|
|
|
|
ENV MODEL_NAME=$MODEL_NAME \
|
|
MODEL_REVISION=$MODEL_REVISION \
|
|
TOKENIZER_NAME=$TOKENIZER_NAME \
|
|
TOKENIZER_REVISION=$TOKENIZER_REVISION \
|
|
BASE_PATH=$BASE_PATH \
|
|
QUANTIZATION=$QUANTIZATION \
|
|
HF_DATASETS_CACHE="${BASE_PATH}/huggingface-cache/datasets" \
|
|
HUGGINGFACE_HUB_CACHE="${BASE_PATH}/huggingface-cache/hub" \
|
|
HF_HOME="${BASE_PATH}/huggingface-cache/hub" \
|
|
HF_HUB_ENABLE_HF_TRANSFER=0
|
|
|
|
ENV PYTHONPATH="/:/vllm-workspace"
|
|
|
|
|
|
COPY src /src
|
|
RUN --mount=type=secret,id=HF_TOKEN,required=false \
|
|
if [ -f /run/secrets/HF_TOKEN ]; then \
|
|
export HF_TOKEN=$(cat /run/secrets/HF_TOKEN); \
|
|
fi && \
|
|
if [ -n "$MODEL_NAME" ]; then \
|
|
python3 /src/download_model.py; \
|
|
fi
|
|
|
|
# Start the handler
|
|
CMD ["python3", "/src/handler.py"]
|