Try   HackMD

SageMaker Create API Calls

SageMaker Studio

SageMaker Studio is an integrated development environment (IDE) for machine learning that enables developers to build, train, and deploy models from a single web-based interface. It provides a unified experience for the entire machine learning workflow, from data preparation to deployment. Studio offers collaboration features that allow teams to share notebooks, models, and resources. It includes built-in support for popular frameworks and tools like TensorFlow, PyTorch, and Jupyter. Studio also enables customization through container images and lifecycle configurations to meet specific development requirements.

  • CreateApp: Creates an application within a SageMaker domain, such as JupyterLab, Code Editor, or other supported apps. The app is associated with either a user profile or a shared space. This resource manages the lifecycle of individual applications that users interact with.

  • CreateAppImageConfig: Creates a configuration for a custom container image that can be used with SageMaker Studio applications. This configuration defines settings such as kernel specifications and file system access. The image config enables customization of the development environment for specific project requirements.

  • CreateDomain: Creates a SageMaker domain, which is the primary organizational unit for SageMaker Studio that shares settings and resources. A domain contains user profiles, apps, and can be configured with specific security and networking settings. Domains provide organizational boundaries for ML workloads within an AWS account.

  • CreateImage: Creates a custom container image definition that can be used with SageMaker Studio applications. The image definition includes the ECR image URI and metadata about the image. This resource enables teams to use specialized environments with specific dependencies and tools.

  • CreateImageVersion: Creates a new version of an existing custom container image for SageMaker Studio. Each version is associated with a specific ECR image tag or digest. Version management allows for controlled updates to development environments while maintaining backward compatibility.

  • CreatePresignedDomainUrl: Creates a pre-signed URL for accessing a user's SageMaker Studio environment. The URL provides secure, temporary access to Studio without requiring AWS console login. This enables simplified sharing of Studio access for specific users or scenarios.

  • CreateSpace: Creates a shared collaborative space within a SageMaker domain that multiple users can access. Spaces allow teams to collaborate on projects using shared compute resources and storage. This resource promotes team-based workflows where multiple users need to work on the same ML projects.

  • CreateStudioLifecycleConfig: Creates a lifecycle configuration script that customizes SageMaker Studio application environments. The scripts run when Studio applications start or restart, allowing for automated setup. This enables consistent environment configuration across teams and applications.

  • CreateUserProfile: Creates a user profile within a SageMaker domain, representing an individual user. The profile contains settings specific to a user, including execution roles and security groups. User profiles ensure proper isolation and permission management for individual team members.

SageMaker Notebook Instances

SageMaker Notebook Instances provide fully managed Jupyter notebook environments for data exploration and model development. These instances come pre-configured with popular data science and machine learning frameworks and libraries. Notebook Instances can be easily scaled up or down to match computational requirements for different workloads. They provide integration with other AWS services such as S3 for data storage and IAM for security. Notebook Instances allow for automated startup scripts to customize the environment for specific team or project needs.

  • CreateNotebookInstance: Creates a standalone Jupyter notebook instance with specified compute resources and configurations. The instance can be configured with specific instance types, storage, and network settings. Notebook instances provide an isolated environment for data science experimentation and model development.

  • CreateNotebookInstanceLifecycleConfig: Creates a set of scripts that run when a notebook instance is created or started. These scripts automate the setup of libraries, dependencies, and custom configurations. Lifecycle configs ensure consistent environments and reduce manual setup tasks.

  • CreatePresignedNotebookInstanceUrl: Creates a pre-signed URL that provides temporary, secure access to a notebook instance. The URL allows users to access notebooks without requiring AWS console login. This simplifies sharing notebook access with team members or external collaborators.

SageMaker Training

