skillfed

stepfunctions

Open source library for developing data science workflows on AWS Step Functions.

stepfunctions v2.3.0 152.4K downloads/30d#10,903 on PyPI298
Permissive license Apache License 2.0 AGING released

What it is and what it does

The AWS Step Functions Data Science SDK is a Python library that lets you define machine learning workflows in code and deploy them to AWS Step Functions for cloud execution. Instead of manually configuring AWS services, you write Python to create steps (Pass, Wait, Lambda, SageMaker tasks, etc.), chain them into workflows, and then upload and run them in the AWS cloud. Workflows are defined locally in Python or Jupyter notebooks but execute as managed state machines in AWS Step Functions, allowing you to orchestrate SageMaker training, Lambda functions, and other AWS services at scale.

The package provides a high-level API to construct steps, define retry and error-handling logic, inspect workflow definitions, and trigger executions from Python. Once deployed to Step Functions, workflows can be re-executed multiple times with different inputs, and execution history is tracked in the AWS console or queried via the SDK. The library is designed for data scientists who want to build production ML pipelines without deep AWS infrastructure knowledge.

Use it for:

  • Build end-to-end SageMaker training pipelines in Python that automatically handle data preprocessing, model training, and deployment steps.
  • Orchestrate multi-step ML workflows combining Lambda functions, SageMaker endpoints, and ECS tasks without manual AWS service integration.
  • Create reusable ML workflow templates in Jupyter notebooks and deploy them as managed state machines for team use.
  • Implement retry logic, error handling, and conditional branching in ML pipelines without writing AWS CloudFormation or Step Functions JSON.
  • Monitor and re-run ML workflow executions from Python code, tracking job history and debugging failures in the Step Functions console.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Builds and orchestrates machine learning workflows on AWS Step Functions and SageMaker directly from Python code, without manual AWS service provisioning.

No. The package has not been released since January 2022 and is in aging maintenance status. While it has no known vulnerabilities and carries a permissive Apache 2.0 license, the three-year gap between the last release and current date creates significant risk of API drift with AWS services. Python 3.6 support is explicitly listed but current Python version compatibility is unspecified. For new ML workflow automation on AWS, consider using boto3 directly or AWS's more recently maintained SDKs and CDK constructs.

Install

stepfunctions on PyPI

pip

pip install stepfunctions

uv

uv add stepfunctions

poetry

poetry add stepfunctions

Installing stepfunctions

Before you install

High install friction: the package has no runtime dependencies but was last released in January 2022, over three years ago. Maintenance is aging with the last commit in April 2025, suggesting minimal active development. Installation itself is straightforward via pip, but the stale release cycle raises questions about compatibility with current AWS service APIs.

License in practice

Licensed under Apache License 2.0 (permissive), which allows commercial use, modification, and distribution with minimal restrictions. No licensing barrier to adoption.

Quickstart

pip install stepfunctions

from stepfunctions.steps import Pass

start_pass_state = Pass(state_id="MyPassState")

Requires AWS credentials and permissions to create and execute workflows in AWS Step Functions and SageMaker; tested on Python 3.6 but Python version support is unspecified for current releases.

Verify before relying

  • Whether the package remains compatible with current AWS Step Functions and SageMaker APIs given the January 2022 release date.
  • Whether Python 3.6 support extends to modern Python versions (3.9+) or if the package is effectively limited to older interpreters.
  • Active maintenance status and whether the April 2025 commit represents a genuine update or repository-only activity.

Package facts

License Apache License 2.0 (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance aging — 1,663 days since the last release
Last repo commit
First released
Downloads 152,392/month — #10,903 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: stepfunctions-2.3.0.tar.gz

Keywords: ML, Amazon, AWS, AI, Tensorflow, MXNet

Intended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishProgramming Language :: PythonProgramming Language :: Python :: 3.6

Tags

aws step functions python sdksagemaker workflow orchestrationml pipeline automation awsserverless ml workflowsaws step functions data sciencemachine learning workflow buildersagemaker pipeline python
aws-integrationworkflow-orchestrationml-pipeline

More Artificial Intelligence packages

litellm

LiteLLM provides a unified Python interface to…

permissive · top 100 on PyPI

huggingface-hub

Client library and CLI tool for downloading,…

permissive · top 100 on PyPI

langchain

LangChain provides a framework for building…

permissive · top 1,000 on PyPI

hf-xet

hf-xet provides chunk-based deduplication and…

permissive · top 1,000 on PyPI

tokenizers

Tokenizers converts raw text into token…

permissive · top 1,000 on PyPI

transformers

Transformers provides a unified framework for…

permissive · top 1,000 on PyPI

aws-cdk.aws-stepfunctions

Provides Python constructs for defining AWS…

permissive · top 15,000 on PyPI

sagemaker-train

Trains and deploys machine learning models on…

unclear · top 5,000 on PyPI

sagemaker-mlops

Provides high-level orchestration for Amazon…

permissive · top 5,000 on PyPI

sagemaker

SageMaker Python SDK is a library for training…

permissive · top 5,000 on PyPI

sagemaker-experiments

Tracks machine learning experiments, trials,…

permissive · top 15,000 on PyPI

sagemaker-inference

Provides a model serving stack for deploying…

permissive · top 15,000 on PyPI

sagemaker-serve

Provides model serving and deployment…

permissive · top 5,000 on PyPI

sagemaker-training

Integrates training scripts into Docker…

permissive · top 15,000 on PyPI

sagemaker-feature-store-pyspark-3.1

Connects Apache Spark DataFrames to Amazon…

permissive · top 15,000 on PyPI

sagemaker-data-insights

Computes ML-relevant statistical summaries of…

unclear · top 15,000 on PyPI