aws/sagemaker-python-sdk
A library for training and deploying machine learning models on Amazon SageMaker
What it solves
Amazon SageMaker Python SDK provides a unified interface for training and deploying machine learning models on AWS. It removes the complexity of managing underlying infrastructure, allowing developers to use popular frameworks (like PyTorch and Apache MXNet) or their own custom Docker containers to build and host models at scale.
How it works
The SDK provides high-level Python classes to manage the ML lifecycle. In version 3.x, it uses a modular architecture with separate packages for core, training, and serving. Key components include:
- ModelTrainer: A unified class that replaces framework-specific estimators to handle model training.
- ModelBuilder: A unified class for deploying models and managing inference endpoints.
- Fine-Tuning Trainers: Specialized classes (SFTTrainer, DPOTrainer, RLAIFTrainer, RLVRTrainer) for customizing foundation models using techniques like LoRA.
Who it’s for
Data scientists and ML engineers who are using Amazon SageMaker to train, tune, and deploy machine learning models in a production environment.
Highlights
- Unified API: Replaces multiple framework-specific classes with single, intuitive classes for training and inference.
- Foundation Model Customization: Built-in support for supervised fine-tuning (SFT), direct preference optimization (DPO), and RL from AI feedback (RLAIF).
- Flexible Training: Supports custom Docker containers, Amazon's built-in algorithms, and distributed training.
- MLOps Integration: Includes tools for hyperparameter tuning, model registries, and processing jobs.
- Deployment Options: Capability to deploy models to SageMaker or Amazon Bedrock.
Related
- Project
- Project
- Dispatch
- Project
- Project