Skip to main content
provisioning · aws

SageMaker

category
AI & Machine Learning

What does zop.dev create for SageMaker?

zop.dev manages 6 SageMaker resource types: domain, user profile, model, endpoint config, endpoint, and an endpoint-invoker for calling deployed models. The endpoint is the cost center: it bills per instance-hour continuously while deployed, across a catalog running from ml.m5.large up to ml.p4d.24xlarge.

Module backing SageMaker.
Field Value
Cloudaws

Amazon SageMaker is AWS’s platform for building, training, and serving machine-learning models. zop.dev manages the full serving path, from workspace to live inference endpoint, as first-class resources.

Domain, model, endpoint, and invoker resources

SageMaker domain, user profile, model, endpoint config, endpoint, and an endpoint-invoker resource for calling deployed models.

The ml instance catalog for endpoints

Terminal window
Instance catalog: ml.m5.large, ml.m5.xlarge, ml.c5.large, ml.r5.large, ml.g4dn.xlarge, ml.p3.2xlarge, ml.p4d.24xlarge.

SageMaker is exposed on AWS only

Available through the cloud-resource-provisioner API on AWS only.

An endpoint is a server, not a function

A deployed SageMaker endpoint bills per instance-hour for as long as it exists, whether it serves 1 million requests or none. The mental model is a dedicated server, not a lambda: idle costs the same as busy. The catalog spans ml.m5.large and ml.c5.large at the modest end through ml.g4dn.xlarge GPU instances to ml.p4d.24xlarge, and the ends of that range differ by roughly two orders of magnitude in hourly price. A forgotten experiment endpoint on a GPU instance is the classic surprise line item; deleting endpoints when an experiment ends is the single highest-leverage habit here.

Immutable configs are a deployment primitive

Endpoint configs cannot be edited after creation. That is SageMaker’s design, not a platform limitation. Changing anything about serving means creating a new config and updating the endpoint to point at it, at which point SageMaker shifts traffic over. Treated properly, this is a feature: every serving change is a new, named artifact, rollback is re-pointing to the previous config, and there is no in-place mutation to reconstruct after an incident.

The domain outlives the experiments

The domain and its user profiles are the workspace layer, and they persist independently of any model or endpoint. A domain carries attached storage that remains after notebooks go idle, so deleting endpoints ends the serving bill but not the workspace’s. Auditing a SageMaker spend means checking both layers.

Invocation is part of the resource model

The endpoint-invoker resource type calls deployed models through the same provisioner API that created them. That closes the loop: a pipeline can deploy a model, invoke it with a known input, and verify the response before routing real traffic at it. That is a smoke test as infrastructure rather than a script someone remembers to run.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

417 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

417 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·