Ray
Data & MLRay is an AI compute engine. Ray consists of a core distributed runtime and a set of AI Libraries for accelerating ML workloads.
Release History
ray-2.54.0Breaking30 fixes16 featuresThis release introduces significant new features in Ray Data, including checkpointing, expanded Compute Expressions, and Databricks UC credential support, alongside major enhancements to cluster autoscaling and performance optimizations. Ray Serve gains queue-based autoscaling for TaskConsumers and improved deployment observability.
ray-2.53.0Breaking13 fixes32 featuresThis release adds major new features such as a utilization‑based autoscaler, Kafka datasource, and deployment topology visibility, while dropping Pydantic V1 support and removing deprecated APIs.
ray-2.51.21 fixThis release addresses CVE-2025-62593 by rejecting Sec-Fetch-* and other browser-specific headers in the dashboard's browser rejection logic.
ray-2.52.11 fixSecurity update adds more robust handling for CVE-2025-62593 by checking extra browser-specific headers in dashboard rejection logic.
ray-2.52.0Breaking17 fixes35 featuresRay 2.x introduces token authentication, extensive Iceberg enhancements, new expression capabilities, and numerous performance improvements, while dropping Python 3.9 support and adjusting several defaults that may require migration steps.
ray-2.51.11 featureAdded reuse of previous metadata for identical tensor list transfers using `nixl`.
ray-2.51.0Breaking17 fixes16 featuresThis release introduces Ray Train v2 as the default, adds application‑level autoscaling to Ray Serve, and brings numerous new features and fixes to Ray Data, Train, Tune, and Serve.
ray-2.50.11 fixFixed a deadlock that occurred when cancelling stale requests on in-order actors.
ray-2.50.0Breaking19 fixes32 featuresThis release adds major enhancements across Ray Data, Core, Train, Serve, and RLLib, including a new hash‑based shuffle, expression API, multi‑node LLM support, Direct Transport for GPU data, async inference in Serve, and extensive performance and memory optimizations.
ray-2.49.2There are no functional changes between version 2.49.2 and 2.49.1; this release only increments the patch version for out-of-band reasons.
ray-2.49.12 fixesThis release addresses two bugs: GPU metrics missing in the Ray Dashboard and a regression in Ray Data handling large schemas.
ray-2.49.0Breaking16 fixes33 featuresThis release adds extensive performance enhancements, new features such as JaxTrainer, async inference, and custom autoscaling, while fixing numerous bugs; it also introduces a few breaking changes that may require migration steps.
ray-2.48.0Breaking27 fixes12 featuresThis release adds Delta Lake support, new collective operations, custom request routing, and offline policy evaluation, while also delivering numerous performance improvements and bug fixes across Ray Data, Train, Serve, Tune, and RLlib.
ray-2.47.11 fixRay 2.47.1 resolves a startup failure on macOS.
ray-2.47.0Breaking29 fixes22 featuresThis release adds major LLM serving capabilities, custom routing, and numerous performance and observability improvements across Ray Data, Train, Serve, RLlib, and the Dashboard, while also introducing several breaking changes such as non‑blocking pipelines, stricter Serve name validation, and default uv run integration.
ray-2.46.016 fixes11 featuresRay 2.46 adds hash‑shuffle support for Data, vLLM v1 compatibility for Serve LLM, a new Train Grafana dashboard, and numerous performance and bug‑fix improvements.
ray-2.45.021 fixes13 featuresRay 2.45 adds configurable object store fallback, new cgraph transport options, a ClickHouse sink and several dataset API enhancements, along with numerous stability fixes and an upgraded LightGBM version.
ray-2.44.1There are no functional changes between version 2.44.1 and 2.44.0; this release only increments the patch version for out-of-band reasons.
ray-2.44.0Breaking21 fixes23 featuresRay 2.45 introduces the beta Ray Compiled Graph for ultra‑low‑overhead task graphs, adds Iceberg write support and LLM enhancements to Ray Data, a state export API to Ray Train, and numerous performance and usability improvements across Serve, RLlib, and other libraries, while deprecating Ray Workflows and removing the ray.storage dependency.
ray-2.43.013 fixes14 featuresRay 2.43 adds alpha LLM support in Ray Data and Serve, introduces experimental Ray Train V2, and brings uv run integration along with numerous enhancements and bug fixes.
ray-2.42.11 fixThis release fixes an incorrect assertion in Ray Data.
ray-2.42.08 fixes13 featuresThis release adds audio/video reading to Ray Data, introduces new Train and Tune callbacks, stabilizes the DeploymentHandle API, and brings numerous bug fixes and performance enhancements across Ray libraries including Serve, RLlib, and Core.
ray-2.41.0Breaking27 fixes34 featuresThis release adds extensive new features across Ray Data, Train, Tune, Serve, RLlib, and core components, upgrades key dependencies like Arrow, Dask, and Hudi, and includes numerous bug fixes and deprecations to prepare for future API changes.
Common Errors
RayTaskError10 reportsRayTaskError typically arises when an exception occurs during the execution of a Ray task or actor method. Resolve this by implementing robust error handling within your tasks, including try-except blocks and logging, to catch and manage exceptions gracefully, preventing them from propagating and causing RayTaskError. Additionally, ensure task dependencies are correctly defined and data serialization/deserialization is handled appropriately to avoid unexpected failures during task execution.
ObjectLostError3 reportsObjectLostError usually means a Ray worker node holding an object died, causing the object to be lost from the object store. To fix this, ensure sufficient resources and stability in your Ray cluster to prevent worker node failures. Implement object spilling to disk or object replication across multiple nodes for fault tolerance to persist data even if a worker fails.
EngineDeadError3 reportsEngineDeadError in Ray typically arises from a worker process crashing due to resource exhaustion, code errors, or external dependencies. Address this by checking resource limits (CPU, memory, GPU) and increasing them if necessary, thoroughly debugging your code to catch exceptions and prevent crashes, and ensuring any external libraries or services your code relies on are stable and accessible.
RaySystemError2 reportsRaySystemError commonly arises from inconsistencies or misconfigurations within the Ray runtime environment, especially during initialization or when using experimental features like zero-copy tensors. Address this by ensuring all Ray workers and the driver are running the same Ray version, and explicitly configure resources or context settings according to the specific demands of the task,potentially simplifying the configuration to isolate the root cause. If using GPU, verify proper CUDA and driver setup along with valid GPU IDs passed during `ray.init()`.
UserCodeException2 reportsUserCodeException usually indicates an error originated within the user-provided code executed as a Ray task or actor. To resolve this, carefully examine the traceback provided with the exception, paying close attention to the line numbers and specific error messages within your task/actor's code; implement proper error handling (try-except blocks) within your Ray tasks or actors to catch and manage anticipated exceptions, preventing them from crashing the entire Ray application.
OwnerDiedError2 reportsOwnerDiedError typically means an actor or task driver (the object that created the actor/task) died unexpectedly, causing dependent remote objects to become inaccessible. To fix this, ensure the driver script that creates actors and submits tasks remains alive until all ray.get() calls have completed, or implement robust error handling with retries to recover from actor failures and resubmit tasks if needed. Address any underlying instability leading to driver process termination (e.g., out-of-memory errors).
Related Data & ML Packages
An Open Source Machine Learning Framework for Everyone
🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.
Tensors and Dynamic neural networks in Python with strong GPU acceleration
scikit-learn: machine learning in Python
Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more
Streamlit — A faster way to build and share data apps.
Subscribe to Updates
Get notified when new versions are released