AutoGluon-Cloud lets you train and deploy state-of-the-art ML models in the cloud in a few lines of code. Run AutoGluon on Amazon SageMaker without worrying about infrastructure, dependencies, or a heavy local ML environment. It supports two workflows:
- Train your own predictor — the same
fit → deploy → predictworkflow as local AutoGluon, with all the heavy lifting offloaded to SageMaker. - Run pretrained foundation models — deploy state-of-the-art pretrained models like Chronos-2 for zero-shot inference, with no training required.
pip install autogluon.cloudThen provision the IAM role and S3 bucket AutoGluon-Cloud needs to run on AWS:
from autogluon.cloud import bootstrap
bootstrap()See the Setup tutorial for the full walkthrough, including how to register an existing role and bucket instead.
Train an AutoGluon predictor on your data and serve it from a SageMaker endpoint — same API as local AutoGluon, all heavy lifting on AWS. Full walkthrough: tabular, time series.
from autogluon.cloud import TabularCloudPredictor
# `train_data` and `test_data` can be a local path, S3 URL, or pandas DataFrame
train_data = "https://autogluon.s3.amazonaws.com/datasets/Inc/train.csv"
test_data = "https://autogluon.s3.amazonaws.com/datasets/Inc/test.csv"
# Train
cloud_predictor = TabularCloudPredictor()
cloud_predictor.fit(
train_data=train_data,
predictor_init_args={"label": "class"}, # passed to TabularPredictor()
predictor_fit_args={"time_limit": 120}, # passed to TabularPredictor.fit()
)
# Real-time inference endpoint
cloud_predictor.deploy()
result = cloud_predictor.predict_real_time(test_data)
cloud_predictor.cleanup_deployment()
# Batch prediction
result = cloud_predictor.predict(test_data)Skip training entirely — deploy a pretrained model like Chronos-2 to SageMaker and get zero-shot predictions out of the box. Full walkthrough: time series.
from autogluon.cloud import TimeSeriesFoundationModel
# `data` can be a local path, S3 URL, or pandas DataFrame
data = "https://autogluon.s3.amazonaws.com/datasets/timeseries/m4_hourly_tiny/train.csv"
model = TimeSeriesFoundationModel("chronos-2")
# Batch prediction — no training required
predictions = model.predict(
data=data,
target="target",
prediction_length=24,
)
# Real-time inference endpoint
endpoint = model.deploy()
predictions = endpoint.predict(
data=data,
target="target",
prediction_length=24,
)
endpoint.delete_endpoint()