snowflake-ml-python 1.22.0__tar.gz → 1.23.0__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.
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/CHANGELOG.md +66 -0
- {snowflake_ml_python-1.22.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.23.0}/PKG-INFO +67 -1
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/__init__.py +2 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/constants.py +1 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/payload_utils.py +38 -18
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/query_helper.py +8 -1
- snowflake_ml_python-1.23.0/snowflake/ml/jobs/_utils/runtime_env_utils.py +117 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/stage_utils.py +2 -2
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/types.py +22 -2
- snowflake_ml_python-1.23.0/snowflake/ml/jobs/job_definition.py +232 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/manager.py +16 -177
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/model/model_version_impl.py +90 -76
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/ops/model_ops.py +2 -18
- snowflake_ml_python-1.23.0/snowflake/ml/model/_client/ops/param_utils.py +124 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/ops/service_ops.py +63 -18
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +12 -5
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +1 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/sql/service.py +4 -25
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +21 -3
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +21 -3
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +21 -3
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +2 -1
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/huggingface.py +54 -10
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +52 -16
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/utils.py +55 -0
- snowflake_ml_python-1.23.0/snowflake/ml/model/openai_signatures.py +154 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +1 -1
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0/snowflake_ml_python.egg-info}/PKG-INFO +67 -1
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake_ml_python.egg-info/SOURCES.txt +3 -1
- snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/__init__.py +0 -0
- snowflake_ml_python-1.22.0/snowflake/ml/model/openai_signatures.py +0 -57
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/README.md +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/pyproject.toml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/setup.cfg +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_classify_text.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_complete.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/env_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/file_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/platform_capabilities.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/_internal/utils/url.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/data/data_connector.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/_entities/run.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/callback/keras.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/experiment_tracking.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/experiment/utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/feature_store.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/feature_store/feature_view.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-1.22.0/snowflake/ml/experiment/callback → snowflake_ml_python-1.23.0/snowflake/ml/jobs/_interop}/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_interop/results.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
- {snowflake_ml_python-1.22.0/snowflake/ml/jobs/_interop → snowflake_ml_python-1.23.0/snowflake/ml/jobs/_utils}/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/function_payload_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/scripts/startup.sh +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/spec_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/job.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/lineage/lineage_node.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/ops/deployment_step.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/service/import_model_spec_schema.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/sql/model.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/core.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/code_path.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/compute_pool.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/event_handler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/inference_engine.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/model_signature.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/models/huggingface.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/type_hints.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/model/volatility.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/svm/svc.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/svm/svr.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/registry/_manager/model_manager.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/registry/registry.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/utils/html_utils.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake_ml_python.egg-info/requires.txt +0 -0
- {snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
+
## 1.23.0
|
|
4
|
+
|
|
5
|
+
### New Features
|
|
6
|
+
|
|
7
|
+
* ML Jobs: Enabled support for Python 3.11 and Python 3.12 by default. Jobs will automatically select a
|
|
8
|
+
runtime environment matching the client Python version.
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
* Registry: Fix failures on empty output in HuggingFace's Token Classification (aka Named Entity Recognition) models.
|
|
13
|
+
* Model serving: don't parse instance or container statuses to fix bug with missing container status.
|
|
14
|
+
|
|
15
|
+
### Behavior Changes
|
|
16
|
+
|
|
17
|
+
### Deprecations
|
|
18
|
+
|
|
3
19
|
## 1.22.0
|
|
4
20
|
|
|
5
21
|
### New Features
|
|
@@ -22,10 +38,60 @@ mv = registry.log_model(
|
|
|
22
38
|
)
|
|
23
39
|
```
|
|
24
40
|
|
|
41
|
+
* Registry: Added support for `image-text-to-text` task type in `huggingface.TransformersPipeline`.
|
|
42
|
+
Note: Requires vLLM inference engine while creating the service.
|
|
43
|
+
|
|
25
44
|
### Bug Fixes
|
|
26
45
|
|
|
27
46
|
### Behavior Changes
|
|
28
47
|
|
|
48
|
+
* Registry: The `openai_signatures.OPENAI_CHAT_SIGNATURE` signature now handles content parts and
|
|
49
|
+
requires input data to be passed in list of dictionary. To use string content (previous behavior),
|
|
50
|
+
use `openai_signatures.OPENAI_CHAT_SIGNATURE_WITH_CONTENT_FORMAT_STRING`.
|
|
51
|
+
|
|
52
|
+
```python
|
|
53
|
+
from snowflake.ml.model import openai_signatures
|
|
54
|
+
import pandas as pd
|
|
55
|
+
|
|
56
|
+
mv = snowflake_registry.log_model(
|
|
57
|
+
model=generator,
|
|
58
|
+
model_name=...,
|
|
59
|
+
...,
|
|
60
|
+
signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
# create a pd.DataFrame with openai.client.chat.completions arguments like below:
|
|
64
|
+
x_df = pd.DataFrame.from_records(
|
|
65
|
+
[
|
|
66
|
+
{
|
|
67
|
+
"messages": [
|
|
68
|
+
{"role": "system", "content": "Complete the sentence."},
|
|
69
|
+
{
|
|
70
|
+
"role": "user",
|
|
71
|
+
"content": [
|
|
72
|
+
{
|
|
73
|
+
"type": "text",
|
|
74
|
+
"text": "A descendant of the Lost City of Atlantis, who swam to Earth while saying, ",
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
},
|
|
78
|
+
],
|
|
79
|
+
"max_completion_tokens": 250,
|
|
80
|
+
"temperature": 0.9,
|
|
81
|
+
"stop": None,
|
|
82
|
+
"n": 3,
|
|
83
|
+
"stream": False,
|
|
84
|
+
"top_p": 1.0,
|
|
85
|
+
"frequency_penalty": 0.1,
|
|
86
|
+
"presence_penalty": 0.2,
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
# OpenAI Chat Completion compatible output
|
|
92
|
+
output_df = mv.run(X=x_df)
|
|
93
|
+
```
|
|
94
|
+
|
|
29
95
|
### Deprecations
|
|
30
96
|
|
|
31
97
|
## 1.21.0
|
{snowflake_ml_python-1.22.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.23.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowflake-ml-python
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.23.0
|
|
4
4
|
Summary: The machine learning client library that is used for interacting with Snowflake to build machine learning solutions.
|
|
5
5
|
Author-email: "Snowflake, Inc" <support@snowflake.com>
|
|
6
6
|
License:
|
|
@@ -417,6 +417,22 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
417
417
|
|
|
418
418
|
# Release History
|
|
419
419
|
|
|
420
|
+
## 1.23.0
|
|
421
|
+
|
|
422
|
+
### New Features
|
|
423
|
+
|
|
424
|
+
* ML Jobs: Enabled support for Python 3.11 and Python 3.12 by default. Jobs will automatically select a
|
|
425
|
+
runtime environment matching the client Python version.
|
|
426
|
+
|
|
427
|
+
### Bug Fixes
|
|
428
|
+
|
|
429
|
+
* Registry: Fix failures on empty output in HuggingFace's Token Classification (aka Named Entity Recognition) models.
|
|
430
|
+
* Model serving: don't parse instance or container statuses to fix bug with missing container status.
|
|
431
|
+
|
|
432
|
+
### Behavior Changes
|
|
433
|
+
|
|
434
|
+
### Deprecations
|
|
435
|
+
|
|
420
436
|
## 1.22.0
|
|
421
437
|
|
|
422
438
|
### New Features
|
|
@@ -439,10 +455,60 @@ mv = registry.log_model(
|
|
|
439
455
|
)
|
|
440
456
|
```
|
|
441
457
|
|
|
458
|
+
* Registry: Added support for `image-text-to-text` task type in `huggingface.TransformersPipeline`.
|
|
459
|
+
Note: Requires vLLM inference engine while creating the service.
|
|
460
|
+
|
|
442
461
|
### Bug Fixes
|
|
443
462
|
|
|
444
463
|
### Behavior Changes
|
|
445
464
|
|
|
465
|
+
* Registry: The `openai_signatures.OPENAI_CHAT_SIGNATURE` signature now handles content parts and
|
|
466
|
+
requires input data to be passed in list of dictionary. To use string content (previous behavior),
|
|
467
|
+
use `openai_signatures.OPENAI_CHAT_SIGNATURE_WITH_CONTENT_FORMAT_STRING`.
|
|
468
|
+
|
|
469
|
+
```python
|
|
470
|
+
from snowflake.ml.model import openai_signatures
|
|
471
|
+
import pandas as pd
|
|
472
|
+
|
|
473
|
+
mv = snowflake_registry.log_model(
|
|
474
|
+
model=generator,
|
|
475
|
+
model_name=...,
|
|
476
|
+
...,
|
|
477
|
+
signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
|
|
478
|
+
)
|
|
479
|
+
|
|
480
|
+
# create a pd.DataFrame with openai.client.chat.completions arguments like below:
|
|
481
|
+
x_df = pd.DataFrame.from_records(
|
|
482
|
+
[
|
|
483
|
+
{
|
|
484
|
+
"messages": [
|
|
485
|
+
{"role": "system", "content": "Complete the sentence."},
|
|
486
|
+
{
|
|
487
|
+
"role": "user",
|
|
488
|
+
"content": [
|
|
489
|
+
{
|
|
490
|
+
"type": "text",
|
|
491
|
+
"text": "A descendant of the Lost City of Atlantis, who swam to Earth while saying, ",
|
|
492
|
+
}
|
|
493
|
+
],
|
|
494
|
+
},
|
|
495
|
+
],
|
|
496
|
+
"max_completion_tokens": 250,
|
|
497
|
+
"temperature": 0.9,
|
|
498
|
+
"stop": None,
|
|
499
|
+
"n": 3,
|
|
500
|
+
"stream": False,
|
|
501
|
+
"top_p": 1.0,
|
|
502
|
+
"frequency_penalty": 0.1,
|
|
503
|
+
"presence_penalty": 0.2,
|
|
504
|
+
}
|
|
505
|
+
],
|
|
506
|
+
)
|
|
507
|
+
|
|
508
|
+
# OpenAI Chat Completion compatible output
|
|
509
|
+
output_df = mv.run(X=x_df)
|
|
510
|
+
```
|
|
511
|
+
|
|
446
512
|
### Deprecations
|
|
447
513
|
|
|
448
514
|
## 1.21.0
|
|
@@ -2,6 +2,7 @@ from snowflake.ml.jobs._interop.exception_utils import install_exception_display
|
|
|
2
2
|
from snowflake.ml.jobs._utils.types import JOB_STATUS
|
|
3
3
|
from snowflake.ml.jobs.decorators import remote
|
|
4
4
|
from snowflake.ml.jobs.job import MLJob
|
|
5
|
+
from snowflake.ml.jobs.job_definition import MLJobDefinition
|
|
5
6
|
from snowflake.ml.jobs.manager import (
|
|
6
7
|
delete_job,
|
|
7
8
|
get_job,
|
|
@@ -24,4 +25,5 @@ __all__ = [
|
|
|
24
25
|
"MLJob",
|
|
25
26
|
"JOB_STATUS",
|
|
26
27
|
"submit_from_stage",
|
|
28
|
+
"MLJobDefinition",
|
|
27
29
|
]
|
{snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/constants.py
RENAMED
|
@@ -5,6 +5,7 @@ from snowflake.ml.jobs._utils.types import ComputeResources
|
|
|
5
5
|
DEFAULT_CONTAINER_NAME = "main"
|
|
6
6
|
MEMORY_VOLUME_NAME = "dshm"
|
|
7
7
|
STAGE_VOLUME_NAME = "stage-volume"
|
|
8
|
+
DEFAULT_PYTHON_VERSION = "3.10"
|
|
8
9
|
|
|
9
10
|
# Environment variables
|
|
10
11
|
STAGE_MOUNT_PATH_ENV_VAR = "MLRS_STAGE_MOUNT_PATH"
|
{snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/payload_utils.py
RENAMED
|
@@ -11,6 +11,7 @@ from importlib.abc import Traversable
|
|
|
11
11
|
from pathlib import Path, PurePath
|
|
12
12
|
from types import ModuleType
|
|
13
13
|
from typing import IO, Any, Callable, Optional, Union, cast, get_args, get_origin
|
|
14
|
+
from uuid import uuid4
|
|
14
15
|
|
|
15
16
|
import cloudpickle as cp
|
|
16
17
|
from packaging import version
|
|
@@ -36,10 +37,15 @@ _SUPPORTED_ARG_TYPES = {str, int, float}
|
|
|
36
37
|
_SUPPORTED_ENTRYPOINT_EXTENSIONS = {".py"}
|
|
37
38
|
_ENTRYPOINT_FUNC_NAME = "func"
|
|
38
39
|
_STARTUP_SCRIPT_PATH = PurePath("startup.sh")
|
|
40
|
+
JOB_ID_PREFIX = "MLJOB_"
|
|
39
41
|
|
|
40
42
|
|
|
41
43
|
def _compress_and_upload_file(
|
|
42
|
-
session: snowpark.Session,
|
|
44
|
+
session: snowpark.Session,
|
|
45
|
+
source_path: Path,
|
|
46
|
+
stage_path: PurePath,
|
|
47
|
+
import_path: Optional[str] = None,
|
|
48
|
+
overwrite: bool = True,
|
|
43
49
|
) -> None:
|
|
44
50
|
absolute_source_path = source_path.absolute()
|
|
45
51
|
leading_path = absolute_source_path.as_posix()[: -len(import_path)] if import_path else None
|
|
@@ -49,11 +55,13 @@ def _compress_and_upload_file(
|
|
|
49
55
|
cast(IO[bytes], stream),
|
|
50
56
|
stage_path.joinpath(filename).as_posix(),
|
|
51
57
|
auto_compress=False,
|
|
52
|
-
overwrite=
|
|
58
|
+
overwrite=overwrite,
|
|
53
59
|
)
|
|
54
60
|
|
|
55
61
|
|
|
56
|
-
def _upload_directory(
|
|
62
|
+
def _upload_directory(
|
|
63
|
+
session: snowpark.Session, source_path: Path, payload_stage_path: PurePath, overwrite: bool = True
|
|
64
|
+
) -> None:
|
|
57
65
|
# Manually traverse the directory and upload each file, since Snowflake PUT
|
|
58
66
|
# can't handle directories. Reduce the number of PUT operations by using
|
|
59
67
|
# wildcard patterns to batch upload files with the same extension.
|
|
@@ -81,12 +89,14 @@ def _upload_directory(session: snowpark.Session, source_path: Path, payload_stag
|
|
|
81
89
|
session.file.put(
|
|
82
90
|
str(path),
|
|
83
91
|
payload_stage_path.joinpath(path.parent.relative_to(source_path)).as_posix(),
|
|
84
|
-
overwrite=
|
|
92
|
+
overwrite=overwrite,
|
|
85
93
|
auto_compress=False,
|
|
86
94
|
)
|
|
87
95
|
|
|
88
96
|
|
|
89
|
-
def upload_payloads(
|
|
97
|
+
def upload_payloads(
|
|
98
|
+
session: snowpark.Session, stage_path: PurePath, *payload_specs: types.PayloadSpec, overwrite: bool = True
|
|
99
|
+
) -> None:
|
|
90
100
|
for spec in payload_specs:
|
|
91
101
|
source_path = spec.source_path
|
|
92
102
|
remote_relative_path = spec.remote_relative_path
|
|
@@ -109,6 +119,7 @@ def upload_payloads(session: snowpark.Session, stage_path: PurePath, *payload_sp
|
|
|
109
119
|
source_path,
|
|
110
120
|
stage_path,
|
|
111
121
|
remote_relative_path.as_posix() if remote_relative_path else None,
|
|
122
|
+
overwrite=overwrite,
|
|
112
123
|
)
|
|
113
124
|
else:
|
|
114
125
|
_upload_directory(session, source_path, payload_stage_path)
|
|
@@ -120,12 +131,13 @@ def upload_payloads(session: snowpark.Session, stage_path: PurePath, *payload_sp
|
|
|
120
131
|
source_path,
|
|
121
132
|
stage_path,
|
|
122
133
|
remote_relative_path.as_posix() if remote_relative_path else None,
|
|
134
|
+
overwrite=overwrite,
|
|
123
135
|
)
|
|
124
136
|
else:
|
|
125
137
|
session.file.put(
|
|
126
138
|
str(source_path.resolve()),
|
|
127
139
|
payload_stage_path.as_posix(),
|
|
128
|
-
overwrite=
|
|
140
|
+
overwrite=overwrite,
|
|
129
141
|
auto_compress=False,
|
|
130
142
|
)
|
|
131
143
|
|
|
@@ -455,7 +467,9 @@ class JobPayload:
|
|
|
455
467
|
self.pip_requirements = pip_requirements
|
|
456
468
|
self.imports = imports
|
|
457
469
|
|
|
458
|
-
def upload(
|
|
470
|
+
def upload(
|
|
471
|
+
self, session: snowpark.Session, stage_path: Union[str, PurePath], overwrite: bool = False
|
|
472
|
+
) -> types.UploadedPayload:
|
|
459
473
|
# Prepare local variables
|
|
460
474
|
stage_path = PurePath(stage_path) if isinstance(stage_path, str) else stage_path
|
|
461
475
|
source = resolve_source(self.source)
|
|
@@ -482,7 +496,6 @@ class JobPayload:
|
|
|
482
496
|
|
|
483
497
|
# Handle list entrypoints (custom commands like ["arctic_training"])
|
|
484
498
|
if isinstance(entrypoint, (list, tuple)):
|
|
485
|
-
payload_name = entrypoint[0] if entrypoint else None
|
|
486
499
|
# For list entrypoints, still upload source if it's a path
|
|
487
500
|
if isinstance(source, Path):
|
|
488
501
|
upload_payloads(session, app_stage_path, types.PayloadSpec(source, None))
|
|
@@ -491,30 +504,24 @@ class JobPayload:
|
|
|
491
504
|
python_entrypoint: list[Union[str, PurePath]] = list(entrypoint)
|
|
492
505
|
else:
|
|
493
506
|
# Standard file-based entrypoint handling
|
|
494
|
-
payload_name = None
|
|
495
507
|
if not isinstance(source, types.PayloadPath):
|
|
496
|
-
if isinstance(source, function_payload_utils.FunctionPayload):
|
|
497
|
-
payload_name = source.function.__name__
|
|
498
|
-
|
|
499
508
|
source_code = generate_python_code(source, source_code_display=True)
|
|
500
509
|
_ = session.file.put_stream(
|
|
501
510
|
io.BytesIO(source_code.encode()),
|
|
502
511
|
stage_location=app_stage_path.joinpath(entrypoint.file_path).as_posix(),
|
|
503
512
|
auto_compress=False,
|
|
504
|
-
overwrite=
|
|
513
|
+
overwrite=overwrite,
|
|
505
514
|
)
|
|
506
515
|
source = Path(entrypoint.file_path.parent)
|
|
507
516
|
|
|
508
517
|
elif isinstance(source, stage_utils.StagePath):
|
|
509
|
-
payload_name = entrypoint.file_path.stem
|
|
510
518
|
# copy payload to stage
|
|
511
519
|
if source == entrypoint.file_path:
|
|
512
520
|
source = source.parent
|
|
513
|
-
upload_payloads(session, app_stage_path, types.PayloadSpec(source, None))
|
|
521
|
+
upload_payloads(session, app_stage_path, types.PayloadSpec(source, None), overwrite=overwrite)
|
|
514
522
|
|
|
515
523
|
elif isinstance(source, Path):
|
|
516
|
-
|
|
517
|
-
upload_payloads(session, app_stage_path, types.PayloadSpec(source, None))
|
|
524
|
+
upload_payloads(session, app_stage_path, types.PayloadSpec(source, None), overwrite=overwrite)
|
|
518
525
|
if source.is_file():
|
|
519
526
|
source = source.parent
|
|
520
527
|
|
|
@@ -565,7 +572,6 @@ class JobPayload:
|
|
|
565
572
|
*python_entrypoint,
|
|
566
573
|
],
|
|
567
574
|
env_vars=env_vars,
|
|
568
|
-
payload_name=payload_name,
|
|
569
575
|
)
|
|
570
576
|
|
|
571
577
|
|
|
@@ -759,3 +765,17 @@ def create_function_payload(
|
|
|
759
765
|
payload = function_payload_utils.FunctionPayload(func, session, session_argument, *bound.args, **bound.kwargs)
|
|
760
766
|
|
|
761
767
|
return payload
|
|
768
|
+
|
|
769
|
+
|
|
770
|
+
def get_payload_name(source: Union[str, Callable[..., Any]], entrypoint: Optional[Union[str, list[str]]] = None) -> str:
|
|
771
|
+
|
|
772
|
+
if entrypoint and isinstance(entrypoint, (list, tuple)):
|
|
773
|
+
return entrypoint[0]
|
|
774
|
+
elif entrypoint and isinstance(entrypoint, str):
|
|
775
|
+
return f"{PurePath(entrypoint).stem}"
|
|
776
|
+
elif source and not callable(source):
|
|
777
|
+
return f"{PurePath(source).stem}"
|
|
778
|
+
elif isinstance(source, function_payload_utils.FunctionPayload):
|
|
779
|
+
return f"{source.function.__name__}"
|
|
780
|
+
else:
|
|
781
|
+
return f"{JOB_ID_PREFIX}{str(uuid4()).replace('-', '_').upper()}"
|
{snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/query_helper.py
RENAMED
|
@@ -14,10 +14,17 @@ def result_set_to_rows(session: snowpark.Session, result: dict[str, Any]) -> lis
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
@snowflake_plan.SnowflakePlan.Decorator.wrap_exception # type: ignore[misc]
|
|
17
|
-
def run_query(
|
|
17
|
+
def run_query(
|
|
18
|
+
session: snowpark.Session,
|
|
19
|
+
query_text: str,
|
|
20
|
+
params: Optional[Sequence[Any]] = None,
|
|
21
|
+
statement_params: Optional[dict[str, Any]] = None,
|
|
22
|
+
) -> list[Row]:
|
|
18
23
|
kwargs: dict[str, Any] = {"query": query_text, "params": params}
|
|
19
24
|
if not is_in_stored_procedure(): # type: ignore[no-untyped-call]
|
|
20
25
|
kwargs["_force_qmark_paramstyle"] = True
|
|
26
|
+
if statement_params:
|
|
27
|
+
kwargs["_statement_params"] = statement_params
|
|
21
28
|
result = session._conn.run_query(**kwargs)
|
|
22
29
|
if not isinstance(result, dict) or "data" not in result:
|
|
23
30
|
raise ValueError(f"Unprocessable result: {result}")
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
import logging
|
|
3
|
+
from typing import Any, Literal, Optional, Union
|
|
4
|
+
|
|
5
|
+
from packaging.version import Version
|
|
6
|
+
from pydantic import BaseModel, Field, RootModel, field_validator
|
|
7
|
+
|
|
8
|
+
from snowflake import snowpark
|
|
9
|
+
from snowflake.ml.jobs._utils import constants, query_helper
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class SpcsContainerRuntime(BaseModel):
|
|
13
|
+
python_version: Version = Field(alias="pythonVersion")
|
|
14
|
+
hardware_type: str = Field(alias="hardwareType")
|
|
15
|
+
runtime_container_image: str = Field(alias="runtimeContainerImage")
|
|
16
|
+
|
|
17
|
+
@field_validator("python_version", mode="before")
|
|
18
|
+
@classmethod
|
|
19
|
+
def validate_python_version(cls, v: Union[str, Version]) -> Version:
|
|
20
|
+
if isinstance(v, Version):
|
|
21
|
+
return v
|
|
22
|
+
try:
|
|
23
|
+
return Version(v)
|
|
24
|
+
except Exception:
|
|
25
|
+
raise ValueError(f"Invalid Python version format: {v}")
|
|
26
|
+
|
|
27
|
+
class Config:
|
|
28
|
+
frozen = True
|
|
29
|
+
extra = "allow"
|
|
30
|
+
arbitrary_types_allowed = True
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class RuntimeEnvironmentEntry(BaseModel):
|
|
34
|
+
spcs_container_runtime: Optional[SpcsContainerRuntime] = Field(alias="spcsContainerRuntime", default=None)
|
|
35
|
+
created_on: datetime.datetime = Field(alias="createdOn")
|
|
36
|
+
id: Optional[str] = Field(alias="id")
|
|
37
|
+
|
|
38
|
+
class Config:
|
|
39
|
+
extra = "allow"
|
|
40
|
+
frozen = True
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
class RuntimeEnvironmentsDict(RootModel[dict[str, RuntimeEnvironmentEntry]]):
|
|
44
|
+
@field_validator("root", mode="before")
|
|
45
|
+
@classmethod
|
|
46
|
+
def _filter_to_dict_entries(cls, data: Any) -> dict[str, dict[str, Any]]:
|
|
47
|
+
"""
|
|
48
|
+
Pre-validation hook: keep only those items at the root level
|
|
49
|
+
whose values are dicts. Non-dict values will be dropped.
|
|
50
|
+
|
|
51
|
+
Args:
|
|
52
|
+
data: The input data to filter, expected to be a dictionary.
|
|
53
|
+
|
|
54
|
+
Returns:
|
|
55
|
+
A dictionary containing only the key-value pairs where values are dictionaries.
|
|
56
|
+
|
|
57
|
+
Raises:
|
|
58
|
+
ValueError: If input data is not a dictionary.
|
|
59
|
+
"""
|
|
60
|
+
# If the entire root is not a dict, raise error immediately
|
|
61
|
+
if not isinstance(data, dict):
|
|
62
|
+
raise ValueError(f"Expected dictionary data, but got {type(data).__name__}: {data}")
|
|
63
|
+
|
|
64
|
+
# Filter out any key whose value is not a dict
|
|
65
|
+
return {key: value for key, value in data.items() if isinstance(value, dict)}
|
|
66
|
+
|
|
67
|
+
def get_spcs_container_runtimes(
|
|
68
|
+
self,
|
|
69
|
+
*,
|
|
70
|
+
hardware_type: Optional[str] = None,
|
|
71
|
+
python_version: Optional[Version] = None,
|
|
72
|
+
) -> list[SpcsContainerRuntime]:
|
|
73
|
+
# TODO(SNOW-2682000): parse version from NRE in a safer way, like relying on the label,id or image tag.
|
|
74
|
+
entries: list[RuntimeEnvironmentEntry] = [
|
|
75
|
+
entry
|
|
76
|
+
for entry in self.root.values()
|
|
77
|
+
if entry.spcs_container_runtime is not None
|
|
78
|
+
and (hardware_type is None or entry.spcs_container_runtime.hardware_type.lower() == hardware_type.lower())
|
|
79
|
+
and (
|
|
80
|
+
python_version is None
|
|
81
|
+
or (
|
|
82
|
+
entry.spcs_container_runtime.python_version.major == python_version.major
|
|
83
|
+
and entry.spcs_container_runtime.python_version.minor == python_version.minor
|
|
84
|
+
)
|
|
85
|
+
)
|
|
86
|
+
]
|
|
87
|
+
entries.sort(key=lambda e: e.created_on, reverse=True)
|
|
88
|
+
|
|
89
|
+
return [entry.spcs_container_runtime for entry in entries if entry.spcs_container_runtime is not None]
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
def _extract_image_tag(image_url: str) -> Optional[str]:
|
|
93
|
+
image_tag = image_url.rsplit(":", 1)[-1]
|
|
94
|
+
return image_tag
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
def find_runtime_image(
|
|
98
|
+
session: snowpark.Session, target_hardware: Literal["CPU", "GPU"], target_python_version: Optional[str] = None
|
|
99
|
+
) -> Optional[str]:
|
|
100
|
+
python_version = (
|
|
101
|
+
Version(target_python_version) if target_python_version else Version(constants.DEFAULT_PYTHON_VERSION)
|
|
102
|
+
)
|
|
103
|
+
rows = query_helper.run_query(session, "CALL SYSTEM$NOTEBOOKS_FIND_LABELED_RUNTIMES()")
|
|
104
|
+
if not rows:
|
|
105
|
+
return None
|
|
106
|
+
try:
|
|
107
|
+
runtime_envs = RuntimeEnvironmentsDict.model_validate_json(rows[0][0])
|
|
108
|
+
spcs_container_runtimes = runtime_envs.get_spcs_container_runtimes(
|
|
109
|
+
hardware_type=target_hardware,
|
|
110
|
+
python_version=python_version,
|
|
111
|
+
)
|
|
112
|
+
except Exception as e:
|
|
113
|
+
logging.warning(f"Failed to parse runtime image name from {rows[0][0]}, error: {e}")
|
|
114
|
+
return None
|
|
115
|
+
|
|
116
|
+
selected_runtime = spcs_container_runtimes[0] if spcs_container_runtimes else None
|
|
117
|
+
return selected_runtime.runtime_container_image if selected_runtime else None
|
{snowflake_ml_python-1.22.0 → snowflake_ml_python-1.23.0}/snowflake/ml/jobs/_utils/stage_utils.py
RENAMED
|
@@ -52,7 +52,7 @@ class StagePath:
|
|
|
52
52
|
if self._path.parent == Path(""):
|
|
53
53
|
return StagePath(self._root)
|
|
54
54
|
else:
|
|
55
|
-
return StagePath(f"{self._root}/{self._path.parent}")
|
|
55
|
+
return StagePath(f"{self._root}/{self._path.parent.as_posix()}")
|
|
56
56
|
|
|
57
57
|
@property
|
|
58
58
|
def root(self) -> str:
|
|
@@ -67,7 +67,7 @@ class StagePath:
|
|
|
67
67
|
if path == Path(""):
|
|
68
68
|
return self.root
|
|
69
69
|
else:
|
|
70
|
-
return f"{self.root}/{path}"
|
|
70
|
+
return f"{self.root}/{path.as_posix()}"
|
|
71
71
|
|
|
72
72
|
def is_relative_to(self, *other: Union[str, os.PathLike[str]]) -> bool:
|
|
73
73
|
if not other:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import os
|
|
2
2
|
from dataclasses import dataclass, field
|
|
3
3
|
from pathlib import PurePath
|
|
4
|
-
from typing import Literal, Optional, Protocol, Union, runtime_checkable
|
|
4
|
+
from typing import Any, Literal, Optional, Protocol, Union, runtime_checkable
|
|
5
5
|
|
|
6
6
|
from typing_extensions import Self
|
|
7
7
|
|
|
@@ -103,7 +103,6 @@ class UploadedPayload:
|
|
|
103
103
|
stage_path: PurePath
|
|
104
104
|
entrypoint: list[Union[str, PurePath]]
|
|
105
105
|
env_vars: dict[str, str] = field(default_factory=dict)
|
|
106
|
-
payload_name: Optional[str] = None
|
|
107
106
|
|
|
108
107
|
|
|
109
108
|
@dataclass(frozen=True)
|
|
@@ -128,3 +127,24 @@ class ServiceInfo:
|
|
|
128
127
|
status: str
|
|
129
128
|
compute_pool: str
|
|
130
129
|
target_instances: int
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
@dataclass
|
|
133
|
+
class JobOptions:
|
|
134
|
+
external_access_integrations: Optional[list[str]] = None
|
|
135
|
+
query_warehouse: Optional[str] = None
|
|
136
|
+
target_instances: Optional[int] = None
|
|
137
|
+
min_instances: Optional[int] = None
|
|
138
|
+
use_async: Optional[bool] = True
|
|
139
|
+
generate_suffix: Optional[bool] = True
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
@dataclass
|
|
143
|
+
class SpecOptions:
|
|
144
|
+
stage_path: str
|
|
145
|
+
args: Optional[list[str]] = None
|
|
146
|
+
env_vars: Optional[dict[str, str]] = None
|
|
147
|
+
enable_metrics: Optional[bool] = None
|
|
148
|
+
spec_overrides: Optional[dict[str, Any]] = None
|
|
149
|
+
runtime: Optional[str] = None
|
|
150
|
+
enable_stage_mount_v2: Optional[bool] = True
|