SageMaker Training provides managed infrastructure and services for training machine learning models at scale. It offers built-in algorithms and supports custom training code in containers for flexibility. Training jobs automatically provision compute resources, execute training code, and clean up resources upon completion. It supports distributed training across multiple instances for accelerated model development. SageMaker Training integrates with hyperparameter tuning to optimize model performance through systematic experimentation.

  • CreateAlgorithm: Creates a reusable algorithm resource that encapsulates training and inference code. The algorithm can be shared, published to AWS Marketplace, or reused across multiple training jobs. This resource standardizes model development by providing consistent algorithm implementations.

  • CreateAutoMLJob: Creates an automated machine learning job that finds the best model for a dataset with minimal user intervention. The job automatically handles feature engineering, algorithm selection, and hyperparameter tuning. AutoML jobs simplify the model development process for users with limited ML expertise.

  • CreateAutoMLJobV2: Creates an enhanced version of the automated machine learning job with additional capabilities and optimizations. V2 includes support for additional problem types, improved model quality, and better explainability. This newer version provides more advanced AutoML functionality than the original implementation.

  • CreateCluster: Creates a compute cluster that can be used for distributed training or processing jobs. The cluster consists of multiple instances that work together to accelerate ML workloads. Clusters enable efficient execution of resource-intensive machine learning tasks.

  • CreateClusterSchedulerConfig: Creates a configuration for scheduling jobs on SageMaker clusters. The configuration defines how resources are allocated and jobs are prioritized. This ensures optimal utilization of compute resources across multiple concurrent workloads.

  • CreateComputeQuota: Creates quota limits for compute resources used by SageMaker Studio users. Quotas control instance usage, preventing excessive resource consumption by individual users. This resource helps manage costs and ensure fair resource allocation across teams.

  • CreateHyperParameterTuningJob: Creates a job that systematically searches for optimal model hyperparameters. The job runs multiple training jobs with different parameter combinations to find the best model performance. Hyperparameter tuning automates the process of finding optimal model configurations.

  • CreateTrainingJob: Creates a job that trains a machine learning model using specified algorithms and datasets. The job provisions resources, executes training code, and produces model artifacts. Training jobs are the fundamental building blocks for model development in SageMaker.

  • CreateTrainingPlan: Creates a structured plan for model training with predefined steps and configurations. The plan can include pre-processing, training, and post-processing stages with standardized settings. Training plans promote consistency and best practices across multiple training efforts.

SageMaker Inference

SageMaker Inference provides services and infrastructure for deploying machine learning models to production environments. It supports real-time, batch, and asynchronous inference patterns to suit different application requirements. Inference endpoints automatically handle scaling, load balancing, and high availability for model deployments. It offers cost optimization through instance selection, auto-scaling, and serverless options. SageMaker Inference includes monitoring capabilities to track performance, detect drift, and ensure model quality over time.

  • CreateEndpoint: Creates a real-time inference endpoint that hosts trained models for online prediction requests. The endpoint provisions resources based on the endpoint configuration and deploys the specified models. This is the primary resource for serving models in production environments.

  • CreateEndpointConfig: Creates a configuration that defines how models are deployed to an inference endpoint. The configuration specifies instance types, multi-model support, and scaling policies. Endpoint configurations allow for customized deployment strategies based on performance and cost requirements.

  • CreateInferenceComponent: Creates a component that handles a specific aspect of the inference process within an endpoint. Components can be individually scaled and updated without affecting the entire endpoint. This enables more granular control over inference resources and deployment management.

  • CreateInferenceExperiment: Creates an experiment to test and compare different inference configurations or model versions. The experiment can run A/B tests or shadow tests to evaluate performance before full deployment. Inference experiments reduce deployment risk by validating changes in a controlled manner.

  • CreateInferenceRecommendationsJob: Creates a job that analyzes model requirements and recommends optimal instance types and configurations for inference. The job runs benchmarks to determine latency, throughput, and cost characteristics. Recommendations help users optimize inference deployments for performance and cost efficiency.

  • CreateModel: Creates a model resource that references trained model artifacts and specifies container images for inference. The model defines how predictions should be generated from input data. This resource is a prerequisite for deploying models to endpoints or batch transform jobs.

  • CreateTransformJob: Creates a batch job that generates predictions for a dataset using a trained model. The job processes files from S3, runs inference, and writes results back to S3. Transform jobs are ideal for offline inference scenarios with large datasets.

SageMaker Processing

SageMaker Processing provides managed infrastructure for data processing, feature engineering, and model evaluation tasks. It allows data scientists to run custom code in containers without managing the underlying infrastructure. Processing jobs automatically provision resources, execute processing scripts, and clean up after completion. The service integrates with data sources like S3 and can be incorporated into ML pipelines for end-to-end automation. Processing jobs can be scaled across multiple instances for handling large datasets efficiently.

  • CreateProcessingJob: Creates a job that performs data preprocessing, feature engineering, or model evaluation tasks. The job provisions resources, executes processing code in containers, and stores the results. Processing jobs provide a managed environment for running data science workloads outside of notebooks.

