Commit graph

12630 commits

Author SHA1 Message Date
Balaji Veeramani
c9cd4a75e8
[AIR] Fix Categorizer.__repr__ attribute error (#24640)
__repr__ fails because stats_ attribute is not assigned until _fit is called.
2022-05-10 11:12:49 -07:00
Sven Mika
44a51610c2
[RLlib] SlateQ config objects. (#24577) 2022-05-10 20:07:18 +02:00
Amog Kamsetty
a36e2a8f51
[Tune] Deprecate DistributedTrainableCreator (#24453)
Fully deprecate DistributedTrainableCreator for Ray 2.0

Closes #24453
2022-05-10 11:06:43 -07:00
Sven Mika
be31602983
[RLlib] IMPALAConfig small fix (double defined config key). (#24547) 2022-05-10 19:38:00 +02:00
Dmitri Gekhtman
29eebdfef2
[Autoscaler][Local Node Provider] Log a warning if max_workers < len(worker_ips) (#24635)
Logs a warning when a user sets max_workers for local node provider less than the number of available ips.

Also removes defaults of 0 for min_workers and max_workers from example configs to help prevent users inadvertantly setting max_workers=0 again.
2022-05-10 10:03:29 -07:00
Edward Oakes
4c1f27118a
[job submission] Don't set CUDA_VISIBLE_DEVICES in job driver (#24546)
Currently job drivers cannot use GPUs due to `CUDA_VISIBLE_DEVICES` being set (no resource request for job driver's supervisor actor). This is a regression from `ray submit`.

This is a temporary workaround -- in the future we should support a resource request for the job supervisor actor.
2022-05-10 11:43:04 -05:00
Chen Shen
f1f8ad6ca3
[Doc][Data] fix big-data-ingestion broken links (#24631)
The links were broken. Fixed it.
2022-05-10 09:04:41 -07:00
Chen Shen
00a0f81090
[Doc][xgboost] fix broken download links #24632
The yaml file download link is missing, fixed it in this pr.
2022-05-10 09:03:26 -07:00
shrekris-anyscale
511d5d027b
[serve] Fix circular imports in api.py's serve.run() and build() functions (#24616)
There are delayed imports in the [`run()`](https://github.com/ray-project/ray/blob/master/python/ray/serve/api.py#L596-L597) and [`build()`](https://github.com/ray-project/ray/blob/master/python/ray/serve/api.py#L672) functions in [`api.py`](https://github.com/ray-project/ray/blob/master/python/ray/serve/api.py). These imports are no longer circular due to recent refactoring (see #23578 and #23759). This change promotes them to top-level imports.
2022-05-10 10:50:43 -05:00
Sven Mika
f243895ebb
[RLlib] Dreamer ConfigObject class. (#24650) 2022-05-10 16:19:42 +02:00
Sven Mika
6d94b2acbe
[RLlib] AlphaStar config objects. (#24576) 2022-05-10 14:01:00 +02:00
Kai Fricke
d9b54d8bfa
[tune] Limit progress table column length (#24599)
Especially when using datasets, we sometimes run into very long string representations. Tune should make sure to cut these according to a specified maximum length.

Co-authored-by: Antoni Baum <antoni.baum@protonmail.com>
2022-05-10 09:28:47 +02:00
Kai Fricke
67d602e7a6
[ci] Fix automatic buildkite token fetching in fetch_release_logs.py (#24606)
The script expected a return string, not an environment variable.
2022-05-10 09:24:10 +02:00
Amog Kamsetty
b5b48f6cc7
[RLlib] Switch Dreamer to training_iteration API. (#24488) 2022-05-10 08:37:34 +02:00
Siyuan (Ryans) Zhuang
bf6b7f4395
[Workflow] Simplify recovery algorithm (#24594)
* simplify recovery algorithm
2022-05-09 22:03:31 -07:00
Kai Yang
4a999777fa
[Core] Allow accepting gRPC HTTP proxy via env variable (#23526) 2022-05-10 11:30:46 +08:00
Chen Shen
dd527da58b
[GCS][Storage Unification 4/n] Monitor for Gcs storage interface. (#23577)
Add basic monitoring for GCS Storage Interface, including the qps and latency for each operation.
2022-05-09 16:50:39 -07:00
Siyuan (Ryans) Zhuang
6e17c4a2b7
[core] More tests for setting options for Ray libraries (#24591)
* test

* update
2022-05-09 13:18:43 -07:00
Matti Picus
ffb67203e9
debug call_ray_start failure (#24252)
Exploring #24251. The call to the `call_ray_start` fixture seems to be timing out in `test_ray_init`.
2022-05-09 13:28:28 -05:00
Simon Mo
07986349c6
[Serve] Run health check in separate thread (#24560) 2022-05-09 09:59:37 -07:00
Kai Fricke
76da2255d9
[air/rllib] Add RL serving example (#24215)
This PR includes the changes from #24172

This PR adds an end-to-end training and serving example for the RLTrainer/RLPredictor. It also adds an `RLServeEnv` that can be used as an external env for rllib inference, querying the served policy from the RLPredictor.

This draft PR runs end to end, but I'd like to gather some initial feedback before promoting it to a full PR.
2022-05-09 16:44:49 +02:00
Artur Niederfahrenhorst
8d906f9bf8
[RLlib] SAC with new Replay Buffer API. (#24156) 2022-05-09 14:33:02 +02:00
Artur Niederfahrenhorst
bd2fdf4752
[RLlib] Automate sequences in timeslice_along_seq_lens_with_overlap(). (#24561) 2022-05-09 11:55:06 +02:00
Artur Niederfahrenhorst
bc8742792c
[Tune] Logging of bad results dict keys (#23954)
[User complains](https://discuss.ray.io/t/which-attributes-can-be-used-in-checkpoint-score-attr-when-using-tune-run/5826) about logging on failure of locating `checkpoint_score_attr ` in results dict not being informative.
I propose that we log the actual results dict keys and extended stopping criteria, which imho should not log the whole result dict as this might contain tensors.

Maybe there are other similar cases in tune library, in which I don't know my way around that good.
2022-05-09 11:54:11 +02:00
Steven Morad
b76273357b
[RLlib] APEX-DQN replay buffer config validation fix. (#24588) 2022-05-09 09:59:04 +02:00
Dmitri Gekhtman
e3db45eb86
[hotfix][kuberay][docs] Match up Ray versions in example config (#24580)
This PR fixes a typo in the KubeRay example config in Ray's docs.

Specifics:
Ray versions in the Ray repo's example KubeRay CR were recently updated from 1.11.0 to 1.12.0.
However, the worker group's Ray version was accidentally left at 1.11.0. This leads to alarming crash-looping when deploying the example in the docs.

This PR matches up the Ray images by setting the worker group to rayproject/ray:1.12.0.
2022-05-08 16:01:34 -07:00
Linsong Chu
5964a58d84
[Workflow] Enable auto-config for persistent storage when connecting to existing cluster (#24490)
* fix init() requires hardcoded storage path when connecting to existing cluster

* update tests with new init(storage) behavior

* update tests with latest api behavior
2022-05-08 15:42:29 -07:00
Jiajun Yao
d462172be7
Add doc for actor spread scheduling (#24552)
grant_or_reject for raylet based actor scheduling is implemented as part of #23829, so spread scheduling now works for actors just like tasks.
2022-05-06 21:36:47 -07:00
Jian Xiao
78cab9f0f1
Test the CSV read with column types specified (#24398)
Make sure users can read csv with columns types specified.
Users may want to do this because sometimes PyArrow's type inference doesn't work as intended, in which case users can step in and work around the type inference.
2022-05-06 21:29:11 -07:00
Qing Wang
ea6c2d634b
[Java] Shade jackson to avoid conflict. (#24535)
Jackson is a widely-used utility. User from Ant reports the jackson class is conflicted between Ray jar and user's jar.
This PR shade the jackson in Ray jar to avoid the conflict.

Co-authored-by: Kai Yang <kfstorm@outlook.com>
2022-05-07 10:44:31 +08:00
mwtian
918d3601c6
[Datasets] mark nightly test dataset_shuffle_sort_1tb_small_instances stable (#24481) 2022-05-06 15:55:59 -07:00
Simon Mo
95c11c97ef
[Serve] Ensure SimpleSchemaIngress uses FastAPI custom serializers (#24549) 2022-05-06 14:17:36 -07:00
Antoni Baum
668049492c
[Datasets] Add from_huggingface for Hugging Face datasets integration (#24464)
Adds a from_huggingface method to Datasets, which allows the conversion of a Hugging Face Dataset to a Ray Dataset. As a Hugging Face Dataset is backed by an Arrow table, the conversion is trivial.
2022-05-06 13:09:28 -07:00
Siyuan (Ryans) Zhuang
84ccab2d5f
[workflow] Defining and updating workflow options (#24498)
* implement "options" for workflow

* update tests
2022-05-06 13:08:22 -07:00
Charles Greer
189f7a469b
change docs for ray.remote num_gpus (#24551)
The documentation says that @ray.remote can take fractional num_gpus which is true, but the documentation lists it as an integer. I think this is strictly a problem in the docs.
2022-05-06 11:04:11 -07:00
kourosh hakhamaneshi
69055f556d
[RLlib] Move agents.ars to algorithms.ars. (#24516) 2022-05-06 19:11:15 +02:00
Kai Fricke
5d9bf4234a
[air] Example to track runs with Weights & Biases (#24459)
This PR 
- adds an example on how to run Ray Train and log results to weights & biases
- adds functionality to the W&B plugin to store checkpoints
- fixes a bug introduced in #24017
- Adds a CI utility script to setup credentials
- Adds a CI utility script to remove test state from external services cc @simon-mo
2022-05-06 15:52:37 +01:00
Daewoo Lee
fee35444ab
[RLlib] Issue 24530: Fix add_time_dimension (#24531)
Co-authored-by: Daewoo Lee <dwlee@rtst.co.kr>
2022-05-06 15:21:42 +02:00
kourosh hakhamaneshi
f48f1b252c
[RLlib] Moved agents.es to algorithms.es (#24511) 2022-05-06 14:54:22 +02:00
Antoni Baum
c5e1851ab9
[Tune] Improve JupyterNotebookReporter (#24444)
Improves Tune Jupyter notebook experience by modifying the `JupyterNotebookReporter` in two ways:
* Previously, the `overwrite` flag controlled whether the entire cell would be overwritten with the updated table. This caused all the other logs to be cleared. Now, we use IPython display handle functionality to create a table at the top of the cell and update only that, preserving the rest of the output. The `overwrite` flag now controls whether the cell output *prior* to the initialization of `JupyterNotebookReporter` is overwritten or not.
* The Ray Client detection was not working unless the user specifically passed a `JupyterNotebookReporter` as the `progress_reporter`. Now, the default value allows for correct detection of the enviroment while running Ray Client.

Furthermore, the progress reporter detection logic in `rllib/train.py` has been replaced to make use of the `detect_reporter` function for consistency with Tune (the sign in the overwrite condition was similarly flipped).
2022-05-06 11:52:47 +01:00
Sven Mika
7ab19ddc32
[RLlib] MADDPG: Move into agents folder (from contrib) and use training_iteration method. (#24502) 2022-05-06 12:35:21 +02:00
Sven Mika
f54557073e
[RLlib] Remove execution_plan API code no longer needed. (#24501) 2022-05-06 12:29:53 +02:00
Sven Mika
f891a2b6f1
[RLlib] SlateQ + tf; release test fixes, related to TD-error not properly being formatted. (#24521) 2022-05-06 08:50:30 +02:00
Siyuan (Ryans) Zhuang
417b72efdc
[workflow] Update workflow docs (#24249)
* update workflow docs

* rename "step" to "task"
2022-05-05 22:22:51 -07:00
Chris K. W
5a7c5ab79c
[client] fix OOM caused by debug log (#24477)
When this line tries to format the task into the string, it also attempts to format all of the serialized arguments passed to the task, which can be memory intensive, even if the debug log never gets displayed. Switch to only logging the task name, type and payload_id.

Repro script if you want to see how big a difference commenting out the debug log makes (takes up about 8GiB swap on my machine):
```
import ray
import numpy as np
import logging
ray.init("ray://localhost:10001")

@ray.remote
def run_ray_remote(np_array):
    return np_array.shape

a = np.random.random((1024, 1024, 128))  # approx 1GiB
b = run_ray_remote.remote(a) 
c = ray.get(b)
print(c)

```
2022-05-05 16:37:39 -07:00
Stephanie Wang
2931a23760
[doc] Add docs for push-based shuffle in Datasets (#24486)
Adds recommendations, example, and brief benchmark results for push-based shuffle in Datasets.
2022-05-05 14:59:33 -07:00
Kai Fricke
d6096df742
[release] Add utility script to fetch release logs (#24508)
This PR adds a utility script to automatically fetch release test results from the Buildkite pipeline for a release branch. This was previously a manual process.
2022-05-05 19:32:34 +01:00
mwtian
68c4023c20
[Core] fix inaccurate Raylet log message for aborting object creation (#24450)
Found many log messages about Not enough memory to create requested object ... when running shuffle tests, even when object store memory is far from full.

It seems when ObjectBufferPool::AbortCreate() is called, Raylet logs Not enough memory to create requested object .... However, ObjectBufferPool::AbortCreate() is called under 3 different codepaths:

    ObjectManager::ReceiveObjectChunk()
    PullManager::UpdatePullsBasedOnAvailableMemory() -> cancel_pull_request_
    PullManager::CancelPull() -> cancel_pull_request_

Only codepath (2) is due to having not enough object store memory. So the logging in ObjectBufferPool::AbortCreate() is moved to the callsites instead, which have more context of the situation and can log with more accurate messages.

Also change codepath (3) to be DEBUG, because it is an expected behavior and can be quite spammy when running shuffle / sort workload.
2022-05-05 10:59:10 -07:00
Simon Mo
a424e91aba
[Serve] Support serializing numpy scaler (#24512) 2022-05-05 10:46:01 -07:00
Sven Mika
70d3bfcf9c
[RLlib] Provide more time for APPO Pong release and performance tests. (#24503) 2022-05-05 18:19:38 +02:00