一个针对强化学习和深度学习所设计的大规模分布式计算框架。

Ruiyang Wang 6a7521cde6 [core] move cluster_id to GcsClientOptions, and sends RPC to get it if absent. (#46358) 4 days ago
.buildkite c630ccce97 [rllib] skip rllib gpu test on premerge (#46504) 4 days ago
.github 16473f731c [owner] remove iycheng from codeowners (#46410) 1 week ago
.vale 70b0b593a2 docs: ray distributed debugger (#45913) 2 weeks ago
bazel 6a8997cd72 [bazel] upgrade platforms to 0.0.9 (#45470) 1 month ago
binder 7d4296c72f run code in browser (#22727) 2 years ago
ci 2432b629e8 [wheel] use latest manylinux build image (#46415) 1 week ago
cpp 6a7521cde6 [core] move cluster_id to GcsClientOptions, and sends RPC to get it if absent. (#46358) 4 days ago
dashboard bbcd01f430 [dashboard] apply isort to dashboard dir (#46483) 4 days ago
doc 300f40129d [Doc] Update visibility of the search button (#46237) 5 days ago
docker 7d060c1b03 [image] upgrade ray image base to ubuntu 22.04 (#46143) 3 weeks ago
java ea40410131 Revert "[release] change ray version" (#46080) 3 weeks ago
python 6a7521cde6 [core] move cluster_id to GcsClientOptions, and sends RPC to get it if absent. (#46358) 4 days ago
release 05067f4955 CI: enable jemalloc in release tests (#46393) 5 days ago
rllib 14a0be743e [RLlib] Enable multi-learner setup for hybrid stack BC. (#46436) 4 days ago
rllib_contrib faab1ac037 [RLlib] Issue 44686: Upgrade all `rllib_contrib` requirements to tf2.11.1. (#45396) 1 month ago
scripts f2b65f5ca8 [ci] Remove scripts duplicates and symlinks except for format.sh (#34463) 1 year ago
src 6a7521cde6 [core] move cluster_id to GcsClientOptions, and sends RPC to get it if absent. (#46358) 4 days ago
thirdparty 7fb3feb25e Bump hiredis to v1.2.0 (#40217) 5 months ago
.bazelrc 47cb57ba9d [ci] remove old travis/github test config (#45914) 1 month ago
.bazelversion 82ad4a82e3 [ci] upgrade bazel version to 6.5.0 (#45784) 1 month ago
.clang-format e9755d87a6 [Lint] One parameter/argument per line for C++ code (#22725) 2 years ago
.clang-tidy 12100015d9 [Lint] Disable `modernize-use-override` (#19368) 2 years ago
.editorconfig 219180b580 Improve .editorconfig entries (#7344) 4 years ago
.flake8 cf7e4c04c9 [Streaming] Adding a suite of Core/Serve streaming benchmarks (#42259) 6 months ago
.git-blame-ignore-revs da5cf93d97 Create `.git-blame-ignore-revs` for black formatting (#25118) 2 years ago
.gitattributes f5fbe8b678 [Core] Auto generate protobuf and grpc code (#40663) 8 months ago
.gitignore 7d516c2417 [bazel] use .bazelversion file (#45476) 1 month ago
.isort.cfg bbcd01f430 [dashboard] apply isort to dashboard dir (#46483) 4 days ago
.pre-commit-config.yaml cf7e4c04c9 [Streaming] Adding a suite of Core/Serve streaming benchmarks (#42259) 6 months ago
.prettierrc.toml f7ea968001 [Doc] Fix broken splash.html (#42029) 6 months ago
.rayciversion a2414928b9 [release] use bigger machine for anyscale build (#45883) 1 month ago
.readthedocs.yaml 1ccc22ec4a [Doc] Add setuptools dependency for building docs (#46375) 1 week ago
.vale.ini 238e382ebe Update .vale.ini (#44737) 2 months ago
BUILD.bazel 6bd04fd727 [core] Perf: Fair dispatching of the tasks for different scheduling_class to reduce the intermediate data storage (#44733) 1 month ago
CONTRIBUTING.rst 16b2963f11 fix docs: update broken links and edit for conciseness (#32733) 1 year ago
LICENSE 5443a12596 [Core] Ray auto detect nvidia Gpu with pynvml (#41020) 8 months ago
README.rst 842c2eda9c [Data] Fix broken links in README and in ray.data.Dataset (#45345) 1 week ago
SECURITY.md cffe512b38 Update security docs to be more precise about Ray Client, Dashboard, Jobs (#43858) 3 months ago
WORKSPACE 82ad4a82e3 [ci] upgrade bazel version to 6.5.0 (#45784) 1 month ago
build-docker.sh 7d060c1b03 [image] upgrade ray image base to ubuntu 22.04 (#46143) 3 weeks ago
build.sh ac39e23145 Get rid of build shell scripts and move them to Python (#6082) 4 years ago
pylintrc 2e972c2a77 RLLIB and pylintrc (#8995) 4 years ago
pytest.ini 36c1c7569c [all_tests] Default timeout of 3 min for all pytest (#38900) 10 months ago
semgrep.yml 3ad88aa1ee [Train] Test Train code snippets (#40432) 8 months ago
setup_hooks.sh b845a6381a [CI] Fix the git hook is invalid if the project location changed (#41441) 7 months ago

README.rst

.. image:: https://github.com/ray-project/ray/raw/master/doc/source/images/ray_header_logo.png

.. image:: https://readthedocs.org/projects/ray/badge/?version=master
:target: http://docs.ray.io/en/master/?badge=master

.. image:: https://img.shields.io/badge/Ray-Join%20Slack-blue
:target: https://forms.gle/9TSdDYUgxYs8SA9e8

.. image:: https://img.shields.io/badge/Discuss-Ask%20Questions-blue
:target: https://discuss.ray.io/

.. image:: https://img.shields.io/twitter/follow/raydistributed.svg?style=social&logo=twitter
:target: https://twitter.com/raydistributed

Ray is a unified framework for scaling AI and Python applications. Ray consists of a core distributed runtime and a set of AI libraries for simplifying ML compute:

.. image:: https://github.com/ray-project/ray/raw/master/doc/source/images/what-is-ray-padded.svg

..
https://docs.google.com/drawings/d/1Pl8aCYOsZCo61cmp57c7Sja6HhIygGCvSZLi_AuBuqo/edit

Learn more about `Ray AI Libraries`_:

- `Data`_: Scalable Datasets for ML
- `Train`_: Distributed Training
- `Tune`_: Scalable Hyperparameter Tuning
- `RLlib`_: Scalable Reinforcement Learning
- `Serve`_: Scalable and Programmable Serving

Or more about `Ray Core`_ and its key abstractions:

- `Tasks`_: Stateless functions executed in the cluster.
- `Actors`_: Stateful worker processes created in the cluster.
- `Objects`_: Immutable values accessible across the cluster.

Monitor and debug Ray applications and clusters using the `Ray dashboard `__.

Ray runs on any machine, cluster, cloud provider, and Kubernetes, and features a growing
`ecosystem of community integrations`_.

Install Ray with: ``pip install ray``. For nightly wheels, see the
`Installation page `__.

.. _`Serve`: https://docs.ray.io/en/latest/serve/index.html
.. _`Data`: https://docs.ray.io/en/latest/data/dataset.html
.. _`Workflow`: https://docs.ray.io/en/latest/workflows/concepts.html
.. _`Train`: https://docs.ray.io/en/latest/train/train.html
.. _`Tune`: https://docs.ray.io/en/latest/tune/index.html
.. _`RLlib`: https://docs.ray.io/en/latest/rllib/index.html
.. _`ecosystem of community integrations`: https://docs.ray.io/en/latest/ray-overview/ray-libraries.html


Why Ray?
--------

Today's ML workloads are increasingly compute-intensive. As convenient as they are, single-node development environments such as your laptop cannot scale to meet these demands.

Ray is a unified way to scale Python and AI applications from a laptop to a cluster.

With Ray, you can seamlessly scale the same code from a laptop to a cluster. Ray is designed to be general-purpose, meaning that it can performantly run any kind of workload. If your application is written in Python, you can scale it with Ray, no other infrastructure required.

More Information
----------------

- `Documentation`_
- `Ray Architecture whitepaper`_
- `Exoshuffle: large-scale data shuffle in Ray`_
- `Ownership: a distributed futures system for fine-grained tasks`_
- `RLlib paper`_
- `Tune paper`_

*Older documents:*

- `Ray paper`_
- `Ray HotOS paper`_
- `Ray Architecture v1 whitepaper`_

.. _`Ray AI Libraries`: https://docs.ray.io/en/latest/ray-air/getting-started.html
.. _`Ray Core`: https://docs.ray.io/en/latest/ray-core/walkthrough.html
.. _`Tasks`: https://docs.ray.io/en/latest/ray-core/tasks.html
.. _`Actors`: https://docs.ray.io/en/latest/ray-core/actors.html
.. _`Objects`: https://docs.ray.io/en/latest/ray-core/objects.html
.. _`Documentation`: http://docs.ray.io/en/latest/index.html
.. _`Ray Architecture v1 whitepaper`: https://docs.google.com/document/d/1lAy0Owi-vPz2jEqBSaHNQcy2IBSDEHyXNOQZlGuj93c/preview
.. _`Ray Architecture whitepaper`: https://docs.google.com/document/d/1tBw9A4j62ruI5omIJbMxly-la5w4q_TjyJgJL_jN2fI/preview
.. _`Exoshuffle: large-scale data shuffle in Ray`: https://arxiv.org/abs/2203.05072
.. _`Ownership: a distributed futures system for fine-grained tasks`: https://www.usenix.org/system/files/nsdi21-wang.pdf
.. _`Ray paper`: https://arxiv.org/abs/1712.05889
.. _`Ray HotOS paper`: https://arxiv.org/abs/1703.03924
.. _`RLlib paper`: https://arxiv.org/abs/1712.09381
.. _`Tune paper`: https://arxiv.org/abs/1807.05118

Getting Involved
----------------

.. list-table::
:widths: 25 50 25 25
:header-rows: 1

* - Platform
- Purpose
- Estimated Response Time
- Support Level
* - `Discourse Forum`_
- For discussions about development and questions about usage.
- < 1 day
- Community
* - `GitHub Issues`_
- For reporting bugs and filing feature requests.
- < 2 days
- Ray OSS Team
* - `Slack`_
- For collaborating with other Ray users.
- < 2 days
- Community
* - `StackOverflow`_
- For asking questions about how to use Ray.
- 3-5 days
- Community
* - `Meetup Group`_
- For learning about Ray projects and best practices.
- Monthly
- Ray DevRel
* - `Twitter`_
- For staying up-to-date on new features.
- Daily
- Ray DevRel

.. _`Discourse Forum`: https://discuss.ray.io/
.. _`GitHub Issues`: https://github.com/ray-project/ray/issues
.. _`StackOverflow`: https://stackoverflow.com/questions/tagged/ray
.. _`Meetup Group`: https://www.meetup.com/Bay-Area-Ray-Meetup/
.. _`Twitter`: https://twitter.com/raydistributed
.. _`Slack`: https://forms.gle/9TSdDYUgxYs8SA9e8