Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
223af40
Update telemetry status to be Integer for parity (#130)
Aditi2424 Jul 18, 2025
cf77296
Release new version for Health Monitoring Agent (1.0.643.0_1.0.192.0)…
maheshxb Jul 18, 2025
0342f60
Release new version for Health Monitoring Agent (1.0.674.0_1.0.199.0)…
jiayelamazon Jul 18, 2025
8bbdf56
documentation working setup
adishaa Jul 21, 2025
1d475e9
training inference documentation changes
adishaa Jul 22, 2025
211bbba
Merge branch 'documentation' into documentation
Aditi2424 Jul 22, 2025
0eb80de
Add more inference examples
adishaa Jul 22, 2025
1332bcd
Merge branch 'documentation' into documentation
Aditi2424 Jul 22, 2025
c56bcac
UI changes for documentation
adishaa Jul 23, 2025
d4b9454
Merge branch 'documentation' into documentation
Aditi2424 Jul 23, 2025
f6936a7
Change to tabbed view for CLI and SDK
adishaa Jul 23, 2025
843296f
Change to tabbed view getting started page
adishaa Jul 23, 2025
532de64
clean up custom css
adishaa Jul 23, 2025
b79c67e
Merge branch 'documentation' into documentation
Aditi2424 Jul 23, 2025
f41a14b
fix inference sdk create commands
adishaa Jul 23, 2025
8382963
Fix sdk and cli commands
adishaa Jul 24, 2025
044119d
Merge branch 'documentation' into documentation
Aditi2424 Jul 24, 2025
13dcbad
Open example notebook links in new tab
adishaa Jul 25, 2025
f905c07
Fix dark theme text
adishaa Jul 25, 2025
00d4d55
Merge branch 'documentation' into documentation
Aditi2424 Jul 25, 2025
6e33bea
Minor doc fixes
adishaa Jul 25, 2025
d710dfd
Merge branch 'documentation' into documentation
Aditi2424 Jul 25, 2025
0f9e9fa
Documentation Feedback Changes, Add Metadata
adishaa Jul 28, 2025
2897b03
Use progressive disclosure on index page
adishaa Jul 28, 2025
3f03d12
Merge branch 'documentation' into documentation
Aditi2424 Jul 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,9 @@ def get_version():
"home_page_in_toc": True
}

author = "Amazon Web Services"
copyright = f"{datetime.datetime.now().year}, Amazon Web Services"

htmlhelp_basename = "{}doc".format(project)
html_static_path = ["_static"]
html_css_files = ["custom.css"]
Expand Down
6 changes: 3 additions & 3 deletions doc/getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ List all available SageMaker HyperPod clusters in your account:
`````{tab-set}
````{tab-item} CLI
```bash
hyp list-cluster [--region <region>] [--namespace <namespace>] [--output <json|table>]
hyp list-cluster [--region <region>]
```
````

Expand All @@ -32,15 +32,15 @@ Configure your local kubectl environment to interact with a specific SageMaker H
`````{tab-set}
````{tab-item} CLI
```bash
hyp set-cluster-context --cluster-name <cluster-name> [--namespace <namespace>]
hyp set-cluster-context --cluster-name <cluster-name>
```
````

````{tab-item} SDK
```python
from sagemaker.hyperpod import set_cluster_context

set_cluster_context('<my-cluster>', region='aws-region')
set_cluster_context('<my-cluster>')

```
````
Expand Down
143 changes: 124 additions & 19 deletions doc/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
---
keywords:
- distributed
- kubernetes
- pytorch
- monitoring
- jumpstart
---

(hpcli_docs_mainpage)=

# Overview
# SageMaker HyperPod CLI & SDK

```{toctree}
:hidden:
Expand All @@ -14,49 +23,145 @@ Example Notebooks <examples>
API reference <_apidoc/modules>
```

SageMaker HyperPod Command Line Interface (CLI) and Software Development Kit (SDK) provide a seamless way to manage distributed training and inference workloads on EKS-orchestrated SageMaker HyperPod clusters—without needing Kubernetes expertise. Use the powerful CLI to launch and monitor training jobs and endpoints, or leverage the Python SDK to do the same programmatically with minimal code, including support for JumpStart models, custom endpoints, and built-in monitoring.
**Manage distributed Machine Learning workloads on Kubernetes clusters without the complexity.**

The SageMaker HyperPod Command Line Interface and SDK simplify distributed training and inference on EKS-orchestrated clusters.

## Start Here
## Quick Start

::::{container}
::::{grid} 1 2 4 4
::::{grid} 1 2 2 2
:gutter: 3