SageMaker Pipelines

SageMaker Pipelines is a service for building, automating, and managing end-to-end ML workflows. It provides a domain-specific language for defining pipeline steps, dependencies, and conditions. Pipelines automatically track metadata about data, models, and parameters for reproducibility and governance. It integrates with SageMaker features like training, processing, and model registry for comprehensive workflow support. Pipelines enable continuous integration and continuous delivery (CI/CD) practices for machine learning applications.

  • CreateAction: Creates an action within the SageMaker ML workflow system, typically used in pipelines or projects. Actions define specific operations that can be performed, such as approving a model deployment. This resource enables governance and control points within automated ML workflows.

  • CreateArtifact: Creates an artifact that represents data, models, or other assets in the ML workflow system. Artifacts track metadata about their creation, lineage, and usage within workflows. This enables traceability and reproducibility across the ML lifecycle.

  • CreateContext: Creates a context that groups related entities (like models, datasets, and jobs) in the ML workflow system. Contexts provide a way to organize and understand relationships between different ML resources. This resource helps manage complex workflows with many interdependent components.

  • CreatePipeline: Creates a workflow definition that automates end-to-end machine learning processes. The pipeline consists of steps for data processing, training, evaluation, and deployment with defined dependencies. Pipelines enable repeatable, auditable ML workflows with consistent execution.

SageMaker Feature Store

SageMaker Feature Store is a purpose-built repository for storing, sharing, and managing features for machine learning models. It provides a centralized location for feature definitions and values, enabling feature reuse across teams and projects. Feature Store supports both online serving for low-latency prediction and offline storage for training. It maintains feature consistency between training and inference to prevent training-serving skew. Feature Store tracks feature lineage and metadata for governance and compliance requirements.

  • CreateFeatureGroup: Creates a logical collection of features with their definitions, types, and configurations in Feature Store. The feature group defines how features are stored, accessed, and maintained over time. Feature groups enable organized management of features used in model development and inference.

SageMaker Model Registry

SageMaker Model Registry provides a centralized repository for managing model versions and their deployment approvals. It maintains a catalog of registered models with metadata about their training, performance, and approval status. Model Registry supports governance workflows with model versioning and approval gates. It enables traceability by tracking which model versions are deployed to which endpoints. Model Registry integrates with CI/CD pipelines for automated model deployment based on approval status.

  • CreateModelPackage: Creates a versioned package containing model artifacts, inference code, and associated metadata. The package captures everything needed to deploy the model to endpoints or transform jobs. Model packages enable standardized model deployment with consistent configurations.

  • CreateModelPackageGroup: Creates a group that organizes related model packages into a logical collection. The group maintains multiple versions of a model, tracking its evolution over time. Model package groups facilitate model governance with version control and deployment approvals.

SageMaker MLOps

SageMaker MLOps provides tools and services for implementing machine learning operations practices. It enables automated workflows for model development, testing, and deployment with proper governance. MLOps features support experiment tracking, model versioning, and lineage tracking for reproducibility. It includes project templates for standardizing ML workflows based on industry best practices. SageMaker MLOps facilitates collaboration between data scientists, ML engineers, and operations teams throughout the model lifecycle.

  • CreateExperiment: Creates an experiment that organizes machine learning trials for systematic comparison and tracking. Experiments provide a structure for organizing related model training attempts with different configurations. This resource enables scientific experimentation practices in model development.

  • CreateModelCard: Creates a document that contains comprehensive information about a model, including its intended use, limitations, and performance characteristics. Model cards promote transparency and responsible AI by documenting model properties. They serve as living documentation that evolves with the model throughout its lifecycle.

  • CreateModelCardExportJob: Creates a job that exports a model card to formats suitable for sharing or reporting. The export job can produce PDFs or other structured formats from model card content. This enables sharing model documentation with stakeholders outside the SageMaker environment.

  • CreateProject: Creates an MLOps project that provisions resources and CI/CD pipelines based on templates. Projects provide standardized structures for ML workflows with source control integration. This resource enables teams to follow consistent development and deployment practices.

  • CreateTrial: Creates a trial within an experiment that represents a specific model training attempt. The trial tracks parameters, metrics, and artifacts from the training process. Trials allow for systematic comparison of different approaches within an experiment.

  • CreateTrialComponent: Creates a component within a trial that represents a specific job or step. Components can include training jobs, processing jobs, or transform jobs with their associated metadata. Trial components provide granular tracking of individual elements that make up a complete trial.

