snowflake-ml-python 1.48.0__tar.gz → 1.50.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.48.0 → snowflake_ml_python-1.50.0}/CHANGELOG.md +34 -1
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/PKG-INFO +36 -4
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/pyproject.toml +1 -1
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/platform_capabilities.py +5 -1
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/query_result_checker.py +14 -3
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/feature_store.py +17 -5
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/feature_view.py +28 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/metadata_manager.py +5 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/online_service.py +13 -1
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/tile_sql_generator.py +8 -9
- snowflake_ml_python-1.50.0/snowflake/ml/model/_client/model/batch_inference_job_specs.py +166 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/model/batch_inference_serialization.py +3 -1
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +7 -105
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/model/model_version_impl.py +37 -14
- snowflake_ml_python-1.50.0/snowflake/ml/model/_client/ops/live_commit_naming.py +19 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/ops/model_ops.py +73 -32
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/ops/service_ops.py +146 -40
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/service/inference_job_service_spec.py +8 -6
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/sql/model_version.py +16 -6
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +11 -7
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +1 -2
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/batch/__init__.py +4 -2
- snowflake_ml_python-1.50.0/snowflake/ml/model/batch_inference/__init__.py +25 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/registry/_manager/model_manager.py +71 -30
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake_ml_python.egg-info/PKG-INFO +36 -4
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake_ml_python.egg-info/SOURCES.txt +3 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake_ml_python.egg-info/requires.txt +1 -2
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/README.md +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/setup.cfg +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_classify_text.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_complete.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/env_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/file_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/tee.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/_internal/utils/url.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/data/data_connector.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_entities/run.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_logging/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_logging/experiment_logger.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_logging/experiment_logging_context.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/_source_info.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/callback/keras.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/experiment_tracking.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/experiment/utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/_compute_fn_validation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/aggregation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/feature.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/feature_group.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/feature_view_append_only_validation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/feature_view_refresh_freq.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/interval_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/online_service_http_client.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/realtime_config.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/realtime_dataset.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/realtime_dataset_udf.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/realtime_registration.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/request_source.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/spec/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/spec/builder.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/spec/enums.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/spec/models.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/spec/table_schema_evolution.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/stream_config.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/stream_source.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/streaming_registration.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/results.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/arg_protocol.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/payload_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/startup.sh +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/_utils/type_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/job.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/job_definition.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/jobs/manager.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/lineage/lineage_node.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/model/batch_inference_task.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/ops/deployment_step.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/ops/param_ops.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/ops/param_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/service/import_model_spec_schema.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/sql/model.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/sql/service.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/huggingface_lazy_uploader.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/infer_function_init_once.py_template +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned_init_once.py_template +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function_init_once.py_template +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_default.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_openai_chat_wrapper.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_task_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_text_to_text.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/automatic_speech_recognition.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/conversational.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/document_question_answering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/fill_mask.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_feature_extraction.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_text_to_text.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_to_text.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/object_detection.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/question_answering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/summarization.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/table_question_answering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text2text_generation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_generation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/token_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/translation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_text_to_text.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/visual_question_answering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_audio_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_image_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_object_detection.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_text_classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_meta/model_sample_input_data.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_save_options.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/core.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/_signatures/utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/code_path.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/compute_pool.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/event_handler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/inference_engine.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/model_signature.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/models/huggingface.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/openai_signatures.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/type_hints.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/model/volatility.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/svm/svc.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/svm/svr.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/registry/registry.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/utils/html_utils.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/utils/stage_file.py +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,34 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.50.0
|
|
4
|
+
|
|
5
|
+
### New Features
|
|
6
|
+
|
|
7
|
+
### Bug Fixes
|
|
8
|
+
|
|
9
|
+
### Behavior Changes
|
|
10
|
+
|
|
11
|
+
### Deprecations
|
|
12
|
+
|
|
13
|
+
## 1.49.0 (2026-07-29)
|
|
14
|
+
|
|
15
|
+
### New Features
|
|
16
|
+
|
|
17
|
+
* Experiment Tracking: `ExperimentTracking` now captures best-effort source provenance (entry-point filename and any
|
|
18
|
+
surrounding git commit, branch, and remote URL) for each new run by default. Pass `capture_source_info=False` to
|
|
19
|
+
disable it. Collection is always non-fatal and never blocks run creation.
|
|
20
|
+
|
|
21
|
+
### Bug Fixes
|
|
22
|
+
|
|
23
|
+
* Registry: Fixed `ModelVersion.load()` failing with `Result for query <id> has expired` inside Snowflake Container
|
|
24
|
+
Runtime notebooks. Model file downloads now use the `session.file.get` FileOperation API (the same mechanism used
|
|
25
|
+
when logging a model) instead of a raw `GET` query, avoiding a dependency on `collect()` result sets.
|
|
26
|
+
|
|
27
|
+
### Behavior Changes
|
|
28
|
+
|
|
29
|
+
### Deprecations
|
|
30
|
+
|
|
31
|
+
## 1.48.0 (2026-07-22)
|
|
4
32
|
|
|
5
33
|
### New Features
|
|
6
34
|
|
|
@@ -10,6 +38,11 @@
|
|
|
10
38
|
|
|
11
39
|
### Bug Fixes
|
|
12
40
|
|
|
41
|
+
* Registry: Fixed a bug where logging a model with explainability enabled could fail with a data validation error
|
|
42
|
+
("There is no non-null data in column ...") when a numeric input column was entirely null within the background
|
|
43
|
+
sample. The `explain` method now reuses the model's existing input signature instead of re-inferring it from the
|
|
44
|
+
sample.
|
|
45
|
+
|
|
13
46
|
### Behavior Changes
|
|
14
47
|
|
|
15
48
|
### Deprecations
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowflake-ml-python
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.50.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:
|
|
@@ -234,9 +234,8 @@ Requires-Python: <3.14,>=3.9
|
|
|
234
234
|
Description-Content-Type: text/markdown
|
|
235
235
|
License-File: LICENSE.txt
|
|
236
236
|
Requires-Dist: anyio<5,>=3.5.0
|
|
237
|
-
Requires-Dist: cachetools
|
|
237
|
+
Requires-Dist: cachetools>=3.1.1
|
|
238
238
|
Requires-Dist: cloudpickle>=2.0.0
|
|
239
|
-
Requires-Dist: cryptography
|
|
240
239
|
Requires-Dist: fsspec[http]<2026,>=2024.6.1
|
|
241
240
|
Requires-Dist: h2<5,>=4.3.0
|
|
242
241
|
Requires-Dist: importlib_resources<7,>=6.1.1
|
|
@@ -417,7 +416,35 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
417
416
|
|
|
418
417
|
# Release History
|
|
419
418
|
|
|
420
|
-
## 1.
|
|
419
|
+
## 1.50.0
|
|
420
|
+
|
|
421
|
+
### New Features
|
|
422
|
+
|
|
423
|
+
### Bug Fixes
|
|
424
|
+
|
|
425
|
+
### Behavior Changes
|
|
426
|
+
|
|
427
|
+
### Deprecations
|
|
428
|
+
|
|
429
|
+
## 1.49.0 (2026-07-29)
|
|
430
|
+
|
|
431
|
+
### New Features
|
|
432
|
+
|
|
433
|
+
* Experiment Tracking: `ExperimentTracking` now captures best-effort source provenance (entry-point filename and any
|
|
434
|
+
surrounding git commit, branch, and remote URL) for each new run by default. Pass `capture_source_info=False` to
|
|
435
|
+
disable it. Collection is always non-fatal and never blocks run creation.
|
|
436
|
+
|
|
437
|
+
### Bug Fixes
|
|
438
|
+
|
|
439
|
+
* Registry: Fixed `ModelVersion.load()` failing with `Result for query <id> has expired` inside Snowflake Container
|
|
440
|
+
Runtime notebooks. Model file downloads now use the `session.file.get` FileOperation API (the same mechanism used
|
|
441
|
+
when logging a model) instead of a raw `GET` query, avoiding a dependency on `collect()` result sets.
|
|
442
|
+
|
|
443
|
+
### Behavior Changes
|
|
444
|
+
|
|
445
|
+
### Deprecations
|
|
446
|
+
|
|
447
|
+
## 1.48.0 (2026-07-22)
|
|
421
448
|
|
|
422
449
|
### New Features
|
|
423
450
|
|
|
@@ -427,6 +454,11 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
427
454
|
|
|
428
455
|
### Bug Fixes
|
|
429
456
|
|
|
457
|
+
* Registry: Fixed a bug where logging a model with explainability enabled could fail with a data validation error
|
|
458
|
+
("There is no non-null data in column ...") when a numeric input column was entirely null within the background
|
|
459
|
+
sample. The `explain` method now reuses the model's existing input signature instead of re-inferring it from the
|
|
460
|
+
sample.
|
|
461
|
+
|
|
430
462
|
### Behavior Changes
|
|
431
463
|
|
|
432
464
|
### Deprecations
|
|
@@ -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.14"
|
|
10
10
|
dynamic = [ "version", "readme",]
|
|
11
|
-
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1
|
|
11
|
+
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1", "cloudpickle>=2.0.0", "fsspec[http]>=2024.6.1,<2026", "h2>=4.3.0,<5", "importlib_resources>=6.1.1, <7", "jinja2>=3.1.0,<4", "numpy>=1.23,<3", "packaging>=20.9,<26", "pandas>=2.1.4,<3", "platformdirs<5", "pyarrow", "pydantic>=2.8.2, <3", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "scikit-learn<1.9", "scipy>=1.9,<2", "shap>=0.46.0,<1", "snowflake-connector-python[pandas]>=3.17.3,<5", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "sqlparse>=0.4,<1", "tqdm<5", "typing-extensions>=4.1.0,<5", "xgboost<4",]
|
|
12
12
|
[[project.authors]]
|
|
13
13
|
name = "Snowflake, Inc"
|
|
14
14
|
email = "support@snowflake.com"
|
|
@@ -16,6 +16,7 @@ from snowflake.snowpark import (
|
|
|
16
16
|
logger = logging.getLogger(__name__)
|
|
17
17
|
|
|
18
18
|
LIVE_COMMIT_PARAMETER = "ENABLE_LIVE_VERSION_IN_SDK"
|
|
19
|
+
HIDDEN_LIVE_COMMIT_PARAMETER = "ENABLE_HIDDEN_LIVE_VERSION_IN_SDK"
|
|
19
20
|
INLINE_DEPLOYMENT_SPEC_PARAMETER = "ENABLE_INLINE_DEPLOYMENT_SPEC_FROM_CLIENT_VERSION"
|
|
20
21
|
SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST = "SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST"
|
|
21
22
|
ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS = "ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS"
|
|
@@ -80,6 +81,9 @@ class PlatformCapabilities:
|
|
|
80
81
|
def is_live_commit_enabled(self) -> bool:
|
|
81
82
|
return self._get_bool_feature(LIVE_COMMIT_PARAMETER, False)
|
|
82
83
|
|
|
84
|
+
def is_hidden_live_commit_enabled(self) -> bool:
|
|
85
|
+
return False
|
|
86
|
+
|
|
83
87
|
def is_model_method_signature_parameters_enabled(self) -> bool:
|
|
84
88
|
return self._get_bool_feature(ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS, False)
|
|
85
89
|
|
|
@@ -127,7 +131,7 @@ class PlatformCapabilities:
|
|
|
127
131
|
self, *, session: Optional[snowpark_session.Session] = None, features: Optional[dict[str, Any]] = None
|
|
128
132
|
) -> None:
|
|
129
133
|
# This is for testing purposes only.
|
|
130
|
-
if features:
|
|
134
|
+
if features is not None:
|
|
131
135
|
self.features = features
|
|
132
136
|
return
|
|
133
137
|
if not session:
|
|
@@ -242,23 +242,34 @@ class SqlResultValidator(ResultValidator):
|
|
|
242
242
|
result = (
|
|
243
243
|
SqlResultValidator(
|
|
244
244
|
session=self._session,
|
|
245
|
-
query="UPDATE table SET NAME =
|
|
245
|
+
query="UPDATE table SET NAME = ?",
|
|
246
246
|
statement_params=statement_params,
|
|
247
|
+
params=["name"],
|
|
247
248
|
)
|
|
248
249
|
.has_dimensions(expected_rows=1, expected_cols=1)
|
|
249
250
|
.has_partial_match(row_idx=0, col_idx=0, expected_value="number of rows updated=1")
|
|
250
251
|
.validate()
|
|
251
252
|
)
|
|
253
|
+
|
|
254
|
+
``params`` are bound as SQL query parameters (``?`` placeholders) rather than interpolated into the query.
|
|
252
255
|
"""
|
|
253
256
|
|
|
254
257
|
def __init__(
|
|
255
|
-
self,
|
|
258
|
+
self,
|
|
259
|
+
session: snowpark.Session,
|
|
260
|
+
query: str,
|
|
261
|
+
statement_params: Optional[dict[str, Any]] = None,
|
|
262
|
+
*,
|
|
263
|
+
params: Optional[list[Any]] = None,
|
|
256
264
|
) -> None:
|
|
257
265
|
self._session: snowpark.Session = session
|
|
258
266
|
self._query: str = query
|
|
259
267
|
self._success_matchers: list[Callable[[list[snowpark.Row], Optional[str]], bool]] = []
|
|
260
268
|
self._statement_params: Optional[dict[str, Any]] = statement_params
|
|
269
|
+
self._params: Optional[list[Any]] = params
|
|
261
270
|
|
|
262
271
|
def _get_result(self) -> list[snowpark.Row]:
|
|
263
272
|
"""Collect the result of the given SQL query."""
|
|
264
|
-
|
|
273
|
+
if self._params is None:
|
|
274
|
+
return self._session.sql(self._query).collect(statement_params=self._statement_params)
|
|
275
|
+
return self._session.sql(self._query, params=self._params).collect(statement_params=self._statement_params)
|
|
@@ -27,7 +27,6 @@ from typing_extensions import Concatenate, ParamSpec
|
|
|
27
27
|
|
|
28
28
|
import snowflake.ml.feature_store.feature_view as fv_mod
|
|
29
29
|
import snowflake.ml.version as snowml_version
|
|
30
|
-
from snowflake.ml import dataset
|
|
31
30
|
from snowflake.ml._internal import telemetry
|
|
32
31
|
from snowflake.ml._internal.exceptions import (
|
|
33
32
|
dataset_errors,
|
|
@@ -42,7 +41,10 @@ from snowflake.ml._internal.utils.sql_identifier import (
|
|
|
42
41
|
parse_fully_qualified_name,
|
|
43
42
|
to_sql_identifiers,
|
|
44
43
|
)
|
|
45
|
-
|
|
44
|
+
|
|
45
|
+
if TYPE_CHECKING:
|
|
46
|
+
from snowflake.ml import dataset
|
|
47
|
+
|
|
46
48
|
from snowflake.ml.feature_store import (
|
|
47
49
|
feature_group as fg_mod,
|
|
48
50
|
feature_view_append_only_validation,
|
|
@@ -3783,6 +3785,11 @@ class FeatureStore:
|
|
|
3783
3785
|
-------------------------------------------------------
|
|
3784
3786
|
|
|
3785
3787
|
"""
|
|
3788
|
+
from snowflake.ml import (
|
|
3789
|
+
dataset, # lazy import — heavy deps (numpy/pandas/pyarrow)
|
|
3790
|
+
)
|
|
3791
|
+
from snowflake.ml.dataset.dataset_metadata import FeatureStoreMetadata
|
|
3792
|
+
|
|
3786
3793
|
if output_type not in {"table", "dataset"}:
|
|
3787
3794
|
raise snowml_exceptions.SnowflakeMLException(
|
|
3788
3795
|
error_code=error_codes.INVALID_ARGUMENT,
|
|
@@ -3904,6 +3911,10 @@ class FeatureStore:
|
|
|
3904
3911
|
1.0
|
|
3905
3912
|
|
|
3906
3913
|
"""
|
|
3914
|
+
from snowflake.ml.dataset.dataset_metadata import (
|
|
3915
|
+
FeatureStoreMetadata, # lazy import
|
|
3916
|
+
)
|
|
3917
|
+
|
|
3907
3918
|
assert ds.selected_version is not None
|
|
3908
3919
|
source_meta = ds.selected_version._get_metadata()
|
|
3909
3920
|
if (
|
|
@@ -8274,8 +8285,8 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
|
|
|
8274
8285
|
(e.g. ``"get_feature_view"``, ``"get_feature_group"``).
|
|
8275
8286
|
|
|
8276
8287
|
Returns:
|
|
8277
|
-
The query endpoint URL when the Online Service is RUNNING
|
|
8278
|
-
advertises a ``query`` endpoint; ``None`` otherwise.
|
|
8288
|
+
The query endpoint URL when the Online Service is RUNNING or
|
|
8289
|
+
UPDATING and advertises a ``query`` endpoint; ``None`` otherwise.
|
|
8279
8290
|
"""
|
|
8280
8291
|
try:
|
|
8281
8292
|
st = online_service.fetch_online_service_status(
|
|
@@ -8293,7 +8304,8 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
|
|
|
8293
8304
|
)
|
|
8294
8305
|
return None
|
|
8295
8306
|
query_url = online_service.endpoint_url(st, "query", access=self._online_service_access)
|
|
8296
|
-
|
|
8307
|
+
# UPDATING (redeploy in progress) still serves the query endpoint, so accept it too.
|
|
8308
|
+
if st.status in ("RUNNING", "UPDATING") and query_url:
|
|
8297
8309
|
# Temporary: SYSTEM$ may return host-only query URLs until server sends full https URLs.
|
|
8298
8310
|
return query_url
|
|
8299
8311
|
warnings.warn(
|
{snowflake_ml_python-1.48.0 → snowflake_ml_python-1.50.0}/snowflake/ml/feature_store/feature_view.py
RENAMED
|
@@ -66,6 +66,34 @@ _PG_IDENTIFIER_BYTE_LIMIT = 63
|
|
|
66
66
|
_POSTGRES_ONLINE_MAX_NAME_VERSION_LEN = 45
|
|
67
67
|
_POSTGRES_ONLINE_MAX_COLUMN_LEN = 30
|
|
68
68
|
|
|
69
|
+
# The online-store schema is derived as "{schema}__{oft_id}", so its budget reserves room for the "__"
|
|
70
|
+
# separator and a 19-digit (64-bit) oft_id, keeping the derived identifier within the limit (63 - 2 - 19).
|
|
71
|
+
_POSTGRES_ONLINE_MAX_SCHEMA_LEN = 42
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def validate_postgres_online_schema_length(feature_store_schema: str) -> None:
|
|
75
|
+
"""Reject a Feature Store schema too long for the Postgres online-store schema identifier.
|
|
76
|
+
|
|
77
|
+
The online store derives its schema as "{feature_store_schema}__{oft_id}" and must fit PostgreSQL's
|
|
78
|
+
63-byte identifier limit, so the budget reserves room for the "__" separator and the downstream-assigned
|
|
79
|
+
oft_id. Called from :func:`online_service.create_online_service`, before any feature view or feature
|
|
80
|
+
group is materialized.
|
|
81
|
+
|
|
82
|
+
Args:
|
|
83
|
+
feature_store_schema: The Feature Store schema name that will prefix the Postgres online-store
|
|
84
|
+
schema.
|
|
85
|
+
|
|
86
|
+
Raises:
|
|
87
|
+
ValueError: If the schema length exceeds the Postgres online-store budget.
|
|
88
|
+
"""
|
|
89
|
+
if len(feature_store_schema) > _POSTGRES_ONLINE_MAX_SCHEMA_LEN:
|
|
90
|
+
raise ValueError(
|
|
91
|
+
f"feature store schema '{feature_store_schema}' is too long for the Postgres online store: "
|
|
92
|
+
f"it uses {len(feature_store_schema)} characters, but the limit is "
|
|
93
|
+
f"{_POSTGRES_ONLINE_MAX_SCHEMA_LEN}. Use a shorter Feature Store schema."
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
|
|
69
97
|
_RESULT_SCAN_QUERY_PATTERN = re.compile(
|
|
70
98
|
r".*FROM\s*TABLE\s*\(\s*RESULT_SCAN\s*\(.*",
|
|
71
99
|
flags=re.DOTALL | re.IGNORECASE | re.X,
|
|
@@ -1377,6 +1377,9 @@ class FeatureStoreMetadataManager:
|
|
|
1377
1377
|
# Strip surrounding quotes if present; callers pass resolved() which handles casing.
|
|
1378
1378
|
normalized_name = object_name.strip('"')
|
|
1379
1379
|
|
|
1380
|
+
# Writes append via INSERT and Snowflake does not enforce the primary
|
|
1381
|
+
# key, so multiple rows can share a key after a re-register. Return the
|
|
1382
|
+
# most recently written row so reads reflect the latest registration.
|
|
1380
1383
|
result = self._session.sql(
|
|
1381
1384
|
f"""
|
|
1382
1385
|
SELECT METADATA
|
|
@@ -1385,6 +1388,8 @@ class FeatureStoreMetadataManager:
|
|
|
1385
1388
|
AND OBJECT_NAME = '{normalized_name}'
|
|
1386
1389
|
AND VERSION = '{version}'
|
|
1387
1390
|
AND METADATA_TYPE = '{metadata_type.value}'
|
|
1391
|
+
ORDER BY UPDATED_AT DESC, CREATED_AT DESC
|
|
1392
|
+
LIMIT 1
|
|
1388
1393
|
"""
|
|
1389
1394
|
).collect(statement_params=self._telemetry_stmp)
|
|
1390
1395
|
|
|
@@ -241,6 +241,16 @@ def create_online_service(
|
|
|
241
241
|
error_code=error_codes.INVALID_ARGUMENT,
|
|
242
242
|
original_exception=ValueError("producer_role and consumer_role must be non-empty."),
|
|
243
243
|
)
|
|
244
|
+
from snowflake.ml.feature_store.feature_view import (
|
|
245
|
+
validate_postgres_online_schema_length,
|
|
246
|
+
)
|
|
247
|
+
|
|
248
|
+
try:
|
|
249
|
+
validate_postgres_online_schema_length(schema.resolved())
|
|
250
|
+
except ValueError as e:
|
|
251
|
+
raise snowml_exceptions.SnowflakeMLException(
|
|
252
|
+
error_code=error_codes.INVALID_ARGUMENT, original_exception=e
|
|
253
|
+
) from e
|
|
244
254
|
payload = json.dumps(
|
|
245
255
|
{
|
|
246
256
|
"roles": {
|
|
@@ -533,7 +543,9 @@ def _assert_online_service_running(
|
|
|
533
543
|
"then poll get_online_service_status() until RUNNING."
|
|
534
544
|
),
|
|
535
545
|
)
|
|
536
|
-
|
|
546
|
+
# UPDATING means a redeploy is in progress; the service is still operational and
|
|
547
|
+
# serves reads/writes, so treat it like RUNNING as long as an endpoint is available.
|
|
548
|
+
if st.status not in ("RUNNING", "UPDATING"):
|
|
537
549
|
raise snowml_exceptions.SnowflakeMLException(
|
|
538
550
|
error_code=error_codes.INVALID_ARGUMENT,
|
|
539
551
|
original_exception=ValueError(
|
|
@@ -1077,11 +1077,9 @@ class MergingSqlGenerator:
|
|
|
1077
1077
|
|
|
1078
1078
|
elif spec.function == AggregationType.APPROX_COUNT_DISTINCT:
|
|
1079
1079
|
col_name = spec.get_tile_column_name("DS_HLL")
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
f")) AS {output_col}"
|
|
1084
|
-
)
|
|
1080
|
+
# Round the HLL estimate to a BIGINT for online/offline parity.
|
|
1081
|
+
sketch_expr = f"DATASKETCHES_HLL_COMBINE(CASE WHEN {tile_filter} THEN {col_name} ELSE NULL END)"
|
|
1082
|
+
agg_columns.append(f"ROUND(DATASKETCHES_HLL_ESTIMATE({sketch_expr}))::BIGINT AS {output_col}")
|
|
1085
1083
|
|
|
1086
1084
|
elif spec.function == AggregationType.APPROX_PERCENTILE:
|
|
1087
1085
|
# Combine T-Digest states and estimate percentile
|
|
@@ -1209,9 +1207,9 @@ class MergingSqlGenerator:
|
|
|
1209
1207
|
)
|
|
1210
1208
|
elif spec.function == AggregationType.APPROX_COUNT_DISTINCT:
|
|
1211
1209
|
partial = spec.get_tile_column_name("DS_HLL")
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
)
|
|
1210
|
+
# Round the HLL estimate to a BIGINT for online/offline parity.
|
|
1211
|
+
sketch_expr = f"DATASKETCHES_HLL_COMBINE({partial})"
|
|
1212
|
+
inner_exprs.append(f"ROUND(DATASKETCHES_HLL_ESTIMATE({sketch_expr}))::BIGINT AS {output_col}")
|
|
1215
1213
|
elif spec.function == AggregationType.APPROX_PERCENTILE:
|
|
1216
1214
|
# T-Digest states are likewise mergeable across tiles per
|
|
1217
1215
|
# (entity, sk): combine then estimate at the requested
|
|
@@ -1378,7 +1376,8 @@ class MergingSqlGenerator:
|
|
|
1378
1376
|
|
|
1379
1377
|
elif spec.function == AggregationType.APPROX_COUNT_DISTINCT:
|
|
1380
1378
|
cum_col = spec.get_cumulative_column_name("DS_HLL")
|
|
1381
|
-
|
|
1379
|
+
# Round the HLL estimate to a BIGINT for online/offline parity.
|
|
1380
|
+
select_cols.append(f"ROUND(DATASKETCHES_HLL_ESTIMATE(TILES.{cum_col}))::BIGINT AS {output_col}")
|
|
1382
1381
|
|
|
1383
1382
|
elif spec.function == AggregationType.APPROX_PERCENTILE:
|
|
1384
1383
|
cum_col = spec.get_cumulative_column_name("TDIGEST")
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
from enum import Enum
|
|
2
|
+
from typing import Any, Optional
|
|
3
|
+
|
|
4
|
+
from pydantic import BaseModel, ConfigDict, field_serializer, field_validator
|
|
5
|
+
from typing_extensions import TypedDict
|
|
6
|
+
|
|
7
|
+
from snowflake.ml.model import inference_engine as inference_engine_module
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class SaveMode(str, Enum):
|
|
11
|
+
"""Save mode options for batch inference output.
|
|
12
|
+
|
|
13
|
+
Determines the behavior when files already exist in the output stage location.
|
|
14
|
+
|
|
15
|
+
OVERWRITE: Remove existing files and write new results.
|
|
16
|
+
|
|
17
|
+
ERROR: Raise an error if files already exist in the output stage location.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
OVERWRITE = "overwrite"
|
|
21
|
+
ERROR = "error"
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
class InputFormat(str, Enum):
|
|
25
|
+
"""The format of the input column data."""
|
|
26
|
+
|
|
27
|
+
FULL_STAGE_PATH = "full_stage_path"
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class FileEncoding(str, Enum):
|
|
31
|
+
"""The encoding of the file content that will be passed to the custom model."""
|
|
32
|
+
|
|
33
|
+
RAW_BYTES = "raw_bytes"
|
|
34
|
+
BASE64 = "base64"
|
|
35
|
+
BASE64_DATA_URL = "base64_data_url"
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class ColumnHandlingOptions(TypedDict):
|
|
39
|
+
"""Options for handling specific columns during run_batch for file I/O."""
|
|
40
|
+
|
|
41
|
+
input_format: InputFormat
|
|
42
|
+
convert_to: FileEncoding
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class InputSpec(BaseModel):
|
|
46
|
+
"""Input block of the batch inference job specification.
|
|
47
|
+
|
|
48
|
+
Attributes:
|
|
49
|
+
params (Optional[dict[str, Any]]): Optional dictionary of model inference parameters
|
|
50
|
+
(e.g., temperature, top_k for LLMs). These are passed as keyword arguments to the
|
|
51
|
+
model's inference method. Defaults to None.
|
|
52
|
+
column_handling (Optional[dict[str, ColumnHandlingOptions]]): Optional dictionary
|
|
53
|
+
specifying how to handle specific columns during file I/O. Maps column names to their
|
|
54
|
+
input format and file encoding configuration.
|
|
55
|
+
partition_column (Optional[str]): Optional column name to use for partitioning the input
|
|
56
|
+
data. When set, the batch inference job will partition the data by this column.
|
|
57
|
+
Defaults to None.
|
|
58
|
+
"""
|
|
59
|
+
|
|
60
|
+
model_config = ConfigDict(extra="forbid")
|
|
61
|
+
|
|
62
|
+
params: Optional[dict[str, Any]] = None
|
|
63
|
+
column_handling: Optional[dict[str, ColumnHandlingOptions]] = None
|
|
64
|
+
partition_column: Optional[str] = None
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class OutputSpec(BaseModel):
|
|
68
|
+
"""Output block of the batch inference job specification.
|
|
69
|
+
|
|
70
|
+
Results are written under ``<stage_location>/<job_name>/``.
|
|
71
|
+
|
|
72
|
+
Attributes:
|
|
73
|
+
stage_location (str): The stage path under which batch inference results will be saved.
|
|
74
|
+
This should be a full path including the stage with @ prefix. For example,
|
|
75
|
+
'@My_DB.PUBLIC.MY_STAGE/some/path/'. Only Snowflake internal stages are supported.
|
|
76
|
+
mode (SaveMode): The save mode that determines behavior when files already exist
|
|
77
|
+
at the output stage location. Defaults to SaveMode.ERROR.
|
|
78
|
+
"""
|
|
79
|
+
|
|
80
|
+
model_config = ConfigDict(extra="forbid")
|
|
81
|
+
|
|
82
|
+
stage_location: str
|
|
83
|
+
mode: SaveMode = SaveMode.ERROR
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class ResourcesSpec(BaseModel):
|
|
87
|
+
"""Resources block of the batch inference job specification.
|
|
88
|
+
|
|
89
|
+
Attributes:
|
|
90
|
+
cpu_requests (Optional[str]): The cpu limit for CPU based inference. Can be an integer,
|
|
91
|
+
fractional or string values. If None, we attempt to utilize all the vCPU of the node.
|
|
92
|
+
memory_requests (Optional[str]): The memory limit for inference. Can be an integer
|
|
93
|
+
or a fractional value, but requires a unit (GiB, MiB). If None, we attempt to utilize
|
|
94
|
+
all the memory of the node.
|
|
95
|
+
gpu_requests (Optional[str]): The gpu limit for GPU based inference. Can be integer or
|
|
96
|
+
string values. Use CPU if None.
|
|
97
|
+
"""
|
|
98
|
+
|
|
99
|
+
model_config = ConfigDict(extra="forbid")
|
|
100
|
+
|
|
101
|
+
cpu_requests: Optional[str] = None
|
|
102
|
+
memory_requests: Optional[str] = None
|
|
103
|
+
gpu_requests: Optional[str] = None
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
class EngineOptions(BaseModel):
|
|
107
|
+
"""``inference.engine_options`` sub-block of the job specification.
|
|
108
|
+
|
|
109
|
+
Attributes:
|
|
110
|
+
engine (Optional[InferenceEngine]): The inference engine to use.
|
|
111
|
+
engine_args_override (Optional[list[str]]): Arguments passed through to the inference engine.
|
|
112
|
+
"""
|
|
113
|
+
|
|
114
|
+
model_config = ConfigDict(extra="forbid")
|
|
115
|
+
|
|
116
|
+
engine: Optional[inference_engine_module.InferenceEngine] = None
|
|
117
|
+
engine_args_override: Optional[list[str]] = None
|
|
118
|
+
|
|
119
|
+
@field_validator("engine", mode="before")
|
|
120
|
+
@classmethod
|
|
121
|
+
def _coerce_engine(cls, value: Any) -> Optional[inference_engine_module.InferenceEngine]:
|
|
122
|
+
# Accept an InferenceEngine member or a case-insensitive value/name string
|
|
123
|
+
# (e.g. "vllm", "VLLM", "python_generic") rather than only the exact enum value.
|
|
124
|
+
if value is None:
|
|
125
|
+
return None
|
|
126
|
+
return inference_engine_module.InferenceEngine.from_value(value)
|
|
127
|
+
|
|
128
|
+
@field_serializer("engine")
|
|
129
|
+
def _serialize_engine(self, engine: Optional[inference_engine_module.InferenceEngine]) -> Optional[str]:
|
|
130
|
+
# Emit the enum member name (e.g. "VLLM") rather than its lower-case value,
|
|
131
|
+
# to match the canonical spelling used in the EXECUTE INFERENCE JOB SERVICE spec.
|
|
132
|
+
return engine.name if engine is not None else None
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
class InferenceSpec(BaseModel):
|
|
136
|
+
"""Inference block of the batch inference job specification.
|
|
137
|
+
|
|
138
|
+
Attributes:
|
|
139
|
+
num_workers (Optional[int]): The number of workers to run the inference service for handling
|
|
140
|
+
requests in parallel within an instance of the service. Auto determined if None.
|
|
141
|
+
max_batch_rows (Optional[int]): Maximum number of rows to process in a single batch.
|
|
142
|
+
Auto determined if None. Larger values may improve throughput.
|
|
143
|
+
engine_options (Optional[EngineOptions]): Options for a custom inference engine.
|
|
144
|
+
"""
|
|
145
|
+
|
|
146
|
+
model_config = ConfigDict(extra="forbid")
|
|
147
|
+
|
|
148
|
+
num_workers: Optional[int] = None
|
|
149
|
+
max_batch_rows: Optional[int] = None
|
|
150
|
+
engine_options: Optional[EngineOptions] = None
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
class ImageBuildSpec(BaseModel):
|
|
154
|
+
"""Image-build block of the batch inference job specification.
|
|
155
|
+
|
|
156
|
+
Attributes:
|
|
157
|
+
image_repo (Optional[str]): Container image repository for the inference job.
|
|
158
|
+
If not specified, uses the default repository.
|
|
159
|
+
force_rebuild (bool): Whether to force rebuilding the container image even if
|
|
160
|
+
it already exists. Defaults to False.
|
|
161
|
+
"""
|
|
162
|
+
|
|
163
|
+
model_config = ConfigDict(extra="forbid")
|
|
164
|
+
|
|
165
|
+
image_repo: Optional[str] = None
|
|
166
|
+
force_rebuild: bool = False
|
|
@@ -5,7 +5,9 @@ from typing import Any, Optional
|
|
|
5
5
|
|
|
6
6
|
from pydantic import TypeAdapter
|
|
7
7
|
|
|
8
|
-
from snowflake.ml.model._client.model.
|
|
8
|
+
from snowflake.ml.model._client.model.batch_inference_job_specs import (
|
|
9
|
+
ColumnHandlingOptions,
|
|
10
|
+
)
|
|
9
11
|
|
|
10
12
|
_UTF8_ENCODING = "utf-8"
|
|
11
13
|
|