:::{grid-item-card} Installation
:link: installation
:link-type: ref
:class-card: sd-border-primary

Get the CLI/ SDK setup
**New to HyperPod?** Install the CLI/ SDK in minutes.
:::

:::{grid-item-card} Quickstart
:::{grid-item-card} Getting Started
:link: getting_started
:link-type: ref
:class-card: sd-border-secondary

Beginner's guide to using CLI/ SDK
**Ready to explore?** Connect to your cluster before running ML workflows.
:::

:::{grid-item-card} Training
:link: training
:link-type: ref
::::
::::

## What You Can Do

::::{container}
::::{grid} 1 1 2 2
:gutter: 3

:::{grid-item-card} Training Workloads
:class-card: sd-border-success

Detailed guide on creating Pytorch training jobs
**Distributed Training**
- HyperPodPytorchJob distributed training
- Multi-node, multi-GPU support
- Built-in monitoring and logging

```{dropdown} Learn More About Training
:color: success
:icon: chevron-down

- [Training Guide](training.md) - Complete training workflows
- [Example Notebooks](examples.md) - Hands-on training examples
- Supported frameworks: PyTorch
```
:::

:::{grid-item-card} Inference
:link: inference
:link-type: ref
:::{grid-item-card} Inference Endpoints
:class-card: sd-border-info

**Model Serving**
- Deploy models as scalable endpoints
- JumpStart model integration
- Real-time and batch inference

Detailed guide on creating, invoking and monitoring endpoints
```{dropdown} Learn More About Inference
:color: info
:icon: chevron-down

- [Inference Guide](inference.md) - Complete inference workflows
- [Example Notebooks](examples.md) - Hands-on inference examples
- Supported models: JumpStart models, Custom models
```
:::

:::{grid-item-card} Example Notebooks
:link: examples
:link-type: ref
::::
::::

Notebooks that demonstrate end-to-end workflows
## Choose Your Interface

::::{container}
::::{grid} 1 1 2 2
:gutter: 3

:::{grid-item-card} Command Line Interface
:class-card: sd-border-warning

**For DevOps & Quick Tasks**
```bash
# Launch a training job
hyp create hyp-pytorch-job \
--job-name my-training \
--image pytorch/pytorch:latest \
```

```{dropdown} CLI Features
:color: warning
:icon: terminal

- Interactive job management
- Built-in status monitoring
```
:::

:::{grid-item-card} Python SDK
:class-card: sd-border-danger

**For Programmatic Control**
```python
from sagemaker.hyperpod.training import HyperPodPytorchJob
from sagemaker.hyperpod.common.config import Metadata

pytorch_job = HyperPodPytorchJob(
metadata=Metadata(name="demo"),
nproc_per_node="1",
replica_specs=replica_specs,
run_policy=run_policy,
)

pytorch_job.create()
```

```{dropdown} SDK Features
:color: danger
:icon: code

- Pythonic API design
- Jupyter notebook integration
- Programmatic job orchestration
```
:::

::::
::::

## Advanced Resources

```{dropdown} Complete Documentation
:color: primary
:icon: book

- [API Reference](_apidoc/modules.rst) - Complete SDK documentation
- [Training Guide](training.md) - In-depth training workflows
- [Inference Guide](inference.md) - Comprehensive inference setup
- [Example Notebooks](examples.md) - End-to-end examples
```
25 changes: 9 additions & 16 deletions doc/training.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
---
keywords:
- distributed
- kubernetes
- pytorch
- containerized
- orchestration
---

(training)=

# Training with SageMaker HyperPod
Expand All @@ -23,24 +32,8 @@ You can create training jobs using either the CLI or SDK approach:
````{tab-item} CLI
```bash
hyp create hyp-pytorch-job \
--version 1.0 \
--job-name test-pytorch-job \
--image pytorch/pytorch:latest \
--command '[python, train.py]' \
--args '[--epochs=10, --batch-size=32]' \
--environment '{"PYTORCH_CUDA_ALLOC_CONF": "max_split_size_mb:32"}' \
--pull-policy "IfNotPresent" \
--instance-type ml.p4d.24xlarge \
--tasks-per-node 8 \
--label-selector '{"accelerator": "nvidia", "network": "efa"}' \
--deep-health-check-passed-nodes-only true \
--scheduler-type "kueue" \
--queue-name "training-queue" \
--priority "high" \
--max-retry 3 \
--volumes '[data-vol, model-vol, checkpoint-vol]' \
--persistent-volume-claims '[shared-data-pvc, model-registry-pvc]' \

```
````
````{tab-item} SDK
Expand Down