SageMaker Edge Manager

SageMaker Edge Manager enables model deployment and management on edge devices with limited computational resources. It optimizes models for edge deployment with techniques like quantization and pruning. Edge Manager provides fleet management capabilities for monitoring and updating models across distributed devices. It includes a runtime that securely executes models on edge devices and captures prediction data. Edge Manager supports over-the-air updates to continuously improve models based on new data.

  • CreateDeviceFleet: Creates a logical group of edge devices for deploying and managing machine learning models. The fleet tracks device metadata, deployment status, and sample data collection. Device fleets enable centralized management of models across distributed edge devices.

  • CreateEdgeDeploymentPlan: Creates a plan that defines how models are deployed to edge device fleets. The plan specifies which models go to which devices with staged rollout strategies. Edge deployment plans provide controlled, systematic model updates across device fleets.

  • CreateEdgeDeploymentStage: Creates a stage within an edge deployment plan that defines a specific deployment phase. Stages can target subsets of devices with different configurations or timing. This enables phased rollouts with validation at each stage before proceeding.

  • CreateEdgePackagingJob: Creates a job that packages a model for deployment to edge devices. The job optimizes and compiles the model for specific edge runtime environments. Edge packaging ensures models are properly formatted for efficient execution on resource-constrained devices.

SageMaker Model Monitor

SageMaker Model Monitor provides automated monitoring capabilities for deployed machine learning models. It detects deviations in model performance, data quality, bias, and explainability over time. Model Monitor compares production metrics against baselines established during training. It generates alerts when models drift beyond acceptable thresholds to trigger remediation. Model Monitor includes pre-built monitors for common scenarios while supporting custom monitoring solutions.

  • CreateDataQualityJobDefinition: Creates a definition for monitoring the quality of data sent to a model endpoint. The definition specifies constraints, analysis configurations, and monitoring schedules. Data quality monitoring detects when incoming data drifts from the training distribution.

  • CreateModelBiasJobDefinition: Creates a definition for monitoring bias in model predictions over time. The definition specifies sensitive attributes, bias metrics, and analysis configurations. Bias monitoring helps ensure models maintain fairness as they operate in production.

  • CreateModelExplainabilityJobDefinition: Creates a definition for monitoring changes in feature attribution and model explainability. The definition specifies explanation techniques, analysis configurations, and thresholds. Explainability monitoring helps detect when model decision-making patterns change unexpectedly.

  • CreateModelQualityJobDefinition: Creates a definition for monitoring prediction quality metrics of a deployed model. The definition specifies quality metrics, ground truth sources, and analysis configurations. Quality monitoring tracks model performance degradation in production environments.

  • CreateMonitoringSchedule: Creates a schedule that runs monitoring jobs at specified intervals for deployed models. The schedule defines when data quality, bias, explainability, or quality monitors execute. Monitoring schedules automate the continuous evaluation of models in production.

SageMaker Ground Truth

SageMaker Ground Truth provides tools and workflows for creating high-quality labeled datasets for machine learning. It supports various labeling tasks including image classification, object detection, text analysis, and more. Ground Truth combines human labelers with automated labeling to increase efficiency and reduce costs. It includes built-in workflows for distributing tasks to private workforces, Amazon Mechanical Turk, or vendor partners. Ground Truth continuously improves labeling efficiency by learning from human annotations.

  • CreateFlowDefinition: Creates a workflow definition for a human review process, specifying tasks, UIs, and worker assignments. The definition includes quality control settings, completion criteria, and output configurations. Flow definitions standardize the human labeling process for consistent dataset creation.

  • CreateHumanTaskUi: Creates a user interface template that workers use to complete labeling or review tasks. The UI includes instructions, tools, and interactive elements specific to the labeling task. Human task UIs provide tailored interfaces for different annotation requirements.

  • CreateLabelingJob: Creates a job that generates labeled datasets using human annotators, automated labeling, or both. The job distributes tasks to workers, collects labels, and produces the final labeled dataset. Labeling jobs are essential for creating the ground truth data needed for supervised learning.

  • CreateWorkforce: Creates a workforce resource representing a group of workers who can perform labeling tasks. Workforces can be private teams, vendor-managed groups, or public Amazon Mechanical Turk workers. This resource manages the human resources available for labeling and review tasks.

  • CreateWorkteam: Creates a team of workers within a workforce for specific labeling projects. Work teams have defined membership, permissions, and payment configurations. Teams enable organization of workers based on skills or project requirements.

