Skip to content
Closed
Show file tree
Hide file tree
Changes from 17 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions ci/compile_llm_requirements.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ CONFIG_PATH="${1:-ci/raydepsets/configs/rayllm.depsets.yaml}"

mkdir -p /tmp/ray-deps

# Remove the GPU constraints
# Remove the GPU constraints, numpy pin, scipy pin, and pandas pin (LLM requires numpy>=2, compatible scipy, and pandas>=2.0)
cp python/requirements_compiled.txt /tmp/ray-deps/requirements_compiled.txt
sed -e '/^--extra-index-url /d' -e '/^--find-links /d' /tmp/ray-deps/requirements_compiled.txt > /tmp/ray-deps/requirements_compiled.txt.tmp
sed -e '/^--extra-index-url /d' -e '/^--find-links /d' -e '/^numpy==/d' -e '/^scipy==/d' -e '/^pandas==/d' /tmp/ray-deps/requirements_compiled.txt > /tmp/ray-deps/requirements_compiled.txt.tmp
mv /tmp/ray-deps/requirements_compiled.txt.tmp /tmp/ray-deps/requirements_compiled.txt

bazel run //ci/raydepsets:raydepsets -- build "${CONFIG_PATH}"
Expand Down
4 changes: 3 additions & 1 deletion ci/raydepsets/configs/llm_release_tests.depsets.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,10 @@ build_arg_sets:
append_flags:
- --python-version=3.11
- --unsafe-package ray
- --python-platform=linux
# Use manylinux_2_31 for vllm 0.15.0 wheel compatibility

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hint: Wheels are available for `vllm` (v0.15.0) on the following platforms: `manylinux_2_31_aarch64`, `manylinux_2_31_x86_64`

@jeffreywang88 jeffreywang88 Jan 31, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

linux defaults to manylinux_2_28_x86_64 which vllm 0.15.0 does not support

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is necessary.

- --python-platform=x86_64-manylinux_2_31
- --extra-index-url https://download.pytorch.org/whl/${CUDA_CODE}
- --override python/requirements/llm/torch-override.txt
build_arg_sets:
- cu128

Expand Down
5 changes: 3 additions & 2 deletions ci/raydepsets/configs/rayimg.depsets.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ depsets:
- release/ray_release/byod/requirements_byod_${PYTHON_VERSION}.in
- docker/base-deps/requirements.in
- docker/base-extra/requirements.in
constraints:
- /tmp/ray-deps/requirements_compiled_py${PYTHON_VERSION}.txt
# constraints:
# - /tmp/ray-deps/requirements_compiled_py${PYTHON_VERSION}.txt
depsets:
- ray_img_depset_${PYTHON_SHORT}
output: python/deplocks/base_extra_testdeps/ray-base_extra_testdeps_py${PYTHON_VERSION}.lock
Expand All @@ -67,6 +67,7 @@ depsets:
- --unsafe-package ray
- --python-version=${PYTHON_VERSION}
- --python-platform=linux
- --prerelease=allow
build_arg_sets:
- py311

Expand Down
4 changes: 3 additions & 1 deletion ci/raydepsets/configs/rayllm.depsets.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@ build_arg_sets:
append_flags:
- --python-version=3.11
- --unsafe-package ray
- --python-platform=linux
# Use manylinux_2_31 for vllm 0.15.0 wheel compatibility
- --python-platform=x86_64-manylinux_2_31
- --extra-index-url https://download.pytorch.org/whl/${CUDA_CODE}
- --override python/requirements/llm/torch-override.txt
build_arg_sets:
- cpu
- cu128
Expand Down
4 changes: 2 additions & 2 deletions ci/raydepsets/pre_hooks/remove-compiled-headers.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ fi

mkdir -p /tmp/ray-deps

# Remove the GPU constraints
# Remove the GPU constraints, numpy pin, scipy pin, and pandas pin (LLM requires numpy>=2, compatible scipy, and pandas>=2.0)
cp "python/${FILENAME}" "/tmp/ray-deps/${FILENAME}"
sed -e '/^--extra-index-url /d' -e '/^--find-links /d' "/tmp/ray-deps/${FILENAME}" > "/tmp/ray-deps/${FILENAME}.tmp"
sed -e '/^--extra-index-url /d' -e '/^--find-links /d' -e '/^numpy==/d' -e '/^scipy==/d' -e '/^pandas==/d' "/tmp/ray-deps/${FILENAME}" > "/tmp/ray-deps/${FILENAME}.tmp"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should not be here..

first, this is a generic file used not only for llm images, it is used for all images. this PR should not change how other images are built.

second, the name of this file says "remove-compiled-headers". this is doing more than that.

third, why not just upgrade? why do relaxing?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was trying to avoid from modifying this, but it seems like I'm actually touching something with broader impacts.

Do you think it's fine to upgrade this ^?

mv "/tmp/ray-deps/${FILENAME}.tmp" "/tmp/ray-deps/${FILENAME}"
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ def _testing_build_dp_openai_app(builder_config, **kwargs):
# Configure the model with data parallel settings
config = LLMConfig(
model_loading_config={
"model_id": "Qwen/Qwen2.5-0.5B-Instruct"
"model_id": "microsoft/Phi-tiny-MoE-instruct"
},
engine_kwargs={
"data_parallel_size": 2, # Number of DP replicas
Expand Down
4 changes: 2 additions & 2 deletions doc/source/llm/doc_code/serve/multi_gpu/dp_pd_example.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ def _testing_build_dp_deployment(llm_config, **kwargs):
# Configure prefill with data parallel attention
prefill_config = LLMConfig(
model_loading_config={
"model_id": "Qwen/Qwen2.5-0.5B-Instruct"
"model_id": "microsoft/Phi-tiny-MoE-instruct"
},
engine_kwargs={
"data_parallel_size": 2, # 2 DP replicas for prefill
Expand All @@ -78,7 +78,7 @@ def _testing_build_dp_deployment(llm_config, **kwargs):
# Configure decode with data parallel attention
decode_config = LLMConfig(
model_loading_config={
"model_id": "Qwen/Qwen2.5-0.5B-Instruct"
"model_id": "microsoft/Phi-tiny-MoE-instruct"
},
engine_kwargs={
"data_parallel_size": 2, # 2 DP replicas for decode (adjusted for 4 GPU limit)
Expand Down
6 changes: 4 additions & 2 deletions docker/ray-llm/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ COPY python/deplocks/llm/rayllm_*.lock ./

# vLLM version tag to use for EP kernel and DeepGEMM install scripts
# Keep in sync with vllm version in python/requirements/llm/llm-requirements.txt
ARG VLLM_SCRIPTS_REF="v0.12.0"
ARG VLLM_SCRIPTS_REF="v0.15.0"

RUN <<EOF
#!/bin/bash
Expand Down Expand Up @@ -44,7 +44,9 @@ export UV_SYSTEM_PYTHON=1
export TORCH_CUDA_ARCH_LIST="9.0a 10.0a"

# Install EP kernels (PPLX, DeepEP, and NVSHMEM)
curl -fsSL "${VLLM_RAW}/tools/ep_kernels/install_python_libraries.sh" | bash -s -- --workspace /home/ray/llm_ep_support
# Fix CUDA version mismatch: Use nvshmem 3.3.20 which was compiled with CUDA 12.8
curl -fsSL "${VLLM_RAW}/tools/ep_kernels/install_python_libraries.sh" | \
bash -s -- --workspace /home/ray/llm_ep_support --nvshmem-ver 3.3.20

# Install DeepGEMM
curl -fsSL "${VLLM_RAW}/tools/install_deepgemm.sh" | bash
Expand Down
Loading