snowflake-ml-python 1.8.0__tar.gz → 1.8.2__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.8.0 → snowflake_ml_python-1.8.2}/CHANGELOG.md +52 -2
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/PKG-INFO +55 -4
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/pyproject.toml +1 -1
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_complete.py +44 -10
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/platform_capabilities.py +39 -3
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/data/data_connector.py +25 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/dataset/dataset_reader.py +5 -1
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/_utils/constants.py +3 -5
- snowflake_ml_python-1.8.2/snowflake/ml/jobs/_utils/interop_utils.py +442 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/_utils/payload_utils.py +81 -47
- snowflake_ml_python-1.8.2/snowflake/ml/jobs/_utils/scripts/constants.py +4 -0
- snowflake_ml_python-1.8.2/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +136 -0
- snowflake_ml_python-1.8.2/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +178 -0
- snowflake_ml_python-1.8.2/snowflake/ml/jobs/_utils/scripts/signal_workers.py +203 -0
- snowflake_ml_python-1.8.2/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +242 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/_utils/spec_utils.py +27 -8
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/_utils/types.py +6 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/decorators.py +10 -6
- snowflake_ml_python-1.8.2/snowflake/ml/jobs/job.py +235 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/manager.py +79 -12
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/ops/model_ops.py +6 -3
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/ops/service_ops.py +57 -39
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/service/model_deployment_spec.py +7 -4
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/sql/service.py +11 -5
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_composer.py +29 -11
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +1 -2
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_env/model_env.py +8 -2
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/sklearn.py +1 -4
- snowflake_ml_python-1.8.2/snowflake/ml/model/_packager/model_meta/_packaging_requirements.py +1 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_meta/model_meta.py +6 -1
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +1 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_packager.py +2 -0
- snowflake_ml_python-1.8.2/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +1 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/type_hints.py +2 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/estimator_utils.py +5 -1
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/registry/_manager/model_manager.py +20 -1
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/registry/registry.py +46 -2
- snowflake_ml_python-1.8.2/snowflake/ml/version.py +1 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake_ml_python.egg-info/PKG-INFO +55 -4
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake_ml_python.egg-info/SOURCES.txt +6 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake_ml_python.egg-info/requires.txt +2 -1
- snowflake_ml_python-1.8.0/snowflake/ml/jobs/job.py +0 -113
- snowflake_ml_python-1.8.0/snowflake/ml/model/_packager/model_meta/_packaging_requirements.py +0 -1
- snowflake_ml_python-1.8.0/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -1
- snowflake_ml_python-1.8.0/snowflake/ml/version.py +0 -1
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/LICENSE.txt +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/README.md +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/setup.cfg +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_classify_text.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/env_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/file_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/feature_store.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/feature_store/feature_view.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/lineage/lineage_node.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/model/model_version_impl.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/sql/model.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/sql/model_version.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/core.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/_signatures/utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/model_signature.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/constants.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/calibration/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/birch.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/k_means.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/optics.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/compose/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/oas.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/pca.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/impute/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/lars.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/manifold/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/manifold/isomap.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/manifold/mds.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/manifold/tsne.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/metrics/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/mixture/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/svm/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/svm/svc.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/svm/svr.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/tree/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/model_monitor_version.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake_ml_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,57 @@
|
|
1
1
|
# Release History
|
2
2
|
|
3
|
-
## 1.8.
|
3
|
+
## 1.8.2
|
4
|
+
|
5
|
+
### Bug Fixes
|
6
|
+
|
7
|
+
### Behavior Change
|
8
|
+
|
9
|
+
### New Features
|
10
|
+
|
11
|
+
- ML Job now available as a PuPr feature
|
12
|
+
- ML Job: Add ability to retrieve results for `@remote` decorated functions using
|
13
|
+
new `MLJobWithResult.result()` API, which will return the unpickled result
|
14
|
+
or raise an exception if the job execution failed.
|
15
|
+
- ML Job: Pre-created Snowpark Session is now available inside job payloads using
|
16
|
+
`snowflake.snowpark.context.get_active_session()`
|
17
|
+
- Registry: Introducing `save_location` to `log_model` using the `options` argument.
|
18
|
+
User's can provide the path to write the model version's files that get stored in Snowflake's stage.
|
19
|
+
- Registry: Include model dependencies in pip requirements by default when logging in Container Runtime.
|
20
|
+
|
21
|
+
```python
|
22
|
+
reg.log_model(
|
23
|
+
model=...,
|
24
|
+
model_name=...,
|
25
|
+
version_name=...,
|
26
|
+
...,
|
27
|
+
options={"save_location": "./model_directory"},
|
28
|
+
)
|
29
|
+
```
|
30
|
+
|
31
|
+
- ML Job (PrPr): Add `instance_id` argument to `get_logs` and `show_logs` method to support multi node log retrieval
|
32
|
+
- ML Job (PrPr): Add `job.get_instance_status(instance_id=...)` API to support multi node status retrieval
|
33
|
+
|
34
|
+
## 1.8.1 (03-26-2025)
|
35
|
+
|
36
|
+
### Bug Fixes
|
37
|
+
|
38
|
+
- Registry: Fix a bug that caused `unsupported model type` error while logging a sklearn model with `score_samples`
|
39
|
+
inference method.
|
40
|
+
- Registry: Fix a bug that model inference service creation fails on an existing and suspended service.
|
41
|
+
|
42
|
+
### Behavior Change
|
43
|
+
|
44
|
+
### New Features
|
45
|
+
|
46
|
+
- ML Job (PrPr): Update Container Runtime image version to `1.0.1`
|
47
|
+
- ML Job (PrPr): Add `enable_metrics` argument to job submission APIs to enable publishing service metrics to Event Table.
|
48
|
+
See [Accessing Event Table service metrics](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/monitoring-services#accessing-event-table-service-metrics)
|
49
|
+
for retrieving published metrics
|
50
|
+
and [Costs of telemetry data collection](https://docs.snowflake.com/en/developer-guide/logging-tracing/logging-tracing-billing)
|
51
|
+
for cost implications.
|
52
|
+
- Registry: When creating a copy of a `ModelVersion` with `log_model`, raise an exception if unsupported arguments are provided.
|
53
|
+
|
54
|
+
## 1.8.0 (03-20-2025)
|
4
55
|
|
5
56
|
### Bug Fixes
|
6
57
|
|
@@ -301,7 +352,6 @@
|
|
301
352
|
|
302
353
|
- Registry: Added support for handling Hugging Face model configurations with auto-mapping functionality.
|
303
354
|
- Registry: Added support for `keras` 3.x model with `tensorflow` and `pytorch` backend
|
304
|
-
- ML Job (PrPr): Support any serializable (pickleable) argument for `@remote` decorated functions
|
305
355
|
|
306
356
|
## 1.7.4 (01-28-2025)
|
307
357
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: snowflake-ml-python
|
3
|
-
Version: 1.8.
|
3
|
+
Version: 1.8.2
|
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:
|
@@ -236,7 +236,7 @@ License-File: LICENSE.txt
|
|
236
236
|
Requires-Dist: absl-py<2,>=0.15
|
237
237
|
Requires-Dist: anyio<5,>=3.5.0
|
238
238
|
Requires-Dist: cachetools<6,>=3.1.1
|
239
|
-
Requires-Dist: cloudpickle
|
239
|
+
Requires-Dist: cloudpickle<3,>=2.0.0
|
240
240
|
Requires-Dist: cryptography
|
241
241
|
Requires-Dist: fsspec[http]<2026,>=2024.6.1
|
242
242
|
Requires-Dist: importlib_resources<7,>=6.1.1
|
@@ -253,6 +253,7 @@ Requires-Dist: scikit-learn<1.6,>=1.4
|
|
253
253
|
Requires-Dist: scipy<2,>=1.9
|
254
254
|
Requires-Dist: snowflake-connector-python[pandas]<4,>=3.12.0
|
255
255
|
Requires-Dist: snowflake-snowpark-python!=1.26.0,<2,>=1.17.0
|
256
|
+
Requires-Dist: snowflake.core<2,>=1.0.2
|
256
257
|
Requires-Dist: sqlparse<1,>=0.4
|
257
258
|
Requires-Dist: typing-extensions<5,>=4.1.0
|
258
259
|
Requires-Dist: xgboost<3,>=1.7.3
|
@@ -402,7 +403,58 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
402
403
|
|
403
404
|
# Release History
|
404
405
|
|
405
|
-
## 1.8.
|
406
|
+
## 1.8.2
|
407
|
+
|
408
|
+
### Bug Fixes
|
409
|
+
|
410
|
+
### Behavior Change
|
411
|
+
|
412
|
+
### New Features
|
413
|
+
|
414
|
+
- ML Job now available as a PuPr feature
|
415
|
+
- ML Job: Add ability to retrieve results for `@remote` decorated functions using
|
416
|
+
new `MLJobWithResult.result()` API, which will return the unpickled result
|
417
|
+
or raise an exception if the job execution failed.
|
418
|
+
- ML Job: Pre-created Snowpark Session is now available inside job payloads using
|
419
|
+
`snowflake.snowpark.context.get_active_session()`
|
420
|
+
- Registry: Introducing `save_location` to `log_model` using the `options` argument.
|
421
|
+
User's can provide the path to write the model version's files that get stored in Snowflake's stage.
|
422
|
+
- Registry: Include model dependencies in pip requirements by default when logging in Container Runtime.
|
423
|
+
|
424
|
+
```python
|
425
|
+
reg.log_model(
|
426
|
+
model=...,
|
427
|
+
model_name=...,
|
428
|
+
version_name=...,
|
429
|
+
...,
|
430
|
+
options={"save_location": "./model_directory"},
|
431
|
+
)
|
432
|
+
```
|
433
|
+
|
434
|
+
- ML Job (PrPr): Add `instance_id` argument to `get_logs` and `show_logs` method to support multi node log retrieval
|
435
|
+
- ML Job (PrPr): Add `job.get_instance_status(instance_id=...)` API to support multi node status retrieval
|
436
|
+
|
437
|
+
## 1.8.1 (03-26-2025)
|
438
|
+
|
439
|
+
### Bug Fixes
|
440
|
+
|
441
|
+
- Registry: Fix a bug that caused `unsupported model type` error while logging a sklearn model with `score_samples`
|
442
|
+
inference method.
|
443
|
+
- Registry: Fix a bug that model inference service creation fails on an existing and suspended service.
|
444
|
+
|
445
|
+
### Behavior Change
|
446
|
+
|
447
|
+
### New Features
|
448
|
+
|
449
|
+
- ML Job (PrPr): Update Container Runtime image version to `1.0.1`
|
450
|
+
- ML Job (PrPr): Add `enable_metrics` argument to job submission APIs to enable publishing service metrics to Event Table.
|
451
|
+
See [Accessing Event Table service metrics](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/monitoring-services#accessing-event-table-service-metrics)
|
452
|
+
for retrieving published metrics
|
453
|
+
and [Costs of telemetry data collection](https://docs.snowflake.com/en/developer-guide/logging-tracing/logging-tracing-billing)
|
454
|
+
for cost implications.
|
455
|
+
- Registry: When creating a copy of a `ModelVersion` with `log_model`, raise an exception if unsupported arguments are provided.
|
456
|
+
|
457
|
+
## 1.8.0 (03-20-2025)
|
406
458
|
|
407
459
|
### Bug Fixes
|
408
460
|
|
@@ -703,7 +755,6 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
703
755
|
|
704
756
|
- Registry: Added support for handling Hugging Face model configurations with auto-mapping functionality.
|
705
757
|
- Registry: Added support for `keras` 3.x model with `tensorflow` and `pytorch` backend
|
706
|
-
- ML Job (PrPr): Support any serializable (pickleable) argument for `@remote` decorated functions
|
707
758
|
|
708
759
|
## 1.7.4 (01-28-2025)
|
709
760
|
|
@@ -8,7 +8,7 @@ description = "The machine learning client library that is used for interacting
|
|
8
8
|
classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Other Environment", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Database", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Scientific/Engineering :: Information Analysis",]
|
9
9
|
requires-python = ">=3.9, <3.13"
|
10
10
|
dynamic = [ "version", "readme",]
|
11
|
-
dependencies = [ "absl-py>=0.15,<2", "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0", "cryptography", "fsspec[http]>=2024.6.1,<2026", "importlib_resources>=6.1.1, <7", "numpy>=1.23,<2", "packaging>=20.9,<25", "pandas>=1.0.0,<3", "pyarrow", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "s3fs>=2024.6.1,<2026", "scikit-learn>=1.4,<1.6", "scipy>=1.9,<2", "snowflake-connector-python[pandas]>=3.12.0,<4", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "sqlparse>=0.4,<1", "typing-extensions>=4.1.0,<5", "xgboost>=1.7.3,<3",]
|
11
|
+
dependencies = [ "absl-py>=0.15,<2", "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0,<3", "cryptography", "fsspec[http]>=2024.6.1,<2026", "importlib_resources>=6.1.1, <7", "numpy>=1.23,<2", "packaging>=20.9,<25", "pandas>=1.0.0,<3", "pyarrow", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "s3fs>=2024.6.1,<2026", "scikit-learn>=1.4,<1.6", "scipy>=1.9,<2", "snowflake-connector-python[pandas]>=3.12.0,<4", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "snowflake.core>=1.0.2,<2", "sqlparse>=0.4,<1", "typing-extensions>=4.1.0,<5", "xgboost>=1.7.3,<3",]
|
12
12
|
[[project.authors]]
|
13
13
|
name = "Snowflake, Inc"
|
14
14
|
email = "support@snowflake.com"
|
@@ -1,11 +1,13 @@
|
|
1
1
|
import json
|
2
2
|
import logging
|
3
3
|
import time
|
4
|
+
import typing
|
4
5
|
from io import BytesIO
|
5
6
|
from typing import Any, Callable, Dict, Iterator, List, Optional, TypedDict, Union, cast
|
6
7
|
from urllib.parse import urlunparse
|
7
8
|
|
8
9
|
import requests
|
10
|
+
from snowflake.core.rest import RESTResponse
|
9
11
|
from typing_extensions import NotRequired, deprecated
|
10
12
|
|
11
13
|
from snowflake import snowpark
|
@@ -72,6 +74,27 @@ class ResponseParseException(Exception):
|
|
72
74
|
pass
|
73
75
|
|
74
76
|
|
77
|
+
class MidStreamException(Exception):
|
78
|
+
"""The SSE (Server-sent Event) stream can contain error messages in the middle of the stream,
|
79
|
+
using the “error” event type. This exception is raised when there is such a mid-stream error."""
|
80
|
+
|
81
|
+
def __init__(
|
82
|
+
self,
|
83
|
+
reason: typing.Optional[str] = None,
|
84
|
+
http_resp: typing.Optional["RESTResponse"] = None,
|
85
|
+
request_id: typing.Optional[str] = None,
|
86
|
+
) -> None:
|
87
|
+
message = ""
|
88
|
+
if reason is not None:
|
89
|
+
message = reason
|
90
|
+
if http_resp:
|
91
|
+
message = f"Error in stream (HTTP Response: {http_resp.status}) - {http_resp.reason}"
|
92
|
+
if request_id != "":
|
93
|
+
# add request_id to error message
|
94
|
+
message += f" (Request ID: {request_id})"
|
95
|
+
super().__init__(message)
|
96
|
+
|
97
|
+
|
75
98
|
class GuardrailsOptions(TypedDict):
|
76
99
|
enabled: bool
|
77
100
|
"""A boolean value that controls whether Cortex Guard filters unsafe or harmful responses
|
@@ -120,6 +143,18 @@ def _make_common_request_headers() -> Dict[str, str]:
|
|
120
143
|
return headers
|
121
144
|
|
122
145
|
|
146
|
+
def _get_request_id(resp: Dict[str, Any]) -> Optional[Any]:
|
147
|
+
request_id = None
|
148
|
+
if "headers" in resp:
|
149
|
+
for key, value in resp["headers"].items():
|
150
|
+
# Note: There is some whitespace in the headers making it not possible
|
151
|
+
# to directly index the header reliably.
|
152
|
+
if key.strip().lower() == "x-snowflake-request-id":
|
153
|
+
request_id = value
|
154
|
+
break
|
155
|
+
return request_id
|
156
|
+
|
157
|
+
|
123
158
|
def _validate_response_format_object(options: CompleteOptions) -> None:
|
124
159
|
"""Validate the response format object for structured-output mode.
|
125
160
|
|
@@ -188,13 +223,7 @@ def _xp_dict_to_response(raw_resp: Dict[str, Any]) -> requests.Response:
|
|
188
223
|
response.status_code = int(raw_resp["status"])
|
189
224
|
response.headers = raw_resp["headers"]
|
190
225
|
|
191
|
-
request_id =
|
192
|
-
for key, value in raw_resp["headers"].items():
|
193
|
-
# Note: there is some whitespace in the headers making it not possible
|
194
|
-
# to directly index the header reliably.
|
195
|
-
if key.strip().lower() == "x-snowflake-request-id":
|
196
|
-
request_id = value
|
197
|
-
break
|
226
|
+
request_id = _get_request_id(raw_resp)
|
198
227
|
|
199
228
|
data = raw_resp["content"]
|
200
229
|
try:
|
@@ -276,7 +305,12 @@ def _call_complete_rest(
|
|
276
305
|
)
|
277
306
|
|
278
307
|
|
279
|
-
def _return_stream_response(
|
308
|
+
def _return_stream_response(
|
309
|
+
response: requests.Response,
|
310
|
+
deadline: Optional[float],
|
311
|
+
session: Optional[snowpark.Session] = None,
|
312
|
+
) -> Iterator[str]:
|
313
|
+
request_id = _get_request_id(dict(response.headers))
|
280
314
|
client = SSEClient(response)
|
281
315
|
for event in client.events():
|
282
316
|
if deadline is not None and time.time() > deadline:
|
@@ -294,7 +328,7 @@ def _return_stream_response(response: requests.Response, deadline: Optional[floa
|
|
294
328
|
# This is the case of midstream errors which were introduced specifically for structured output.
|
295
329
|
# TODO: discuss during code review
|
296
330
|
if parsed_resp.get("error"):
|
297
|
-
|
331
|
+
raise MidStreamException(reason=response.text, request_id=request_id)
|
298
332
|
else:
|
299
333
|
pass
|
300
334
|
|
@@ -375,7 +409,7 @@ def _complete_rest(
|
|
375
409
|
else:
|
376
410
|
response = _call_complete_rest(model=model, prompt=prompt, options=options, session=session, deadline=deadline)
|
377
411
|
assert response.status_code >= 200 and response.status_code < 300
|
378
|
-
return _return_stream_response(response, deadline)
|
412
|
+
return _return_stream_response(response, deadline, session)
|
379
413
|
|
380
414
|
|
381
415
|
def _complete_impl(
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import json
|
2
|
+
from contextlib import contextmanager
|
2
3
|
from typing import Any, Dict, Optional
|
3
4
|
|
4
5
|
from absl import logging
|
@@ -27,16 +28,45 @@ class PlatformCapabilities:
|
|
27
28
|
"""
|
28
29
|
|
29
30
|
_instance: Optional["PlatformCapabilities"] = None
|
31
|
+
# Used for unittesting only. This is to avoid the need to mock the session object or reaching out to Snowflake
|
32
|
+
_mock_features: Optional[Dict[str, Any]] = None
|
30
33
|
|
31
34
|
@classmethod
|
32
35
|
def get_instance(cls, session: Optional[snowpark_session.Session] = None) -> "PlatformCapabilities":
|
36
|
+
# Used for unittesting only. In this situation, _instance is not initialized.
|
37
|
+
if cls._mock_features is not None:
|
38
|
+
return cls(features=cls._mock_features)
|
33
39
|
if not cls._instance:
|
34
|
-
cls._instance = cls(session)
|
40
|
+
cls._instance = cls(session=session)
|
35
41
|
return cls._instance
|
36
42
|
|
43
|
+
@classmethod
|
44
|
+
def set_mock_features(cls, features: Optional[Dict[str, Any]] = None) -> None:
|
45
|
+
cls._mock_features = features
|
46
|
+
|
47
|
+
@classmethod
|
48
|
+
def clear_mock_features(cls) -> None:
|
49
|
+
cls._mock_features = None
|
50
|
+
|
51
|
+
# For contextmanager, we need to have return type Iterator[Never]. However, Never type is introduced only in
|
52
|
+
# Python 3.11. So, we are ignoring the type for this method.
|
53
|
+
@classmethod # type: ignore[arg-type]
|
54
|
+
@contextmanager
|
55
|
+
def mock_features(cls, features: Dict[str, Any]) -> None: # type: ignore[misc]
|
56
|
+
logging.debug(f"Setting mock features: {features}")
|
57
|
+
cls.set_mock_features(features)
|
58
|
+
try:
|
59
|
+
yield
|
60
|
+
finally:
|
61
|
+
logging.debug(f"Clearing mock features: {features}")
|
62
|
+
cls.clear_mock_features()
|
63
|
+
|
37
64
|
def is_nested_function_enabled(self) -> bool:
|
38
65
|
return self._get_bool_feature("SPCS_MODEL_ENABLE_EMBEDDED_SERVICE_FUNCTIONS", False)
|
39
66
|
|
67
|
+
def is_inlined_deployment_spec_enabled(self) -> bool:
|
68
|
+
return self._get_bool_feature("ENABLE_INLINE_DEPLOYMENT_SPEC", False)
|
69
|
+
|
40
70
|
def is_live_commit_enabled(self) -> bool:
|
41
71
|
return self._get_bool_feature("ENABLE_BUNDLE_MODULE_CHECKOUT", False)
|
42
72
|
|
@@ -68,11 +98,17 @@ class PlatformCapabilities:
|
|
68
98
|
# This can happen is server side is older than 9.2. That is fine.
|
69
99
|
return {}
|
70
100
|
|
71
|
-
def __init__(
|
101
|
+
def __init__(
|
102
|
+
self, *, session: Optional[snowpark_session.Session] = None, features: Optional[Dict[str, Any]] = None
|
103
|
+
) -> None:
|
104
|
+
# This is for testing purposes only.
|
105
|
+
if features:
|
106
|
+
self.features = features
|
107
|
+
return
|
72
108
|
if not session:
|
73
109
|
session = next(iter(snowpark_session._get_active_sessions()))
|
74
110
|
assert session, "Missing active session object"
|
75
|
-
self.features
|
111
|
+
self.features = PlatformCapabilities._get_features(session)
|
76
112
|
|
77
113
|
def _get_bool_feature(self, feature_name: str, default_value: bool) -> bool:
|
78
114
|
value = self.features.get(feature_name, default_value)
|
@@ -27,6 +27,7 @@ from snowflake.snowpark import context as sf_context
|
|
27
27
|
|
28
28
|
if TYPE_CHECKING:
|
29
29
|
import pandas as pd
|
30
|
+
import ray
|
30
31
|
import tensorflow as tf
|
31
32
|
from torch.utils import data as torch_data
|
32
33
|
|
@@ -241,6 +242,30 @@ class DataConnector:
|
|
241
242
|
"""
|
242
243
|
return self._ingestor.to_pandas(limit)
|
243
244
|
|
245
|
+
@telemetry.send_api_usage_telemetry(
|
246
|
+
project=_PROJECT,
|
247
|
+
subproject_extractor=lambda self: type(self).__name__,
|
248
|
+
func_params_to_log=["limit"],
|
249
|
+
)
|
250
|
+
def to_ray_dataset(self) -> "ray.data.Dataset":
|
251
|
+
"""Retrieve the Snowflake data as a Ray Dataset.
|
252
|
+
|
253
|
+
Returns:
|
254
|
+
A Ray Dataset.
|
255
|
+
|
256
|
+
Raises:
|
257
|
+
ImportError: If Ray is not installed in the local environment.
|
258
|
+
"""
|
259
|
+
if hasattr(self._ingestor, "to_ray_dataset"):
|
260
|
+
return self._ingestor.to_ray_dataset()
|
261
|
+
|
262
|
+
try:
|
263
|
+
import ray
|
264
|
+
|
265
|
+
return ray.data.from_pandas(self._ingestor.to_pandas())
|
266
|
+
except ImportError as e:
|
267
|
+
raise ImportError("Ray is not installed, please install ray in your local environment.") from e
|
268
|
+
|
244
269
|
|
245
270
|
# Switch to use Runtime's Data Ingester if running in ML runtime
|
246
271
|
# Fail silently if the data ingester is not found
|
{snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/dataset/dataset_reader.py
RENAMED
@@ -5,6 +5,7 @@ from snowflake.ml._internal import telemetry
|
|
5
5
|
from snowflake.ml._internal.lineage import lineage_utils
|
6
6
|
from snowflake.ml.data import data_connector, data_ingestor, data_source, ingestor_utils
|
7
7
|
from snowflake.ml.fileset import snowfs
|
8
|
+
from snowflake.snowpark._internal import utils as snowpark_utils
|
8
9
|
|
9
10
|
_PROJECT = "Dataset"
|
10
11
|
_SUBPROJECT = "DatasetReader"
|
@@ -94,7 +95,10 @@ class DatasetReader(data_connector.DataConnector):
|
|
94
95
|
dfs: List[snowpark.DataFrame] = []
|
95
96
|
for source in self.data_sources:
|
96
97
|
assert isinstance(source, data_source.DatasetInfo) and source.url is not None
|
97
|
-
|
98
|
+
stage_reader = self._session.read.option("pattern", file_path_pattern)
|
99
|
+
if "INFER_SCHEMA_OPTIONS" in snowpark_utils.NON_FORMAT_TYPE_OPTIONS:
|
100
|
+
stage_reader = stage_reader.option("INFER_SCHEMA_OPTIONS", {"MAX_FILE_COUNT": 1})
|
101
|
+
df = stage_reader.parquet(source.url)
|
98
102
|
if only_feature_cols and source.exclude_cols:
|
99
103
|
df = df.drop(source.exclude_cols)
|
100
104
|
dfs.append(df)
|
{snowflake_ml_python-1.8.0 → snowflake_ml_python-1.8.2}/snowflake/ml/jobs/_utils/constants.py
RENAMED
@@ -4,6 +4,7 @@ from snowflake.ml.jobs._utils.types import ComputeResources
|
|
4
4
|
# SPCS specification constants
|
5
5
|
DEFAULT_CONTAINER_NAME = "main"
|
6
6
|
PAYLOAD_DIR_ENV_VAR = "MLRS_PAYLOAD_DIR"
|
7
|
+
RESULT_PATH_ENV_VAR = "MLRS_RESULT_PATH"
|
7
8
|
MEMORY_VOLUME_NAME = "dshm"
|
8
9
|
STAGE_VOLUME_NAME = "stage-volume"
|
9
10
|
STAGE_VOLUME_MOUNT_PATH = "/mnt/app"
|
@@ -12,16 +13,12 @@ STAGE_VOLUME_MOUNT_PATH = "/mnt/app"
|
|
12
13
|
DEFAULT_IMAGE_REPO = "/snowflake/images/snowflake_images"
|
13
14
|
DEFAULT_IMAGE_CPU = "st_plat/runtime/x86/runtime_image/snowbooks"
|
14
15
|
DEFAULT_IMAGE_GPU = "st_plat/runtime/x86/generic_gpu/runtime_image/snowbooks"
|
15
|
-
DEFAULT_IMAGE_TAG = "0.
|
16
|
+
DEFAULT_IMAGE_TAG = "1.0.1"
|
16
17
|
DEFAULT_ENTRYPOINT_PATH = "func.py"
|
17
18
|
|
18
19
|
# Percent of container memory to allocate for /dev/shm volume
|
19
20
|
MEMORY_VOLUME_SIZE = 0.3
|
20
21
|
|
21
|
-
# Multi Node Headless prototype constants
|
22
|
-
# TODO: Replace this placeholder with the actual container runtime image tag.
|
23
|
-
MULTINODE_HEADLESS_IMAGE_TAG = "latest"
|
24
|
-
|
25
22
|
# Ray port configuration
|
26
23
|
RAY_PORTS = {
|
27
24
|
"HEAD_CLIENT_SERVER_PORT": "10001",
|
@@ -48,6 +45,7 @@ JOB_POLL_MAX_DELAY_SECONDS = 1
|
|
48
45
|
|
49
46
|
# Magic attributes
|
50
47
|
IS_MLJOB_REMOTE_ATTR = "_is_mljob_remote_callable"
|
48
|
+
RESULT_PATH_DEFAULT_VALUE = "mljob_result.pkl"
|
51
49
|
|
52
50
|
# Compute pool resource information
|
53
51
|
# TODO: Query Snowflake for resource information instead of relying on this hardcoded
|