SageMaker Neo

SageMaker Neo is a capability that compiles machine learning models for optimized deployment across diverse hardware targets. It automatically optimizes models for specific hardware architectures including CPUs, GPUs, and custom accelerators. Neo converts models from frameworks like TensorFlow and PyTorch into optimized runtime formats. It improves performance by applying hardware-specific optimizations that reduce latency and increase throughput. Neo-compiled models run on cloud instances, edge devices, or embedded systems with consistent performance.

  • CreateCompilationJob: Creates a job that compiles a trained model for optimized performance on specific target hardware. The job translates the model into an optimized format for CPUs, GPUs, or specialized accelerators. Compilation jobs improve inference performance by applying hardware-specific optimizations.

  • CreateOptimizationJob: Creates a job that further optimizes compiled models for specific deployment scenarios. The job applies techniques like quantization, pruning, and tensor fusion for improved efficiency. Optimization jobs enhance model performance beyond standard compilation for specialized requirements.

SageMaker Hubs

SageMaker Hubs provides a centralized platform for discovering, sharing, and managing machine learning resources across an organization. Hubs enable cross-team collaboration by providing a common repository of models, algorithms, and templates. They support governance through controlled access and standardized resource sharing. Hubs include discoverability features to help teams find and leverage existing ML assets. They reduce redundancy by promoting reuse of proven ML components.

  • CreateHub: Creates a hub that serves as a central repository for sharing machine learning resources across an organization. The hub provides discovery, access control, and metadata management for shared resources. Hubs enable collaboration by making ML assets findable and reusable across teams.

  • CreateHubContentReference: Creates a reference to content within a hub, allowing it to be discovered and used by authorized users. The reference includes metadata, versioning information, and usage instructions. Content references enable organized sharing of ML assets through the hub infrastructure.

SageMaker MLflow

SageMaker MLflow provides a managed implementation of the open-source MLflow platform for experiment tracking and model management. It offers a centralized location for logging parameters, metrics, and artifacts during model development. MLflow integration provides reproducibility by tracking all components of experiments and models. It simplifies model deployment by packaging models with their dependencies and runtime requirements. SageMaker MLflow enables seamless transitions between local development and cloud-based training.

  • CreateMlflowTrackingServer: Creates a managed MLflow tracking server for experiment tracking and model registry. The server provides centralized storage for experiment metrics, parameters, and artifacts. MLflow tracking servers enable organized experiment management with open-source MLflow compatibility.

  • CreatePresignedMlflowTrackingServerUrl: Creates a pre-signed URL for accessing the MLflow tracking server interface. The URL provides temporary, secure access without requiring AWS console login. This enables easy access to MLflow UI for experiment visualization and comparison.

SageMaker Partners

SageMaker Partners enables integration with third-party solutions that extend SageMaker's native capabilities. It provides a framework for incorporating partner solutions into the SageMaker workflow. Partner integrations can enhance SageMaker with specialized algorithms, tools, and services. Partners solutions are accessible through a consistent interface within the SageMaker ecosystem. This component builds an extensive ecosystem of ML tools around the core SageMaker platform.

  • CreatePartnerApp: Creates an application that integrates a third-party partner solution with SageMaker. The app provisions necessary resources and establishes connections between SageMaker and partner systems. Partner apps extend SageMaker capabilities with specialized third-party solutions.

  • CreatePartnerAppPresignedUrl: Creates a pre-signed URL for accessing a partner application's interface. The URL provides secure, temporary access to the partner solution without separate authentication. This enables seamless transitions between SageMaker and integrated partner tools.

SageMaker Code Repository

SageMaker Code Repository provides integration with Git-based source control systems for version control of notebooks and scripts. It enables data scientists to use familiar Git workflows while developing in SageMaker environments. Code repositories ensure that code changes are tracked, versioned, and can be collaboratively developed. They support best practices for software development in machine learning projects. Code repositories can be linked to CI/CD pipelines for automated testing and deployment.

  • CreateCodeRepository: Creates a link between SageMaker and a Git repository for source control of notebooks and code. The repository can be hosted on GitHub, AWS CodeCommit, or other Git providers. Code repositories enable version control best practices for ML development.