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.2.0.tar.gz (78.8 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.2.0-py3-none-any.whl (102.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sagemaker_mlops-1.2.0.tar.gz
  • Upload date:
  • Size: 78.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for sagemaker_mlops-1.2.0.tar.gz
Algorithm Hash digest
SHA256 24e8c8eab29faf08052d31280594752ba7988bd1696ca03c756354659f2a2543
MD5 d08cdc9e3652fc4e279efc586531273a
BLAKE2b-256 4698bdc962b1e1528453b9c6206b1094dac287e4e16466d01dc478e73cd7769a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sagemaker_mlops-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 45c68ec86233f419632a200f5654522a084031a3ae699b3ace638c9b7b432585
MD5 68e6ad11a49113072b5ff0779d1feeca
BLAKE2b-256 a95897408bc247dbe530666ad2bc3ed38f0eb9d5e5ff47ef867ce8dbde2437db

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