AmSC Python Client Setup
The AmSC Python client is a unified SDK for interacting with AmSC REST APIs. It supports data catalog operations, remote job submission via the IRI API, and filesystem access across ALCF and NERSC facilities.
Prerequisites
- Python 3.10+
- A Globus account
- For facility access: a facility account, active allocation, and IRI API allowlist access
Facility Access
To get IRI API allowlist access, contact your facility's support team and provide your local facility account name.
Installation
1. Clone the tutorial repository
git clone https://github.com/amsc-interfaces/amsc-client-tutorial.git
cd amsc-client-tutorial
2. Create a virtual environment
python -m venv venv
source venv/bin/activate
3. Install dependencies
pip install -r requirements.txt
4. Launch Jupyter
jupyter lab
Authentication
The client uses Globus for authentication. When prompted, follow the URL printed in the terminal to complete the login flow.
- Globus (AmSC) — Required for data catalog, MLFlow, ClearML, and other AmSC-hosted services
- Globus (facility-specific) — Required for IRI job submission or data transfer involving ALCF, NERSC, or OLCF
Tutorial Notebooks
All notebooks are in the amsc-client-tutorial repository:
| Notebook | Description | Auth Required |
|---|---|---|
| Catalog Explorer | Browse, search, and filter the AmSC data catalog | Globus (AmSC) |
| Catalog Tutorial | Create, update, search, and delete catalog entities | Globus (AmSC) + write access |
| ALCF Facility Tutorial | Submit jobs to Polaris and read output | Globus (ALCF) |
| NERSC Facility Tutorial | NERSC facility setup and job submission | Globus (NERSC) |
| Filesystem Tutorial | ls, head, tail, stat, cp, mv, mkdir on facility storage | Globus (ALCF or NERSC) |