© 2019-2024, Anyscale. All Rights Reserved
An introduction to Ray, the system for scaling your Python and machine learning workloads from a laptop to a cluster. We'll start with a hands-on exploration of the core Ray APIs for distributed workloads, covering basic distributed Ray Core API patterns, and then move on to a quick introduction to one of Ray's native libraries:
- Remote functions as tasks
- Remote objects as futures
- Remote classes as stateful actors
- Quick introduction to Ray's data and Ray libraries
Divided into three modules, each module will take about an hour, combined with lecture and followed by hands-on 👩💻 exercises in class.
- Lecture 20 mins
- What is Ray and Why & Origins
- Ray Component & Architecture
- Ray Core API Decorators & Patterns
- Notebooks & Exercises
- Ray Functions as distribtued stateless tasks
- Ray Objects as Distributed future objects
- Ray Actors as distributed stateful services
- Ray Actors Revisited: Understand a common pattern used in Ray native libraries
- Tour of the Ray APIs: a quick look at common APIs and some tricks & tips if new to Ray
- Distributed multiprocessing.Pool: different strategies to scale Python with Ray
- Notebooks & Exercises
- Brief Introduction to Ray Data: A gentle introduction to Ray Datasets
- Brief Introduction to Ray AIR: A gentle introduction to Ray AIR
- Additional and supplemental material to peruse at leisure time.
- 👩💻Understand what the Ray ecosystem is and why to use it
- 📖Learn Ray's Core basic APIs and Python APIs
- 🧑💻Use Ray APIs to convert Python functions and classes into distributed stateless and stateful tasks
- 🎛 Use Dashboard for inspection and observation
- 🧑💻Discover the purpose of Ray native libraries and how to use them
Level: Beginners or new to Ray
- Familiarity with Python 3.9+ and basic programming concepts: lists, comprehensions, decorators, functions, dictionaries, classes, loops, exceptional handling, etc
- Laptop with at least 8-16GB Memory with latest Chrome browser
- Prior knowledge of Jupyter notebooks
- Basic knowledge of machine learning concepts
If you want to follow the material in class, please follow this instructions before class to setup your laptop.
If you need to install Anaconda, follow the instructions here.
If you already have Anaconda installed, consider running conda upgrade --all.
conda create -n ray-core-tutorial python=3.10
conda activate ray-core-tutorial
git clone git@github.com:dmatrix/ray-core-tutorial.git
cd to <cloned_dir>
python3 -m pip install -r requirements.txt
jupyter lab
If you are using Apple M1 laptop 🍎 follow the following instructions:
conda create -n ray-core-tutorial python=3.10
conda activate ray-core-tutorial
conda install grpcio=1.43.0 -c conda-forge
git clone git@github.com:dmatrix/ray-core-tutorial.git
cd to <cloned_dir>
python3 -m pip install -r requirements.txt
jupyter lab
git clone git@github.com:anyscale/ray-summit-2022-training.git
cd to <cloned_dir>
python3 -m pip install -r requirements.txt
jupyter lab
Let's have 😜 fun with Ray!
To start tutorials, go here.
And when you are finished, help us improve training. Please fill out this survey