snowflake-ml-python 1.20.0__tar.gz → 1.22.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.20.0 → snowflake_ml_python-1.22.0}/CHANGELOG.md +77 -5
- {snowflake_ml_python-1.20.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.22.0}/PKG-INFO +81 -7
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/pyproject.toml +2 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/platform_capabilities.py +36 -0
- snowflake_ml_python-1.22.0/snowflake/ml/_internal/utils/url.py +42 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/_internal/arrow_ingestor.py +67 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/data_connector.py +103 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +8 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/callback/keras.py +25 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/callback/lightgbm.py +27 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/callback/xgboost.py +25 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/experiment_tracking.py +93 -3
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/utils.py +6 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/feature_view.py +34 -24
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/protocols.py +3 -0
- snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/constants.py +1 -0
- snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/payload_utils.py +761 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +95 -8
- snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +92 -0
- snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/scripts/startup.sh +112 -0
- snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/spec_utils.py +22 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/stage_utils.py +22 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/types.py +14 -7
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/job.py +2 -8
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/manager.py +57 -135
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/lineage/lineage_node.py +1 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/__init__.py +6 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +16 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/model_version_impl.py +130 -14
- snowflake_ml_python-1.22.0/snowflake/ml/model/_client/ops/deployment_step.py +36 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/ops/model_ops.py +93 -8
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/ops/service_ops.py +32 -52
- snowflake_ml_python-1.22.0/snowflake/ml/model/_client/service/import_model_spec_schema.py +23 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +12 -4
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +3 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/model_version.py +30 -6
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/service.py +94 -5
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_composer.py +1 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +5 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +61 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handler.py +8 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/custom.py +52 -0
- snowflake_ml_python-1.20.0/snowflake/ml/model/_packager/model_handlers/huggingface_pipeline.py → snowflake_ml_python-1.22.0/snowflake/ml/model/_packager/model_handlers/huggingface.py +203 -76
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +6 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +26 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +40 -7
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_packager.py +1 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/core.py +390 -8
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/utils.py +13 -4
- snowflake_ml_python-1.22.0/snowflake/ml/model/code_path.py +104 -0
- snowflake_ml_python-1.22.0/snowflake/ml/model/compute_pool.py +2 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/custom_model.py +55 -13
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/model_signature.py +13 -1
- snowflake_ml_python-1.22.0/snowflake/ml/model/models/huggingface.py +285 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/models/huggingface_pipeline.py +19 -208
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/type_hints.py +7 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +2 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +12 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +12 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +5 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/_manager/model_manager.py +230 -15
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/registry.py +4 -4
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/html_utils.py +67 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0/snowflake_ml_python.egg-info}/PKG-INFO +81 -7
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/SOURCES.txt +10 -2
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/requires.txt +2 -0
- snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils/payload_utils.py +0 -763
- snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -63
- snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils/spec_utils.py +0 -466
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/README.md +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/setup.cfg +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_classify_text.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_complete.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/env_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/file_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/run.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-1.20.0/snowflake/ml/jobs/_interop → snowflake_ml_python-1.22.0/snowflake/ml/experiment/callback}/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/feature_store.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/__init__.py +0 -0
- {snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils → snowflake_ml_python-1.22.0/snowflake/ml/jobs/_interop}/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/results.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/function_payload_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/model.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/event_handler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/inference_engine.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/openai_signatures.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/volatility.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/svc.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/svr.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,14 +1,90 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.22.0
|
|
4
|
+
|
|
5
|
+
### New Features
|
|
6
|
+
|
|
7
|
+
* Registry: Introducing remotely logging a transformer pipeline model using SPCS job.
|
|
8
|
+
|
|
9
|
+
```python
|
|
10
|
+
# create reference of the model
|
|
11
|
+
model = huggingface.TransformersPipeline(
|
|
12
|
+
model="TinyLlama/TinyLlama-1.1B-Chat-v1.0",
|
|
13
|
+
task="text-generation",
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
# Remotely log the model, a SPCS job will run async and log the model
|
|
17
|
+
mv = registry.log_model(
|
|
18
|
+
model=model,
|
|
19
|
+
model_name="tinyllama_remote_log",
|
|
20
|
+
target_platforms=["SNOWPARK_CONTAINER_SERVICES"],
|
|
21
|
+
signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
|
|
22
|
+
)
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### Bug Fixes
|
|
26
|
+
|
|
27
|
+
### Behavior Changes
|
|
28
|
+
|
|
29
|
+
### Deprecations
|
|
30
|
+
|
|
31
|
+
## 1.21.0
|
|
32
|
+
|
|
33
|
+
### New Features
|
|
34
|
+
|
|
35
|
+
* Inference Autocapture (Preview): The `create_service` API will now accept `autocapture` as a new argument to indicate
|
|
36
|
+
whether inference data will be captured.
|
|
37
|
+
* DataConnector: Added `to_huggingface_dataset()` method for converting Snowflake data to HuggingFace datasets.
|
|
38
|
+
Supports both in-memory `Dataset` (streaming=False) and streaming `IterableDataset` (streaming=True) modes.
|
|
39
|
+
* Introducing `snowflake.ml.model.models.huggingface.TransformersPipeline` model which will replace object
|
|
40
|
+
`snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel`. This is a wrapper class to
|
|
41
|
+
`transformers.Pipeline` model. Currently, following tasks
|
|
42
|
+
are supported to log without manually specifying model signatures:
|
|
43
|
+
* "fill-mask"
|
|
44
|
+
* "question-answering"
|
|
45
|
+
* "summarization"
|
|
46
|
+
* "table-question-answering"
|
|
47
|
+
* "text2text-generation"
|
|
48
|
+
* "text-classification" (alias "sentiment-analysis" available)
|
|
49
|
+
* "text-generation"
|
|
50
|
+
* "token-classification" (alias "ner" available)
|
|
51
|
+
* "translation"
|
|
52
|
+
* "translation_xx_to_yy"
|
|
53
|
+
* "zero-shot-classification"
|
|
54
|
+
which provides utility to log the model without loading the model in memory.
|
|
4
55
|
|
|
5
56
|
### Bug Fixes
|
|
6
57
|
|
|
7
58
|
* Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
|
|
8
59
|
instead of raising an exception.
|
|
60
|
+
* Registry: `ModelVersion.run()` will now raise a `ValueError` if the model does not support running on warehouse
|
|
61
|
+
(e.g. SPCS-only models) and `service_name` is not provided.
|
|
9
62
|
|
|
10
63
|
### Behavior Changes
|
|
11
64
|
|
|
65
|
+
* ML Job: The `additional_payloads` (Preview API) behavior is changing.
|
|
66
|
+
Use the `imports` argument to declare additional dependencies, such as zip files and Python modules.
|
|
67
|
+
Local directories and Python files are automatically compressed, and their internal layout is determined by the
|
|
68
|
+
specified import path. The import path applies only to local directories, Python files and staged python files;
|
|
69
|
+
it has no effect on other import types. When referencing files in a stage, only individual files
|
|
70
|
+
are supported—not directories.
|
|
71
|
+
* Online Inference (PuPr): `list_services()` now shows internal endpoint that does not need EAI to call from another
|
|
72
|
+
SPCS node or Notebook.
|
|
73
|
+
* Inference Autocapture (Preview): `list_services()` now shows if model service has autocapture enabled.
|
|
74
|
+
* Experiment Tracking (PuPr): `ExperimentTracking` is now a singleton class.
|
|
75
|
+
|
|
76
|
+
### Deprecations
|
|
77
|
+
|
|
78
|
+
* Deprecating `snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel` and will be removed in later
|
|
79
|
+
version with a notice.
|
|
80
|
+
|
|
81
|
+
## 1.20.0
|
|
82
|
+
|
|
83
|
+
### Bug Fixes
|
|
84
|
+
|
|
85
|
+
* Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
|
|
86
|
+
instead of raising an exception.
|
|
87
|
+
|
|
12
88
|
### New Features
|
|
13
89
|
|
|
14
90
|
* Registry (PrPr): Introducing vLLM as a backend inference engine. The `create_service` API will now
|
|
@@ -39,8 +115,6 @@ mv.create_service(
|
|
|
39
115
|
)
|
|
40
116
|
```
|
|
41
117
|
|
|
42
|
-
### Deprecations
|
|
43
|
-
|
|
44
118
|
## 1.19.0 (11-13-2025)
|
|
45
119
|
|
|
46
120
|
### Bug Fixes
|
|
@@ -147,8 +221,6 @@ options = {
|
|
|
147
221
|
* Registry: Dropping support for deprecated `conversational` task type for Huggingface models.
|
|
148
222
|
To read more <https://github.com/huggingface/transformers/pull/31165>
|
|
149
223
|
|
|
150
|
-
### New Features
|
|
151
|
-
|
|
152
224
|
## 1.14.0 (09-18-2025)
|
|
153
225
|
|
|
154
226
|
### Bug Fixes
|
{snowflake_ml_python-1.20.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.22.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.22.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:
|
|
@@ -230,7 +230,7 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
230
230
|
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
|
|
231
231
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
232
232
|
Classifier: Topic :: Scientific/Engineering :: Information Analysis
|
|
233
|
-
Requires-Python: <3.
|
|
233
|
+
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
|
|
@@ -307,7 +307,9 @@ Requires-Dist: torchdata<1,>=0.4; extra == "torch"
|
|
|
307
307
|
Provides-Extra: transformers
|
|
308
308
|
Requires-Dist: sentence-transformers<4,>=2.7.0; extra == "transformers"
|
|
309
309
|
Requires-Dist: sentencepiece<0.2.0,>=0.1.95; extra == "transformers"
|
|
310
|
+
Requires-Dist: tokenizers<1,>=0.15.1; extra == "transformers"
|
|
310
311
|
Requires-Dist: torch<3,>=2.0.1; extra == "transformers"
|
|
312
|
+
Requires-Dist: transformers!=4.51.3,<5,>=4.39.3; extra == "transformers"
|
|
311
313
|
Dynamic: license-file
|
|
312
314
|
|
|
313
315
|
# Snowflake ML Python
|
|
@@ -415,15 +417,91 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
415
417
|
|
|
416
418
|
# Release History
|
|
417
419
|
|
|
418
|
-
## 1.
|
|
420
|
+
## 1.22.0
|
|
421
|
+
|
|
422
|
+
### New Features
|
|
423
|
+
|
|
424
|
+
* Registry: Introducing remotely logging a transformer pipeline model using SPCS job.
|
|
425
|
+
|
|
426
|
+
```python
|
|
427
|
+
# create reference of the model
|
|
428
|
+
model = huggingface.TransformersPipeline(
|
|
429
|
+
model="TinyLlama/TinyLlama-1.1B-Chat-v1.0",
|
|
430
|
+
task="text-generation",
|
|
431
|
+
)
|
|
432
|
+
|
|
433
|
+
# Remotely log the model, a SPCS job will run async and log the model
|
|
434
|
+
mv = registry.log_model(
|
|
435
|
+
model=model,
|
|
436
|
+
model_name="tinyllama_remote_log",
|
|
437
|
+
target_platforms=["SNOWPARK_CONTAINER_SERVICES"],
|
|
438
|
+
signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
|
|
439
|
+
)
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
### Bug Fixes
|
|
443
|
+
|
|
444
|
+
### Behavior Changes
|
|
445
|
+
|
|
446
|
+
### Deprecations
|
|
447
|
+
|
|
448
|
+
## 1.21.0
|
|
449
|
+
|
|
450
|
+
### New Features
|
|
451
|
+
|
|
452
|
+
* Inference Autocapture (Preview): The `create_service` API will now accept `autocapture` as a new argument to indicate
|
|
453
|
+
whether inference data will be captured.
|
|
454
|
+
* DataConnector: Added `to_huggingface_dataset()` method for converting Snowflake data to HuggingFace datasets.
|
|
455
|
+
Supports both in-memory `Dataset` (streaming=False) and streaming `IterableDataset` (streaming=True) modes.
|
|
456
|
+
* Introducing `snowflake.ml.model.models.huggingface.TransformersPipeline` model which will replace object
|
|
457
|
+
`snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel`. This is a wrapper class to
|
|
458
|
+
`transformers.Pipeline` model. Currently, following tasks
|
|
459
|
+
are supported to log without manually specifying model signatures:
|
|
460
|
+
* "fill-mask"
|
|
461
|
+
* "question-answering"
|
|
462
|
+
* "summarization"
|
|
463
|
+
* "table-question-answering"
|
|
464
|
+
* "text2text-generation"
|
|
465
|
+
* "text-classification" (alias "sentiment-analysis" available)
|
|
466
|
+
* "text-generation"
|
|
467
|
+
* "token-classification" (alias "ner" available)
|
|
468
|
+
* "translation"
|
|
469
|
+
* "translation_xx_to_yy"
|
|
470
|
+
* "zero-shot-classification"
|
|
471
|
+
which provides utility to log the model without loading the model in memory.
|
|
419
472
|
|
|
420
473
|
### Bug Fixes
|
|
421
474
|
|
|
422
475
|
* Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
|
|
423
476
|
instead of raising an exception.
|
|
477
|
+
* Registry: `ModelVersion.run()` will now raise a `ValueError` if the model does not support running on warehouse
|
|
478
|
+
(e.g. SPCS-only models) and `service_name` is not provided.
|
|
424
479
|
|
|
425
480
|
### Behavior Changes
|
|
426
481
|
|
|
482
|
+
* ML Job: The `additional_payloads` (Preview API) behavior is changing.
|
|
483
|
+
Use the `imports` argument to declare additional dependencies, such as zip files and Python modules.
|
|
484
|
+
Local directories and Python files are automatically compressed, and their internal layout is determined by the
|
|
485
|
+
specified import path. The import path applies only to local directories, Python files and staged python files;
|
|
486
|
+
it has no effect on other import types. When referencing files in a stage, only individual files
|
|
487
|
+
are supported—not directories.
|
|
488
|
+
* Online Inference (PuPr): `list_services()` now shows internal endpoint that does not need EAI to call from another
|
|
489
|
+
SPCS node or Notebook.
|
|
490
|
+
* Inference Autocapture (Preview): `list_services()` now shows if model service has autocapture enabled.
|
|
491
|
+
* Experiment Tracking (PuPr): `ExperimentTracking` is now a singleton class.
|
|
492
|
+
|
|
493
|
+
### Deprecations
|
|
494
|
+
|
|
495
|
+
* Deprecating `snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel` and will be removed in later
|
|
496
|
+
version with a notice.
|
|
497
|
+
|
|
498
|
+
## 1.20.0
|
|
499
|
+
|
|
500
|
+
### Bug Fixes
|
|
501
|
+
|
|
502
|
+
* Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
|
|
503
|
+
instead of raising an exception.
|
|
504
|
+
|
|
427
505
|
### New Features
|
|
428
506
|
|
|
429
507
|
* Registry (PrPr): Introducing vLLM as a backend inference engine. The `create_service` API will now
|
|
@@ -454,8 +532,6 @@ mv.create_service(
|
|
|
454
532
|
)
|
|
455
533
|
```
|
|
456
534
|
|
|
457
|
-
### Deprecations
|
|
458
|
-
|
|
459
535
|
## 1.19.0 (11-13-2025)
|
|
460
536
|
|
|
461
537
|
### Bug Fixes
|
|
@@ -562,8 +638,6 @@ options = {
|
|
|
562
638
|
* Registry: Dropping support for deprecated `conversational` task type for Huggingface models.
|
|
563
639
|
To read more <https://github.com/huggingface/transformers/pull/31165>
|
|
564
640
|
|
|
565
|
-
### New Features
|
|
566
|
-
|
|
567
641
|
## 1.14.0 (09-18-2025)
|
|
568
642
|
|
|
569
643
|
### Bug Fixes
|
|
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
|
|
|
6
6
|
name = "snowflake-ml-python"
|
|
7
7
|
description = "The machine learning client library that is used for interacting with Snowflake to build machine learning solutions."
|
|
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
|
-
requires-python = ">=3.9, <3.
|
|
9
|
+
requires-python = ">=3.9, <3.14"
|
|
10
10
|
dynamic = [ "version", "readme",]
|
|
11
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]]
|
|
@@ -35,7 +35,7 @@ prophet = [ "prophet>=1.1.0, <2",]
|
|
|
35
35
|
streamlit = [ "streamlit>=1.30.0,<2",]
|
|
36
36
|
tensorflow = [ "tensorflow>=2.17.0,<3",]
|
|
37
37
|
torch = [ "torch>=2.0.1,<3", "torchdata>=0.4,<1",]
|
|
38
|
-
transformers = [ "sentence-transformers>=2.7.0,<4", "sentencepiece>=0.1.95,<0.2.0", "torch>=2.0.1,<3",]
|
|
38
|
+
transformers = [ "sentence-transformers>=2.7.0,<4", "sentencepiece>=0.1.95,<0.2.0", "tokenizers>=0.15.1,<1", "torch>=2.0.1,<3", "transformers>=4.39.3,<5,!=4.51.3",]
|
|
39
39
|
|
|
40
40
|
[tool.setuptools.package-data]
|
|
41
41
|
"*" = [ "*",]
|
|
@@ -18,6 +18,8 @@ logger = logging.getLogger(__name__)
|
|
|
18
18
|
LIVE_COMMIT_PARAMETER = "ENABLE_LIVE_VERSION_IN_SDK"
|
|
19
19
|
INLINE_DEPLOYMENT_SPEC_PARAMETER = "ENABLE_INLINE_DEPLOYMENT_SPEC_FROM_CLIENT_VERSION"
|
|
20
20
|
SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST = "SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST"
|
|
21
|
+
ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS = "ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS"
|
|
22
|
+
FEATURE_MODEL_INFERENCE_AUTOCAPTURE = "FEATURE_MODEL_INFERENCE_AUTOCAPTURE"
|
|
21
23
|
|
|
22
24
|
|
|
23
25
|
class PlatformCapabilities:
|
|
@@ -80,6 +82,12 @@ class PlatformCapabilities:
|
|
|
80
82
|
def is_live_commit_enabled(self) -> bool:
|
|
81
83
|
return self._get_bool_feature(LIVE_COMMIT_PARAMETER, False)
|
|
82
84
|
|
|
85
|
+
def is_model_method_signature_parameters_enabled(self) -> bool:
|
|
86
|
+
return self._get_bool_feature(ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS, False)
|
|
87
|
+
|
|
88
|
+
def is_inference_autocapture_enabled(self) -> bool:
|
|
89
|
+
return self._is_feature_enabled(FEATURE_MODEL_INFERENCE_AUTOCAPTURE)
|
|
90
|
+
|
|
83
91
|
@staticmethod
|
|
84
92
|
def _get_features(session: snowpark_session.Session) -> dict[str, Any]:
|
|
85
93
|
try:
|
|
@@ -182,3 +190,31 @@ class PlatformCapabilities:
|
|
|
182
190
|
f"current={current_version}, feature={feature_version}, enabled={result}"
|
|
183
191
|
)
|
|
184
192
|
return result
|
|
193
|
+
|
|
194
|
+
def _is_feature_enabled(self, feature_name: str) -> bool:
|
|
195
|
+
"""Check if the feature parameter value belongs to enabled values.
|
|
196
|
+
|
|
197
|
+
Args:
|
|
198
|
+
feature_name: The name of the feature to retrieve.
|
|
199
|
+
|
|
200
|
+
Returns:
|
|
201
|
+
bool: True if the value is "ENABLED" or "ENABLED_PUBLIC_PREVIEW",
|
|
202
|
+
False if the value is "DISABLED", "DISABLED_PRIVATE_PREVIEW", or not set.
|
|
203
|
+
|
|
204
|
+
Raises:
|
|
205
|
+
ValueError: If the feature value is set but not one of the recognized values.
|
|
206
|
+
"""
|
|
207
|
+
value = self.features.get(feature_name)
|
|
208
|
+
if value is None:
|
|
209
|
+
logger.debug(f"Feature {feature_name} not found.")
|
|
210
|
+
return False
|
|
211
|
+
|
|
212
|
+
if isinstance(value, str):
|
|
213
|
+
value_str = str(value)
|
|
214
|
+
if value_str.upper() in ["ENABLED", "ENABLED_PUBLIC_PREVIEW"]:
|
|
215
|
+
return True
|
|
216
|
+
elif value_str.upper() in ["DISABLED", "DISABLED_PRIVATE_PREVIEW"]:
|
|
217
|
+
return False
|
|
218
|
+
else:
|
|
219
|
+
raise ValueError(f"Invalid feature parameter value: {value} for feature {feature_name}")
|
|
220
|
+
raise ValueError(f"Invalid feature parameter string value: {value} for feature {feature_name}")
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
from urllib.parse import urlunparse
|
|
2
|
+
|
|
3
|
+
from snowflake import snowpark as snowpark
|
|
4
|
+
|
|
5
|
+
JOB_URL_PREFIX = "#/compute/job/"
|
|
6
|
+
SERVICE_URL_PREFIX = "#/compute/service/"
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
def get_snowflake_url(
|
|
10
|
+
session: snowpark.Session,
|
|
11
|
+
url_path: str,
|
|
12
|
+
params: str = "",
|
|
13
|
+
query: str = "",
|
|
14
|
+
fragment: str = "",
|
|
15
|
+
) -> str:
|
|
16
|
+
"""Construct a Snowflake URL from session connection details and URL components.
|
|
17
|
+
|
|
18
|
+
Args:
|
|
19
|
+
session: The Snowpark session containing connection details.
|
|
20
|
+
url_path: The path component of the URL (e.g., "/compute/job/123").
|
|
21
|
+
params: Optional parameters for the URL (RFC 1808). Defaults to "".
|
|
22
|
+
query: Optional query string for the URL. Defaults to "".
|
|
23
|
+
fragment: Optional fragment identifier for the URL (e.g., "#section"). Defaults to "".
|
|
24
|
+
|
|
25
|
+
Returns:
|
|
26
|
+
A fully constructed Snowflake URL string with scheme, host, and specified components.
|
|
27
|
+
"""
|
|
28
|
+
scheme = "https"
|
|
29
|
+
if hasattr(session.connection, "scheme"):
|
|
30
|
+
scheme = session.connection.scheme
|
|
31
|
+
host = session.connection.host
|
|
32
|
+
|
|
33
|
+
return urlunparse(
|
|
34
|
+
(
|
|
35
|
+
scheme,
|
|
36
|
+
host,
|
|
37
|
+
url_path,
|
|
38
|
+
params,
|
|
39
|
+
query,
|
|
40
|
+
fragment,
|
|
41
|
+
)
|
|
42
|
+
)
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import base64
|
|
1
2
|
import collections
|
|
2
3
|
import logging
|
|
3
4
|
import os
|
|
5
|
+
import re
|
|
4
6
|
import time
|
|
5
7
|
from typing import TYPE_CHECKING, Any, Deque, Iterator, Optional, Sequence, Union
|
|
6
8
|
|
|
@@ -165,8 +167,71 @@ class ArrowIngestor(data_ingestor.DataIngestor, mixins.SerializableSessionMixin)
|
|
|
165
167
|
# Re-shuffle input files on each iteration start
|
|
166
168
|
if shuffle:
|
|
167
169
|
np.random.shuffle(sources)
|
|
168
|
-
|
|
169
|
-
|
|
170
|
+
try:
|
|
171
|
+
pa_dataset: pds.Dataset = pds.dataset(sources, format=format, **self._kwargs)
|
|
172
|
+
return pa_dataset
|
|
173
|
+
except Exception as e:
|
|
174
|
+
self._tmp_debug_parquet_invalid(e, sources)
|
|
175
|
+
|
|
176
|
+
def _tmp_debug_parquet_invalid(self, e: Exception, sources: list[Any]) -> None:
|
|
177
|
+
# Attach rich debug info to help diagnose intermittent Parquet footer/magic byte errors
|
|
178
|
+
debug_parts: list[str] = []
|
|
179
|
+
debug_parts.append("SNOWML DEBUG: Failed to construct Arrow Dataset")
|
|
180
|
+
debug_parts.append(
|
|
181
|
+
"SNOWML DEBUG: " f"data_sources_count={len(self._data_sources)} " f"resolved_sources_count={len(sources)}"
|
|
182
|
+
)
|
|
183
|
+
# Try to include the exact file path mentioned by pyarrow, if present
|
|
184
|
+
error_text = str(e)
|
|
185
|
+
snow_paths: list[str] = []
|
|
186
|
+
try:
|
|
187
|
+
# Extract snow://... tokens possibly wrapped in quotes
|
|
188
|
+
for match in re.finditer(r'(snow://[^\s\'"]+)', error_text):
|
|
189
|
+
token = match.group(1).rstrip(").,;]")
|
|
190
|
+
snow_paths.append(token)
|
|
191
|
+
except Exception:
|
|
192
|
+
pass
|
|
193
|
+
fs = self._kwargs.get("filesystem")
|
|
194
|
+
if fs is not None:
|
|
195
|
+
# Always include a directory listing with sizes for context
|
|
196
|
+
try:
|
|
197
|
+
debug_parts.append("SNOWML DEBUG: Listing resolved sources with sizes:")
|
|
198
|
+
for s in sources:
|
|
199
|
+
try:
|
|
200
|
+
info = fs.info(s)
|
|
201
|
+
size = info.get("size", None)
|
|
202
|
+
md5 = info.get("md5", None)
|
|
203
|
+
debug_parts.append(f" - {s} size={size} md5={md5}")
|
|
204
|
+
except Exception as le:
|
|
205
|
+
debug_parts.append(f" - {s} info_failed={le}")
|
|
206
|
+
except Exception as le:
|
|
207
|
+
debug_parts.append(f"SNOWML DEBUG: listing sources failed: {le}")
|
|
208
|
+
# If pyarrow referenced a specific file, dump its full contents (base64) for inspection
|
|
209
|
+
for path in snow_paths[:1]: # usually only one path appears in the message
|
|
210
|
+
try:
|
|
211
|
+
info = fs.info(path)
|
|
212
|
+
size = info.get("size", None)
|
|
213
|
+
debug_parts.append(f"SNOWML DEBUG: Inspecting referenced file: {path} size={size}")
|
|
214
|
+
with fs.open(path, "rb") as f:
|
|
215
|
+
content = f.read()
|
|
216
|
+
magic_head = content[:4]
|
|
217
|
+
magic_tail = content[-4:] if content else b""
|
|
218
|
+
looks_like_parquet = (magic_head == b"PAR1") and (magic_tail == b"PAR1")
|
|
219
|
+
debug_parts.append(
|
|
220
|
+
"SNOWML DEBUG: "
|
|
221
|
+
f"file_magic_head={magic_head!r} "
|
|
222
|
+
f"file_magic_tail={magic_tail!r} "
|
|
223
|
+
f"parquet_magic_detected={looks_like_parquet}"
|
|
224
|
+
)
|
|
225
|
+
b64 = base64.b64encode(content).decode("ascii")
|
|
226
|
+
debug_parts.append("SNOWML DEBUG: file_content_base64 (entire file):")
|
|
227
|
+
debug_parts.append(b64)
|
|
228
|
+
except Exception as fe:
|
|
229
|
+
debug_parts.append(f"SNOWML DEBUG: failed to read referenced file {path}: {fe}")
|
|
230
|
+
else:
|
|
231
|
+
debug_parts.append("SNOWML DEBUG: No filesystem available; cannot inspect files")
|
|
232
|
+
debug_message = "\n".join(debug_parts)
|
|
233
|
+
# Re-raise with augmented message to surface in stacktrace
|
|
234
|
+
raise RuntimeError(f"{e}\n{debug_message}") from e
|
|
170
235
|
|
|
171
236
|
def _get_batches_from_buffer(self, batch_size: int) -> dict[str, npt.NDArray[Any]]:
|
|
172
237
|
"""Generate new batches from the existing record batch buffer."""
|
{snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/data_connector.py
RENAMED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
import os
|
|
2
|
-
from typing import
|
|
2
|
+
from typing import (
|
|
3
|
+
TYPE_CHECKING,
|
|
4
|
+
Any,
|
|
5
|
+
Generator,
|
|
6
|
+
Literal,
|
|
7
|
+
Optional,
|
|
8
|
+
Sequence,
|
|
9
|
+
TypeVar,
|
|
10
|
+
Union,
|
|
11
|
+
overload,
|
|
12
|
+
)
|
|
3
13
|
|
|
4
14
|
import numpy.typing as npt
|
|
5
15
|
from typing_extensions import deprecated
|
|
@@ -11,6 +21,7 @@ from snowflake.ml.data._internal.arrow_ingestor import ArrowIngestor
|
|
|
11
21
|
from snowflake.snowpark import context as sp_context
|
|
12
22
|
|
|
13
23
|
if TYPE_CHECKING:
|
|
24
|
+
import datasets as hf_datasets
|
|
14
25
|
import pandas as pd
|
|
15
26
|
import ray
|
|
16
27
|
import tensorflow as tf
|
|
@@ -257,6 +268,97 @@ class DataConnector:
|
|
|
257
268
|
except ImportError as e:
|
|
258
269
|
raise ImportError("Ray is not installed, please install ray in your local environment.") from e
|
|
259
270
|
|
|
271
|
+
@overload
|
|
272
|
+
def to_huggingface_dataset(
|
|
273
|
+
self,
|
|
274
|
+
*,
|
|
275
|
+
streaming: Literal[False] = ...,
|
|
276
|
+
limit: Optional[int] = ...,
|
|
277
|
+
) -> "hf_datasets.Dataset":
|
|
278
|
+
...
|
|
279
|
+
|
|
280
|
+
@overload
|
|
281
|
+
def to_huggingface_dataset(
|
|
282
|
+
self,
|
|
283
|
+
*,
|
|
284
|
+
streaming: Literal[True],
|
|
285
|
+
limit: Optional[int] = ...,
|
|
286
|
+
batch_size: int = ...,
|
|
287
|
+
shuffle: bool = ...,
|
|
288
|
+
drop_last_batch: bool = ...,
|
|
289
|
+
) -> "hf_datasets.IterableDataset":
|
|
290
|
+
...
|
|
291
|
+
|
|
292
|
+
@telemetry.send_api_usage_telemetry(
|
|
293
|
+
project=_PROJECT,
|
|
294
|
+
subproject_extractor=lambda self: type(self).__name__,
|
|
295
|
+
func_params_to_log=["streaming", "limit", "batch_size", "shuffle", "drop_last_batch"],
|
|
296
|
+
)
|
|
297
|
+
def to_huggingface_dataset(
|
|
298
|
+
self,
|
|
299
|
+
*,
|
|
300
|
+
streaming: bool = False,
|
|
301
|
+
limit: Optional[int] = None,
|
|
302
|
+
batch_size: int = 1024,
|
|
303
|
+
shuffle: bool = False,
|
|
304
|
+
drop_last_batch: bool = False,
|
|
305
|
+
) -> "Union[hf_datasets.Dataset, hf_datasets.IterableDataset]":
|
|
306
|
+
"""Retrieve the Snowflake data as a HuggingFace Dataset.
|
|
307
|
+
|
|
308
|
+
Args:
|
|
309
|
+
streaming: If True, returns an IterableDataset that streams data in batches.
|
|
310
|
+
If False (default), returns an in-memory Dataset.
|
|
311
|
+
limit: Maximum number of rows to load. If None, loads all rows.
|
|
312
|
+
batch_size: Size of batches for internal data retrieval.
|
|
313
|
+
shuffle: Whether to shuffle the data. If True, files will be shuffled and rows
|
|
314
|
+
in each file will also be shuffled.
|
|
315
|
+
drop_last_batch: Whether to drop the last batch if it's smaller than batch_size.
|
|
316
|
+
|
|
317
|
+
Returns:
|
|
318
|
+
A HuggingFace Dataset (in-memory) or IterableDataset (streaming).
|
|
319
|
+
"""
|
|
320
|
+
import datasets as hf_datasets
|
|
321
|
+
|
|
322
|
+
if streaming:
|
|
323
|
+
return self._to_huggingface_iterable_dataset(
|
|
324
|
+
limit=limit,
|
|
325
|
+
batch_size=batch_size,
|
|
326
|
+
shuffle=shuffle,
|
|
327
|
+
drop_last_batch=drop_last_batch,
|
|
328
|
+
)
|
|
329
|
+
else:
|
|
330
|
+
return hf_datasets.Dataset.from_pandas(self._ingestor.to_pandas(limit))
|
|
331
|
+
|
|
332
|
+
def _to_huggingface_iterable_dataset(
|
|
333
|
+
self,
|
|
334
|
+
*,
|
|
335
|
+
limit: Optional[int],
|
|
336
|
+
batch_size: int,
|
|
337
|
+
shuffle: bool,
|
|
338
|
+
drop_last_batch: bool,
|
|
339
|
+
) -> "hf_datasets.IterableDataset":
|
|
340
|
+
"""Create a HuggingFace IterableDataset that streams data in batches."""
|
|
341
|
+
import datasets as hf_datasets
|
|
342
|
+
|
|
343
|
+
def generator() -> Generator[dict[str, Any], None, None]:
|
|
344
|
+
rows_yielded = 0
|
|
345
|
+
for batch in self._ingestor.to_batches(batch_size, shuffle, drop_last_batch):
|
|
346
|
+
# Yield individual rows from each batch
|
|
347
|
+
num_rows = len(next(iter(batch.values())))
|
|
348
|
+
for i in range(num_rows):
|
|
349
|
+
if limit is not None and rows_yielded >= limit:
|
|
350
|
+
return
|
|
351
|
+
yield {k: v[i].item() if hasattr(v[i], "item") else v[i] for k, v in batch.items()}
|
|
352
|
+
rows_yielded += 1
|
|
353
|
+
|
|
354
|
+
result = hf_datasets.IterableDataset.from_generator(generator)
|
|
355
|
+
# In datasets >= 3.x, from_generator returns IterableDatasetDict
|
|
356
|
+
# We need to extract the IterableDataset from the dict
|
|
357
|
+
if hasattr(hf_datasets, "IterableDatasetDict") and isinstance(result, hf_datasets.IterableDatasetDict):
|
|
358
|
+
# Get the first (and only) dataset from the dict
|
|
359
|
+
result = next(iter(result.values()))
|
|
360
|
+
return result
|
|
361
|
+
|
|
260
362
|
|
|
261
363
|
# Switch to use Runtime's Data Ingester if running in ML runtime
|
|
262
364
|
# Fail silently if the data ingester is not found
|
|
@@ -41,8 +41,14 @@ class ExperimentTrackingSQLClient(_base._BaseSQLClient):
|
|
|
41
41
|
).has_dimensions(expected_rows=1, expected_cols=1).validate()
|
|
42
42
|
|
|
43
43
|
@telemetry.send_api_usage_telemetry(project=telemetry.TelemetryProject.EXPERIMENT_TRACKING.value)
|
|
44
|
-
def drop_experiment(
|
|
45
|
-
|
|
44
|
+
def drop_experiment(
|
|
45
|
+
self,
|
|
46
|
+
*,
|
|
47
|
+
database_name: sql_identifier.SqlIdentifier,
|
|
48
|
+
schema_name: sql_identifier.SqlIdentifier,
|
|
49
|
+
experiment_name: sql_identifier.SqlIdentifier,
|
|
50
|
+
) -> None:
|
|
51
|
+
experiment_fqn = self.fully_qualified_object_name(database_name, schema_name, experiment_name)
|
|
46
52
|
query_result_checker.SqlResultValidator(self._session, f"DROP EXPERIMENT {experiment_fqn}").has_dimensions(
|
|
47
53
|
expected_rows=1, expected_cols=1
|
|
48
54
|
).validate()
|
{snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/callback/keras.py
RENAMED
|
@@ -12,6 +12,8 @@ if TYPE_CHECKING:
|
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
class SnowflakeKerasCallback(keras.callbacks.Callback):
|
|
15
|
+
"""Keras callback for automatically logging to a Snowflake ML Experiment."""
|
|
16
|
+
|
|
15
17
|
def __init__(
|
|
16
18
|
self,
|
|
17
19
|
experiment_tracking: "ExperimentTracking",
|
|
@@ -23,12 +25,33 @@ class SnowflakeKerasCallback(keras.callbacks.Callback):
|
|
|
23
25
|
version_name: Optional[str] = None,
|
|
24
26
|
model_signature: Optional["ModelSignature"] = None,
|
|
25
27
|
) -> None:
|
|
28
|
+
"""
|
|
29
|
+
Creates a new Keras callback.
|
|
30
|
+
|
|
31
|
+
Args:
|
|
32
|
+
experiment_tracking (snowflake.ml.experiment.ExperimentTracking): The Experiment Tracking instance
|
|
33
|
+
to use for logging.
|
|
34
|
+
log_model (bool): Whether to log the model at the end of training. Default is True.
|
|
35
|
+
log_metrics (bool): Whether to log metrics during training. Default is True.
|
|
36
|
+
log_params (bool): Whether to log model parameters at the start of training. Default is True.
|
|
37
|
+
log_every_n_epochs (int): Frequency with which to log metrics. Must be positive.
|
|
38
|
+
Default is 1, logging after every epoch.
|
|
39
|
+
model_name (Optional[str]): The model name to use when logging the model.
|
|
40
|
+
If None, the model name will be derived from the experiment name.
|
|
41
|
+
version_name (Optional[str]): The model version name to use when logging the model.
|
|
42
|
+
If None, the version name will be randomly generated.
|
|
43
|
+
model_signature (Optional[snowflake.ml.model.model_signature.ModelSignature]): The model signature to use
|
|
44
|
+
when logging the model. This is required if ``log_model`` is set to True.
|
|
45
|
+
|
|
46
|
+
Raises:
|
|
47
|
+
ValueError: When ``log_every_n_epochs`` is not a positive integer.
|
|
48
|
+
"""
|
|
26
49
|
self._experiment_tracking = experiment_tracking
|
|
27
50
|
self.log_model = log_model
|
|
28
51
|
self.log_metrics = log_metrics
|
|
29
52
|
self.log_params = log_params
|
|
30
|
-
if log_every_n_epochs
|
|
31
|
-
raise ValueError("`log_every_n_epochs` must be positive.")
|
|
53
|
+
if not (utils.is_integer(log_every_n_epochs) and log_every_n_epochs > 0):
|
|
54
|
+
raise ValueError("`log_every_n_epochs` must be a positive integer.")
|
|
32
55
|
self.log_every_n_epochs = log_every_n_epochs
|
|
33
56
|
self.model_name = model_name
|
|
34
57
|
self.version_name = version_name
|