sagemaker 2.254.1__tar.gz → 2.254.2.dev0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/PKG-INFO +4 -3
- sagemaker-2.254.2.dev0/VERSION +1 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/pyproject.toml +2 -2
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/requirements/extras/test_requirements.txt +2 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/__init__.py +1 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/chainer/model.py +8 -1
- sagemaker-2.254.2.dev0/src/sagemaker/container_base_model.py +52 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/estimator.py +7 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/huggingface/llm_utils.py +8 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/huggingface/model.py +8 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-neuronx.json +90 -2
- sagemaker-2.254.2.dev0/src/sagemaker/image_uri_config/huggingface-vllm-neuronx.json +38 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uris.py +6 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model.py +12 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/model_trainer.py +15 -7
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/sm_recipes/utils.py +80 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mxnet/model.py +8 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pipeline.py +9 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/estimator.py +138 -10
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/model.py +8 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_format/mlflow/utils.py +1 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/session.py +23 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/sklearn/model.py +8 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/model.py +8 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/_utils.py +9 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/conditions.py +1 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/step_collections.py +7 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/xgboost/model.py +8 -1
- sagemaker-2.254.1/VERSION +0 -1
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/.gitignore +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/LICENSE.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/NOTICE.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/README.rst +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/hatch_build.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/requirements/extras/feature-processor_requirements.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/requirements/extras/huggingface_requirements.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/requirements/extras/local_requirements.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/requirements/extras/sagemaker-mlflow_requirements.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/requirements/extras/scipy_requirements.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/_studio.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/accept_types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/algorithm.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/README.rst +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/amazon_estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/common.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/factorization_machines.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/hyperparameter.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/ipinsights.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/kmeans.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/knn.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/lda.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/linear_learner.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/ntm.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/object2vec.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/pca.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/randomcutforest.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/record.proto +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/record_pb2.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amazon/validation.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amtviz/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amtviz/job_metrics.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/amtviz/visualization.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/analytics.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/apiutils/.pydocstylerc +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/apiutils/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/apiutils/_base_types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/apiutils/_boto_functions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/apiutils/_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/async_inference/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/async_inference/async_inference_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/async_inference/async_inference_response.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/async_inference/waiter_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/automl/README.rst +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/automl/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/automl/automl.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/automl/automlv2.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/automl/candidate_estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/aws_batch/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/aws_batch/batch_api_helper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/aws_batch/boto_client.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/aws_batch/constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/aws_batch/exception.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/aws_batch/training_queue.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/aws_batch/training_queued_job.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/base_deserializers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/base_predictor.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/base_serializers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/batch_inference/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/batch_inference/batch_transform_inference_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/chainer/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/chainer/defaults.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/chainer/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/clarify.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/ast_transformer.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/files.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/airflow.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/deprecated_params.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/framework_version.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/image_uris.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/matching.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/modifier.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/parsing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/predictors.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/renamed_params.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/serde.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/tf_legacy_mode.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/tfs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/training_input.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/modifiers/training_params.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/compatibility/v2/sagemaker_upgrade_v2.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/cli/framework_upgrade.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/collection.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/compute_resource_requirements/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/compute_resource_requirements/resource_requirements.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/config/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/config/config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/config/config_schema.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/config/config_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/content_types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/dataset_definition/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/dataset_definition/inputs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/debugger.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/framework_profile.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/metrics_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/profiler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/profiler_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/profiler_constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/debugger/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/deprecations.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/deserializers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/djl_inference/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/djl_inference/djl_predictor.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/djl_inference/model.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/drift_check_baselines.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/enums.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/environment_variables.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/exceptions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/_api_types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/_environment.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/_helper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/_metrics.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/_run_context.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/experiment.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/run.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/trial.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/experiments/trial_component.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/explainer/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/explainer/clarify_explainer_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/explainer/explainer_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/dataset_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_definition.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_group.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_config_uploader.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_data_source.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_enums.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_env.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_event_bridge_rule_helper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_event_bridge_scheduler_helper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_exceptions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_factory.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_feature_processor_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_feature_processor_pipeline_events.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_input_loader.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_input_offset_parser.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_params_loader.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_spark_factory.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_udf_arg_provider.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_udf_output_receiver.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_udf_wrapper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/_validation.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/feature_processor.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/feature_scheduler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_feature_group_contexts.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_feature_group_lineage_entity_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_feature_processor_lineage.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_feature_processor_lineage_name_helper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_lineage_association_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_pipeline_lineage_entity_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_pipeline_schedule.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_pipeline_trigger.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_pipeline_version_lineage_entity_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_s3_lineage_entity_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/_transformation_code.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_processor/lineage/constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_store.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/feature_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/feature_store/inputs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/fw_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/git_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/huggingface/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/huggingface/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/huggingface/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/huggingface/training_compiler/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/huggingface/training_compiler/config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/hyperparameters.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/autogluon.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/blazingtext.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/chainer.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/clarify.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/coach-mxnet.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/coach-tensorflow.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/data-wrangler.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/debugger.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/detailed-profiler.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/djl-deepspeed.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/djl-fastertransformer.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/djl-lmi.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/djl-neuronx.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/djl-tensorrtllm.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/factorization-machines.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/forecasting-deepar.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-llm-neuronx.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-llm.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-neuron.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-tei-cpu.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-tei.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-training-compiler.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/hyperpod-recipes-neuron.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/image-classification-neo.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/image-classification.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/inferentia-mxnet.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/inferentia-pytorch.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/inferentia-tensorflow.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/instance_gpu_info.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/ipinsights.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/kmeans.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/knn.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/lda.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/linear-learner.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/model-monitor.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/mxnet.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/neo-mxnet.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/neo-pytorch.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/neo-tensorflow.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/ntm.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/object-detection.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/object2vec.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/pca.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/pytorch-neuron.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/pytorch-smp.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/pytorch-training-compiler.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/pytorch.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/randomcutforest.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/ray-pytorch.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/ray-tensorflow.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/sagemaker-base-python.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/sagemaker-distribution.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/sagemaker-geospatial.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/sagemaker-tritonserver.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/semantic-segmentation.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/seq2seq.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/sklearn.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/spark.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/sparkml-serving.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/stabilityai.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/tensorflow.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/vw.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/xgboost-neo.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/xgboost.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/inference_recommender/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/inference_recommender/inference_recommender_mixin.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/inputs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/instance_group.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/instance_types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/instance_types_gpu_info.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/interactive_apps/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/interactive_apps/base_interactive_app.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/interactive_apps/detail_profiler_app.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/interactive_apps/tensorboard.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/iterators.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/job.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/accessors.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/environment_variables.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/hyperparameters.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/image_uris.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/incremental_training.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/instance_types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/kwargs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/metric_definitions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/model_packages.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/model_uris.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/payloads.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/predictors.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/resource_names.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/resource_requirements.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/artifacts/script_uris.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/cache.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/enums.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/exceptions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/factory/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/factory/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/factory/model.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/factory/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/filters.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/hub.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/interfaces.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/parser_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/parsers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/hub/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/model.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/notebook_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/parameters.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/payload_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/region_config.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/session_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/jumpstart/validators.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lambda_helper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/.pydocstylerc +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/_api_types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/action.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/artifact.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/association.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/context.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/lineage_trial_component.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/query.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/lineage/visualizer.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/data.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/entities.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/exceptions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/image.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/local_session.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/pipeline.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/local/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/logs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/metadata_properties.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/metric_definitions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mlflow/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mlflow/forward_sagemaker_metrics.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mlflow/tracking_server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_card/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_card/evaluation_metric_parsers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_card/helpers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_card/model_card.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_card/schema_constraints.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_life_cycle.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_metrics.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/clarify_model_monitoring.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/cron_expression_generator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/data_capture_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/data_quality_monitoring_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/dataset_format.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/model_monitoring.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/monitoring_alert.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_monitor/monitoring_files.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/model_uris.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/configs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/distributed.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/local_core/local_container.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/templates.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/common/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/common/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/distributed_drivers/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/distributed_drivers/basic_script_driver.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/distributed_drivers/mpi_driver.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/distributed_drivers/mpi_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/distributed_drivers/torchrun_driver.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/scripts/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/container_drivers/scripts/environment.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/sm_recipes/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/sm_recipes/training_recipes.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/multidatamodel.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mxnet/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mxnet/defaults.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mxnet/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/mxnet/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/network.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/parameter.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/partner_app/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/partner_app/auth_provider.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/partner_app/auth_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/payloads.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/predictor.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/predictor_async.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/py.typed +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/defaults.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/training_compiler/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/training_compiler/config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/pytorch/training_recipes.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/checkpoint_location.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/client.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/core/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/core/_custom_dispatch_table.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/core/pipeline_variables.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/core/serialization.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/core/stored_function.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/custom_file_filter.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/errors.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/invoke_function.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/job.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/logging_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/runtime_environment/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/runtime_environment/bootstrap_runtime_environment.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/runtime_environment/mpi_utils_remote.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/runtime_environment/runtime_environment_manager.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/runtime_environment/spark_app.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/remote_function/spark_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/resource_requirements.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/rl/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/rl/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/s3.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/s3_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/script_uris.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serializer_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serializers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/djl_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/jumpstart_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/model_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/requirements_manager.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/schema_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/serve_settings.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/tei_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/tf_serving_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/tgi_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/transformers_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/builder/triton_schema_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/detector/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/detector/dependency_manager.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/detector/image_detector.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/detector/pickle_dependencies.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/detector/pickler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/marshalling/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/marshalling/custom_payload_translator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/marshalling/triton_translator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/mode/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/mode/function_pointers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/mode/in_process_mode.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/mode/local_container_mode.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/mode/sagemaker_endpoint_mode.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_format/mlflow/constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/djl_serving/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/djl_serving/prepare.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/djl_serving/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/djl_serving/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/in_process_model_server/app.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/in_process_model_server/in_process_server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/multi_model_server/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/multi_model_server/inference.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/multi_model_server/prepare.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/multi_model_server/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/smd/custom_execution_inference.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/smd/prepare.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/smd/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tei/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tei/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tensorflow_serving/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tensorflow_serving/inference.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tensorflow_serving/prepare.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tensorflow_serving/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tgi/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tgi/prepare.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tgi/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/tgi/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/torchserve/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/torchserve/inference.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/torchserve/prepare.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/torchserve/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/torchserve/xgboost_inference.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/triton/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/triton/config_template.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/triton/model.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/triton/pack_conda_env.sh +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/triton/server.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/model_server/triton/triton_builder.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/metadata/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/metadata/metadata.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/save/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/save/framework/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/save/framework/framework_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/save/framework/pytorch_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/save/framework/xgboost_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/save/save_handler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/save_retrive/version_1_0_0/save/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/schema/task.json +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/spec/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/spec/inference_base.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/spec/inference_spec.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/conda_in_process.yml +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/exceptions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/hardware_detector.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/hf_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/in_process_requirements.txt +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/lineage_constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/lineage_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/local_hardware.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/logging_agent.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/optimize_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/predictors.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/task.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/telemetry_logger.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/tuning.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/types.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/utils/uploader.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/validations/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/validations/check_image_and_hardware_type.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/validations/check_image_uri.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/validations/check_integrity.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/validations/optimization.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serve/validations/parse_registry_accounts.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serverless/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serverless/model.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serverless/predictor.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/serverless/serverless_inference_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/session_settings.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/sklearn/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/sklearn/defaults.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/sklearn/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/sklearn/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/spark/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/spark/defaults.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/spark/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/sparkml/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/sparkml/model.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/stabilityai/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/stabilityai/stability_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/telemetry/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/telemetry/constants.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/telemetry/telemetry_logging.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/defaults.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/serving.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/training_compiler/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tensorflow/training_compiler/config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/training_compiler/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/training_compiler/config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/transformer.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/tuner.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/user_agent.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/utilities/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/utilities/cache.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/utilities/search_expression.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/vpc_utils.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/_event_bridge_client_helper.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/_repack_model.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/_steps_compiler.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/airflow.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/automl_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/callback_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/check_job_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/clarify_check_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/condition_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/emr_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/entities.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/execution_variables.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/fail_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/function_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/functions.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/lambda_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/model_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/monitor_batch_transform_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/notebook_job_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/parallelism_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/parameters.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/pipeline.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/pipeline_context.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/pipeline_definition_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/pipeline_experiment_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/properties.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/quality_check_step.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/retry.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/selective_execution_config.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/step_outputs.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/steps.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/triggers.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/workflow/utilities.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/wrangler/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/wrangler/ingestion.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/wrangler/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/xgboost/README.rst +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/xgboost/__init__.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/xgboost/defaults.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/xgboost/estimator.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/xgboost/processing.py +0 -0
- {sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/xgboost/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: sagemaker
|
|
3
|
-
Version: 2.254.
|
|
3
|
+
Version: 2.254.2.dev0
|
|
4
4
|
Summary: Open source library for training and deploying models on Amazon SageMaker.
|
|
5
5
|
Project-URL: Homepage, https://github.com/aws/sagemaker-python-sdk
|
|
6
6
|
Author: Amazon Web Services
|
|
@@ -16,7 +16,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
17
17
|
Requires-Python: >=3.9
|
|
18
18
|
Requires-Dist: attrs<26,>=24
|
|
19
|
-
Requires-Dist: boto3<2.0,>=1.
|
|
19
|
+
Requires-Dist: boto3<2.0,>=1.42.2
|
|
20
20
|
Requires-Dist: cloudpickle>=2.2.1
|
|
21
21
|
Requires-Dist: docker
|
|
22
22
|
Requires-Dist: fastapi
|
|
@@ -34,7 +34,7 @@ Requires-Dist: protobuf<6.32,>=3.12
|
|
|
34
34
|
Requires-Dist: psutil
|
|
35
35
|
Requires-Dist: pyyaml>=6.0.1
|
|
36
36
|
Requires-Dist: requests
|
|
37
|
-
Requires-Dist: sagemaker-core<2.0.0,>=1.0.
|
|
37
|
+
Requires-Dist: sagemaker-core<2.0.0,>=1.0.71
|
|
38
38
|
Requires-Dist: schema
|
|
39
39
|
Requires-Dist: smdebug-rulesconfig==1.0.1
|
|
40
40
|
Requires-Dist: tblib<4,>=1.7.0
|
|
@@ -89,6 +89,7 @@ Requires-Dist: fastapi==0.115.4; extra == 'test'
|
|
|
89
89
|
Requires-Dist: fastapi>=0.111.0; extra == 'test'
|
|
90
90
|
Requires-Dist: flake8==7.1.2; extra == 'test'
|
|
91
91
|
Requires-Dist: flask-limiter==3.11; extra == 'test'
|
|
92
|
+
Requires-Dist: google-re2<1.1.20250805; (python_version < '3.10') and extra == 'test'
|
|
92
93
|
Requires-Dist: huggingface-hub==0.26.2; extra == 'test'
|
|
93
94
|
Requires-Dist: jinja2==3.1.6; extra == 'test'
|
|
94
95
|
Requires-Dist: jsonpickle<4.0.0; extra == 'test'
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
2.254.2.dev0
|
|
@@ -32,7 +32,7 @@ classifiers = [
|
|
|
32
32
|
]
|
|
33
33
|
dependencies = [
|
|
34
34
|
"attrs>=24,<26",
|
|
35
|
-
"boto3>=1.
|
|
35
|
+
"boto3>=1.42.2,<2.0",
|
|
36
36
|
"cloudpickle>=2.2.1",
|
|
37
37
|
"docker",
|
|
38
38
|
"fastapi",
|
|
@@ -49,7 +49,7 @@ dependencies = [
|
|
|
49
49
|
"psutil",
|
|
50
50
|
"PyYAML>=6.0.1",
|
|
51
51
|
"requests",
|
|
52
|
-
"sagemaker-core>=1.0.
|
|
52
|
+
"sagemaker-core>=1.0.71,<2.0.0",
|
|
53
53
|
"schema",
|
|
54
54
|
"smdebug_rulesconfig==1.0.1",
|
|
55
55
|
"tblib>=1.7.0,<4",
|
|
@@ -48,6 +48,7 @@ from sagemaker.algorithm import AlgorithmEstimator # noqa: F401
|
|
|
48
48
|
from sagemaker.analytics import TrainingJobAnalytics, HyperparameterTuningJobAnalytics # noqa: F401
|
|
49
49
|
from sagemaker.local.local_session import LocalSession # noqa: F401
|
|
50
50
|
|
|
51
|
+
from sagemaker.container_base_model import ContainerBaseModel # noqa: F401
|
|
51
52
|
from sagemaker.model import Model, ModelPackage # noqa: F401
|
|
52
53
|
from sagemaker.model_metrics import ModelMetrics, MetricsSource, FileSource # noqa: F401
|
|
53
54
|
from sagemaker.pipeline import PipelineModel # noqa: F401
|
|
@@ -17,7 +17,7 @@ import logging
|
|
|
17
17
|
from typing import Callable, Optional, Union, List, Dict
|
|
18
18
|
|
|
19
19
|
import sagemaker
|
|
20
|
-
from sagemaker import image_uris, ModelMetrics
|
|
20
|
+
from sagemaker import image_uris, ModelMetrics, ContainerBaseModel
|
|
21
21
|
from sagemaker.drift_check_baselines import DriftCheckBaselines
|
|
22
22
|
from sagemaker.fw_utils import (
|
|
23
23
|
model_code_key_prefix,
|
|
@@ -182,6 +182,8 @@ class ChainerModel(FrameworkModel):
|
|
|
182
182
|
source_uri: Optional[Union[str, PipelineVariable]] = None,
|
|
183
183
|
model_card: Optional[Union[ModelPackageModelCard, ModelCard]] = None,
|
|
184
184
|
model_life_cycle: Optional[ModelLifeCycle] = None,
|
|
185
|
+
model_package_registration_type: Optional[Union[str, PipelineVariable]] = None,
|
|
186
|
+
base_model: Optional[ContainerBaseModel] = None,
|
|
185
187
|
):
|
|
186
188
|
"""Creates a model package for creating SageMaker models or listing on Marketplace.
|
|
187
189
|
|
|
@@ -236,6 +238,9 @@ class ChainerModel(FrameworkModel):
|
|
|
236
238
|
model_card (ModeCard or ModelPackageModelCard): document contains qualitative and
|
|
237
239
|
quantitative information about a model (default: None).
|
|
238
240
|
model_life_cycle (ModelLifeCycle): ModelLifeCycle object (default: None).
|
|
241
|
+
model_package_registration_type (str or PipelineVariable): Model Package Registration
|
|
242
|
+
Type (default: None).
|
|
243
|
+
base_model (ContainerBaseModel): ContainerBaseModel object (default: None).
|
|
239
244
|
|
|
240
245
|
Returns:
|
|
241
246
|
str: A string of SageMaker Model Package ARN.
|
|
@@ -278,6 +283,8 @@ class ChainerModel(FrameworkModel):
|
|
|
278
283
|
source_uri=source_uri,
|
|
279
284
|
model_card=model_card,
|
|
280
285
|
model_life_cycle=model_life_cycle,
|
|
286
|
+
model_package_registration_type=model_package_registration_type,
|
|
287
|
+
base_model=base_model,
|
|
281
288
|
)
|
|
282
289
|
|
|
283
290
|
def prepare_container_def(
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License"). You
|
|
4
|
+
# may not use this file except in compliance with the License. A copy of
|
|
5
|
+
# the License is located at
|
|
6
|
+
#
|
|
7
|
+
# http://aws.amazon.com/apache2.0/
|
|
8
|
+
#
|
|
9
|
+
# or in the "license" file accompanying this file. This file is
|
|
10
|
+
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
|
|
11
|
+
# ANY KIND, either express oXr implied. See the License for the specific
|
|
12
|
+
# language governing permissions and limitations under the License.
|
|
13
|
+
"""This file contains code related to base model for containers."""
|
|
14
|
+
from __future__ import absolute_import
|
|
15
|
+
|
|
16
|
+
from typing import Optional, Union
|
|
17
|
+
|
|
18
|
+
from sagemaker.workflow.entities import PipelineVariable
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class ContainerBaseModel(object):
|
|
22
|
+
"""Accepts Base Model parameters for conversion to request dict."""
|
|
23
|
+
|
|
24
|
+
def __init__(
|
|
25
|
+
self,
|
|
26
|
+
hub_content_name: Union[str, PipelineVariable] = None,
|
|
27
|
+
hub_content_version: Optional[Union[str, PipelineVariable]] = None,
|
|
28
|
+
recipe_name: Optional[Union[str, PipelineVariable]] = None,
|
|
29
|
+
):
|
|
30
|
+
"""Initialize a ``ContainerBaseModel`` instance and turn parameters into dict.
|
|
31
|
+
|
|
32
|
+
Args:
|
|
33
|
+
hub_content_name (str or PipelineVariable): The hub content name
|
|
34
|
+
hub_content_version (str or PipelineVariable): The hub content version
|
|
35
|
+
(default: None)
|
|
36
|
+
recipe_name (str or PipelineVariable): The Recipe name
|
|
37
|
+
(default: None)
|
|
38
|
+
"""
|
|
39
|
+
self.hub_content_name = hub_content_name
|
|
40
|
+
self.hub_content_version = hub_content_version
|
|
41
|
+
self.recipe_name = recipe_name
|
|
42
|
+
|
|
43
|
+
def _to_request_dict(self):
|
|
44
|
+
"""Generates a request dictionary using the parameters provided to the class."""
|
|
45
|
+
base_model_request = {}
|
|
46
|
+
if self.hub_content_name is not None:
|
|
47
|
+
base_model_request["HubContentName"] = self.hub_content_name
|
|
48
|
+
if self.hub_content_version is not None:
|
|
49
|
+
base_model_request["HubContentVersion"] = self.hub_content_version
|
|
50
|
+
if self.recipe_name is not None:
|
|
51
|
+
base_model_request["RecipeName"] = self.recipe_name
|
|
52
|
+
return base_model_request
|
|
@@ -1817,6 +1817,8 @@ class EstimatorBase(with_metaclass(ABCMeta, object)): # pylint: disable=too-man
|
|
|
1817
1817
|
source_uri=None,
|
|
1818
1818
|
model_life_cycle=None,
|
|
1819
1819
|
model_card=None,
|
|
1820
|
+
model_package_registration_type=None,
|
|
1821
|
+
base_model=None,
|
|
1820
1822
|
**kwargs,
|
|
1821
1823
|
):
|
|
1822
1824
|
"""Creates a model package for creating SageMaker models or listing on Marketplace.
|
|
@@ -1868,6 +1870,9 @@ class EstimatorBase(with_metaclass(ABCMeta, object)): # pylint: disable=too-man
|
|
|
1868
1870
|
model_card (ModeCard or ModelPackageModelCard): document contains qualitative and
|
|
1869
1871
|
quantitative information about a model (default: None).
|
|
1870
1872
|
model_life_cycle (ModelLifeCycle): ModelLifeCycle object (default: None).
|
|
1873
|
+
model_package_registration_type (str): Model Package Registration
|
|
1874
|
+
Type (default: None).
|
|
1875
|
+
base_model (ContainerBaseModel): ContainerBaseModel object (default: None).
|
|
1871
1876
|
**kwargs: Passed to invocation of ``create_model()``. Implementations may customize
|
|
1872
1877
|
``create_model()`` to accept ``**kwargs`` to customize model creation during
|
|
1873
1878
|
deploy. For more, see the implementation docs.
|
|
@@ -1924,6 +1929,8 @@ class EstimatorBase(with_metaclass(ABCMeta, object)): # pylint: disable=too-man
|
|
|
1924
1929
|
source_uri=source_uri,
|
|
1925
1930
|
model_card=model_card,
|
|
1926
1931
|
model_life_cycle=model_life_cycle,
|
|
1932
|
+
model_package_registration_type=model_package_registration_type,
|
|
1933
|
+
base_model=base_model,
|
|
1927
1934
|
)
|
|
1928
1935
|
|
|
1929
1936
|
@property
|
|
@@ -67,6 +67,14 @@ def get_huggingface_llm_image_uri(
|
|
|
67
67
|
image_scope="inference",
|
|
68
68
|
inference_tool="neuronx",
|
|
69
69
|
)
|
|
70
|
+
if backend == "huggingface-vllm-neuronx":
|
|
71
|
+
return image_uris.retrieve(
|
|
72
|
+
"huggingface-vllm-neuronx",
|
|
73
|
+
region=region,
|
|
74
|
+
version=version,
|
|
75
|
+
image_scope="inference",
|
|
76
|
+
inference_tool="neuronx",
|
|
77
|
+
)
|
|
70
78
|
if backend == "huggingface-tei":
|
|
71
79
|
return image_uris.retrieve(
|
|
72
80
|
"huggingface-tei",
|
|
@@ -17,7 +17,7 @@ import logging
|
|
|
17
17
|
from typing import Callable, Optional, Union, List, Dict
|
|
18
18
|
|
|
19
19
|
import sagemaker
|
|
20
|
-
from sagemaker import image_uris, ModelMetrics
|
|
20
|
+
from sagemaker import image_uris, ModelMetrics, ContainerBaseModel
|
|
21
21
|
from sagemaker.deserializers import JSONDeserializer
|
|
22
22
|
from sagemaker.drift_check_baselines import DriftCheckBaselines
|
|
23
23
|
from sagemaker.fw_utils import (
|
|
@@ -372,6 +372,8 @@ class HuggingFaceModel(FrameworkModel):
|
|
|
372
372
|
source_uri: Optional[Union[str, PipelineVariable]] = None,
|
|
373
373
|
model_life_cycle: Optional[ModelLifeCycle] = None,
|
|
374
374
|
model_card: Optional[Union[ModelPackageModelCard, ModelCard]] = None,
|
|
375
|
+
model_package_registration_type: Optional[Union[str, PipelineVariable]] = None,
|
|
376
|
+
base_model: Optional[ContainerBaseModel] = None,
|
|
375
377
|
):
|
|
376
378
|
"""Creates a model package for creating SageMaker models or listing on Marketplace.
|
|
377
379
|
|
|
@@ -427,6 +429,9 @@ class HuggingFaceModel(FrameworkModel):
|
|
|
427
429
|
model_card (ModeCard or ModelPackageModelCard): document contains qualitative and
|
|
428
430
|
quantitative information about a model (default: None).
|
|
429
431
|
model_life_cycle (ModelLifeCycle): ModelLifeCycle object (default: None).
|
|
432
|
+
model_package_registration_type (str or PipelineVariable): Model Package Registration
|
|
433
|
+
Type (default: None).
|
|
434
|
+
base_model (ContainerBaseModel): ContainerBaseModel object (default: None).
|
|
430
435
|
|
|
431
436
|
Returns:
|
|
432
437
|
A `sagemaker.model.ModelPackage` instance.
|
|
@@ -477,6 +482,8 @@ class HuggingFaceModel(FrameworkModel):
|
|
|
477
482
|
source_uri=source_uri,
|
|
478
483
|
model_life_cycle=model_life_cycle,
|
|
479
484
|
model_card=model_card,
|
|
485
|
+
model_package_registration_type=model_package_registration_type,
|
|
486
|
+
base_model=base_model,
|
|
480
487
|
)
|
|
481
488
|
|
|
482
489
|
def prepare_container_def(
|
{sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/image_uri_config/huggingface-neuronx.json
RENAMED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"4.36": "4.36.2",
|
|
10
10
|
"4.43": "4.43.2",
|
|
11
11
|
"4.48": "4.48.1",
|
|
12
|
-
"4.51": "4.51.0"
|
|
12
|
+
"4.51": "4.51.0",
|
|
13
|
+
"4.55": "4.55.4"
|
|
13
14
|
},
|
|
14
15
|
"versions": {
|
|
15
16
|
"4.28.1": {
|
|
@@ -272,6 +273,49 @@
|
|
|
272
273
|
"sdk2.24.1"
|
|
273
274
|
]
|
|
274
275
|
}
|
|
276
|
+
},
|
|
277
|
+
"4.55.4": {
|
|
278
|
+
"version_aliases": {
|
|
279
|
+
"pytorch2.7": "pytorch2.7.0"
|
|
280
|
+
},
|
|
281
|
+
"pytorch2.7.0": {
|
|
282
|
+
"py_versions": [
|
|
283
|
+
"py310"
|
|
284
|
+
],
|
|
285
|
+
"repository": "huggingface-pytorch-training-neuronx",
|
|
286
|
+
"registries": {
|
|
287
|
+
"ap-northeast-1": "763104351884",
|
|
288
|
+
"ap-south-1": "763104351884",
|
|
289
|
+
"ap-south-2": "772153158452",
|
|
290
|
+
"ap-southeast-1": "763104351884",
|
|
291
|
+
"ap-southeast-2": "763104351884",
|
|
292
|
+
"ap-southeast-4": "457447274322",
|
|
293
|
+
"ap-southeast-5": "550225433462",
|
|
294
|
+
"ap-southeast-7": "590183813437",
|
|
295
|
+
"cn-north-1": "727897471807",
|
|
296
|
+
"cn-northwest-1": "727897471807",
|
|
297
|
+
"eu-central-1": "763104351884",
|
|
298
|
+
"eu-central-2": "380420809688",
|
|
299
|
+
"eu-south-2": "503227376785",
|
|
300
|
+
"eu-west-1": "763104351884",
|
|
301
|
+
"eu-west-3": "763104351884",
|
|
302
|
+
"il-central-1": "780543022126",
|
|
303
|
+
"mx-central-1":"637423239942",
|
|
304
|
+
"sa-east-1": "763104351884",
|
|
305
|
+
"us-east-1": "763104351884",
|
|
306
|
+
"us-east-2": "763104351884",
|
|
307
|
+
"us-gov-east-1": "446045086412",
|
|
308
|
+
"us-gov-west-1": "442386744353",
|
|
309
|
+
"us-west-2": "763104351884",
|
|
310
|
+
"ca-west-1": "204538143572"
|
|
311
|
+
},
|
|
312
|
+
"container_version": {
|
|
313
|
+
"inf": "ubuntu22.04"
|
|
314
|
+
},
|
|
315
|
+
"sdk_versions": [
|
|
316
|
+
"sdk2.26.0"
|
|
317
|
+
]
|
|
318
|
+
}
|
|
275
319
|
}
|
|
276
320
|
}
|
|
277
321
|
},
|
|
@@ -284,7 +328,8 @@
|
|
|
284
328
|
"4.34": "4.34.1",
|
|
285
329
|
"4.36": "4.36.2",
|
|
286
330
|
"4.43": "4.43.2",
|
|
287
|
-
"4.51": "4.51.3"
|
|
331
|
+
"4.51": "4.51.3",
|
|
332
|
+
"4.55": "4.55.4"
|
|
288
333
|
},
|
|
289
334
|
"versions": {
|
|
290
335
|
"4.28.1": {
|
|
@@ -592,6 +637,49 @@
|
|
|
592
637
|
"sdk2.24.1"
|
|
593
638
|
]
|
|
594
639
|
}
|
|
640
|
+
},
|
|
641
|
+
"4.55.4": {
|
|
642
|
+
"version_aliases": {
|
|
643
|
+
"pytorch2.7": "pytorch2.7.1"
|
|
644
|
+
},
|
|
645
|
+
"pytorch2.7.1": {
|
|
646
|
+
"py_versions": [
|
|
647
|
+
"py310"
|
|
648
|
+
],
|
|
649
|
+
"repository": "huggingface-pytorch-inference-neuronx",
|
|
650
|
+
"registries": {
|
|
651
|
+
"ap-northeast-1": "763104351884",
|
|
652
|
+
"ap-south-1": "763104351884",
|
|
653
|
+
"ap-south-2": "772153158452",
|
|
654
|
+
"ap-southeast-1": "763104351884",
|
|
655
|
+
"ap-southeast-2": "763104351884",
|
|
656
|
+
"ap-southeast-4": "457447274322",
|
|
657
|
+
"ap-southeast-5": "550225433462",
|
|
658
|
+
"ap-southeast-7": "590183813437",
|
|
659
|
+
"cn-north-1": "727897471807",
|
|
660
|
+
"cn-northwest-1": "727897471807",
|
|
661
|
+
"eu-central-1": "763104351884",
|
|
662
|
+
"eu-central-2": "380420809688",
|
|
663
|
+
"eu-south-2": "503227376785",
|
|
664
|
+
"eu-west-1": "763104351884",
|
|
665
|
+
"eu-west-3": "763104351884",
|
|
666
|
+
"il-central-1": "780543022126",
|
|
667
|
+
"mx-central-1":"637423239942",
|
|
668
|
+
"sa-east-1": "763104351884",
|
|
669
|
+
"us-east-1": "763104351884",
|
|
670
|
+
"us-east-2": "763104351884",
|
|
671
|
+
"us-gov-east-1": "446045086412",
|
|
672
|
+
"us-gov-west-1": "442386744353",
|
|
673
|
+
"us-west-2": "763104351884",
|
|
674
|
+
"ca-west-1": "204538143572"
|
|
675
|
+
},
|
|
676
|
+
"container_version": {
|
|
677
|
+
"inf": "ubuntu22.04"
|
|
678
|
+
},
|
|
679
|
+
"sdk_versions": [
|
|
680
|
+
"sdk2.26.0"
|
|
681
|
+
]
|
|
682
|
+
}
|
|
595
683
|
}
|
|
596
684
|
}
|
|
597
685
|
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"inference": {
|
|
3
|
+
"processors": [
|
|
4
|
+
"inf2"
|
|
5
|
+
],
|
|
6
|
+
"version_aliases": {
|
|
7
|
+
"0.4": "0.4.1"
|
|
8
|
+
},
|
|
9
|
+
"versions": {
|
|
10
|
+
"0.4.1": {
|
|
11
|
+
"py_versions": [
|
|
12
|
+
"py310"
|
|
13
|
+
],
|
|
14
|
+
"registries": {
|
|
15
|
+
"ap-northeast-1": "763104351884",
|
|
16
|
+
"ap-south-1": "763104351884",
|
|
17
|
+
"ap-southeast-1": "763104351884",
|
|
18
|
+
"ap-southeast-2": "763104351884",
|
|
19
|
+
"eu-central-1": "763104351884",
|
|
20
|
+
"eu-west-1": "763104351884",
|
|
21
|
+
"eu-west-3": "763104351884",
|
|
22
|
+
"sa-east-1": "763104351884",
|
|
23
|
+
"us-east-1": "763104351884",
|
|
24
|
+
"us-east-2": "763104351884",
|
|
25
|
+
"us-west-2": "763104351884"
|
|
26
|
+
},
|
|
27
|
+
"tag_prefix": "0.10.2",
|
|
28
|
+
"repository": "huggingface-vllm-inference-neuronx",
|
|
29
|
+
"container_version": {
|
|
30
|
+
"inf2": "ubuntu22.04"
|
|
31
|
+
},
|
|
32
|
+
"sdk_versions": [
|
|
33
|
+
"sdk2.26.0"
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -41,6 +41,7 @@ HUGGING_FACE_LLM_FRAMEWORK = "huggingface-llm"
|
|
|
41
41
|
HUGGING_FACE_TEI_GPU_FRAMEWORK = "huggingface-tei"
|
|
42
42
|
HUGGING_FACE_TEI_CPU_FRAMEWORK = "huggingface-tei-cpu"
|
|
43
43
|
HUGGING_FACE_LLM_NEURONX_FRAMEWORK = "huggingface-llm-neuronx"
|
|
44
|
+
HUGGING_FACE_VLLM_NEURONX_FRAMEWORK = "huggingface-vllm-neuronx"
|
|
44
45
|
XGBOOST_FRAMEWORK = "xgboost"
|
|
45
46
|
SKLEARN_FRAMEWORK = "sklearn"
|
|
46
47
|
TRAINIUM_ALLOWED_FRAMEWORKS = "pytorch"
|
|
@@ -230,7 +231,11 @@ def retrieve(
|
|
|
230
231
|
container_version = version_config["container_version"][processor]
|
|
231
232
|
|
|
232
233
|
# Append sdk version in case of trainium instances
|
|
233
|
-
if repo in [
|
|
234
|
+
if repo in [
|
|
235
|
+
"pytorch-training-neuron",
|
|
236
|
+
"pytorch-training-neuronx",
|
|
237
|
+
"huggingface-vllm-inference-neuronx",
|
|
238
|
+
]:
|
|
234
239
|
if not sdk_version:
|
|
235
240
|
sdk_version = _get_latest_versions(version_config["sdk_versions"])
|
|
236
241
|
container_version = sdk_version + "-" + container_version
|
|
@@ -52,6 +52,7 @@ from sagemaker.model_card import (
|
|
|
52
52
|
from sagemaker.model_card.helpers import _hash_content_str
|
|
53
53
|
from sagemaker.model_card.schema_constraints import ModelApprovalStatusEnum
|
|
54
54
|
from sagemaker.session import Session
|
|
55
|
+
from sagemaker.container_base_model import ContainerBaseModel
|
|
55
56
|
from sagemaker.model_metrics import ModelMetrics
|
|
56
57
|
from sagemaker.drift_check_baselines import DriftCheckBaselines
|
|
57
58
|
from sagemaker.explainer import ExplainerConfig
|
|
@@ -477,6 +478,8 @@ class Model(ModelBase, InferenceRecommenderMixin):
|
|
|
477
478
|
model_life_cycle: Optional[ModelLifeCycle] = None,
|
|
478
479
|
accept_eula: Optional[bool] = None,
|
|
479
480
|
model_type: Optional[JumpStartModelType] = None,
|
|
481
|
+
model_package_registration_type: Optional[Union[str, PipelineVariable]] = None,
|
|
482
|
+
base_model: Optional[ContainerBaseModel] = None,
|
|
480
483
|
):
|
|
481
484
|
"""Creates a model package for creating SageMaker models or listing on Marketplace.
|
|
482
485
|
|
|
@@ -531,6 +534,9 @@ class Model(ModelBase, InferenceRecommenderMixin):
|
|
|
531
534
|
model_card (ModeCard or ModelPackageModelCard): document contains qualitative and
|
|
532
535
|
quantitative information about a model (default: None).
|
|
533
536
|
model_life_cycle (ModelLifeCycle): ModelLifeCycle object (default: None).
|
|
537
|
+
model_package_registration_type (str or PipelineVariable): Model Package Registration
|
|
538
|
+
Type (default: None).
|
|
539
|
+
base_model (ContainerBaseModel): ContainerBaseModel object (default: None).
|
|
534
540
|
|
|
535
541
|
Returns:
|
|
536
542
|
A `sagemaker.model.ModelPackage` instance or pipeline step arguments
|
|
@@ -578,6 +584,9 @@ class Model(ModelBase, InferenceRecommenderMixin):
|
|
|
578
584
|
if self.model_data is not None:
|
|
579
585
|
container_def["ModelDataUrl"] = self.model_data
|
|
580
586
|
|
|
587
|
+
if base_model is not None and hasattr(base_model, "_to_request_dict"):
|
|
588
|
+
container_def["BaseModel"] = base_model._to_request_dict()
|
|
589
|
+
|
|
581
590
|
model_pkg_args = sagemaker.get_model_package_args(
|
|
582
591
|
self.content_types,
|
|
583
592
|
self.response_types,
|
|
@@ -601,6 +610,8 @@ class Model(ModelBase, InferenceRecommenderMixin):
|
|
|
601
610
|
source_uri=source_uri,
|
|
602
611
|
model_card=model_card,
|
|
603
612
|
model_life_cycle=model_life_cycle,
|
|
613
|
+
model_package_registration_type=model_package_registration_type,
|
|
614
|
+
base_model=base_model,
|
|
604
615
|
)
|
|
605
616
|
model_package = self.sagemaker_session.create_model_package_from_containers(
|
|
606
617
|
**model_pkg_args
|
|
@@ -2150,6 +2161,7 @@ class FrameworkModel(Model):
|
|
|
2150
2161
|
You can find additional parameters for initializing this class at
|
|
2151
2162
|
:class:`~sagemaker.model.Model`.
|
|
2152
2163
|
"""
|
|
2164
|
+
|
|
2153
2165
|
super(FrameworkModel, self).__init__(
|
|
2154
2166
|
image_uri,
|
|
2155
2167
|
model_data,
|
|
@@ -108,6 +108,7 @@ from sagemaker.modules.train.sm_recipes.utils import (
|
|
|
108
108
|
_get_args_from_recipe,
|
|
109
109
|
_determine_device_type,
|
|
110
110
|
_is_nova_recipe,
|
|
111
|
+
_is_llmft_recipe,
|
|
111
112
|
_load_base_recipe,
|
|
112
113
|
)
|
|
113
114
|
|
|
@@ -252,6 +253,7 @@ class ModelTrainer(BaseModel):
|
|
|
252
253
|
_metric_definitions: Optional[List[MetricDefinition]] = PrivateAttr(default=None)
|
|
253
254
|
|
|
254
255
|
_is_nova_recipe: Optional[bool] = PrivateAttr(default=None)
|
|
256
|
+
_is_llmft_recipe: Optional[bool] = PrivateAttr(default=None)
|
|
255
257
|
_temp_recipe_train_dir: Optional[TemporaryDirectory] = PrivateAttr(default=None)
|
|
256
258
|
_temp_code_dir: Optional[TemporaryDirectory] = PrivateAttr(default=None)
|
|
257
259
|
|
|
@@ -632,12 +634,13 @@ class ModelTrainer(BaseModel):
|
|
|
632
634
|
|
|
633
635
|
final_input_data_config = list(existing_channels.values()) + new_channels
|
|
634
636
|
|
|
635
|
-
if self._is_nova_recipe:
|
|
637
|
+
if self._is_nova_recipe or self._is_llmft_recipe:
|
|
638
|
+
|
|
636
639
|
for input_data in final_input_data_config:
|
|
637
640
|
if input_data.channel_name == SM_RECIPE:
|
|
638
641
|
raise ValueError(
|
|
639
642
|
"Cannot use reserved channel name 'recipe' as an input channel name "
|
|
640
|
-
" for Nova Recipe"
|
|
643
|
+
" for Nova or LLMFT Recipe"
|
|
641
644
|
)
|
|
642
645
|
recipe_file_path = os.path.join(self._temp_recipe_train_dir.name, SM_RECIPE_YAML)
|
|
643
646
|
recipe_channel = self.create_input_data_channel(
|
|
@@ -646,7 +649,10 @@ class ModelTrainer(BaseModel):
|
|
|
646
649
|
key_prefix=input_data_key_prefix,
|
|
647
650
|
)
|
|
648
651
|
final_input_data_config.append(recipe_channel)
|
|
649
|
-
self.
|
|
652
|
+
if self._is_nova_recipe:
|
|
653
|
+
self.hyperparameters.update(
|
|
654
|
+
{"sagemaker_recipe_local_path": SM_RECIPE_CONTAINER_PATH}
|
|
655
|
+
)
|
|
650
656
|
|
|
651
657
|
if final_input_data_config:
|
|
652
658
|
final_input_data_config = self._get_input_data_config(
|
|
@@ -1201,14 +1207,15 @@ class ModelTrainer(BaseModel):
|
|
|
1201
1207
|
training_recipe=training_recipe, recipe_overrides=recipe_overrides
|
|
1202
1208
|
)
|
|
1203
1209
|
is_nova = _is_nova_recipe(recipe=recipe)
|
|
1210
|
+
is_llmft = _is_llmft_recipe(recipe=recipe)
|
|
1204
1211
|
|
|
1205
|
-
if device_type == "cpu" and not is_nova:
|
|
1212
|
+
if device_type == "cpu" and not (is_nova or is_llmft):
|
|
1206
1213
|
raise ValueError(
|
|
1207
1214
|
"Training recipe is not supported for CPU instances. "
|
|
1208
1215
|
+ "Please provide a GPU or Tranium instance type."
|
|
1209
1216
|
)
|
|
1210
|
-
if training_image is None and is_nova:
|
|
1211
|
-
raise ValueError("training_image must be provided when using recipe for Nova
|
|
1217
|
+
if training_image is None and (is_nova or is_llmft):
|
|
1218
|
+
raise ValueError("training_image must be provided when using recipe for Nova or LLMFT")
|
|
1212
1219
|
|
|
1213
1220
|
if training_image_config and training_image is None:
|
|
1214
1221
|
raise ValueError("training_image must be provided when using training_image_config.")
|
|
@@ -1238,7 +1245,7 @@ class ModelTrainer(BaseModel):
|
|
|
1238
1245
|
model_trainer_args["training_image"] = training_image
|
|
1239
1246
|
if hyperparameters and not is_nova:
|
|
1240
1247
|
logger.warning(
|
|
1241
|
-
"Hyperparameters are not supported for general training recipes. "
|
|
1248
|
+
"Hyperparameters are not supported for general and LLMFT training recipes. "
|
|
1242
1249
|
+ "Ignoring hyperparameters input."
|
|
1243
1250
|
)
|
|
1244
1251
|
if is_nova:
|
|
@@ -1264,6 +1271,7 @@ class ModelTrainer(BaseModel):
|
|
|
1264
1271
|
**model_trainer_args,
|
|
1265
1272
|
)
|
|
1266
1273
|
model_trainer._is_nova_recipe = is_nova
|
|
1274
|
+
model_trainer._is_llmft_recipe = is_llmft
|
|
1267
1275
|
model_trainer._temp_recipe_train_dir = tmp_dir
|
|
1268
1276
|
return model_trainer
|
|
1269
1277
|
|
{sagemaker-2.254.1 → sagemaker-2.254.2.dev0}/src/sagemaker/modules/train/sm_recipes/utils.py
RENAMED
|
@@ -46,6 +46,19 @@ def _try_resolve_recipe(recipe: DictConfig, key=None) -> DictConfig:
|
|
|
46
46
|
return recipe[key]
|
|
47
47
|
|
|
48
48
|
|
|
49
|
+
def _resolve_final_recipe(recipe: DictConfig):
|
|
50
|
+
"""Resolve final recipe."""
|
|
51
|
+
final_recipe = _try_resolve_recipe(recipe)
|
|
52
|
+
if final_recipe is None:
|
|
53
|
+
final_recipe = _try_resolve_recipe(recipe, "recipes")
|
|
54
|
+
if final_recipe is None:
|
|
55
|
+
final_recipe = _try_resolve_recipe(recipe, "training")
|
|
56
|
+
if final_recipe is None:
|
|
57
|
+
raise RuntimeError("Could not resolve provided recipe.")
|
|
58
|
+
|
|
59
|
+
return final_recipe
|
|
60
|
+
|
|
61
|
+
|
|
49
62
|
def _determine_device_type(instance_type: str) -> str:
|
|
50
63
|
"""Determine device type (gpu, cpu, trainium) based on instance type."""
|
|
51
64
|
instance_family = instance_type.split(".")[1]
|
|
@@ -269,6 +282,27 @@ def _is_nova_recipe(
|
|
|
269
282
|
return bool(has_nova_model) or bool(has_distillation)
|
|
270
283
|
|
|
271
284
|
|
|
285
|
+
def _is_llmft_recipe(
|
|
286
|
+
recipe: DictConfig,
|
|
287
|
+
) -> bool:
|
|
288
|
+
"""Check if the recipe is a LLMFT recipe.
|
|
289
|
+
|
|
290
|
+
A recipe is considered a LLMFT recipe if it meets the following conditions:
|
|
291
|
+
1. Having a run section
|
|
292
|
+
2. The model_type in run is llmft
|
|
293
|
+
3. Having a training_config section
|
|
294
|
+
|
|
295
|
+
Args:
|
|
296
|
+
recipe (DictConfig): The loaded recipe configuration
|
|
297
|
+
|
|
298
|
+
Returns:
|
|
299
|
+
bool: True if the recipe is a LLMFT recipe, False otherwise
|
|
300
|
+
"""
|
|
301
|
+
run_config = recipe.get("run", {})
|
|
302
|
+
has_llmft_model = run_config.get("model_type", "").lower() == "llm_finetuning_aws"
|
|
303
|
+
return bool(has_llmft_model) and bool(recipe.get("training_config"))
|
|
304
|
+
|
|
305
|
+
|
|
272
306
|
def _get_args_from_nova_recipe(
|
|
273
307
|
recipe: DictConfig,
|
|
274
308
|
compute: Compute,
|
|
@@ -312,6 +346,12 @@ def _get_args_from_nova_recipe(
|
|
|
312
346
|
if lambda_arn:
|
|
313
347
|
args["hyperparameters"]["eval_lambda_arn"] = lambda_arn
|
|
314
348
|
|
|
349
|
+
# Handle reward lambda configuration
|
|
350
|
+
run_config = recipe.get("run", {})
|
|
351
|
+
reward_lambda_arn = run_config.get("reward_lambda_arn", "")
|
|
352
|
+
if reward_lambda_arn:
|
|
353
|
+
args["hyperparameters"]["reward_lambda_arn"] = reward_lambda_arn
|
|
354
|
+
|
|
315
355
|
_register_custom_resolvers()
|
|
316
356
|
|
|
317
357
|
# Resolve Final Recipe
|
|
@@ -339,6 +379,43 @@ def _get_args_from_nova_recipe(
|
|
|
339
379
|
return args, recipe_local_dir
|
|
340
380
|
|
|
341
381
|
|
|
382
|
+
def _get_args_from_llmft_recipe(
|
|
383
|
+
recipe: DictConfig,
|
|
384
|
+
compute: Compute,
|
|
385
|
+
) -> Tuple[Dict[str, Any], tempfile.TemporaryDirectory]:
|
|
386
|
+
|
|
387
|
+
if not compute.instance_count and not recipe.get("trainer", {}).get("num_nodes", None):
|
|
388
|
+
raise ValueError(
|
|
389
|
+
"Must set ``instance_count`` in compute or ``num_nodes`` in trainer in recipe."
|
|
390
|
+
)
|
|
391
|
+
if compute.instance_count and recipe.get("trainer", {}).get("num_nodes", None) is not None:
|
|
392
|
+
logger.warning(
|
|
393
|
+
f"Using Compute to set instance_count:\n{compute}."
|
|
394
|
+
"\nIgnoring trainer -> num_nodes in recipe."
|
|
395
|
+
)
|
|
396
|
+
compute.instance_count = compute.instance_count or recipe.get("trainer", {}).get("num_nodes")
|
|
397
|
+
|
|
398
|
+
args = dict()
|
|
399
|
+
|
|
400
|
+
_register_custom_resolvers()
|
|
401
|
+
final_recipe = _resolve_final_recipe(recipe)
|
|
402
|
+
|
|
403
|
+
# Save Final Recipe to tmp dir
|
|
404
|
+
recipe_local_dir = tempfile.TemporaryDirectory(prefix="recipe_")
|
|
405
|
+
final_recipe_path = os.path.join(recipe_local_dir.name, SM_RECIPE_YAML)
|
|
406
|
+
OmegaConf.save(config=final_recipe, f=final_recipe_path)
|
|
407
|
+
|
|
408
|
+
args.update(
|
|
409
|
+
{
|
|
410
|
+
"compute": compute,
|
|
411
|
+
"training_image": None,
|
|
412
|
+
"source_code": None,
|
|
413
|
+
"distributed": None,
|
|
414
|
+
}
|
|
415
|
+
)
|
|
416
|
+
return args, recipe_local_dir
|
|
417
|
+
|
|
418
|
+
|
|
342
419
|
def _get_args_from_recipe(
|
|
343
420
|
training_recipe: Union[str, DictConfig],
|
|
344
421
|
compute: Compute,
|
|
@@ -383,6 +460,9 @@ def _get_args_from_recipe(
|
|
|
383
460
|
if _is_nova_recipe(recipe):
|
|
384
461
|
args, recipe_local_dir = _get_args_from_nova_recipe(recipe, compute, role=role)
|
|
385
462
|
return args, recipe_local_dir
|
|
463
|
+
if _is_llmft_recipe(recipe):
|
|
464
|
+
args, recipe_local_dir = _get_args_from_llmft_recipe(recipe, compute)
|
|
465
|
+
return args, recipe_local_dir
|
|
386
466
|
|
|
387
467
|
if "trainer" not in recipe:
|
|
388
468
|
raise ValueError("Supplied recipe does not contain required field trainer.")
|