Slide 1

Slide 1 text

Getting Started with Anyscale Charles Greer Solutions Architect, Anyscale Javier Redondo Product Manager, Anyscale

Slide 2

Slide 2 text

1. Why Anyscale 2. Anatomy of a Ray Program 3. Scaling Ray Applications 4. Using Anyscale and the Cloud Agenda

Slide 3

Slide 3 text

1. Machine Learning 2. Ray Libraries 3. Integrations 4. Complex Dependencies Not Agenda

Slide 4

Slide 4 text

Why Anyscale? ● You've got some computational task to be done. ● One machine is not enough. Writing for more than one machine was hard… until Ray

Slide 5

Slide 5 text

Use Ray and Run it on Anyscale ● Ray makes distributed computing easy ● Ray makes Machine Learning workloads easy to scale Ray and Anyscale make it easy compute at massive scale.

Slide 6

Slide 6 text

What is computing at massive scale? ● Python functions (Ray Core) ○ "I want to run OCR on 5 million documents" ○ "I want to run time series forecasting on 100k features" ● Machine Learning Tasks ○ Hyperparameter tuning ○ Distributed training ○ Model Serving ● Simulations ○ Digital Twin ○ Video Game Learning

Slide 7

Slide 7 text

Before we get started ● Use Anyscale and Ray docs for tutorials and reference ○ https://www.ray.io/docs https://docs.anyscale.com ● Slides and code will be available on github. ○ https://github.com/anyscale/getting-started-webinar ● Anyscale has a great series of meetups, summits and webinars ○ https://www.anyscale.com/events

Slide 8

Slide 8 text

Pause… … Ray Anatomy

Slide 9

Slide 9 text

A Picture of Ray

Slide 10

Slide 10 text

What is Anyscale doing? What does your code do? Ray and Anyscale Together ● Make copies of your code ● Manage remote tasks ● Hold function return values ● Get more machines as needed ● Get rid of unused machines ● Give you observability tools Your Code: ● Calculates things ● Writes logs ● Reads input ● Processes data ● Writes output ● Integrates with 3rd party systems ● Has Bugs

Slide 11

Slide 11 text

Cloud Ready Applications

Slide 12

Slide 12 text

Cloud Ready Applications

Slide 13

Slide 13 text

Pause… … [Any]scaling

Slide 14

Slide 14 text

Scaling Ray num_cpus ray.init(num_cpus=100) Actor.options(num_cpus=0.01) @ray.remote(num_cpus=1) Cluster resources ray.cluster_resources() ray.autoscaler.sdk .request_resources( num_cpus=100)

Slide 15

Slide 15 text

Run Interactively, on Anyscale New Cluster Every Time: ● ray.init("anyscale://") ● ray.init("anyscale://project/") Start then re-use an existing Cluster: ● ray.init("anyscale://cluster") ● ray.init("anyscale://project/cluster")

Slide 16

Slide 16 text

Pause… … Your Environment(s)

Slide 17

Slide 17 text

Environments on Anyscale

Slide 18

Slide 18 text

Cluster Environment ● Docker Image for your Anyscale Compute ● Build in UI or SDK ● Base image selection ● Dependencies ○ Conda ○ Pip ○ Debian ● Post-install Commands ○ Custom setups ○ Manipulate .bashrc* Cluster Compute Config ● Machine types ● Region ● Cloud Provider ● Autosuspend ● Create in UI or at Runtime Runtime Environment ● Specific to Session, Job, or Services ● Dependencies ○ Conda* ○ Pip ○ Environment variables ○ Working directory ● Installed at launch time For all: Use by ○ ray.init() ○ Jobs yaml configuration ○ Services yaml configuration

Slide 19

Slide 19 text

Using Cluster Environments and Cluster Compute Configs ctx = ray.init("anyscale://getting_started/my_cluster", runtime_env={"working_dir" : "."}, cluster_env="demo-with-aws:3", cluster_compute="demos-s3-access", )

Slide 20

Slide 20 text

Using Configs - S3 on Fully Managed Anyscale ● Create a role in your Amazon Acct that Anyscale can Use https://docs.anyscale.com/user-guide/configure/access-resources-from-cloud/overview ● Give this role permissions to access S3 ● Configure a Cluster Compute to leverage this role ● (optional) Configure a Cluster Environment to install the AWS CLI ● Use them all together

Slide 21

Slide 21 text

Pause… … Anyscale Jobs

Slide 22

Slide 22 text

Anyscale Jobs ● Your code works - ready to give to operations team. ● Hands-off production runs. ● Cluster lifecycle management by Anyscale. ● Use from Anyscale CLI or SDK ● For long-running processes, use Anyscale Services and Ray Serve

Slide 23

Slide 23 text

Jobs and Services

Slide 24

Slide 24 text

Anyscale Jobs anyscale job submit my_job.yaml my_job:yaml: name: webinar-job cloud: anyscale-managed-2 Runtime_env: working_dir: "https://github.com/anyscale/getting-started-webinar/archive/refs/hea ds/master.zip" entrypoint: "python a_script.py 1012" max_retries: 3

Slide 25

Slide 25 text

Pause…

Slide 26

Slide 26 text

The Adventure Continues ● Ray Libraries for ML ○ Ray Train ○ Ray Tune ○ RLlib ○ Ray Serve ● Anyscale Services ○ Scaling Model Serving ● Your use case……

Slide 27

Slide 27 text

Supercharge your Ray journey on Anyscale Accelerate time to market Enterprise ready Observability Get full visibility into your Ray workloads Multi-Cloud Diversify and deploy your workloads across public clouds with a click of a button. Fully-managed service Focus on innovation; not infra ops From the creators of Ray Access to Ray experts Built for dev -> prod journey Scale from laptop to cloud seamless; Easy CI/CD integration

Slide 28

Slide 28 text

Simplify your MLOps with Anyscale Effortlessly deploy AI workflows and models into production with your existing CI/CD tools. Production jobs & services Deploy ML workflows & models into production with ease Observability Monitor health with event logs and prebuilt dashboards App packaging Package apps, incl. all code and library dependencies APIs & SDKs Automate and integrate into your workflows (eg. CI/CD)