Skip to main content

SageMaker MLOps package for workflow orchestration and model building

Project description

SageMaker MLOps Package

The sagemaker-mlops package provides high-level orchestration capabilities for Amazon SageMaker workflows, including pipeline definitions, step implementations, and model building utilities.

Purpose

This package sits at the top of the SageMaker SDK dependency hierarchy and orchestrates components from the Core, Train, and Serve packages. It resolves architectural violations by providing a dedicated home for workflow orchestration logic that needs to import from multiple lower-level packages.

Architecture

The SageMaker SDK follows a clean 4-package architecture:

┌─────────────────────────────────────────────────────────────┐
│                   Package Architecture                       │
└─────────────────────────────────────────────────────────────┘

                    MLOps (orchestration)
                   ↙      ↓      ↘
              Train     Core     Serve
                   ↘      ↓      ↙
                       Core

Dependency Rules:
✓ Core → nothing (foundation layer)
✓ Train → Core only
✓ Serve → Core only
✓ MLOps → Train, Serve, Core (orchestration layer)

Package Responsibilities

  • sagemaker-core: Foundation primitives (entities, parameters, functions, conditions, properties)
  • sagemaker-train: Training functionality (estimators, processors, tuners)
  • sagemaker-serve: Serving functionality (models, predictors, endpoints)
  • sagemaker-mlops: Workflow orchestration (pipelines, steps, model building)

What's in This Package

Workflow Orchestration (from Core)

The following files were moved from sagemaker-core/src/sagemaker/core/workflow/ to establish clean architectural boundaries:

Core Orchestration (2 files):

  • pipeline.py - Pipeline class for workflow definition
  • steps.py - Base Step class and common step logic

Step Implementations (13 files):

  • automl_step.py - AutoML training steps
  • model_step.py - Model creation and registration steps
  • callback_step.py - Callback steps for custom logic
  • clarify_check_step.py - Model bias and explainability checks
  • condition_step.py - Conditional execution steps
  • emr_step.py - EMR cluster steps
  • fail_step.py - Explicit failure steps
  • function_step.py - Lambda function steps
  • lambda_step.py - AWS Lambda invocation steps
  • monitor_batch_transform_step.py - Batch transform monitoring
  • notebook_job_step.py - Notebook execution steps
  • quality_check_step.py - Model quality checks
  • step_collections.py - Step collection utilities
  • step_outputs.py - Step output handling

Utilities (6 files):

  • _utils.py - Internal utilities
  • _steps_compiler.py - Step compilation logic
  • _repack_model.py - Model repackaging utilities
  • _event_bridge_client_helper.py - EventBridge integration
  • triggers.py - Pipeline triggers
  • utilities.py - Public utility functions

Configuration (6 files):

  • check_job_config.py - Quality check configuration
  • parallelism_config.py - Parallel execution configuration
  • pipeline_definition_config.py - Pipeline definition settings
  • pipeline_experiment_config.py - Experiment tracking configuration
  • retry.py - Retry policies
  • selective_execution_config.py - Selective execution settings

Model Building

ModelBuilder is now located in the sagemaker-serve package but is re-exported from MLOps for convenience.

What Stayed in Core

The following primitive files remain in sagemaker-core/src/sagemaker/core/workflow/:

  • entities.py - Base Entity and PipelineVariable classes
  • parameters.py - Parameter type definitions
  • functions.py - Pipeline functions (Join, JsonGet)
  • execution_variables.py - ExecutionVariable
  • conditions.py - Condition primitives
  • properties.py - Property definitions
  • pipeline_context.py - PipelineSession (refactored to remove Train/Serve imports)
  • __init__.py - Package initialization

Installation

Install the package in editable mode for development:

pip install -e sagemaker-mlops

Or install all SageMaker packages together:

pip install -e sagemaker-core
pip install -e sagemaker-train
pip install -e sagemaker-serve
pip install -e sagemaker-mlops

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sagemaker_mlops-1.0.tar.gz (78.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sagemaker_mlops-1.0-py3-none-any.whl (102.6 kB view details)

Uploaded Python 3

File details

Details for the file sagemaker_mlops-1.0.tar.gz.

File metadata

  • Download URL: sagemaker_mlops-1.0.tar.gz
  • Upload date:
  • Size: 78.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for sagemaker_mlops-1.0.tar.gz
Algorithm Hash digest
SHA256 23569d405f4b88a6d9e9ca3a2e94e10501366a55b3a0381ebe74a232567da5d3
MD5 8db14dd955cfdfa2a52386484a173137
BLAKE2b-256 490f3440020bc9c8706d941f358b2156a289156b590be8758ac288d6fb0e3300

See more details on using hashes here.

File details

Details for the file sagemaker_mlops-1.0-py3-none-any.whl.

File metadata

  • Download URL: sagemaker_mlops-1.0-py3-none-any.whl
  • Upload date:
  • Size: 102.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for sagemaker_mlops-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2af0c5fd26eb5827752fcff4727735f6917eb27d118c1b8a9e13cf5ed37ca900
MD5 deaf0c968132bdac3115aaeb24899f83
BLAKE2b-256 3dc004ae8fc797660358af40056411a381a799ce13bd4c759a05aa07f893c393

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page