snowflake-ml-python 1.19.0__tar.gz → 1.20.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.19.0 → snowflake_ml_python-1.20.0}/CHANGELOG.md +43 -2
- {snowflake_ml_python-1.19.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.20.0}/PKG-INFO +45 -4
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/pyproject.toml +1 -1
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/env_utils.py +16 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/telemetry.py +56 -7
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_entities/run.py +15 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/experiment_tracking.py +30 -10
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/access_manager.py +1 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/feature_store.py +1 -1
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/feature_flags.py +1 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/payload_utils.py +6 -1
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/spec_utils.py +12 -3
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/job.py +6 -1
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/manager.py +13 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +8 -4
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/model/model_version_impl.py +45 -17
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +1 -1
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/models/huggingface_pipeline.py +6 -7
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0/snowflake_ml_python.egg-info}/PKG-INFO +45 -4
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake_ml_python.egg-info/requires.txt +1 -1
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/README.md +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/setup.cfg +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_classify_text.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_complete.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/file_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/platform_capabilities.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/data/data_connector.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/callback/keras.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/feature_store/feature_view.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/results.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/function_payload_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/types.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/lineage/lineage_node.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/ops/model_ops.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/ops/service_ops.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/sql/model.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/sql/service.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/core.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/_signatures/utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/event_handler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/inference_engine.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/model_signature.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/openai_signatures.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/type_hints.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/model/volatility.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/svm/svc.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/svm/svr.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/registry/_manager/model_manager.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/registry/registry.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/utils/html_utils.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake_ml_python.egg-info/SOURCES.txt +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,10 +1,51 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.20.0
|
|
4
4
|
|
|
5
5
|
### Bug Fixes
|
|
6
6
|
|
|
7
|
-
* Experiment Tracking (
|
|
7
|
+
* Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
|
|
8
|
+
instead of raising an exception.
|
|
9
|
+
|
|
10
|
+
### Behavior Changes
|
|
11
|
+
|
|
12
|
+
### New Features
|
|
13
|
+
|
|
14
|
+
* Registry (PrPr): Introducing vLLM as a backend inference engine. The `create_service` API will now
|
|
15
|
+
accept `inference_engine_options` as an argument.
|
|
16
|
+
|
|
17
|
+
```python
|
|
18
|
+
from snowflake.ml.model.inference_engine import InferenceEngine
|
|
19
|
+
|
|
20
|
+
mv = snowflake_registry.log_model(
|
|
21
|
+
model=generator,
|
|
22
|
+
model_name=...,
|
|
23
|
+
...,
|
|
24
|
+
# Specifying OPENAI_CHAT_SIGNATURE is necessary to use vLLM inference engine
|
|
25
|
+
signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
mv.create_service(
|
|
29
|
+
service_name=my_serv,
|
|
30
|
+
service_compute_pool=...,
|
|
31
|
+
...,
|
|
32
|
+
inference_engine_options={
|
|
33
|
+
"engine": InferenceEngine.VLLM,
|
|
34
|
+
"engine_args_override": [
|
|
35
|
+
"--max-model-len=2048",
|
|
36
|
+
"--gpu-memory-utilization=0.9"
|
|
37
|
+
]
|
|
38
|
+
}
|
|
39
|
+
)
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Deprecations
|
|
43
|
+
|
|
44
|
+
## 1.19.0 (11-13-2025)
|
|
45
|
+
|
|
46
|
+
### Bug Fixes
|
|
47
|
+
|
|
48
|
+
* Experiment Tracking (PuPr): No longer throw an exception in `list_artifacts` when run does not have artifacts.
|
|
8
49
|
* Registry: Fix `get_version_by_alias`: now requires an exact match of snowflake identifier.
|
|
9
50
|
|
|
10
51
|
### Behavior Changes
|
{snowflake_ml_python-1.19.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.20.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowflake-ml-python
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.20.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:
|
|
@@ -240,7 +240,7 @@ Requires-Dist: cryptography
|
|
|
240
240
|
Requires-Dist: fsspec[http]<2026,>=2024.6.1
|
|
241
241
|
Requires-Dist: importlib_resources<7,>=6.1.1
|
|
242
242
|
Requires-Dist: numpy<3,>=1.23
|
|
243
|
-
Requires-Dist: packaging<
|
|
243
|
+
Requires-Dist: packaging<26,>=20.9
|
|
244
244
|
Requires-Dist: pandas<3,>=2.1.4
|
|
245
245
|
Requires-Dist: platformdirs<5
|
|
246
246
|
Requires-Dist: pyarrow<19.0.0
|
|
@@ -415,11 +415,52 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
415
415
|
|
|
416
416
|
# Release History
|
|
417
417
|
|
|
418
|
-
## 1.
|
|
418
|
+
## 1.20.0
|
|
419
419
|
|
|
420
420
|
### Bug Fixes
|
|
421
421
|
|
|
422
|
-
* Experiment Tracking (
|
|
422
|
+
* Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
|
|
423
|
+
instead of raising an exception.
|
|
424
|
+
|
|
425
|
+
### Behavior Changes
|
|
426
|
+
|
|
427
|
+
### New Features
|
|
428
|
+
|
|
429
|
+
* Registry (PrPr): Introducing vLLM as a backend inference engine. The `create_service` API will now
|
|
430
|
+
accept `inference_engine_options` as an argument.
|
|
431
|
+
|
|
432
|
+
```python
|
|
433
|
+
from snowflake.ml.model.inference_engine import InferenceEngine
|
|
434
|
+
|
|
435
|
+
mv = snowflake_registry.log_model(
|
|
436
|
+
model=generator,
|
|
437
|
+
model_name=...,
|
|
438
|
+
...,
|
|
439
|
+
# Specifying OPENAI_CHAT_SIGNATURE is necessary to use vLLM inference engine
|
|
440
|
+
signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
|
|
441
|
+
)
|
|
442
|
+
|
|
443
|
+
mv.create_service(
|
|
444
|
+
service_name=my_serv,
|
|
445
|
+
service_compute_pool=...,
|
|
446
|
+
...,
|
|
447
|
+
inference_engine_options={
|
|
448
|
+
"engine": InferenceEngine.VLLM,
|
|
449
|
+
"engine_args_override": [
|
|
450
|
+
"--max-model-len=2048",
|
|
451
|
+
"--gpu-memory-utilization=0.9"
|
|
452
|
+
]
|
|
453
|
+
}
|
|
454
|
+
)
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
### Deprecations
|
|
458
|
+
|
|
459
|
+
## 1.19.0 (11-13-2025)
|
|
460
|
+
|
|
461
|
+
### Bug Fixes
|
|
462
|
+
|
|
463
|
+
* Experiment Tracking (PuPr): No longer throw an exception in `list_artifacts` when run does not have artifacts.
|
|
423
464
|
* Registry: Fix `get_version_by_alias`: now requires an exact match of snowflake identifier.
|
|
424
465
|
|
|
425
466
|
### Behavior Changes
|
|
@@ -8,7 +8,7 @@ description = "The machine learning client library that is used for interacting
|
|
|
8
8
|
classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Other Environment", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Database", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Scientific/Engineering :: Information Analysis",]
|
|
9
9
|
requires-python = ">=3.9, <3.13"
|
|
10
10
|
dynamic = [ "version", "readme",]
|
|
11
|
-
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0", "cryptography", "fsspec[http]>=2024.6.1,<2026", "importlib_resources>=6.1.1, <7", "numpy>=1.23,<3", "packaging>=20.9,<
|
|
11
|
+
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0", "cryptography", "fsspec[http]>=2024.6.1,<2026", "importlib_resources>=6.1.1, <7", "numpy>=1.23,<3", "packaging>=20.9,<26", "pandas>=2.1.4,<3", "platformdirs<5", "pyarrow<19.0.0", "pydantic>=2.8.2, <3", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "s3fs>=2024.6.1,<2026", "scikit-learn<1.8", "scipy>=1.9,<2", "shap>=0.46.0,<1", "snowflake-connector-python[pandas]>=3.17.3,<4", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "snowflake.core>=1.0.2,<2", "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"
|
{snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/env_utils.py
RENAMED
|
@@ -16,6 +16,7 @@ from snowflake.ml import version as snowml_version
|
|
|
16
16
|
from snowflake.ml._internal import env as snowml_env, relax_version_strategy
|
|
17
17
|
from snowflake.ml._internal.utils import query_result_checker
|
|
18
18
|
from snowflake.snowpark import context, exceptions, session
|
|
19
|
+
from snowflake.snowpark._internal import utils as snowpark_utils
|
|
19
20
|
|
|
20
21
|
|
|
21
22
|
class CONDA_OS(Enum):
|
|
@@ -38,6 +39,21 @@ SNOWPARK_ML_PKG_NAME = "snowflake-ml-python"
|
|
|
38
39
|
SNOWFLAKE_CONDA_CHANNEL_URL = "https://repo.anaconda.com/pkgs/snowflake"
|
|
39
40
|
|
|
40
41
|
|
|
42
|
+
def get_execution_context() -> str:
|
|
43
|
+
"""Detect execution context: EXTERNAL, SPCS, or SPROC.
|
|
44
|
+
|
|
45
|
+
Returns:
|
|
46
|
+
str: The execution context - "SPROC" if running in a stored procedure,
|
|
47
|
+
"SPCS" if running in SPCS ML runtime, "EXTERNAL" otherwise.
|
|
48
|
+
"""
|
|
49
|
+
if snowpark_utils.is_in_stored_procedure(): # type: ignore[no-untyped-call]
|
|
50
|
+
return "SPROC"
|
|
51
|
+
elif snowml_env.IN_ML_RUNTIME:
|
|
52
|
+
return "SPCS"
|
|
53
|
+
else:
|
|
54
|
+
return "EXTERNAL"
|
|
55
|
+
|
|
56
|
+
|
|
41
57
|
def _validate_pip_requirement_string(req_str: str) -> requirements.Requirement:
|
|
42
58
|
"""Validate the input pip requirement string according to PEP 508.
|
|
43
59
|
|
{snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/_internal/telemetry.py
RENAMED
|
@@ -16,7 +16,7 @@ from typing_extensions import ParamSpec
|
|
|
16
16
|
from snowflake import connector
|
|
17
17
|
from snowflake.connector import connect, telemetry as connector_telemetry, time_util
|
|
18
18
|
from snowflake.ml import version as snowml_version
|
|
19
|
-
from snowflake.ml._internal import env
|
|
19
|
+
from snowflake.ml._internal import env, env_utils
|
|
20
20
|
from snowflake.ml._internal.exceptions import (
|
|
21
21
|
error_codes,
|
|
22
22
|
exceptions as snowml_exceptions,
|
|
@@ -37,6 +37,22 @@ _CONNECTION_TYPES = {
|
|
|
37
37
|
_Args = ParamSpec("_Args")
|
|
38
38
|
_ReturnValue = TypeVar("_ReturnValue")
|
|
39
39
|
|
|
40
|
+
_conn: Optional[connector.SnowflakeConnection] = None
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def clear_cached_conn() -> None:
|
|
44
|
+
"""Clear the cached Snowflake connection. Primarily for testing purposes."""
|
|
45
|
+
global _conn
|
|
46
|
+
if _conn is not None and _conn.is_valid():
|
|
47
|
+
_conn.close()
|
|
48
|
+
_conn = None
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def get_cached_conn() -> Optional[connector.SnowflakeConnection]:
|
|
52
|
+
"""Get the cached Snowflake connection. Primarily for testing purposes."""
|
|
53
|
+
global _conn
|
|
54
|
+
return _conn
|
|
55
|
+
|
|
40
56
|
|
|
41
57
|
def _get_login_token() -> Union[str, bytes]:
|
|
42
58
|
with open("/snowflake/session/token") as f:
|
|
@@ -44,7 +60,11 @@ def _get_login_token() -> Union[str, bytes]:
|
|
|
44
60
|
|
|
45
61
|
|
|
46
62
|
def _get_snowflake_connection() -> Optional[connector.SnowflakeConnection]:
|
|
47
|
-
|
|
63
|
+
global _conn
|
|
64
|
+
if _conn is not None and _conn.is_valid():
|
|
65
|
+
return _conn
|
|
66
|
+
|
|
67
|
+
conn: Optional[connector.SnowflakeConnection] = None
|
|
48
68
|
if os.getenv("SNOWFLAKE_HOST") is not None and os.getenv("SNOWFLAKE_ACCOUNT") is not None:
|
|
49
69
|
try:
|
|
50
70
|
conn = connect(
|
|
@@ -66,6 +86,13 @@ def _get_snowflake_connection() -> Optional[connector.SnowflakeConnection]:
|
|
|
66
86
|
# Failed to get an active session. No connection available.
|
|
67
87
|
pass
|
|
68
88
|
|
|
89
|
+
# cache the connection if it's a SnowflakeConnection. there is a behavior at runtime where it could be a
|
|
90
|
+
# StoredProcConnection perhaps incorrect type hinting somewhere
|
|
91
|
+
if isinstance(conn, connector.SnowflakeConnection):
|
|
92
|
+
# if _conn was expired, we need to copy telemetry data to new connection
|
|
93
|
+
if _conn is not None and conn is not None:
|
|
94
|
+
conn._telemetry._log_batch.extend(_conn._telemetry._log_batch)
|
|
95
|
+
_conn = conn
|
|
69
96
|
return conn
|
|
70
97
|
|
|
71
98
|
|
|
@@ -113,6 +140,13 @@ class TelemetryField(enum.Enum):
|
|
|
113
140
|
FUNC_CAT_USAGE = "usage"
|
|
114
141
|
|
|
115
142
|
|
|
143
|
+
@enum.unique
|
|
144
|
+
class CustomTagKey(enum.Enum):
|
|
145
|
+
"""Keys for custom tags in telemetry."""
|
|
146
|
+
|
|
147
|
+
EXECUTION_CONTEXT = "execution_context"
|
|
148
|
+
|
|
149
|
+
|
|
116
150
|
class _TelemetrySourceType(enum.Enum):
|
|
117
151
|
# Automatically inferred telemetry/statement parameters
|
|
118
152
|
AUTO_TELEMETRY = "SNOWML_AUTO_TELEMETRY"
|
|
@@ -441,6 +475,7 @@ def send_api_usage_telemetry(
|
|
|
441
475
|
sfqids_extractor: Optional[Callable[..., list[str]]] = None,
|
|
442
476
|
subproject_extractor: Optional[Callable[[Any], str]] = None,
|
|
443
477
|
custom_tags: Optional[dict[str, Union[bool, int, str, float]]] = None,
|
|
478
|
+
log_execution_context: bool = True,
|
|
444
479
|
) -> Callable[[Callable[_Args, _ReturnValue]], Callable[_Args, _ReturnValue]]:
|
|
445
480
|
"""
|
|
446
481
|
Decorator that sends API usage telemetry and adds function usage statement parameters to the dataframe returned by
|
|
@@ -455,6 +490,8 @@ def send_api_usage_telemetry(
|
|
|
455
490
|
sfqids_extractor: Extract sfqids from `self`.
|
|
456
491
|
subproject_extractor: Extract subproject at runtime from `self`.
|
|
457
492
|
custom_tags: Custom tags.
|
|
493
|
+
log_execution_context: If True, automatically detect and log execution context
|
|
494
|
+
(EXTERNAL, SPCS, or SPROC) in custom_tags.
|
|
458
495
|
|
|
459
496
|
Returns:
|
|
460
497
|
Decorator that sends function usage telemetry for any call to the decorated function.
|
|
@@ -495,6 +532,11 @@ def send_api_usage_telemetry(
|
|
|
495
532
|
if subproject_extractor is not None:
|
|
496
533
|
subproject_name = subproject_extractor(args[0])
|
|
497
534
|
|
|
535
|
+
# Add execution context if enabled
|
|
536
|
+
final_custom_tags = {**custom_tags} if custom_tags is not None else {}
|
|
537
|
+
if log_execution_context:
|
|
538
|
+
final_custom_tags[CustomTagKey.EXECUTION_CONTEXT.value] = env_utils.get_execution_context()
|
|
539
|
+
|
|
498
540
|
statement_params = get_function_usage_statement_params(
|
|
499
541
|
project=project,
|
|
500
542
|
subproject=subproject_name,
|
|
@@ -502,7 +544,7 @@ def send_api_usage_telemetry(
|
|
|
502
544
|
function_name=_get_full_func_name(func),
|
|
503
545
|
function_parameters=params,
|
|
504
546
|
api_calls=api_calls,
|
|
505
|
-
custom_tags=
|
|
547
|
+
custom_tags=final_custom_tags,
|
|
506
548
|
)
|
|
507
549
|
|
|
508
550
|
def update_stmt_params_if_snowpark_df(obj: _ReturnValue, statement_params: dict[str, Any]) -> _ReturnValue:
|
|
@@ -538,7 +580,10 @@ def send_api_usage_telemetry(
|
|
|
538
580
|
if conn_attr_name:
|
|
539
581
|
# raise AttributeError if conn attribute does not exist in `self`
|
|
540
582
|
conn = operator.attrgetter(conn_attr_name)(args[0])
|
|
541
|
-
if not isinstance(
|
|
583
|
+
if not isinstance(
|
|
584
|
+
conn,
|
|
585
|
+
_CONNECTION_TYPES.get(type(conn).__name__, connector.SnowflakeConnection),
|
|
586
|
+
):
|
|
542
587
|
raise TypeError(
|
|
543
588
|
f"Expected a conn object of type {' or '.join(_CONNECTION_TYPES.keys())} but got {type(conn)}"
|
|
544
589
|
)
|
|
@@ -560,7 +605,7 @@ def send_api_usage_telemetry(
|
|
|
560
605
|
func_params=params,
|
|
561
606
|
api_calls=api_calls,
|
|
562
607
|
sfqids=sfqids,
|
|
563
|
-
custom_tags=
|
|
608
|
+
custom_tags=final_custom_tags,
|
|
564
609
|
)
|
|
565
610
|
try:
|
|
566
611
|
return ctx.run(execute_func_with_statement_params)
|
|
@@ -571,7 +616,8 @@ def send_api_usage_telemetry(
|
|
|
571
616
|
raise
|
|
572
617
|
if isinstance(e, snowpark_exceptions.SnowparkClientException):
|
|
573
618
|
me = snowml_exceptions.SnowflakeMLException(
|
|
574
|
-
error_code=error_codes.INTERNAL_SNOWPARK_ERROR,
|
|
619
|
+
error_code=error_codes.INTERNAL_SNOWPARK_ERROR,
|
|
620
|
+
original_exception=e,
|
|
575
621
|
)
|
|
576
622
|
else:
|
|
577
623
|
me = snowml_exceptions.SnowflakeMLException(
|
|
@@ -627,7 +673,10 @@ def _get_full_func_name(func: Callable[..., Any]) -> str:
|
|
|
627
673
|
|
|
628
674
|
|
|
629
675
|
def _get_func_params(
|
|
630
|
-
func: Callable[..., Any],
|
|
676
|
+
func: Callable[..., Any],
|
|
677
|
+
func_params_to_log: Optional[Iterable[str]],
|
|
678
|
+
args: Any,
|
|
679
|
+
kwargs: Any,
|
|
631
680
|
) -> dict[str, Any]:
|
|
632
681
|
"""
|
|
633
682
|
Get function parameters.
|
{snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/experiment/_entities/run.py
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import types
|
|
2
|
+
import warnings
|
|
2
3
|
from typing import TYPE_CHECKING, Optional
|
|
3
4
|
|
|
4
5
|
from snowflake.ml._internal.utils import sql_identifier
|
|
@@ -7,6 +8,8 @@ from snowflake.ml.experiment import _experiment_info as experiment_info
|
|
|
7
8
|
if TYPE_CHECKING:
|
|
8
9
|
from snowflake.ml.experiment import experiment_tracking
|
|
9
10
|
|
|
11
|
+
METADATA_SIZE_WARNING_MESSAGE = "It is likely that no further metrics or parameters will be logged for this run."
|
|
12
|
+
|
|
10
13
|
|
|
11
14
|
class Run:
|
|
12
15
|
def __init__(
|
|
@@ -20,6 +23,9 @@ class Run:
|
|
|
20
23
|
self.experiment_name = experiment_name
|
|
21
24
|
self.name = run_name
|
|
22
25
|
|
|
26
|
+
# Whether we've already shown the user a warning about exceeding the run metadata size limit.
|
|
27
|
+
self._warned_about_metadata_size = False
|
|
28
|
+
|
|
23
29
|
self._patcher = experiment_info.ExperimentInfoPatcher(
|
|
24
30
|
experiment_info=self._get_experiment_info(),
|
|
25
31
|
)
|
|
@@ -45,3 +51,12 @@ class Run:
|
|
|
45
51
|
),
|
|
46
52
|
run_name=self.name.identifier(),
|
|
47
53
|
)
|
|
54
|
+
|
|
55
|
+
def _warn_about_run_metadata_size(self, sql_error_msg: str) -> None:
|
|
56
|
+
if not self._warned_about_metadata_size:
|
|
57
|
+
warnings.warn(
|
|
58
|
+
f"{sql_error_msg}. {METADATA_SIZE_WARNING_MESSAGE}",
|
|
59
|
+
RuntimeWarning,
|
|
60
|
+
stacklevel=2,
|
|
61
|
+
)
|
|
62
|
+
self._warned_about_metadata_size = True
|
|
@@ -283,16 +283,26 @@ class ExperimentTracking:
|
|
|
283
283
|
Args:
|
|
284
284
|
metrics: Dictionary containing metric keys and float values.
|
|
285
285
|
step: The step of the metrics. Defaults to 0.
|
|
286
|
+
|
|
287
|
+
Raises:
|
|
288
|
+
snowpark.exceptions.SnowparkSQLException: If logging metrics fails due to Snowflake SQL errors,
|
|
289
|
+
except for run metadata size limit errors which will issue a warning instead of raising.
|
|
286
290
|
"""
|
|
287
291
|
run = self._get_or_start_run()
|
|
288
292
|
metrics_list = []
|
|
289
293
|
for key, value in metrics.items():
|
|
290
294
|
metrics_list.append(entities.Metric(key, value, step))
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
295
|
+
try:
|
|
296
|
+
self._sql_client.modify_run_add_metrics(
|
|
297
|
+
experiment_name=run.experiment_name,
|
|
298
|
+
run_name=run.name,
|
|
299
|
+
metrics=json.dumps([metric.to_dict() for metric in metrics_list]),
|
|
300
|
+
)
|
|
301
|
+
except snowpark.exceptions.SnowparkSQLException as e:
|
|
302
|
+
if e.sql_error_code == 400003: # EXPERIMENT_RUN_PROPERTY_SIZE_LIMIT_EXCEEDED
|
|
303
|
+
run._warn_about_run_metadata_size(e.message)
|
|
304
|
+
else:
|
|
305
|
+
raise
|
|
296
306
|
|
|
297
307
|
def log_param(
|
|
298
308
|
self,
|
|
@@ -318,16 +328,26 @@ class ExperimentTracking:
|
|
|
318
328
|
Args:
|
|
319
329
|
params: Dictionary containing parameter keys and values. Values can be of any type, but will be converted
|
|
320
330
|
to string.
|
|
331
|
+
|
|
332
|
+
Raises:
|
|
333
|
+
snowpark.exceptions.SnowparkSQLException: If logging parameters fails due to Snowflake SQL errors,
|
|
334
|
+
except for run metadata size limit errors which will issue a warning instead of raising.
|
|
321
335
|
"""
|
|
322
336
|
run = self._get_or_start_run()
|
|
323
337
|
params_list = []
|
|
324
338
|
for key, value in params.items():
|
|
325
339
|
params_list.append(entities.Param(key, str(value)))
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
340
|
+
try:
|
|
341
|
+
self._sql_client.modify_run_add_params(
|
|
342
|
+
experiment_name=run.experiment_name,
|
|
343
|
+
run_name=run.name,
|
|
344
|
+
params=json.dumps([param.to_dict() for param in params_list]),
|
|
345
|
+
)
|
|
346
|
+
except snowpark.exceptions.SnowparkSQLException as e:
|
|
347
|
+
if e.sql_error_code == 400003: # EXPERIMENT_RUN_PROPERTY_SIZE_LIMIT_EXCEEDED
|
|
348
|
+
run._warn_about_run_metadata_size(e.message)
|
|
349
|
+
else:
|
|
350
|
+
raise
|
|
331
351
|
|
|
332
352
|
def log_artifact(
|
|
333
353
|
self,
|
|
@@ -202,6 +202,7 @@ def _configure_role_hierarchy(
|
|
|
202
202
|
session.sql(f"GRANT ROLE {producer_role} TO ROLE {session.get_current_role()}").collect()
|
|
203
203
|
|
|
204
204
|
if consumer_role is not None:
|
|
205
|
+
# Create CONSUMER and grant it to PRODUCER to build hierarchy
|
|
205
206
|
consumer_role = SqlIdentifier(consumer_role)
|
|
206
207
|
session.sql(f"CREATE ROLE IF NOT EXISTS {consumer_role}").collect()
|
|
207
208
|
session.sql(f"GRANT ROLE {consumer_role} TO ROLE {producer_role}").collect()
|
|
@@ -1200,7 +1200,7 @@ class FeatureStore:
|
|
|
1200
1200
|
{self._config.database}.INFORMATION_SCHEMA.DYNAMIC_TABLE_REFRESH_HISTORY (RESULT_LIMIT => 10000)
|
|
1201
1201
|
)
|
|
1202
1202
|
WHERE NAME = '{fv_resolved_name}'
|
|
1203
|
-
AND SCHEMA_NAME = '{self._config.schema}'
|
|
1203
|
+
AND SCHEMA_NAME = '{self._config.schema.resolved()}'
|
|
1204
1204
|
"""
|
|
1205
1205
|
)
|
|
1206
1206
|
|
{snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/feature_flags.py
RENAMED
|
@@ -31,6 +31,7 @@ def parse_bool_env_value(value: Optional[str], default: bool = False) -> bool:
|
|
|
31
31
|
class FeatureFlags(Enum):
|
|
32
32
|
USE_SUBMIT_JOB_V2 = "MLRS_USE_SUBMIT_JOB_V2"
|
|
33
33
|
ENABLE_RUNTIME_VERSIONS = "MLRS_ENABLE_RUNTIME_VERSIONS"
|
|
34
|
+
ENABLE_STAGE_MOUNT_V2 = "MLRS_ENABLE_STAGE_MOUNT_V2"
|
|
34
35
|
|
|
35
36
|
def is_enabled(self, default: bool = False) -> bool:
|
|
36
37
|
"""Check if the feature flag is enabled.
|
{snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/payload_utils.py
RENAMED
|
@@ -620,7 +620,12 @@ def _serialize_callable(func: Callable[..., Any]) -> bytes:
|
|
|
620
620
|
try:
|
|
621
621
|
func_bytes: bytes = cp.dumps(func)
|
|
622
622
|
return func_bytes
|
|
623
|
-
except pickle.PicklingError as e:
|
|
623
|
+
except (pickle.PicklingError, TypeError) as e:
|
|
624
|
+
if isinstance(e, TypeError) and "_thread.lock" in str(e):
|
|
625
|
+
raise RuntimeError(
|
|
626
|
+
"Unable to pickle an object that internally holds a reference to a Session object, "
|
|
627
|
+
"such as a Snowpark DataFrame."
|
|
628
|
+
) from e
|
|
624
629
|
if isinstance(func, functools.partial):
|
|
625
630
|
# Try to find which part of the partial isn't serializable for better debuggability
|
|
626
631
|
objects = [
|
{snowflake_ml_python-1.19.0 → snowflake_ml_python-1.20.0}/snowflake/ml/jobs/_utils/spec_utils.py
RENAMED
|
@@ -197,7 +197,7 @@ def generate_service_spec(
|
|
|
197
197
|
resource_limits["nvidia.com/gpu"] = image_spec.resource_limits.gpu
|
|
198
198
|
|
|
199
199
|
# Add local volumes for ephemeral logs and artifacts
|
|
200
|
-
volumes: list[dict[str,
|
|
200
|
+
volumes: list[dict[str, Any]] = []
|
|
201
201
|
volume_mounts: list[dict[str, str]] = []
|
|
202
202
|
for volume_name, mount_path in [
|
|
203
203
|
("system-logs", "/var/log/managedservices/system/mlrs"),
|
|
@@ -246,7 +246,16 @@ def generate_service_spec(
|
|
|
246
246
|
volumes.append(
|
|
247
247
|
{
|
|
248
248
|
"name": constants.STAGE_VOLUME_NAME,
|
|
249
|
-
"source":
|
|
249
|
+
"source": "stage",
|
|
250
|
+
"stageConfig": {
|
|
251
|
+
"name": payload.stage_path.as_posix(),
|
|
252
|
+
"resources": {
|
|
253
|
+
"requests": {
|
|
254
|
+
"memory": "0Gi",
|
|
255
|
+
"cpu": "0",
|
|
256
|
+
},
|
|
257
|
+
},
|
|
258
|
+
},
|
|
250
259
|
}
|
|
251
260
|
)
|
|
252
261
|
|
|
@@ -286,7 +295,7 @@ def generate_service_spec(
|
|
|
286
295
|
"storage",
|
|
287
296
|
]
|
|
288
297
|
|
|
289
|
-
spec_dict = {
|
|
298
|
+
spec_dict: dict[str, Any] = {
|
|
290
299
|
"containers": [
|
|
291
300
|
{
|
|
292
301
|
"name": constants.DEFAULT_CONTAINER_NAME,
|
|
@@ -113,7 +113,12 @@ class MLJob(Generic[T], SerializableSessionMixin):
|
|
|
113
113
|
"""Get the job's artifact storage stage location."""
|
|
114
114
|
volumes = self._service_spec["spec"]["volumes"]
|
|
115
115
|
stage_volume = next((v for v in volumes if v["name"] == constants.STAGE_VOLUME_NAME), None)
|
|
116
|
-
|
|
116
|
+
if stage_volume is None:
|
|
117
|
+
return None
|
|
118
|
+
elif "stageConfig" in stage_volume:
|
|
119
|
+
return cast(str, stage_volume["stageConfig"]["name"])
|
|
120
|
+
else:
|
|
121
|
+
return cast(str, stage_volume["source"])
|
|
117
122
|
|
|
118
123
|
@property
|
|
119
124
|
def _result_path(self) -> str:
|
|
@@ -520,6 +520,12 @@ def _submit_job(
|
|
|
520
520
|
raise RuntimeError(
|
|
521
521
|
"Please specify a schema, either in the session context or as a parameter in the job submission"
|
|
522
522
|
)
|
|
523
|
+
elif e.sql_error_code == 3001 and "schema" in str(e).lower():
|
|
524
|
+
raise RuntimeError(
|
|
525
|
+
"please grant privileges on schema before submitting a job, see",
|
|
526
|
+
"https://docs.snowflake.com/en/developer-guide/snowflake-ml/ml-jobs/access-control-requirements",
|
|
527
|
+
" for more details",
|
|
528
|
+
) from e
|
|
523
529
|
raise
|
|
524
530
|
|
|
525
531
|
if feature_flags.FeatureFlags.USE_SUBMIT_JOB_V2.is_enabled(default=True):
|
|
@@ -546,6 +552,12 @@ def _submit_job(
|
|
|
546
552
|
except SnowparkSQLException as e:
|
|
547
553
|
if not (e.sql_error_code == 90237 and sp_utils.is_in_stored_procedure()): # type: ignore[no-untyped-call]
|
|
548
554
|
raise
|
|
555
|
+
elif e.sql_error_code == 3001 and "schema" in str(e).lower():
|
|
556
|
+
raise RuntimeError(
|
|
557
|
+
"please grant privileges on schema before submitting a job, see",
|
|
558
|
+
"https://docs.snowflake.com/en/developer-guide/snowflake-ml/ml-jobs/access-control-requirements"
|
|
559
|
+
" for more details",
|
|
560
|
+
) from e
|
|
549
561
|
# SNOW-2390287: SYSTEM$EXECUTE_ML_JOB() is erroneously blocked in owner's rights
|
|
550
562
|
# stored procedures. This will be fixed in an upcoming release.
|
|
551
563
|
logger.warning(
|
|
@@ -690,6 +702,7 @@ def _do_submit_job_v2(
|
|
|
690
702
|
# when feature flag is enabled, we get the local python version and wrap it in a dict
|
|
691
703
|
# in system function, we can know whether it is python version or image tag or full image URL through the format
|
|
692
704
|
spec_options["RUNTIME"] = json.dumps({"pythonVersion": f"{sys.version_info.major}.{sys.version_info.minor}"})
|
|
705
|
+
|
|
693
706
|
job_options = {
|
|
694
707
|
"EXTERNAL_ACCESS_INTEGRATIONS": external_access_integrations,
|
|
695
708
|
"QUERY_WAREHOUSE": query_warehouse,
|
|
@@ -4,14 +4,18 @@ from snowflake.ml.model._client.ops import service_ops
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
def _get_inference_engine_args(
|
|
7
|
-
|
|
7
|
+
inference_engine_options: Optional[dict[str, Any]],
|
|
8
8
|
) -> Optional[service_ops.InferenceEngineArgs]:
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
if not inference_engine_options:
|
|
10
11
|
return None
|
|
11
12
|
|
|
13
|
+
if "engine" not in inference_engine_options:
|
|
14
|
+
raise ValueError("'engine' field is required in inference_engine_options")
|
|
15
|
+
|
|
12
16
|
return service_ops.InferenceEngineArgs(
|
|
13
|
-
inference_engine=
|
|
14
|
-
inference_engine_args_override=
|
|
17
|
+
inference_engine=inference_engine_options["engine"],
|
|
18
|
+
inference_engine_args_override=inference_engine_options.get("engine_args_override"),
|
|
15
19
|
)
|
|
16
20
|
|
|
17
21
|
|