FROM vllm/vllm-openai@sha256:61fc8a896b0a4fbbbdc063bc4b0dbc25ce98e02b5050c24aeb7830ac02039b14 # Preserve the pinned vLLM/PyTorch/CUDA/CUTLASS/Triton stack. COPY requirements.txt /opt/naive/requirements.txt RUN python3 -m pip install --no-cache-dir --no-deps --target /opt/naive-python -r /opt/naive/requirements.txt \ && python3 -m pip install --no-cache-dir --no-deps --target /opt/flashinfer-v070 flashinfer-python==0.7.0 COPY scripts/ /opt/naive/scripts/ COPY sitecustomize.py /opt/naive-python/sitecustomize.py COPY pyproject.toml /opt/vllm-naive/pyproject.toml COPY vllm_naive/ /opt/vllm-naive/vllm_naive/ RUN python3 -m pip install --no-deps --no-build-isolation /opt/vllm-naive ENV PYTHONPATH=/opt/flashinfer-v070:/opt/naive-python:/opt/naive/scripts \ NAIVE_FLASHINFER_SOURCE_ONLY=1 \ NAIVE_EXPERT_BACKEND=fused \ FLASHINFER_WORKSPACE_BASE=/cache/flashinfer-v070 \ HF_MODULES_CACHE=/cache/hf-modules \ TORCH_EXTENSIONS_DIR=/cache/torch-extensions \ TRITON_CACHE_DIR=/cache/triton \ XDG_CACHE_HOME=/cache/xdg \ HF_HUB_OFFLINE=1 \ TRANSFORMERS_OFFLINE=1 \ OMP_NUM_THREADS=1 \ NCCL_P2P_DISABLE=1 \ VLLM_PLUGINS=naive_n05 \ VLLM_WORKER_MULTIPROC_METHOD=spawn \ VLLM_CACHE_ROOT=/cache/vllm \ VLLM_FLOAT32_MATMUL_PRECISION=highest WORKDIR /opt/naive ENTRYPOINT ["python3", "-m", "vllm.entrypoints.openai.api_server"]