A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 6, 10:45 UTC
[XPU]Unify xpu test dependencies in dockerfile.xpu (#36477)
Signed-off-by: sihao.li <sihao.li@intel.com>
sihao_li committed
Mar 19, 2026 at 08:12 UTC
9dade5da3a525d22feac2bbe4267017b5d8ce931
4 files changed
+90
-11
.buildkite/scripts/hardware_ci/run-xpu-test.sh
-1
@@ -33,7 +33,6 @@ docker run \
33
bash -c '
34
set -e
35
echo $ZE_AFFINITY_MASK
36
- pip install tblib==3.1.0
36
python3 examples/basic/offline_inference/generate.py --model facebook/opt-125m --block-size 64 --enforce-eager
37
python3 examples/basic/offline_inference/generate.py --model facebook/opt-125m --block-size 64 -O3 -cc.cudagraph_mode=NONE
38
python3 examples/basic/offline_inference/generate.py --model facebook/opt-125m --block-size 64 --enforce-eager -tp 2 --distributed-executor-backend ray
docker/Dockerfile.xpu
+13
-10
@@ -76,19 +76,22 @@ ENV UV_LINK_MODE="copy"
76
RUN --mount=type=cache,target=/root/.cache/uv \
77
--mount=type=bind,src=requirements/common.txt,target=/workspace/vllm/requirements/common.txt \
78
--mount=type=bind,src=requirements/xpu.txt,target=/workspace/vllm/requirements/xpu.txt \
79
+ --mount=type=bind,src=requirements/xpu-test.in,target=/workspace/vllm/requirements/xpu-test.in \
80
uv pip install --upgrade pip && \
80
- uv pip install -r requirements/xpu.txt
81
-
82
- # used for suffix method speculative decoding
83
- # build deps for proto + nanobind-based extensions to set up the build environment
84
-RUN --mount=type=cache,target=/root/.cache/uv \
85
- uv pip install grpcio-tools protobuf nanobind
86
- # arctic-inference is built from source which needs torch-xpu properly installed first
87
-RUN --mount=type=cache,target=/root/.cache/uv \
81
+ uv pip install -r requirements/xpu.txt && \
82
+ uv pip compile /workspace/vllm/requirements/xpu-test.in \
83
+ -o /workspace/vllm/requirements/xpu-test.txt \
84
+ -c /workspace/vllm/requirements/xpu.txt \
85
+ --index-strategy unsafe-best-match \
86
+ --extra-index-url ${PIP_EXTRA_INDEX_URL} \
87
+ --python-version ${PYTHON_VERSION} && \
88
+ uv pip install grpcio-tools protobuf nanobind && \
89
source /opt/intel/oneapi/setvars.sh --force && \
90
source /opt/intel/oneapi/ccl/2021.15/env/vars.sh --force && \
90
- export CMAKE_PREFIX_PATH="$(python -c 'import site; print(site.getsitepackages()[0])'):${CMAKE_PREFIX_PATH}" && \
91
- uv pip install --no-build-isolation arctic-inference==0.1.1
91
+ export CMAKE_PREFIX_PATH="$(python3 -c 'import site; print(site.getsitepackages()[0])'):${CMAKE_PREFIX_PATH}" && \
92
+ uv pip install --no-build-isolation -r /workspace/vllm/requirements/xpu-test.txt
93
+
94
+
95
96
ENV LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib/"
97
requirements/xpu-test.in
new
+35
@@ -0,0 +1,35 @@
1
+# --- Test Infrastructure ---
2
+tblib
3
+pytest-timeout
4
+pytest-cov
5
+pytest-forked
6
+pytest-rerunfailures
7
+pytest-shard
8
+
9
+# --- Core Tools & Bindings ---
10
+absl-py
11
+arctic-inference
12
+
13
+# --- Audio Processing ---
14
+librosa
15
+audioread
16
+soxr
17
+pooch
18
+soundfile
19
+
20
+# --- Tool Parsing & Evaluation ---
21
+blobfile
22
+rapidfuzz
23
+gpt-oss
24
+schemathesis
25
+jiwer
26
+bm25s
27
+pystemmer
28
+mteb[bm25s]
29
+num2words
30
+pqdm
31
+
32
+# --- Vision & Multimodal ---
33
+timm
34
+albumentations
35
+mistral-common[image,audio]
\ No newline at end of file
requirements/xpu-test.txt
new
+42
@@ -0,0 +1,42 @@
1
+# XPU Test Dependencies
2
+# NOTE: Base image already has common.txt + xpu.txt installed,
3
+# and vllm-openai stage has pytest, pytest-asyncio, lm-eval[api].
4
+# This file only adds incremental test-specific packages.
5
+
6
+# Additional test infrastructure (pytest/pytest-asyncio already in base)
7
+# This file was autogenerated by uv via the following command:
8
+# uv pip compile /workspace/vllm/requirements/xpu-test.in -o /workspace/vllm/requirements/xpu-test.txt -c /workspace/vllm/requirements/xpu.txt --index-strategy unsafe-best-match --extra-index-url ${PIP_EXTRA_INDEX_URL} --python-version ${PYTHON_VERSION}
9
+tblib==3.1.0
10
+pytest-timeout==2.3.1
11
+pytest-cov==6.3.0
12
+pytest-forked==1.6.0
13
+pytest-rerunfailures==14.0
14
+pytest-shard==0.1.2
15
+
16
+arctic-inference==0.1.1
17
+
18
+# Required for audio processing tests
19
+librosa==0.10.2.post1
20
+audioread==3.0.1
21
+soxr==0.5.0.post1
22
+pooch==1.8.2
23
+soundfile==0.13.1
24
+
25
+# Required for Mistral's streaming tool parser
26
+blobfile==3.0.0
27
+rapidfuzz==3.12.1
28
+
29
+# Required for Mistral's streaming tool parser and some evaluation scripts
30
+gpt-oss==0.0.8
31
+schemathesis==3.39.15
32
+jiwer==4.0.0
33
+bm25s==0.2.13
34
+pystemmer==3.0.0
35
+mteb[bm25s]>=2, <3
36
+num2words==0.5.14
37
+pqdm==0.2.0
38
+
39
+# Required for some evaluation scripts
40
+timm==1.0.17
41
+albumentations==1.4.6
42
+mistral-common[image,audio]==1.9.1
\ No newline at end of file