Skip to content

Commit abd553a

Browse files
authored
[deps] bump ray to 2.56.0, add TE wheel to pyproject.toml (#1872)
## Bump Ray to 2.56.0 (and Transformer Engine to 2.11.0) ### Summary Upgrades the pinned Ray version from `2.51.1` → `2.56.0` across Docker images, CI configs, docs, and the lockfile, and moves the Megatron backend's Transformer Engine install from a build-from-source step to prebuilt wheels (`2.10.0` → `2.11.0`). ### Changes **Ray 2.56.0 bump** - Updated base images in `docker/Dockerfile` and `docker/Dockerfile.megatron` to `anyscale/ray:2.56.0-slim-py312-cu128`. - Bumped `image_uri`/`ray_version` in all `ci/anyscale_*.yaml` CI configs to `2.56.0`. - Updated `override-dependencies` in `skyrl-agent/pyproject.toml` and refreshed `uv.lock`. - Updated the Modal integration example and docs (`installation.mdx`, `.claude/docs/ci.md`, READMEs) to reference the new `2.56.0` image tags and version. - Adapted to the Ray API change: `PlacementGroupSchedulingStrategy` is now imported from `ray.util.scheduling_strategies` instead of `ray.util.placement_group` (in `worker.py` and `utils/utils.py`). **Transformer Engine 2.11.0 via prebuilt wheels** - Removed the in-Dockerfile `pip wheel` / build step for `transformer-engine-torch` from `Dockerfile.megatron`; bumped `torch` `2.10.0` → `2.11.0` in the base layer. - Declare `transformer-engine-torch==2.11.0` directly in the `megatron` extra so the `[tool.uv.sources]` URL (a prebuilt torch-2.11 / cu128 / cp312 wheel) is honored — uv ignores sources for transitive-only deps. - Added `transformer-engine-cu12==2.11.0` explicitly: the meta `transformer-engine` package hardcodes `transformer-engine-cu13` as its core dep (overridden to `never`), so the matching cu12 core lib must be pulled in directly — otherwise the meta package's sanity check fails on this CUDA 12.8 image.
1 parent 1ab51f1 commit abd553a

26 files changed

Lines changed: 148 additions & 89 deletions

.claude/docs/ci.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
- Compute config: `l4_ci` (referenced from `ci/anyscale_*.yaml`).
1414
- Cloud: `sky-anyscale-aws-us-east-1`.
15-
- Image: `novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8` (varies per workflow).
15+
- Image: `novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8` (varies per workflow).
1616
- Logs: visit the Anyscale job page linked from the GitHub Actions step output. Stderr from Ray workers shows up under the head node logs, not the entrypoint logs.
1717

1818
## Adding a New Test to CI

ci/anyscale_gpu_ci.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-tx-gpu-ci
22
entrypoint: bash ci/gpu_ci_run.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
working_dir: .
88
max_retries: 0

ci/anyscale_gpu_ci_h100.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: skyrl-train-gpu-ci-h100
22
entrypoint: bash ci/gpu_ci_run_h100.sh
3-
image_uri: anyscale/image/skyrl-train-ray-2.51.1-slim-py312-cu128-megatron-2.10-te-efa-1.47:1
4-
ray_version: "2.51.1"
3+
image_uri: anyscale/image/skyrl-train-ray-2.56.0-slim-py312-cu128-megatron-2.10-te-efa-1.47:1
4+
ray_version: "2.56.0"
55
compute_config: k8s-single-node-4h100:1
66
cloud: sky-anyscale-aws-us-east-1
77
working_dir: .

ci/anyscale_gpu_ci_skyrl_train.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-train-gpu-ci
22
entrypoint: bash ci/gpu_ci_run_skyrl_train.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
env_vars:
88
RAY_OVERRIDE_JOB_RUNTIME_ENV: "1"

ci/anyscale_gpu_ci_skyrl_train_megatron.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-train-gpu-ci-megatron
22
entrypoint: bash ci/gpu_ci_run_skyrl_train_megatron.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8-megatron
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8-megatron
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
working_dir: .
88
max_retries: 0

ci/anyscale_gpu_ci_skyrl_train_megatron_models.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-train-gpu-ci-megatron-models
22
entrypoint: bash ci/gpu_ci_run_skyrl_train_megatron_models.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8-megatron
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8-megatron
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
working_dir: .
88
max_retries: 0

ci/anyscale_gpu_e2e_test.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-train-gpu-e2e-test
22
entrypoint: bash ci/gpu_e2e_test_run.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8 # (Optional) Exclusive with `containerfile`.
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8 # (Optional) Exclusive with `containerfile`.
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
working_dir: . # (Optional) Use current working directory "." as the working_dir. Can be any local path or remote .zip file in cloud storage.
88
env_vars:

ci/anyscale_gpu_e2e_test_fully_async.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-train-gpu-e2e-test-fully-async
22
entrypoint: bash ci/gpu_e2e_test_run_fully_async.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8 # (Optional) Exclusive with `containerfile`.
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8 # (Optional) Exclusive with `containerfile`.
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
working_dir: . # (Optional) Use current working directory "." as the working_dir. Can be any local path or remote .zip file in cloud storage.
88
env_vars:

ci/anyscale_gpu_e2e_test_megatron.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-train-gpu-e2e-test-megatron
22
entrypoint: bash ci/gpu_e2e_test_run_megatron.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8-megatron # (Optional) Exclusive with `containerfile`.
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8-megatron # (Optional) Exclusive with `containerfile`.
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
working_dir: . # (Optional) Use current working directory "." as the working_dir. Can be any local path or remote .zip file in cloud storage.
88
env_vars:

ci/anyscale_gpu_e2e_test_sft.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: skyrl-train-gpu-e2e-test-sft
22
entrypoint: bash ci/gpu_e2e_test_run_sft.sh
3-
image_uri: novaskyai/skyrl-train-ray-2.51.1-py3.12-cu12.8-megatron # (Optional) Exclusive with `containerfile`.
3+
image_uri: novaskyai/skyrl-train-ray-2.56.0-py3.12-cu12.8-megatron # (Optional) Exclusive with `containerfile`.
44
cloud: sky-anyscale-aws-us-east-1
5-
ray_version: "2.51.1"
5+
ray_version: "2.56.0"
66
compute_config: l4_ci
77
working_dir: . # (Optional) Use current working directory "." as the working_dir. Can be any local path or remote .zip file in cloud storage.
88
env_vars:

0 commit comments

Comments
 (0)