Ray AIR Deep Dive
Ray 2.0, released in August 2022, introduces Ray AI Runtime (AIR), a unified layer for preprocessing, training, tuning, and serving ML models. AIR integrates Ray Data, Ray Train, Ray Tune, and Ray Serve into a cohesive API.
Pipeline Example
python
import ray
from ray import train
from ray.train.torch import TorchTrainer
from ray.train import ScalingConfig
def train_func():
import torch
model = torch.nn.Linear(10, 1)
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)
for epoch in range(10):
loss = model(torch.randn(32, 10)).sum()
loss.backward()
optimizer.step()
optimizer.zero_grad()
train.report({'loss': loss.item()})
trainer = TorchTrainer(
train_func,
scaling_config=ScalingConfig(num_workers=4, use_gpu=True),
)
result = trainer.fit()
print(f'Final loss: {result.metrics["loss"]:.4f}')
