snowflake-ml-python 1.9.2__tar.gz → 1.10.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.9.2 → snowflake_ml_python-1.10.0}/CHANGELOG.md +504 -491
- {snowflake_ml_python-1.9.2/snowflake_ml_python.egg-info → snowflake_ml_python-1.10.0}/PKG-INFO +505 -492
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/service_logger.py +31 -17
- snowflake_ml_python-1.10.0/snowflake/ml/experiment/callback/lightgbm.py +55 -0
- snowflake_ml_python-1.10.0/snowflake/ml/experiment/callback/xgboost.py +63 -0
- snowflake_ml_python-1.10.0/snowflake/ml/experiment/utils.py +14 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/payload_utils.py +13 -7
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +2 -2
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/model/model_version_impl.py +56 -48
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/ops/service_ops.py +177 -12
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/event_handler.py +87 -18
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/models/huggingface_pipeline.py +71 -49
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/type_hints.py +26 -1
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/registry/_manager/model_manager.py +30 -35
- snowflake_ml_python-1.10.0/snowflake/ml/registry/_manager/model_parameter_reconciler.py +105 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/registry/registry.py +0 -19
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0/snowflake_ml_python.egg-info}/PKG-INFO +505 -492
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake_ml_python.egg-info/SOURCES.txt +4 -1
- snowflake_ml_python-1.9.2/snowflake/ml/experiment/callback.py +0 -121
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/README.md +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/pyproject.toml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/setup.cfg +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_classify_text.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_complete.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/env_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/file_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/platform_capabilities.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/data/data_connector.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/_entities/run.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/experiment/experiment_tracking.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/feature_store.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/feature_store/feature_view.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/function_payload_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/interop_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/spec_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/_utils/types.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/job.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/jobs/manager.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/lineage/lineage_node.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/ops/model_ops.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/sql/model.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/sql/service.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/core.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/_signatures/utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/model_signature.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/svm/svc.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/svm/svr.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/utils/html_utils.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake_ml_python.egg-info/requires.txt +0 -0
- {snowflake_ml_python-1.9.2 → snowflake_ml_python-1.10.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,26 +1,38 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
+
## 1.10.0
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
### Behavior Changes
|
|
8
|
+
|
|
9
|
+
### New Features
|
|
10
|
+
|
|
11
|
+
* Registry: add progress bars for `ModelVersion.create_service` and `ModelVersion.log_model`.
|
|
12
|
+
* ModelRegistry: Logs emitted during `ModelVersion.create_service` will be written to a file. The file location
|
|
13
|
+
will be shown in the console.
|
|
14
|
+
|
|
3
15
|
## 1.9.2
|
|
4
16
|
|
|
5
17
|
### Bug Fixes
|
|
6
18
|
|
|
7
|
-
|
|
8
|
-
|
|
19
|
+
* DataConnector: Fix `self._session` related errors inside Container Runtime.
|
|
20
|
+
* Registry: Fix a bug when trying to pass `None` to array (`pd.dtype('O')`) in signature and pandas data handler.
|
|
9
21
|
|
|
10
22
|
### New Features
|
|
11
23
|
|
|
12
|
-
|
|
24
|
+
* Experiment Tracking (PrPr): Automatically log the model, metrics, and parameters while training
|
|
13
25
|
XGBoost and LightGBM models.
|
|
14
26
|
|
|
15
27
|
```python
|
|
16
28
|
from snowflake.ml.experiment import ExperimentTracking
|
|
17
|
-
from snowflake.ml.experiment.callback import SnowflakeXgboostCallback, SnowflakeLightgbmCallback
|
|
18
29
|
|
|
19
30
|
exp = ExperimentTracking(session=sp_session, database_name="ML", schema_name="PUBLIC")
|
|
20
31
|
|
|
21
32
|
exp.set_experiment("MY_EXPERIMENT")
|
|
22
33
|
|
|
23
34
|
# XGBoost
|
|
35
|
+
from snowflake.ml.experiment.callback.xgboost import SnowflakeXgboostCallback
|
|
24
36
|
callback = SnowflakeXgboostCallback(
|
|
25
37
|
exp, log_model=True, log_metrics=True, log_params=True, model_name="model_name", model_signature=sig
|
|
26
38
|
)
|
|
@@ -29,6 +41,7 @@ with exp.start_run():
|
|
|
29
41
|
model.fit(X, y, eval_set=[(X_test, y_test)])
|
|
30
42
|
|
|
31
43
|
# LightGBM
|
|
44
|
+
from snowflake.ml.experiment.callback.lightgbm import SnowflakeLightgbmCallback
|
|
32
45
|
callback = SnowflakeLightgbmCallback(
|
|
33
46
|
exp, log_model=True, log_metrics=True, log_params=True, model_name="model_name", model_signature=sig
|
|
34
47
|
)
|
|
@@ -41,14 +54,14 @@ with exp.start_run():
|
|
|
41
54
|
|
|
42
55
|
### Bug Fixes
|
|
43
56
|
|
|
44
|
-
|
|
57
|
+
* Registry: Fix a bug when trying to set the PAD token the HuggingFace `text-generation` model had multiple EOS tokens.
|
|
45
58
|
The handler picks the first EOS token as PAD token now.
|
|
46
59
|
|
|
47
60
|
### New Features
|
|
48
61
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
62
|
+
* DataConnector: DataConnector objects can now be pickled
|
|
63
|
+
* Dataset: Dataset objects can now be pickled
|
|
64
|
+
* Registry (PrPr): Introducing `create_service` function in `snowflake/ml/model/models/huggingface_pipeline.py`
|
|
52
65
|
which creates a service to log a HF model and upon successful logging, an inference service is created.
|
|
53
66
|
|
|
54
67
|
```python
|
|
@@ -69,7 +82,7 @@ hf_model_ref.create_service(
|
|
|
69
82
|
)
|
|
70
83
|
```
|
|
71
84
|
|
|
72
|
-
|
|
85
|
+
* Experiment Tracking (PrPr): New module for managing and tracking ML experiments in Snowflake.
|
|
73
86
|
|
|
74
87
|
```python
|
|
75
88
|
from snowflake.ml.experiment import ExperimentTracking
|
|
@@ -84,16 +97,16 @@ with exp.start_run():
|
|
|
84
97
|
exp.log_model(my_model, model_name="MY_MODEL")
|
|
85
98
|
```
|
|
86
99
|
|
|
87
|
-
|
|
100
|
+
* Registry: Added support for wide input (500+ features) for inference done using SPCS
|
|
88
101
|
|
|
89
102
|
## 1.9.0
|
|
90
103
|
|
|
91
104
|
### Bug Fixes
|
|
92
105
|
|
|
93
|
-
|
|
106
|
+
* Registry: Fixed bug causing snowpark to pandas dataframe conversion to fail when `QUOTED_IDENTIFIERS_IGNORE_CASE`
|
|
94
107
|
parameter is enabled
|
|
95
|
-
|
|
96
|
-
|
|
108
|
+
* Registry: Fixed duplicate UserWarning logs during model packaging
|
|
109
|
+
* Registry: If the huggingface pipeline text-generation model doesn't contain a default chat template, a ChatML template
|
|
97
110
|
is assigned to the tokenizer.
|
|
98
111
|
|
|
99
112
|
```shell
|
|
@@ -105,40 +118,40 @@ with exp.start_run():
|
|
|
105
118
|
{% endif %}"
|
|
106
119
|
```
|
|
107
120
|
|
|
108
|
-
|
|
121
|
+
* Registry: Fixed SQL queries during registry initialization that were forcing warehouse requirement
|
|
109
122
|
|
|
110
123
|
### Behavior Changes
|
|
111
124
|
|
|
112
|
-
|
|
125
|
+
* ML Job: The `list_jobs()` API has been modified. The `scope` parameter has been removed,
|
|
113
126
|
optional `database` and `schema` parameters have been added, the return type has changed
|
|
114
127
|
from `snowpark.DataFrame` to `pandas.DataFrame`, and the returned columns have been updated
|
|
115
128
|
to `name`, `status`, `message`, `database_name`, `schema_name`, `owner`, `compute_pool`,
|
|
116
129
|
`target_instances`, `created_time`, and `completed_time`.
|
|
117
|
-
|
|
118
|
-
|
|
130
|
+
* Registry: Set `relax_version` to false when pip_requirements are specified while logging model
|
|
131
|
+
* Registry: UserWarning will now be raised based on specified target_platforms (addresses spurious warnings)
|
|
119
132
|
|
|
120
133
|
### New Features
|
|
121
134
|
|
|
122
|
-
|
|
135
|
+
* Registry: `target_platforms` supports `TargetPlatformMode`: `WAREHOUSE_ONLY`, `SNOWPARK_CONTAINER_SERVICES_ONLY`,
|
|
123
136
|
or `BOTH_WAREHOUSE_AND_SNOWPARK_CONTAINER_SERVICES`.
|
|
124
|
-
|
|
137
|
+
* Registry: Introduce `snowflake.ml.model.target_platform.TargetPlatform`, target platform constants, and
|
|
125
138
|
`snowflake.ml.model.task.Task`.
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
139
|
+
* ML Job: Single-node ML Jobs are now in GA. Multi-node support is now in PuPr
|
|
140
|
+
* Moved less frequently used job submission parameters to `**kwargs`
|
|
141
|
+
* Platform metrics are now enabled by default
|
|
142
|
+
* `list_jobs()` behavior changed, see [Behavior Changes](#behavior-changes) for more info
|
|
130
143
|
|
|
131
144
|
## 1.8.6
|
|
132
145
|
|
|
133
146
|
### Bug Fixes
|
|
134
147
|
|
|
135
|
-
|
|
148
|
+
* Fixed fatal errors from internal telemetry wrappers.
|
|
136
149
|
|
|
137
150
|
### New Features
|
|
138
151
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
152
|
+
* Registry: Add service container info to logs.
|
|
153
|
+
* ML Job (PuPr): Add new `submit_from_stage()` API for submitting a payload from an existing stage path.
|
|
154
|
+
* ML Job (PuPr): Add support for `snowpark.Session` objects in the argument list of
|
|
142
155
|
`@remote` decorated functions. `Session` object will be injected from context in
|
|
143
156
|
the job execution environment.
|
|
144
157
|
|
|
@@ -146,75 +159,75 @@ with exp.start_run():
|
|
|
146
159
|
|
|
147
160
|
### Bug Fixes
|
|
148
161
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
162
|
+
* Registry: Fixed a bug when listing and deleting container services.
|
|
163
|
+
* Registry: Fixed explainability issue with scikit-learn pipelines, skipping explain function creation.
|
|
164
|
+
* Explainability: bump minimum streamlit version down to 1.30
|
|
165
|
+
* Modeling: Make XGBoost a required dependency (xgboost is not a required dependency in snowflake-ml-python 1.8.4).
|
|
153
166
|
|
|
154
167
|
### Behavior Changes
|
|
155
168
|
|
|
156
|
-
|
|
169
|
+
* ML Job (Multi-node PrPr): Rename argument `num_instances` to `target_instances` in job submission APIs and
|
|
157
170
|
change type from `Optional[int]` to `int`
|
|
158
171
|
|
|
159
172
|
### New Features
|
|
160
173
|
|
|
161
|
-
|
|
174
|
+
* Registry: No longer checks if the snowflake-ml-python version is available in the Snowflake Conda channel when logging
|
|
162
175
|
an SPCS-only model.
|
|
163
|
-
|
|
164
|
-
|
|
176
|
+
* ML Job (PuPr): Add `min_instances` argument to the job decorator to allow waiting for workers to be ready.
|
|
177
|
+
* ML Job (PuPr): Adjust polling behavior to reduce number of SQL calls.
|
|
165
178
|
|
|
166
179
|
### Deprecations
|
|
167
180
|
|
|
168
|
-
|
|
181
|
+
* `SnowflakeLoginOptions` is deprecated and will be removed in a future release.
|
|
169
182
|
|
|
170
183
|
## 1.8.4 (2025-05-12)
|
|
171
184
|
|
|
172
185
|
### Bug Fixes
|
|
173
186
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
187
|
+
* Registry: Default `enable_explainability` to True when the model can be deployed to Warehouse.
|
|
188
|
+
* Registry: Add `custom_model.partitioned_api` decorator and deprecate `partitioned_inference_api`.
|
|
189
|
+
* Registry: Fixed a bug when logging pytroch and tensorflow models that caused
|
|
177
190
|
`UnboundLocalError: local variable 'multiple_inputs' referenced before assignment`.
|
|
178
191
|
|
|
179
192
|
### Behavior Changes
|
|
180
193
|
|
|
181
|
-
|
|
194
|
+
* ML Job (PuPr) Updated property `id` to be fully qualified name; Introduced new property `name`
|
|
182
195
|
to represent the ML Job name
|
|
183
|
-
|
|
184
|
-
|
|
196
|
+
* ML Job (PuPr) Modified `list_jobs()` to return ML Job `name` instead of `id`
|
|
197
|
+
* Registry: Error in `log_model` if `enable_explainability` is True and model is only deployed to
|
|
185
198
|
Snowpark Container Services, instead of just user warning.
|
|
186
199
|
|
|
187
200
|
### New Features
|
|
188
201
|
|
|
189
|
-
|
|
202
|
+
* ML Job (PuPr): Extend `@remote` function decorator, `submit_file()` and `submit_directory()` to accept `database` and
|
|
190
203
|
`schema` parameters
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
204
|
+
* ML Job (PuPr): Support querying by fully qualified name in `get_job()`
|
|
205
|
+
* Explainability: Added visualization functions to `snowflake.ml.monitoring` to plot explanations in notebooks.
|
|
206
|
+
* Explainability: Support explain for categorical transforms for sklearn pipeline
|
|
207
|
+
* Support categorical type for `xgboost.DMatrix` inputs.
|
|
195
208
|
|
|
196
209
|
## 1.8.3
|
|
197
210
|
|
|
198
211
|
### New Features
|
|
199
212
|
|
|
200
|
-
|
|
201
|
-
|
|
213
|
+
* Registry: Default to the runtime cuda version if available when logging a GPU model in Container Runtime.
|
|
214
|
+
* ML Job (PuPr): Added `as_list` argument to `MLJob.get_logs()` to enable retrieving logs
|
|
202
215
|
as a list of strings
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
216
|
+
* Registry: Support `ModelVersion.run_job` to run inference with a single-node Snowpark Container Services job.
|
|
217
|
+
* DataConnector: Removed PrPr decorators
|
|
218
|
+
* Registry: Default the target platform to warehouse when logging a partitioned model.
|
|
206
219
|
|
|
207
220
|
## 1.8.2
|
|
208
221
|
|
|
209
222
|
### New Features
|
|
210
223
|
|
|
211
|
-
|
|
212
|
-
|
|
224
|
+
* ML Job now available as a PuPr feature
|
|
225
|
+
* Add ability to retrieve results for `@remote` decorated functions using
|
|
213
226
|
new `MLJobWithResult.result()` API, which will return the unpickled result
|
|
214
227
|
or raise an exception if the job execution failed.
|
|
215
|
-
|
|
228
|
+
* Pre-created Snowpark Session is now available inside job payloads using
|
|
216
229
|
`snowflake.snowpark.context.get_active_session()`
|
|
217
|
-
|
|
230
|
+
* Registry: Introducing `save_location` to `log_model` using the `options` argument.
|
|
218
231
|
Users can use the `save_location` option to specify a local directory where the model files and configuration are written.
|
|
219
232
|
This is useful when the default temporary directory has space limitations.
|
|
220
233
|
|
|
@@ -228,44 +241,44 @@ reg.log_model(
|
|
|
228
241
|
)
|
|
229
242
|
```
|
|
230
243
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
244
|
+
* Registry: Include model dependencies in pip requirements by default when logging in Container Runtime.
|
|
245
|
+
* Multi-node ML Job (PrPr): Add `instance_id` argument to `get_logs` and `show_logs` method to support multi node log retrieval
|
|
246
|
+
* Multi-node ML Job (PrPr): Add `job.get_instance_status(instance_id=...)` API to support multi node status retrieval
|
|
234
247
|
|
|
235
248
|
## 1.8.1 (03-26-2025)
|
|
236
249
|
|
|
237
250
|
### Bug Fixes
|
|
238
251
|
|
|
239
|
-
|
|
252
|
+
* Registry: Fix a bug that caused `unsupported model type` error while logging a sklearn model with `score_samples`
|
|
240
253
|
inference method.
|
|
241
|
-
|
|
254
|
+
* Registry: Fix a bug that model inference service creation fails on an existing and suspended service.
|
|
242
255
|
|
|
243
256
|
### New Features
|
|
244
257
|
|
|
245
|
-
|
|
246
|
-
|
|
258
|
+
* ML Job (PrPr): Update Container Runtime image version to `1.0.1`
|
|
259
|
+
* ML Job (PrPr): Add `enable_metrics` argument to job submission APIs to enable publishing service metrics to Event Table.
|
|
247
260
|
See [Accessing Event Table service metrics](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/monitoring-services#accessing-event-table-service-metrics)
|
|
248
261
|
for retrieving published metrics
|
|
249
262
|
and [Costs of telemetry data collection](https://docs.snowflake.com/en/developer-guide/logging-tracing/logging-tracing-billing)
|
|
250
263
|
for cost implications.
|
|
251
|
-
|
|
264
|
+
* Registry: When creating a copy of a `ModelVersion` with `log_model`, raise an exception if unsupported arguments are provided.
|
|
252
265
|
|
|
253
266
|
## 1.8.0 (03-20-2025)
|
|
254
267
|
|
|
255
268
|
### Bug Fixes
|
|
256
269
|
|
|
257
|
-
|
|
270
|
+
* Modeling: Fix a bug in some metrics that allowed an unsupported version of numpy to be installed
|
|
258
271
|
automatically in the stored procedure, resulting in a numpy error on execution
|
|
259
|
-
|
|
272
|
+
* Registry: Fix a bug that leads to incorrect `Model is does not have _is_inference_api` error message when assigning
|
|
260
273
|
a supported model as a property of a CustomModel.
|
|
261
|
-
|
|
274
|
+
* Registry: Fix a bug that inference is not working when models with more than 500 input features
|
|
262
275
|
are deployed to SPCS.
|
|
263
276
|
|
|
264
277
|
### Behavior Change
|
|
265
278
|
|
|
266
|
-
|
|
279
|
+
* Registry: With FeatureGroupSpec support, auto inferred model signature for `transformers.Pipeline` models have been
|
|
267
280
|
updated, including:
|
|
268
|
-
|
|
281
|
+
* Signature for fill-mask task has been changed from
|
|
269
282
|
|
|
270
283
|
```python
|
|
271
284
|
ModelSignature(
|
|
@@ -300,7 +313,7 @@ reg.log_model(
|
|
|
300
313
|
)
|
|
301
314
|
```
|
|
302
315
|
|
|
303
|
-
|
|
316
|
+
* Signature for token-classification task has been changed from
|
|
304
317
|
|
|
305
318
|
```python
|
|
306
319
|
ModelSignature(
|
|
@@ -335,7 +348,7 @@ reg.log_model(
|
|
|
335
348
|
)
|
|
336
349
|
```
|
|
337
350
|
|
|
338
|
-
|
|
351
|
+
* Signature for question-answering task when top_k is larger than 1 has been changed from
|
|
339
352
|
|
|
340
353
|
```python
|
|
341
354
|
ModelSignature(
|
|
@@ -372,7 +385,7 @@ reg.log_model(
|
|
|
372
385
|
)
|
|
373
386
|
```
|
|
374
387
|
|
|
375
|
-
|
|
388
|
+
* Signature for text-classification task when top_k is `None` has been changed from
|
|
376
389
|
|
|
377
390
|
```python
|
|
378
391
|
ModelSignature(
|
|
@@ -401,7 +414,7 @@ reg.log_model(
|
|
|
401
414
|
)
|
|
402
415
|
```
|
|
403
416
|
|
|
404
|
-
|
|
417
|
+
* Signature for text-classification task when top_k is not `None` has been changed from
|
|
405
418
|
|
|
406
419
|
```python
|
|
407
420
|
ModelSignature(
|
|
@@ -435,7 +448,7 @@ reg.log_model(
|
|
|
435
448
|
)
|
|
436
449
|
```
|
|
437
450
|
|
|
438
|
-
|
|
451
|
+
* Signature for text-generation task has been changed from
|
|
439
452
|
|
|
440
453
|
```python
|
|
441
454
|
ModelSignature(
|
|
@@ -472,7 +485,7 @@ reg.log_model(
|
|
|
472
485
|
)
|
|
473
486
|
```
|
|
474
487
|
|
|
475
|
-
|
|
488
|
+
* Registry: PyTorch and TensorFlow models now expect a single tensor input/output by default when logging to Model
|
|
476
489
|
Registry. To use multiple tensors (previous behavior), set `options={"multiple_inputs": True}`.
|
|
477
490
|
|
|
478
491
|
Example with single tensor input:
|
|
@@ -518,130 +531,130 @@ reg.log_model(
|
|
|
518
531
|
)
|
|
519
532
|
```
|
|
520
533
|
|
|
521
|
-
|
|
534
|
+
* Registry: Default `enable_explainability` to False when the model can be deployed to Snowpark Container Services.
|
|
522
535
|
|
|
523
536
|
### New Features
|
|
524
537
|
|
|
525
|
-
|
|
538
|
+
* Registry: Added support to single `torch.Tensor`, `tensorflow.Tensor` and `tensorflow.Variable` as input or output
|
|
526
539
|
data.
|
|
527
|
-
|
|
540
|
+
* Registry: Support [`xgboost.DMatrix`](https://xgboost.readthedocs.io/en/stable/python/python_api.html#xgboost.DMatrix)
|
|
528
541
|
datatype for XGBoost models.
|
|
529
542
|
|
|
530
543
|
## 1.7.5 (03-06-2025)
|
|
531
544
|
|
|
532
|
-
|
|
533
|
-
|
|
545
|
+
* Support Python 3.12.
|
|
546
|
+
* Explainability: Support native and snowflake.ml.modeling sklearn pipeline
|
|
534
547
|
|
|
535
548
|
### Bug Fixes
|
|
536
549
|
|
|
537
|
-
|
|
550
|
+
* Registry: Fixed a compatibility issue when using `snowflake-ml-python` 1.7.0 or greater to save a `tensorflow.keras`
|
|
538
551
|
model with `keras` 2.x, if `relax_version` is set or default to True, and newer version of `snowflake-ml-python`
|
|
539
552
|
is available in Snowflake Anaconda Channel, model could not be run in Snowflake. If you have such model, you could
|
|
540
553
|
use the latest version of `snowflake-ml-python` and call `ModelVersion.load` to load it back, and re-log it.
|
|
541
554
|
Alternatively, you can prevent this issue by setting `relax_version=False` when saving the model.
|
|
542
|
-
|
|
555
|
+
* Registry: Removed the validation that disallows data that does not have non-null values being passed to
|
|
543
556
|
`ModelVersion.run`.
|
|
544
|
-
|
|
545
|
-
|
|
557
|
+
* ML Job (PrPr): No longer require CREATE STAGE privilege if `stage_name` points to an existing stage
|
|
558
|
+
* ML Job (PrPr): Fixed a bug causing some payload source and entrypoint path
|
|
546
559
|
combinations to be erroneously rejected with
|
|
547
560
|
`ValueError(f"{self.entrypoint} must be a subpath of {self.source}")`
|
|
548
|
-
|
|
561
|
+
* ML Job (PrPr): Fixed a bug in Ray cluster startup config which caused certain Runtime APIs to fail
|
|
549
562
|
|
|
550
563
|
### New Features
|
|
551
564
|
|
|
552
|
-
|
|
553
|
-
|
|
565
|
+
* Registry: Added support for handling Hugging Face model configurations with auto-mapping functionality.
|
|
566
|
+
* Registry: Added support for `keras` 3.x model with `tensorflow` and `pytorch` backend
|
|
554
567
|
|
|
555
568
|
## 1.7.4 (01-28-2025)
|
|
556
569
|
|
|
557
|
-
|
|
570
|
+
* FileSet: The `snowflake.ml.fileset.FileSet` has been deprecated and will be removed in a future version.
|
|
558
571
|
Use [snowflake.ml.dataset.Dataset](https://docs.snowflake.com/en/developer-guide/snowflake-ml/dataset) and
|
|
559
572
|
[snowflake.ml.data.DataConnector](https://docs.snowflake.com/en/developer-guide/snowpark-ml/reference/latest/api/data/snowflake.ml.data.data_connector.DataConnector)
|
|
560
573
|
instead.
|
|
561
|
-
|
|
574
|
+
* Registry: `ModelVersion.run` on a service would require redeploying the service once account opts into nested function.
|
|
562
575
|
|
|
563
576
|
### Bug Fixes
|
|
564
577
|
|
|
565
|
-
|
|
566
|
-
|
|
578
|
+
* Registry: Fixed an issue that the hugging face pipeline is loaded using incorrect dtype.
|
|
579
|
+
* Registry: Fixed an issue that only 1 row is used when infer the model signature in the modeling model.
|
|
567
580
|
|
|
568
581
|
### New Features
|
|
569
582
|
|
|
570
|
-
|
|
583
|
+
* Add new `snowflake.ml.jobs` preview API for running headless workloads on SPCS using
|
|
571
584
|
[Container Runtime for ML](https://docs.snowflake.com/en/developer-guide/snowflake-ml/container-runtime-ml)
|
|
572
|
-
|
|
585
|
+
* Added `guardrails` option to Cortex `complete` function, enabling
|
|
573
586
|
[Cortex Guard](https://docs.snowflake.com/en/user-guide/snowflake-cortex/llm-functions#cortex-guard) support
|
|
574
|
-
|
|
587
|
+
* Model Monitoring: Expose Model Monitoring Python API by default.
|
|
575
588
|
|
|
576
589
|
## 1.7.3 (2025-01-08)
|
|
577
590
|
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
591
|
+
* Added lowercase versions of Cortex functions, added deprecation warning to Capitalized versions.
|
|
592
|
+
* Bumped the requirements of `fsspec` and `s3fs` to `>=2024.6.1,<2026`
|
|
593
|
+
* Bumped the requirement of `mlflow` to `>=2.16.0, <3`
|
|
594
|
+
* Registry: Support 500+ features for model registry
|
|
595
|
+
* Feature Store: Add support for `cluster_by` for feature views.
|
|
583
596
|
|
|
584
597
|
### Bug Fixes
|
|
585
598
|
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
599
|
+
* Registry: Fixed a bug when providing non-range index pandas DataFrame as the input to a `ModelVersion.run`.
|
|
600
|
+
* Registry: Improved random model version name generation to prevent collisions.
|
|
601
|
+
* Registry: Fix an issue when inferring signature or running inference with Snowpark data that has a column whose type
|
|
589
602
|
is `ARRAY` and contains `NULL` value.
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
603
|
+
* Registry: `ModelVersion.run` now accepts fully qualified service name.
|
|
604
|
+
* Monitoring: Fix issue in SDK with creating monitors using fully qualified names.
|
|
605
|
+
* Registry: Fix error in log_model for any sklearn models with only data pre-processing including pre-processing only
|
|
593
606
|
pipeline models due to default explainability enablement.
|
|
594
607
|
|
|
595
608
|
### New Features
|
|
596
609
|
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
610
|
+
* Added `user_files` argument to `Registry.log_model` for including images or any extra file with the model.
|
|
611
|
+
* Registry: Added support for handling Hugging Face model configurations with auto-mapping functionality
|
|
612
|
+
* DataConnector: Add new `DataConnector.from_sql()` constructor
|
|
613
|
+
* Registry: Provided new arguments to `snowflake.ml.model.model_signature.infer_signature` method to specify rows limit
|
|
601
614
|
to be used when inferring the signature.
|
|
602
615
|
|
|
603
616
|
## 1.7.2 (2024-11-21)
|
|
604
617
|
|
|
605
618
|
### Bug Fixes
|
|
606
619
|
|
|
607
|
-
|
|
620
|
+
* Model Explainability: Fix issue that explain is enabled for scikit-learn pipeline
|
|
608
621
|
whose task is UNKNOWN and fails later when invoked.
|
|
609
622
|
|
|
610
623
|
### New Features
|
|
611
624
|
|
|
612
|
-
|
|
625
|
+
* Registry: Support asynchronous model inference service creation with the `block` option
|
|
613
626
|
in `ModelVersion.create_service()` set to True by default.
|
|
614
|
-
|
|
627
|
+
* Registry: Allow specify `batch_size` when inferencing using sentence-transformers model.
|
|
615
628
|
|
|
616
629
|
## 1.7.1 (2024-11-05)
|
|
617
630
|
|
|
618
631
|
### Bug Fixes
|
|
619
632
|
|
|
620
|
-
|
|
633
|
+
* Registry: Null value is now allowed in the dataframe used in model signature inference. Null values will be ignored
|
|
621
634
|
and others will be used to infer the signature.
|
|
622
|
-
|
|
635
|
+
* Registry: Pandas Extension DTypes (`pandas.StringDType()`, `pandas.BooleanDType()`, etc.) are now supported in model
|
|
623
636
|
signature inference.
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
637
|
+
* Registry: Null value is now allowed in the dataframe used to predict.
|
|
638
|
+
* Data: Fix missing `snowflake.ml.data.*` module exports in wheel
|
|
639
|
+
* Dataset: Fix missing `snowflake.ml.dataset.*` module exports in wheel.
|
|
640
|
+
* Registry: Fix the issue that `tf_keras.Model` is not recognized as keras model when logging.
|
|
628
641
|
|
|
629
642
|
### New Features
|
|
630
643
|
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
644
|
+
* Registry: Option to `enable_monitoring` set to False by default. This will gate access to preview features of Model Monitoring.
|
|
645
|
+
* Model Monitoring: `show_model_monitors` Registry method. This feature is still in Private Preview.
|
|
646
|
+
* Registry: Support `pd.Series` in input and output data.
|
|
647
|
+
* Model Monitoring: `add_monitor` Registry method. This feature is still in Private Preview.
|
|
648
|
+
* Model Monitoring: `resume` and `suspend` ModelMonitor. This feature is still in Private Preview.
|
|
649
|
+
* Model Monitoring: `get_monitor` Registry method. This feature is still in Private Preview.
|
|
650
|
+
* Model Monitoring: `delete_monitor` Registry method. This feature is still in Private Preview.
|
|
638
651
|
|
|
639
652
|
## 1.7.0 (10-22-2024)
|
|
640
653
|
|
|
641
654
|
### Behavior Change
|
|
642
655
|
|
|
643
|
-
|
|
644
|
-
|
|
656
|
+
* Generic: Require python >= 3.9.
|
|
657
|
+
* Data Connector: Update `to_torch_dataset` and `to_torch_datapipe` to add a dimension for scalar data.
|
|
645
658
|
This allows for more seamless integration with PyTorch `DataLoader`, which creates batches by stacking inputs of each batch.
|
|
646
659
|
|
|
647
660
|
Examples:
|
|
@@ -650,30 +663,30 @@ Examples:
|
|
|
650
663
|
ds = connector.to_torch_dataset(shuffle=False, batch_size=3)
|
|
651
664
|
```
|
|
652
665
|
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
666
|
+
* Input: "col1": [10, 11, 12]
|
|
667
|
+
* Previous batch: array([10., 11., 12.]) with shape (3,)
|
|
668
|
+
* New batch: array([[10.], [11.], [12.]]) with shape (3, 1)
|
|
656
669
|
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
670
|
+
* Input: "col2": [[0, 100], [1, 110], [2, 200]]
|
|
671
|
+
* Previous batch: array([[ 0, 100], [ 1, 110], [ 2, 200]]) with shape (3,2)
|
|
672
|
+
* New batch: No change
|
|
660
673
|
|
|
661
|
-
|
|
674
|
+
* Model Registry: External access integrations are optional when creating a model inference service in
|
|
662
675
|
Snowflake >= 8.40.0.
|
|
663
|
-
|
|
676
|
+
* Model Registry: Deprecate `build_external_access_integration` with `build_external_access_integrations` in
|
|
664
677
|
`ModelVersion.create_service()`.
|
|
665
678
|
|
|
666
679
|
### Bug Fixes
|
|
667
680
|
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
681
|
+
* Registry: Updated `log_model` API to accept both signature and sample_input_data parameters.
|
|
682
|
+
* Feature Store: ExampleHelper uses fully qualified path for table name. change weather features aggregation from 1d to 1h.
|
|
683
|
+
* Data Connector: Return numpy array with appropriate object type instead of list for multi-dimensional
|
|
671
684
|
data from `to_torch_dataset` and `to_torch_datapipe`
|
|
672
|
-
|
|
685
|
+
* Model explainability: Incompatibility between SHAP 0.42.1 and XGB 2.1.1 resolved by using latest SHAP 0.46.0.
|
|
673
686
|
|
|
674
687
|
### New Features
|
|
675
688
|
|
|
676
|
-
|
|
689
|
+
* Registry: Provide pass keyworded variable length of arguments to class ModelContext. Example usage:
|
|
677
690
|
|
|
678
691
|
```python
|
|
679
692
|
mc = custom_model.ModelContext(
|
|
@@ -693,106 +706,106 @@ class ExamplePipelineModel(custom_model.CustomModel):
|
|
|
693
706
|
return pd.DataFrame({'output': model_output + self.bias})
|
|
694
707
|
```
|
|
695
708
|
|
|
696
|
-
|
|
697
|
-
|
|
709
|
+
* Model Development: Upgrade scikit-learn in UDTF backend for log_loss metric. As a result, `eps` argument is now ignored.
|
|
710
|
+
* Data Connector: Add the option of passing a `None` sized batch to `to_torch_dataset` for better
|
|
698
711
|
interoperability with PyTorch DataLoader.
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
712
|
+
* Model Registry: Support [pandas.CategoricalDtype](https://pandas.pydata.org/docs/reference/api/pandas.CategoricalDtype.html#pandas-categoricaldtype)
|
|
713
|
+
* Limitations:
|
|
714
|
+
* The native categorical data handling handling by XGBoost using `enable_categorical=True` is not supported.
|
|
702
715
|
Instead please use [`sklearn.pipeline`](https://scikit-learn.org/stable/modules/generated/sklearn.pipeline.Pipeline.html)
|
|
703
716
|
to preprocess the categorical datatype and log the pipeline with the XGBoost model.
|
|
704
|
-
|
|
717
|
+
* Registry: It is now possible to pass `signatures` and `sample_input_data` at the same time to capture background
|
|
705
718
|
data from explainablity and data lineage.
|
|
706
719
|
|
|
707
720
|
## 1.6.4 (2024-10-17)
|
|
708
721
|
|
|
709
722
|
### Bug Fixes
|
|
710
723
|
|
|
711
|
-
|
|
724
|
+
* Registry: Fix an issue that leads to incident when using `ModelVersion.run` with service.
|
|
712
725
|
|
|
713
726
|
## 1.6.3 (2024-10-07)
|
|
714
727
|
|
|
715
|
-
|
|
728
|
+
* Model Registry (PrPr) has been removed.
|
|
716
729
|
|
|
717
730
|
### Bug Fixes
|
|
718
731
|
|
|
719
|
-
|
|
732
|
+
* Registry: Fix a bug that when package whose name does not follow PEP-508 is provided when logging the model,
|
|
720
733
|
an unexpected normalization is happening.
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
734
|
+
* Registry: Fix `not a valid remote uri` error when logging mlflow models.
|
|
735
|
+
* Registry: Fix a bug that `ModelVersion.run` is called in a nested way.
|
|
736
|
+
* Registry: Fix an issue that leads to `log_model` failure when local package version contains parts other than
|
|
724
737
|
base version.
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
738
|
+
* Fix issue where `sample_weights` were not being applied to search estimators.
|
|
739
|
+
* Model explainability: Fix bug which creates explain as a function instead of table function when enabling by default.
|
|
740
|
+
* Model explainability: Update lightgbm binary classification to return non-json values, from customer feedback.
|
|
728
741
|
|
|
729
742
|
### New Features
|
|
730
743
|
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
744
|
+
* Data: Improve `DataConnector.to_pandas()` performance when loading from Snowpark DataFrames.
|
|
745
|
+
* Model Registry: Allow users to set a model task while using `log_model`.
|
|
746
|
+
* Feature Store: FeatureView supports ON_CREATE or ON_SCHEDULE initialize mode.
|
|
734
747
|
|
|
735
748
|
## 1.6.2 (2024-09-04)
|
|
736
749
|
|
|
737
750
|
### Bug Fixes
|
|
738
751
|
|
|
739
|
-
|
|
752
|
+
* Modeling: Support XGBoost version that is larger than 2.
|
|
740
753
|
|
|
741
|
-
|
|
742
|
-
|
|
754
|
+
* Data: Fix multiple epoch iteration over `DataConnector.to_torch_datapipe()` DataPipes.
|
|
755
|
+
* Generic: Fix a bug that when an invalid name is provided to argument where fully qualified name is expected, it will
|
|
743
756
|
be parsed wrongly. Now it raises an exception correctly.
|
|
744
|
-
|
|
745
|
-
|
|
757
|
+
* Model Explainability: Handle explanations for multiclass XGBoost classification models
|
|
758
|
+
* Model Explainability: Workarounds and better error handling for XGB>2.1.0 not working with SHAP==0.42.1
|
|
746
759
|
|
|
747
760
|
### New Features
|
|
748
761
|
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
762
|
+
* Data: Add top-level exports for `DataConnector` and `DataSource` to `snowflake.ml.data`.
|
|
763
|
+
* Data: Add native batching support via `batch_size` and `drop_last_batch` arguments to `DataConnector.to_torch_dataset()`
|
|
764
|
+
* Feature Store: update_feature_view() supports taking feature view object as argument.
|
|
752
765
|
|
|
753
766
|
## 1.6.1 (2024-08-12)
|
|
754
767
|
|
|
755
768
|
### Bug Fixes
|
|
756
769
|
|
|
757
|
-
|
|
758
|
-
|
|
770
|
+
* Feature Store: Support large metadata blob when generating dataset
|
|
771
|
+
* Feature Store: Added a hidden knob in FeatureView as kargs for setting customized
|
|
759
772
|
refresh_mode
|
|
760
|
-
|
|
773
|
+
* Registry: Fix an error message in Model Version `run` when `function_name` is not mentioned and model has multiple
|
|
761
774
|
target methods.
|
|
762
|
-
|
|
775
|
+
* Cortex inference: snowflake.cortex.Complete now only uses the REST API for streaming and the use_rest_api_experimental
|
|
763
776
|
is no longer needed.
|
|
764
|
-
|
|
765
|
-
|
|
777
|
+
* Feature Store: Add a new API: FeatureView.list_columns() which list all column information.
|
|
778
|
+
* Data: Fix `DataFrame` ingestion with `ArrowIngestor`.
|
|
766
779
|
|
|
767
780
|
### New Features
|
|
768
781
|
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
782
|
+
* Enable `set_params` to set the parameters of the underlying sklearn estimator, if the snowflake-ml model has been fit.
|
|
783
|
+
* Data: Add `snowflake.ml.data.ingestor_utils` module with utility functions helpful for `DataIngestor` implementations.
|
|
784
|
+
* Data: Add new `to_torch_dataset()` connector to `DataConnector` to replace deprecated DataPipe.
|
|
785
|
+
* Registry: Option to `enable_explainability` set to True by default for XGBoost, LightGBM and CatBoost as PuPr feature.
|
|
786
|
+
* Registry: Option to `enable_explainability` when registering SHAP supported sklearn models.
|
|
774
787
|
|
|
775
788
|
## 1.6.0 (2024-07-29)
|
|
776
789
|
|
|
777
790
|
### Bug Fixes
|
|
778
791
|
|
|
779
|
-
|
|
780
|
-
|
|
792
|
+
* Modeling: `SimpleImputer` can impute integer columns with integer values.
|
|
793
|
+
* Registry: Fix an issue when providing a pandas Dataframe whose index is not starting from 0 as the input to
|
|
781
794
|
the `ModelVersion.run`.
|
|
782
795
|
|
|
783
796
|
### New Features
|
|
784
797
|
|
|
785
|
-
|
|
798
|
+
* Feature Store: Add overloads to APIs accept both object and name/version. Impacted APIs include read_feature_view(),
|
|
786
799
|
refresh_feature_view(), get_refresh_history(), resume_feature_view(), suspend_feature_view(), delete_feature_view().
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
800
|
+
* Feature Store: Add docstring inline examples for all public APIs.
|
|
801
|
+
* Feature Store: Add new utility class `ExampleHelper` to help with load source data to simplify public notebooks.
|
|
802
|
+
* Registry: Option to `enable_explainability` when registering XGBoost models as a pre-PuPr feature.
|
|
803
|
+
* Feature Store: add new API `update_entity()`.
|
|
804
|
+
* Registry: Option to `enable_explainability` when registering Catboost models as a pre-PuPr feature.
|
|
805
|
+
* Feature Store: Add new argument warehouse to FeatureView constructor to overwrite the default warehouse. Also add
|
|
793
806
|
a new column 'warehouse' to the output of list_feature_views().
|
|
794
|
-
|
|
795
|
-
|
|
807
|
+
* Registry: Add support for logging model from a model version.
|
|
808
|
+
* Modeling: Distributed Hyperparameter Optimization now announce GA refresh version. The latest memory efficient version
|
|
796
809
|
will not have the 10GB training limitation for dataset any more. To turn off, please run
|
|
797
810
|
`
|
|
798
811
|
from snowflake.ml.modeling._internal.snowpark_implementations import (
|
|
@@ -800,106 +813,106 @@ data from explainablity and data lineage.
|
|
|
800
813
|
)
|
|
801
814
|
distributed_hpo_trainer.ENABLE_EFFICIENT_MEMORY_USAGE = False
|
|
802
815
|
`
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
816
|
+
* Registry: Option to `enable_explainability` when registering LightGBM models as a pre-PuPr feature.
|
|
817
|
+
* Data: Add new `snowflake.ml.data` preview module which contains data reading utilities like `DataConnector`
|
|
818
|
+
* `DataConnector` provides efficient connectors from Snowpark `DataFrame`
|
|
806
819
|
and Snowpark ML `Dataset` to external frameworks like PyTorch, TensorFlow, and Pandas. Create `DataConnector`
|
|
807
820
|
instances using the classmethod constructors `DataConnector.from_dataset()` and `DataConnector.from_dataframe()`.
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
821
|
+
* Data: Add new `DataConnector.from_sources()` classmethod constructor for constructing from `DataSource` objects.
|
|
822
|
+
* Data: Add new `ingestor_class` arg to `DataConnector` classmethod constructors for easier `DataIngestor` injection.
|
|
823
|
+
* Dataset: `DatasetReader` now subclasses new `DataConnector` class.
|
|
824
|
+
* Add optional `limit` arg to `DatasetReader.to_pandas()`
|
|
812
825
|
|
|
813
826
|
### Behavior Changes
|
|
814
827
|
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
828
|
+
* Feature Store: change some positional parameters to keyword arguments in following APIs:
|
|
829
|
+
* Entity(): desc.
|
|
830
|
+
* FeatureView(): timestamp_col, refresh_freq, desc.
|
|
831
|
+
* FeatureStore(): creation_mode.
|
|
832
|
+
* update_entity(): desc.
|
|
833
|
+
* register_feature_view(): block, overwrite.
|
|
834
|
+
* list_feature_views(): entity_name, feature_view_name.
|
|
835
|
+
* get_refresh_history(): verbose.
|
|
836
|
+
* retrieve_feature_values(): spine_timestamp_col, exclude_columns, include_feature_view_timestamp_col.
|
|
837
|
+
* generate_training_set(): save_as, spine_timestamp_col, spine_label_cols, exclude_columns,
|
|
825
838
|
include_feature_view_timestamp_col.
|
|
826
|
-
|
|
839
|
+
* generate_dataset(): version, spine_timestamp_col, spine_label_cols, exclude_columns,
|
|
827
840
|
include_feature_view_timestamp_col, desc, output_type.
|
|
828
841
|
|
|
829
842
|
## 1.5.4 (2024-07-11)
|
|
830
843
|
|
|
831
844
|
### Bug Fixes
|
|
832
845
|
|
|
833
|
-
|
|
834
|
-
|
|
846
|
+
* Model Registry (PrPr): Fix 401 Unauthorized issue when deploying model to SPCS.
|
|
847
|
+
* Feature Store: Downgrades exceptions to warnings for few property setters in feature view. Now you can set
|
|
835
848
|
desc, refresh_freq and warehouse for draft feature views.
|
|
836
|
-
|
|
837
|
-
|
|
849
|
+
* Modeling: Fix an issue with calling `OrdinalEncoder` with `categories` as a dictionary and a pandas DataFrame
|
|
850
|
+
* Modeling: Fix an issue with calling `OneHotEncoder` with `categories` as a dictionary and a pandas DataFrame
|
|
838
851
|
|
|
839
852
|
### New Features
|
|
840
853
|
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
854
|
+
* Registry: Allow overriding `device_map` and `device` when loading huggingface pipeline models.
|
|
855
|
+
* Registry: Add `set_alias` method to `ModelVersion` instance to set an alias to model version.
|
|
856
|
+
* Registry: Add `unset_alias` method to `ModelVersion` instance to unset an alias to model version.
|
|
857
|
+
* Registry: Add `partitioned_inference_api` allowing users to create partitioned inference functions in registered
|
|
845
858
|
models. Enable model inference methods with table functions with vectorized process methods in registered models.
|
|
846
|
-
|
|
859
|
+
* Feature Store: add 3 more columns: refresh_freq, refresh_mode and scheduling_state to the result of
|
|
847
860
|
`list_feature_views()`.
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
861
|
+
* Feature Store: `update_feature_view()` supports updating description.
|
|
862
|
+
* Feature Store: add new API `refresh_feature_view()`.
|
|
863
|
+
* Feature Store: add new API `get_refresh_history()`.
|
|
864
|
+
* Feature Store: Add `generate_training_set()` API for generating table-backed feature snapshots.
|
|
865
|
+
* Feature Store: Add `DeprecationWarning` for `generate_dataset(..., output_type="table")`.
|
|
866
|
+
* Feature Store: `update_feature_view()` supports updating description.
|
|
867
|
+
* Feature Store: add new API `refresh_feature_view()`.
|
|
868
|
+
* Feature Store: add new API `get_refresh_history()`.
|
|
869
|
+
* Model Development: OrdinalEncoder supports a list of array-likes for `categories` argument.
|
|
870
|
+
* Model Development: OneHotEncoder supports a list of array-likes for `categories` argument.
|
|
858
871
|
|
|
859
872
|
## 1.5.3 (06-17-2024)
|
|
860
873
|
|
|
861
874
|
### Bug Fixes
|
|
862
875
|
|
|
863
|
-
|
|
876
|
+
* Modeling: Fix an issue causing lineage information to be missing for
|
|
864
877
|
`Pipeline`, `GridSearchCV` , `SimpleImputer`, and `RandomizedSearchCV`
|
|
865
|
-
|
|
878
|
+
* Registry: Fix an issue that leads to incorrect result when using pandas Dataframe with over 100, 000 rows as the input
|
|
866
879
|
of `ModelVersion.run` method in Stored Procedure.
|
|
867
880
|
|
|
868
881
|
### New Features
|
|
869
882
|
|
|
870
|
-
|
|
871
|
-
|
|
883
|
+
* Registry: Add support for TIMESTAMP_NTZ model signature data type, allowing timestamp input and output.
|
|
884
|
+
* Dataset: Add `DatasetVersion.label_cols` and `DatasetVersion.exclude_cols` properties.
|
|
872
885
|
|
|
873
886
|
## 1.5.2 (06-10-2024)
|
|
874
887
|
|
|
875
888
|
### Bug Fixes
|
|
876
889
|
|
|
877
|
-
|
|
878
|
-
|
|
890
|
+
* Registry: Fix an issue that leads to unable to log model in store procedure.
|
|
891
|
+
* Modeling: Quick fix `import snowflake.ml.modeling.parameters.enable_anonymous_sproc` cannot be imported due to package
|
|
879
892
|
dependency error.
|
|
880
893
|
|
|
881
894
|
## 1.5.1 (05-22-2024)
|
|
882
895
|
|
|
883
896
|
### Bug Fixes
|
|
884
897
|
|
|
885
|
-
|
|
898
|
+
* Dataset: Fix `snowflake.connector.errors.DataError: Query Result did not match expected number of rows` when accessing
|
|
886
899
|
DatasetVersion properties when case insensitive `SHOW VERSIONS IN DATASET` check matches multiple version names.
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
900
|
+
* Dataset: Fix bug in SnowFS bulk file read when used with DuckDB
|
|
901
|
+
* Registry: Fixed a bug when loading old models.
|
|
902
|
+
* Lineage: Fix Dataset source lineage propagation through `snowpark.DataFrame` transformations
|
|
890
903
|
|
|
891
904
|
### Behavior Changes
|
|
892
905
|
|
|
893
|
-
|
|
894
|
-
|
|
906
|
+
* Feature Store: convert clear() into a private function. Also make it deletes feature views and entities only.
|
|
907
|
+
* Feature Store: Use NULL as default value for timestamp tag value.
|
|
895
908
|
|
|
896
909
|
### New Features
|
|
897
910
|
|
|
898
|
-
|
|
899
|
-
|
|
911
|
+
* Feature Store: Added new `snowflake.ml.feature_store.setup_feature_store()` API to assist Feature Store RBAC setup.
|
|
912
|
+
* Feature Store: Add `output_type` argument to `FeatureStore.generate_dataset()` to allow generating data snapshots
|
|
900
913
|
as Datasets or Tables.
|
|
901
|
-
|
|
902
|
-
|
|
914
|
+
* Registry: `log_model`, `get_model`, `delete_model` now supports fully qualified name.
|
|
915
|
+
* Modeling: Supports anonymous stored procedure during fit calls so that modeling would not require sufficient
|
|
903
916
|
permissions to operate on schema. Please call
|
|
904
917
|
`import snowflake.ml.modeling.parameters.enable_anonymous_sproc # noqa: F401`
|
|
905
918
|
|
|
@@ -907,11 +920,11 @@ data from explainablity and data lineage.
|
|
|
907
920
|
|
|
908
921
|
### Bug Fixes
|
|
909
922
|
|
|
910
|
-
|
|
923
|
+
* Registry: Fix invalid parameter 'SHOW_MODEL_DETAILS_IN_SHOW_VERSIONS_IN_MODEL' error.
|
|
911
924
|
|
|
912
925
|
### Behavior Changes
|
|
913
926
|
|
|
914
|
-
|
|
927
|
+
* Model Development: The behavior of `fit_transform` for all estimators is changed.
|
|
915
928
|
Firstly, it will cover all the estimator that contains this function,
|
|
916
929
|
secondly, the output would be the union of pandas DataFrame and snowpark DataFrame.
|
|
917
930
|
|
|
@@ -919,167 +932,167 @@ data from explainablity and data lineage.
|
|
|
919
932
|
|
|
920
933
|
`snowflake.ml.registry.artifact` and related `snowflake.ml.model_registry.ModelRegistry` APIs have been removed.
|
|
921
934
|
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
935
|
+
* Removed `snowflake.ml.registry.artifact` module.
|
|
936
|
+
* Removed `ModelRegistry.log_artifact()`, `ModelRegistry.list_artifacts()`, `ModelRegistry.get_artifact()`
|
|
937
|
+
* Removed `artifacts` argument from `ModelRegistry.log_model()`
|
|
925
938
|
|
|
926
939
|
#### Dataset (PrPr)
|
|
927
940
|
|
|
928
941
|
`snowflake.ml.dataset.Dataset` has been redesigned to be backed by Snowflake Dataset entities.
|
|
929
942
|
|
|
930
|
-
|
|
943
|
+
* New `Dataset`s can be created with `Dataset.create()` and existing `Dataset`s may be loaded
|
|
931
944
|
with `Dataset.load()`.
|
|
932
|
-
|
|
945
|
+
* `Dataset`s now maintain an immutable `selected_version` state. The `Dataset.create_version()` and
|
|
933
946
|
`Dataset.load_version()` APIs return new `Dataset` objects with the requested `selected_version` state.
|
|
934
|
-
|
|
947
|
+
* Added `dataset.create_from_dataframe()` and `dataset.load_dataset()` convenience APIs as a shortcut
|
|
935
948
|
to creating and loading `Dataset`s with a pre-selected version.
|
|
936
|
-
|
|
949
|
+
* `Dataset.materialized_table` and `Dataset.snapshot_table` no longer exist with `Dataset.fully_qualified_name`
|
|
937
950
|
as the closest equivalent.
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
951
|
+
* `Dataset.df` no longer exists. Instead, use `DatasetReader.read.to_snowpark_dataframe()`.
|
|
952
|
+
* `Dataset.owner` has been moved to `Dataset.selected_version.owner`
|
|
953
|
+
* `Dataset.desc` has been moved to `DatasetVersion.selected_version.comment`
|
|
954
|
+
* `Dataset.timestamp_col`, `Dataset.label_cols`, `Dataset.feature_store_metadata`, and
|
|
942
955
|
`Dataset.schema_version` have been removed.
|
|
943
956
|
|
|
944
957
|
#### Feature Store (PrPr)
|
|
945
958
|
|
|
946
|
-
|
|
959
|
+
* `FeatureStore.generate_dataset` argument list has been changed to match the new
|
|
947
960
|
`snowflake.ml.dataset.Dataset` definition
|
|
948
961
|
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
962
|
+
* `materialized_table` has been removed and replaced with `name` and `version`.
|
|
963
|
+
* `name` moved to first positional argument
|
|
964
|
+
* `save_mode` has been removed as `merge` behavior is no longer supported. The new behavior is always `errorifexists`.
|
|
952
965
|
|
|
953
|
-
|
|
966
|
+
* Change feature view version type from str to `FeatureViewVersion`. It is a restricted string literal.
|
|
954
967
|
|
|
955
|
-
|
|
968
|
+
* Remove as_dataframe arg from FeatureStore.list_feature_views(), now always returns result as DataFrame.
|
|
956
969
|
|
|
957
|
-
|
|
970
|
+
* Combines few metadata tags into a new tag: SNOWML_FEATURE_VIEW_METADATA. This will make previously created feature views
|
|
958
971
|
not readable by new SDK.
|
|
959
972
|
|
|
960
973
|
### New Features
|
|
961
974
|
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
975
|
+
* Registry: Add `export` method to `ModelVersion` instance to export model files.
|
|
976
|
+
* Registry: Add `load` method to `ModelVersion` instance to load the underlying object from the model.
|
|
977
|
+
* Registry: Add `Model.rename` method to `Model` instance to rename or move a model.
|
|
965
978
|
|
|
966
979
|
#### Dataset (PrPr)
|
|
967
980
|
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
981
|
+
* Added Snowpark DataFrame integration using `Dataset.read.to_snowpark_dataframe()`
|
|
982
|
+
* Added Pandas DataFrame integration using `Dataset.read.to_pandas()`
|
|
983
|
+
* Added PyTorch and TensorFlow integrations using `Dataset.read.to_torch_datapipe()`
|
|
971
984
|
and `Dataset.read.to_tf_dataset()` respectively.
|
|
972
|
-
|
|
985
|
+
* Added `fsspec` style file integration using `Dataset.read.files()` and `Dataset.read.filesystem()`
|
|
973
986
|
|
|
974
987
|
#### Feature Store
|
|
975
988
|
|
|
976
|
-
|
|
989
|
+
* use new tag_reference_internal to speed up metadata lookup.
|
|
977
990
|
|
|
978
991
|
## 1.4.1 (2024-04-18)
|
|
979
992
|
|
|
980
993
|
### New Features
|
|
981
994
|
|
|
982
|
-
|
|
983
|
-
|
|
995
|
+
* Registry: Add support for `catboost` model (`catboost.CatBoostClassifier`, `catboost.CatBoostRegressor`).
|
|
996
|
+
* Registry: Add support for `lightgbm` model (`lightgbm.Booster`, `lightgbm.LightGBMClassifier`, `lightgbm.LightGBMRegressor`).
|
|
984
997
|
|
|
985
998
|
### Bug Fixes
|
|
986
999
|
|
|
987
|
-
|
|
1000
|
+
* Registry: Fix a bug that leads to relax_version option is not working.
|
|
988
1001
|
|
|
989
1002
|
### Behavior changes
|
|
990
1003
|
|
|
991
|
-
|
|
1004
|
+
* Feature Store: update_feature_view takes refresh_freq and warehouse as argument.
|
|
992
1005
|
|
|
993
1006
|
## 1.4.0 (2024-04-08)
|
|
994
1007
|
|
|
995
1008
|
### Bug Fixes
|
|
996
1009
|
|
|
997
|
-
|
|
1010
|
+
* Registry: Fix a bug when multiple models are being called from the same query, models other than the first one will
|
|
998
1011
|
have incorrect result. This fix only works for newly logged model.
|
|
999
|
-
|
|
1012
|
+
* Modeling: When registering a model, only method(s) that is mentioned in `save_model` would be added to model signature
|
|
1000
1013
|
in SnowML models.
|
|
1001
|
-
|
|
1014
|
+
* Modeling: Fix a bug that when n_jobs is not 1, model cannot execute methods such as
|
|
1002
1015
|
predict, predict_log_proba, and other batch inference methods. The n_jobs would automatically
|
|
1003
1016
|
set to 1 because vectorized udf currently doesn't support joblib parallel backend.
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1017
|
+
* Modeling: Fix a bug that batch inference methods cannot infer the datatype when the first row of data contains NULL.
|
|
1018
|
+
* Modeling: Matches Distributed HPO output column names with the snowflake identifier.
|
|
1019
|
+
* Modeling: Relax package versions for all Distributed HPO methods if the installed version
|
|
1007
1020
|
is not available in the Snowflake conda channel
|
|
1008
|
-
|
|
1021
|
+
* Modeling: Add sklearn as required dependency for LightGBM package.
|
|
1009
1022
|
|
|
1010
1023
|
### Behavior Changes
|
|
1011
1024
|
|
|
1012
|
-
|
|
1025
|
+
* Registry: `apply` method is no longer by default logged when logging a xgboost model. If that is required, it could
|
|
1013
1026
|
be specified manually when logging the model by `log_model(..., options={"target_methods": ["apply", ...]})`.
|
|
1014
|
-
|
|
1015
|
-
|
|
1027
|
+
* Feature Store: register_entity returns an entity object.
|
|
1028
|
+
* Feature Store: register_feature_view `block=true` becomes default.
|
|
1016
1029
|
|
|
1017
1030
|
### New Features
|
|
1018
1031
|
|
|
1019
|
-
|
|
1020
|
-
|
|
1032
|
+
* Registry: Add support for `sentence-transformers` model (`sentence_transformers.SentenceTransformer`).
|
|
1033
|
+
* Registry: Now version name is no longer required when logging a model. If not provided, a random human readable ID
|
|
1021
1034
|
will be generated.
|
|
1022
1035
|
|
|
1023
1036
|
## 1.3.1 (2024-03-21)
|
|
1024
1037
|
|
|
1025
1038
|
### New Features
|
|
1026
1039
|
|
|
1027
|
-
|
|
1040
|
+
* FileSet: `snowflake.ml.fileset.sfcfs.SFFileSystem` can now be used in UDFs and stored procedures.
|
|
1028
1041
|
|
|
1029
1042
|
## 1.3.0 (2024-03-12)
|
|
1030
1043
|
|
|
1031
1044
|
### Bug Fixes
|
|
1032
1045
|
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1046
|
+
* Registry: Fix a bug that leads to module in `code_paths` when `log_model` cannot be correctly imported.
|
|
1047
|
+
* Registry: Fix incorrect error message when validating input Snowpark DataFrame with array feature.
|
|
1048
|
+
* Model Registry: Fix an issue when deploying a model to SPCS that some files do not have proper permission.
|
|
1049
|
+
* Model Development: Relax package versions for all inference methods if the installed version
|
|
1037
1050
|
is not available in the Snowflake conda channel
|
|
1038
1051
|
|
|
1039
1052
|
### Behavior Changes
|
|
1040
1053
|
|
|
1041
|
-
|
|
1054
|
+
* Registry: When running the method of a model, the value range based input validation to avoid input from overflowing
|
|
1042
1055
|
is now optional rather than enforced, this should improve the performance and should not lead to problem for most
|
|
1043
1056
|
kinds of model. If you want to enable this check as previous, specify `strict_input_validation=True` when
|
|
1044
1057
|
calling `run`.
|
|
1045
|
-
|
|
1058
|
+
* Registry: By default `relax_version=True` when logging a model instead of using the specific local dependency versions.
|
|
1046
1059
|
This improves dependency versioning by using versions available in Snowflake. To switch back to the previous behavior
|
|
1047
1060
|
and use specific local dependency versions, specify `relax_version=False` when calling `log_model`.
|
|
1048
|
-
|
|
1061
|
+
* Model Development: The behavior of `fit_predict` for all estimators is changed.
|
|
1049
1062
|
Firstly, it will cover all the estimator that contains this function,
|
|
1050
1063
|
secondly, the output would be the union of pandas DataFrame and snowpark DataFrame.
|
|
1051
1064
|
|
|
1052
1065
|
### New Features
|
|
1053
1066
|
|
|
1054
|
-
|
|
1067
|
+
* FileSet: `snowflake.ml.fileset.sfcfs.SFFileSystem` can now be serialized with `pickle`.
|
|
1055
1068
|
|
|
1056
1069
|
## 1.2.3 (2024-02-26)
|
|
1057
1070
|
|
|
1058
1071
|
### Bug Fixes
|
|
1059
1072
|
|
|
1060
|
-
|
|
1073
|
+
* Registry: Now when providing Decimal Type column to a DOUBLE or FLOAT feature will not error out but auto cast with
|
|
1061
1074
|
warnings.
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1075
|
+
* Registry: Improve the error message when specifying currently unsupported `pip_requirements` argument.
|
|
1076
|
+
* Model Development: Fix precision_recall_fscore_support incorrect results when `average="samples"`.
|
|
1077
|
+
* Model Registry: Fix an issue that leads to description, metrics or tags are not correctly returned in newly created
|
|
1065
1078
|
Model Registry (PrPr) due to Snowflake BCR [2024_01](https://docs.snowflake.com/en/release-notes/bcr-bundles/2024_01/bcr-1483)
|
|
1066
1079
|
|
|
1067
1080
|
### Behavior Changes
|
|
1068
1081
|
|
|
1069
|
-
|
|
1082
|
+
* Feature Store: `FeatureStore.suspend_feature_view` and `FeatureStore.resume_feature_view` doesn't mutate input feature
|
|
1070
1083
|
view argument any more. The updated status only reflected in the returned feature view object.
|
|
1071
1084
|
|
|
1072
1085
|
### New Features
|
|
1073
1086
|
|
|
1074
|
-
|
|
1087
|
+
* Model Development: support `score_samples` method for all the classes, including Pipeline,
|
|
1075
1088
|
GridSearchCV, RandomizedSearchCV, PCA, IsolationForest, ...
|
|
1076
|
-
|
|
1089
|
+
* Registry: Support deleting a version of a model.
|
|
1077
1090
|
|
|
1078
1091
|
## 1.2.2 (2024-02-13)
|
|
1079
1092
|
|
|
1080
1093
|
### New Features
|
|
1081
1094
|
|
|
1082
|
-
|
|
1095
|
+
* Model Registry: Support providing external access integrations when deploying a model to SPCS. This will help and be
|
|
1083
1096
|
required to make sure the deploying process work as long as SPCS will by default deny all network connections. The
|
|
1084
1097
|
following endpoints must be allowed to make deployment work: docker.com:80, docker.com:443, anaconda.com:80,
|
|
1085
1098
|
anaconda.com:443, anaconda.org:80, anaconda.org:443, pypi.org:80, pypi.org:443. If you are using
|
|
@@ -1090,30 +1103,30 @@ not readable by new SDK.
|
|
|
1090
1103
|
|
|
1091
1104
|
### New Features
|
|
1092
1105
|
|
|
1093
|
-
|
|
1094
|
-
|
|
1106
|
+
* Model Development: Infers output column data type for transformers when possible.
|
|
1107
|
+
* Registry: `relax_version` option is available in the `options` argument when logging the model.
|
|
1095
1108
|
|
|
1096
1109
|
## 1.2.0 (2024-01-11)
|
|
1097
1110
|
|
|
1098
1111
|
### Bug Fixes
|
|
1099
1112
|
|
|
1100
|
-
|
|
1113
|
+
* Model Registry: Fix "XGBoost version not compiled with GPU support" error when running CPU inference against open-source
|
|
1101
1114
|
XGBoost models deployed to SPCS.
|
|
1102
|
-
|
|
1115
|
+
* Model Registry: Fix model deployment to SPCS on Windows machines.
|
|
1103
1116
|
|
|
1104
1117
|
### New Features
|
|
1105
1118
|
|
|
1106
|
-
|
|
1119
|
+
* Model Development: Introduced XGBoost external memory training feature. This feature enables training XGBoost models
|
|
1107
1120
|
on large datasets that don't fit into memory.
|
|
1108
|
-
|
|
1121
|
+
* Registry: New Registry class named `snowflake.ml.registry.Registry` providing similar APIs as the old one but works
|
|
1109
1122
|
with new MODEL object in Snowflake SQL. Also, we are providing`snowflake.ml.model.Model` and
|
|
1110
1123
|
`snowflake.ml.model.ModelVersion` to represent a model and a specific version of a model.
|
|
1111
|
-
|
|
1112
|
-
|
|
1124
|
+
* Model Development: Add support for `fit_predict` method in `AgglomerativeClustering`, `DBSCAN`, and `OPTICS` classes;
|
|
1125
|
+
* Model Development: Add support for `fit_transform` method in `MDS`, `SpectralEmbedding` and `TSNE` class.
|
|
1113
1126
|
|
|
1114
1127
|
### Additional Notes
|
|
1115
1128
|
|
|
1116
|
-
|
|
1129
|
+
* Model Registry: The `snowflake.ml.registry.model_registry.ModelRegistry` has been deprecated starting from version
|
|
1117
1130
|
1.2.0. It will stay in the Private Preview phase. For future implementations, kindly utilize
|
|
1118
1131
|
`snowflake.ml.registry.Registry`, except when specifically required. The old model registry will be removed once all
|
|
1119
1132
|
its primary functionalities are fully integrated into the new registry.
|
|
@@ -1122,30 +1135,30 @@ not readable by new SDK.
|
|
|
1122
1135
|
|
|
1123
1136
|
### Bug Fixes
|
|
1124
1137
|
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1138
|
+
* Generic: Fix the issue that stack trace is hidden by telemetry unexpectedly.
|
|
1139
|
+
* Model Development: Execute model signature inference without materializing full dataframe in memory.
|
|
1140
|
+
* Model Registry: Fix occasional 'snowflake-ml-python library does not exist' error when deploying to SPCS.
|
|
1128
1141
|
|
|
1129
1142
|
### Behavior Changes
|
|
1130
1143
|
|
|
1131
|
-
|
|
1132
|
-
|
|
1144
|
+
* Model Registry: When calling `predict` with Snowpark DataFrame, both inferred or normalized column names are accepted.
|
|
1145
|
+
* Model Registry: When logging a Snowpark ML Modeling Model, sample input data or manually provided signature will be
|
|
1133
1146
|
ignored since they are not necessary.
|
|
1134
1147
|
|
|
1135
1148
|
### New Features
|
|
1136
1149
|
|
|
1137
|
-
|
|
1150
|
+
* Model Development: SQL implementation of binary `precision_score` metric.
|
|
1138
1151
|
|
|
1139
1152
|
## 1.1.1 (2023-12-05)
|
|
1140
1153
|
|
|
1141
1154
|
### Bug Fixes
|
|
1142
1155
|
|
|
1143
|
-
|
|
1144
|
-
|
|
1156
|
+
* Model Registry: The `predict` target method on registered models is now compatible with unsupervised estimators.
|
|
1157
|
+
* Model Development: Fix confusion_matrix incorrect results when the row number cannot be divided by the batch size.
|
|
1145
1158
|
|
|
1146
1159
|
### New Features
|
|
1147
1160
|
|
|
1148
|
-
|
|
1161
|
+
* Introduced passthrough_col param in Modeling API. This new param is helpful in scenarios
|
|
1149
1162
|
requiring automatic input_cols inference, but need to avoid using specific
|
|
1150
1163
|
columns, like index columns, during training or inference.
|
|
1151
1164
|
|
|
@@ -1153,165 +1166,165 @@ not readable by new SDK.
|
|
|
1153
1166
|
|
|
1154
1167
|
### Bug Fixes
|
|
1155
1168
|
|
|
1156
|
-
|
|
1157
|
-
|
|
1169
|
+
* Model Registry: Fix panda dataframe input not handling first row properly.
|
|
1170
|
+
* Model Development: OrdinalEncoder and LabelEncoder output_columns do not need to be valid snowflake identifiers. They
|
|
1158
1171
|
would previously be excluded if the normalized name did not match the name specified in output_columns.
|
|
1159
1172
|
|
|
1160
1173
|
### New Features
|
|
1161
1174
|
|
|
1162
|
-
|
|
1175
|
+
* Model Registry: Add support for invoking public endpoint on SPCS service, by providing a "enable_ingress" SPCS
|
|
1163
1176
|
deployment option.
|
|
1164
|
-
|
|
1177
|
+
* Model Development: Add support for distributed HPO - GridSearchCV and RandomizedSearchCV execution will be
|
|
1165
1178
|
distributed on multi-node warehouses.
|
|
1166
1179
|
|
|
1167
1180
|
## 1.0.12 (2023-11-13)
|
|
1168
1181
|
|
|
1169
1182
|
### Bug Fixes
|
|
1170
1183
|
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1184
|
+
* Model Registry: Fix regression issue that container logging is not shown during model deployment to SPCS.
|
|
1185
|
+
* Model Development: Enhance the column capacity of OrdinalEncoder.
|
|
1186
|
+
* Model Registry: Fix unbound `batch_size` error when deploying a model other than Hugging Face Pipeline
|
|
1174
1187
|
and LLM with GPU on SPCS.
|
|
1175
1188
|
|
|
1176
1189
|
### Behavior Changes
|
|
1177
1190
|
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1191
|
+
* Model Registry: Raise early error when deploying to SPCS with db/schema that starts with underscore.
|
|
1192
|
+
* Model Registry: `conda-forge` channel is now automatically added to channel lists when deploying to SPCS.
|
|
1193
|
+
* Model Registry: `relax_version` will not strip all version specifier, instead it will relax `==x.y.z` specifier to
|
|
1181
1194
|
`>=x.y,<(x+1)`.
|
|
1182
|
-
|
|
1195
|
+
* Model Registry: Python with different patchlevel but the same major and minor will not result a warning when loading
|
|
1183
1196
|
the model via Model Registry and would be considered to use when deploying to SPCS.
|
|
1184
|
-
|
|
1197
|
+
* Model Registry: When logging a `snowflake.ml.model.models.huggingface_pipeline.HuggingFacePipelineModel` object,
|
|
1185
1198
|
versions of local installed libraries won't be picked as dependencies of models, instead it will pick up some pre-
|
|
1186
1199
|
defined dependencies to improve user experience.
|
|
1187
1200
|
|
|
1188
1201
|
### New Features
|
|
1189
1202
|
|
|
1190
|
-
|
|
1203
|
+
* Model Registry: Enable best-effort SPCS job/service log streaming when logging level is set to INFO.
|
|
1191
1204
|
|
|
1192
1205
|
## 1.0.11 (2023-10-27)
|
|
1193
1206
|
|
|
1194
1207
|
### New Features
|
|
1195
1208
|
|
|
1196
|
-
|
|
1197
|
-
|
|
1209
|
+
* Model Registry: Add log_artifact() public method.
|
|
1210
|
+
* Model Development: Add support for `kneighbors`.
|
|
1198
1211
|
|
|
1199
1212
|
### Behavior Changes
|
|
1200
1213
|
|
|
1201
|
-
|
|
1202
|
-
|
|
1214
|
+
* Model Registry: Change log_model() argument from TrainingDataset to List of Artifact.
|
|
1215
|
+
* Model Registry: Change get_training_dataset() to get_artifact().
|
|
1203
1216
|
|
|
1204
1217
|
### Bug Fixes
|
|
1205
1218
|
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1219
|
+
* Model Development: Fix support for XGBoost and LightGBM models using SKLearn Grid Search and Randomized Search model selectors.
|
|
1220
|
+
* Model Development: DecimalType is now supported as a DataType.
|
|
1221
|
+
* Model Development: Fix metrics compatibility with Snowpark Dataframes that use Snowflake identifiers
|
|
1222
|
+
* Model Registry: Resolve 'delete_deployment' not deleting the SPCS service in certain cases.
|
|
1210
1223
|
|
|
1211
1224
|
## 1.0.10 (2023-10-13)
|
|
1212
1225
|
|
|
1213
1226
|
### Behavior Changes
|
|
1214
1227
|
|
|
1215
|
-
|
|
1228
|
+
* Model Development: precision_score, recall_score, f1_score, fbeta_score, precision_recall_fscore_support,
|
|
1216
1229
|
mean_absolute_error, mean_squared_error, and mean_absolute_percentage_error metric calculations are now distributed.
|
|
1217
|
-
|
|
1230
|
+
* Model Registry: `deploy` will now return `Deployment` for deployment information.
|
|
1218
1231
|
|
|
1219
1232
|
### New Features
|
|
1220
1233
|
|
|
1221
|
-
|
|
1222
|
-
|
|
1234
|
+
* Model Registry: When the model signature is auto-inferred, it will be printed to the log for reference.
|
|
1235
|
+
* Model Registry: For SPCS deployment, `Deployment` details will contains `image_name`, `service_spec` and `service_function_sql`.
|
|
1223
1236
|
|
|
1224
1237
|
### Bug Fixes
|
|
1225
1238
|
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1239
|
+
* Model Development: Fix an issue that leading to UTF-8 decoding errors when using modeling modules on Windows.
|
|
1240
|
+
* Model Development: Fix an issue that alias definitions cause `SnowparkSQLUnexpectedAliasException` in inference.
|
|
1241
|
+
* Model Registry: Fix an issue that signature inference could be incorrect when using Snowpark DataFrame as sample input.
|
|
1242
|
+
* Model Registry: Fix too strict data type validation when predicting. Now, for example, if you have a INT8
|
|
1230
1243
|
type feature in the signature, if providing a INT64 dataframe but all values are within the range, it would not fail.
|
|
1231
1244
|
|
|
1232
1245
|
## 1.0.9 (2023-09-28)
|
|
1233
1246
|
|
|
1234
1247
|
### Behavior Changes
|
|
1235
1248
|
|
|
1236
|
-
|
|
1249
|
+
* Model Development: log_loss metric calculation is now distributed.
|
|
1237
1250
|
|
|
1238
1251
|
### Bug Fixes
|
|
1239
1252
|
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1253
|
+
* Model Registry: Fix an issue that building images fails with specific docker setup.
|
|
1254
|
+
* Model Registry: Fix an issue that unable to embed local ML library when the library is imported by `zipimport`.
|
|
1255
|
+
* Model Registry: Fix out-of-date doc about `platform` argument in the `deploy` function.
|
|
1256
|
+
* Model Registry: Fix an issue that unable to deploy a GPU-trained PyTorch model to a platform where GPU is not available.
|
|
1244
1257
|
|
|
1245
1258
|
## 1.0.8 (2023-09-15)
|
|
1246
1259
|
|
|
1247
1260
|
### Bug Fixes
|
|
1248
1261
|
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1262
|
+
* Model Development: Ordinal encoder can be used with mixed input column types.
|
|
1263
|
+
* Model Development: Fix an issue when the sklearn default value is `np.nan`.
|
|
1264
|
+
* Model Registry: Fix an issue that incorrect docker executable is used when building images.
|
|
1265
|
+
* Model Registry: Fix an issue that specifying `token` argument when using
|
|
1253
1266
|
`snowflake.ml.model.models.huggingface_pipeline.HuggingFacePipelineModel` with `transformers < 4.32.0` is not effective.
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1267
|
+
* Model Registry: Fix an issue that incorrect system function call is used when deploying to SPCS.
|
|
1268
|
+
* Model Registry: Fix an issue when using a `transformers.pipeline` that does not have a `tokenizer`.
|
|
1269
|
+
* Model Registry: Fix incorrectly-inferred image repository name during model deployment to SPCS.
|
|
1270
|
+
* Model Registry: Fix GPU resource retention issue caused by failed or stuck previous deployments in SPCS.
|
|
1258
1271
|
|
|
1259
1272
|
## 1.0.7 (2023-09-05)
|
|
1260
1273
|
|
|
1261
1274
|
### Bug Fixes
|
|
1262
1275
|
|
|
1263
|
-
|
|
1264
|
-
|
|
1276
|
+
* Model Development & Model Registry: Fix an error related to `pandas.io.json.json_normalize`.
|
|
1277
|
+
* Allow disabling telemetry.
|
|
1265
1278
|
|
|
1266
1279
|
## 1.0.6 (2023-09-01)
|
|
1267
1280
|
|
|
1268
1281
|
### New Features
|
|
1269
1282
|
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1283
|
+
* Model Registry: add `create_if_not_exists` parameter in constructor.
|
|
1284
|
+
* Model Registry: Added get_or_create_model_registry API.
|
|
1285
|
+
* Model Registry: Added support for using GPU inference when deploying XGBoost (`xgboost.XGBModel` and `xgboost.Booster`
|
|
1273
1286
|
), PyTorch (`torch.nn.Module` and `torch.jit.ScriptModule`) and TensorFlow (`tensorflow.Module` and
|
|
1274
1287
|
`tensorflow.keras.Model`) models to Snowpark Container Services.
|
|
1275
|
-
|
|
1288
|
+
* Model Registry: When inferring model signature, `Sequence` of built-in types, `Sequence` of `numpy.ndarray`,
|
|
1276
1289
|
`Sequence` of `torch.Tensor`, `Sequence` of `tensorflow.Tensor` and `Sequence` of `tensorflow.Tensor` can be used
|
|
1277
1290
|
instead of only `List` of them.
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1291
|
+
* Model Registry: Added `get_training_dataset` API.
|
|
1292
|
+
* Model Development: Size of metrics result can exceed previous 8MB limit.
|
|
1293
|
+
* Model Registry: Added support save/load/deploy HuggingFace pipeline object (`transformers.Pipeline`) and our wrapper
|
|
1281
1294
|
(`snowflake.ml.model.models.huggingface_pipeline.HuggingFacePipelineModel`) to it. Using the wrapper to specify
|
|
1282
1295
|
configurations and the model for the pipeline will be loaded dynamically when deploying. Currently, following tasks
|
|
1283
1296
|
are supported to log without manually specifying model signatures:
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1297
|
+
* "conversational"
|
|
1298
|
+
* "fill-mask"
|
|
1299
|
+
* "question-answering"
|
|
1300
|
+
* "summarization"
|
|
1301
|
+
* "table-question-answering"
|
|
1302
|
+
* "text2text-generation"
|
|
1303
|
+
* "text-classification" (alias "sentiment-analysis" available)
|
|
1304
|
+
* "text-generation"
|
|
1305
|
+
* "token-classification" (alias "ner" available)
|
|
1306
|
+
* "translation"
|
|
1307
|
+
* "translation_xx_to_yy"
|
|
1308
|
+
* "zero-shot-classification"
|
|
1296
1309
|
|
|
1297
1310
|
### Bug Fixes
|
|
1298
1311
|
|
|
1299
|
-
|
|
1300
|
-
|
|
1312
|
+
* Model Development: Fixed a bug when using simple imputer with numpy >= 1.25.
|
|
1313
|
+
* Model Development: Fixed a bug when inferring the type of label columns.
|
|
1301
1314
|
|
|
1302
1315
|
### Behavior Changes
|
|
1303
1316
|
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1317
|
+
* Model Registry: `log_model()` now return a `ModelReference` object instead of a model ID.
|
|
1318
|
+
* Model Registry: When deploying a model with 1 `target method` only, the `target_method` argument can be omitted.
|
|
1319
|
+
* Model Registry: When using the snowflake-ml-python with version newer than what is available in Snowflake Anaconda
|
|
1307
1320
|
Channel, `embed_local_ml_library` option will be set as `True` automatically if not.
|
|
1308
|
-
|
|
1321
|
+
* Model Registry: When deploying a model to Snowpark Container Services and using GPU, the default value of num_workers
|
|
1309
1322
|
will be 1.
|
|
1310
|
-
|
|
1323
|
+
* Model Registry: `keep_order` and `output_with_input_features` in the deploy options have been removed. Now the
|
|
1311
1324
|
behavior is controlled by the type of the input when calling `model.predict()`. If the input is a `pandas.DataFrame`,
|
|
1312
1325
|
the behavior will be the same as `keep_order=True` and `output_with_input_features=False` before. If the input is a
|
|
1313
1326
|
`snowpark.DataFrame`, the behavior will be the same as `keep_order=False` and `output_with_input_features=True` before.
|
|
1314
|
-
|
|
1327
|
+
* Model Registry: When logging and deploying PyTorch (`torch.nn.Module` and `torch.jit.ScriptModule`) and TensorFlow
|
|
1315
1328
|
(`tensorflow.Module` and `tensorflow.keras.Model`) models, we no longer accept models whose input is a list of tensor
|
|
1316
1329
|
and output is a list of tensors. Instead, now we accept models whose input is 1 or more tensors as positional arguments,
|
|
1317
1330
|
and output is a tensor or a tuple of tensors. The input and output dataframe when predicting keep the same as before,
|
|
@@ -1321,53 +1334,53 @@ not readable by new SDK.
|
|
|
1321
1334
|
|
|
1322
1335
|
### New Features
|
|
1323
1336
|
|
|
1324
|
-
|
|
1325
|
-
|
|
1337
|
+
* Model Registry: Added support save/load/deploy xgboost Booster model.
|
|
1338
|
+
* Model Registry: Added support to get the model name and the model version from model references.
|
|
1326
1339
|
|
|
1327
1340
|
### Bug Fixes
|
|
1328
1341
|
|
|
1329
|
-
|
|
1330
|
-
|
|
1342
|
+
* Model Registry: Restore the db/schema back to the session after `create_model_registry()`.
|
|
1343
|
+
* Model Registry: Fixed an issue that the UDF name created when deploying a model is not identical to what is provided
|
|
1331
1344
|
and cannot be correctly dropped when deployment getting dropped.
|
|
1332
|
-
|
|
1345
|
+
* connection_params.SnowflakeLoginOptions(): Added support for `private_key_path`.
|
|
1333
1346
|
|
|
1334
1347
|
## 1.0.4 (2023-07-28)
|
|
1335
1348
|
|
|
1336
1349
|
### New Features
|
|
1337
1350
|
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1351
|
+
* Model Registry: Added support save/load/deploy Tensorflow models (`tensorflow.Module`).
|
|
1352
|
+
* Model Registry: Added support save/load/deploy MLFlow PyFunc models (`mlflow.pyfunc.PyFuncModel`).
|
|
1353
|
+
* Model Development: Input dataframes can now be joined against data loaded from staged files.
|
|
1354
|
+
* Model Development: Added support for non-English languages.
|
|
1342
1355
|
|
|
1343
1356
|
### Bug Fixes
|
|
1344
1357
|
|
|
1345
|
-
|
|
1358
|
+
* Model Registry: Fix an issue that model dependencies are incorrectly reported as unresolvable on certain platforms.
|
|
1346
1359
|
|
|
1347
1360
|
## 1.0.3 (2023-07-14)
|
|
1348
1361
|
|
|
1349
1362
|
### Behavior Changes
|
|
1350
1363
|
|
|
1351
|
-
|
|
1364
|
+
* Model Registry: When predicting a model whose output is a list of NumPy ndarray, the output would not be flattened,
|
|
1352
1365
|
instead, every ndarray will act as a feature(column) in the output.
|
|
1353
1366
|
|
|
1354
1367
|
### New Features
|
|
1355
1368
|
|
|
1356
|
-
|
|
1369
|
+
* Model Registry: Added support save/load/deploy PyTorch models (`torch.nn.Module` and `torch.jit.ScriptModule`).
|
|
1357
1370
|
|
|
1358
1371
|
### Bug Fixes
|
|
1359
1372
|
|
|
1360
|
-
|
|
1373
|
+
* Model Registry: Fix an issue that when database or schema name provided to `create_model_registry` contains special
|
|
1361
1374
|
characters, the model registry cannot be created.
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1375
|
+
* Model Registry: Fix an issue that `get_model_description` returns with additional quotes.
|
|
1376
|
+
* Model Registry: Fix incorrect error message when attempting to remove a unset tag of a model.
|
|
1377
|
+
* Model Registry: Fix a typo in the default deployment table name.
|
|
1378
|
+
* Model Registry: Snowpark dataframe for sample input or input for `predict` method that contains a column with
|
|
1366
1379
|
Snowflake `NUMBER(precision, scale)` data type where `scale = 0` will not lead to error, and will now correctly
|
|
1367
1380
|
recognized as `INT64` data type in model signature.
|
|
1368
|
-
|
|
1381
|
+
* Model Registry: Fix an issue that prevent model logged in the system whose default encoding is not UTF-8 compatible
|
|
1369
1382
|
from deploying.
|
|
1370
|
-
|
|
1383
|
+
* Model Registry: Added earlier and better error message when any file name in the model or the file name of model
|
|
1371
1384
|
itself contains characters that are unable to be encoded using ASCII. It is currently not supported to deploy such a
|
|
1372
1385
|
model.
|
|
1373
1386
|
|
|
@@ -1375,181 +1388,181 @@ not readable by new SDK.
|
|
|
1375
1388
|
|
|
1376
1389
|
### Behavior Changes
|
|
1377
1390
|
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1391
|
+
* Model Registry: Prohibit non-snowflake-native models from being logged.
|
|
1392
|
+
* Model Registry: `_use_local_snowml` parameter in options of `deploy()` has been removed.
|
|
1393
|
+
* Model Registry: A default `False` `embed_local_ml_library` parameter has been added to the options of `log_model()`.
|
|
1381
1394
|
With this set to `False` (default), the version of the local snowflake-ml-python library will be recorded and used when
|
|
1382
1395
|
deploying the model. With this set to `True`, local snowflake-ml-python library will be embedded into the logged model,
|
|
1383
1396
|
and will be used when you load or deploy the model.
|
|
1384
1397
|
|
|
1385
1398
|
### New Features
|
|
1386
1399
|
|
|
1387
|
-
|
|
1400
|
+
* Model Registry: A new optional argument named `code_paths` has been added to the arguments of `log_model()` for users
|
|
1388
1401
|
to specify additional code paths to be imported when loading and deploying the model.
|
|
1389
|
-
|
|
1402
|
+
* Model Registry: A new optional argument named `options` has been added to the arguments of `log_model()` to specify
|
|
1390
1403
|
any additional options when saving the model.
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1404
|
+
* Model Development: Added metrics:
|
|
1405
|
+
* d2_absolute_error_score
|
|
1406
|
+
* d2_pinball_score
|
|
1407
|
+
* explained_variance_score
|
|
1408
|
+
* mean_absolute_error
|
|
1409
|
+
* mean_absolute_percentage_error
|
|
1410
|
+
* mean_squared_error
|
|
1398
1411
|
|
|
1399
1412
|
### Bug Fixes
|
|
1400
1413
|
|
|
1401
|
-
|
|
1414
|
+
* Model Development: `accuracy_score()` now works when given label column names are lists of a single value.
|
|
1402
1415
|
|
|
1403
1416
|
## 1.0.1 (2023-06-16)
|
|
1404
1417
|
|
|
1405
1418
|
### Behavior Changes
|
|
1406
1419
|
|
|
1407
|
-
|
|
1408
|
-
|
|
1420
|
+
* Model Development: Changed Metrics APIs to imitate sklearn metrics modules:
|
|
1421
|
+
* `accuracy_score()`, `confusion_matrix()`, `precision_recall_fscore_support()`, `precision_score()` methods move from
|
|
1409
1422
|
respective modules to `metrics.classification`.
|
|
1410
|
-
|
|
1411
|
-
|
|
1423
|
+
* Model Registry: The default table/stage created by the Registry now uses "_SYSTEM_" as a prefix.
|
|
1424
|
+
* Model Registry: `get_model_history()` method as been enhanced to include the history of model deployment.
|
|
1412
1425
|
|
|
1413
1426
|
### New Features
|
|
1414
1427
|
|
|
1415
|
-
|
|
1428
|
+
* Model Registry: A default `False` flag named `replace_udf` has been added to the options of `deploy()`. Setting this
|
|
1416
1429
|
to `True` will allow overwrite existing UDF with the same name when deploying.
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1430
|
+
* Model Development: Added metrics:
|
|
1431
|
+
* f1_score
|
|
1432
|
+
* fbeta_score
|
|
1433
|
+
* recall_score
|
|
1434
|
+
* roc_auc_score
|
|
1435
|
+
* roc_curve
|
|
1436
|
+
* log_loss
|
|
1437
|
+
* precision_recall_curve
|
|
1438
|
+
* Model Registry: A new argument named `permanent` has been added to the argument of `deploy()`. Setting this to `True`
|
|
1426
1439
|
allows the creation of a permanent deployment without needing to specify the UDF location.
|
|
1427
|
-
|
|
1440
|
+
* Model Registry: A new method `list_deployments()` has been added to enumerate all permanent deployments originating
|
|
1428
1441
|
from a specific model.
|
|
1429
|
-
|
|
1430
|
-
|
|
1442
|
+
* Model Registry: A new method `get_deployment()` has been added to fetch a deployment by its deployment name.
|
|
1443
|
+
* Model Registry: A new method `delete_deployment()` has been added to remove an existing permanent deployment.
|
|
1431
1444
|
|
|
1432
1445
|
## 1.0.0 (2023-06-09)
|
|
1433
1446
|
|
|
1434
1447
|
### Behavior Changes
|
|
1435
1448
|
|
|
1436
|
-
|
|
1437
|
-
|
|
1449
|
+
* Model Registry: `predict()` method moves from Registry to ModelReference.
|
|
1450
|
+
* Model Registry: `_snowml_wheel_path` parameter in options of `deploy()`, is replaced with `_use_local_snowml` with
|
|
1438
1451
|
default value of `False`. Setting this to `True` will have the same effect of uploading local SnowML code when executing
|
|
1439
1452
|
model in the warehouse.
|
|
1440
|
-
|
|
1441
|
-
|
|
1453
|
+
* Model Registry: Removed `id` field from `ModelReference` constructor.
|
|
1454
|
+
* Model Development: Preprocessing and Metrics move to the modeling package: `snowflake.ml.modeling.preprocessing` and
|
|
1442
1455
|
`snowflake.ml.modeling.metrics`.
|
|
1443
|
-
|
|
1456
|
+
* Model Development: `get_sklearn_object()` method is renamed to `to_sklearn()`, `to_xgboost()`, and `to_lightgbm()` for
|
|
1444
1457
|
respective native models.
|
|
1445
1458
|
|
|
1446
1459
|
### New Features
|
|
1447
1460
|
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1461
|
+
* Added PolynomialFeatures transformer to the snowflake.ml.modeling.preprocessing module.
|
|
1462
|
+
* Added metrics:
|
|
1463
|
+
* accuracy_score
|
|
1464
|
+
* confusion_matrix
|
|
1465
|
+
* precision_recall_fscore_support
|
|
1466
|
+
* precision_score
|
|
1454
1467
|
|
|
1455
1468
|
### Bug Fixes
|
|
1456
1469
|
|
|
1457
|
-
|
|
1458
|
-
|
|
1470
|
+
* Model Registry: Model version can now be any string (not required to be a valid identifier)
|
|
1471
|
+
* Model Deployment: `deploy()` & `predict()` methods now correctly escapes identifiers
|
|
1459
1472
|
|
|
1460
1473
|
## 0.3.2 (2023-05-23)
|
|
1461
1474
|
|
|
1462
1475
|
### Behavior Changes
|
|
1463
1476
|
|
|
1464
|
-
|
|
1477
|
+
* Use cloudpickle to serialize and deserialize models throughout the codebase and removed dependency on joblib.
|
|
1465
1478
|
|
|
1466
1479
|
### New Features
|
|
1467
1480
|
|
|
1468
|
-
|
|
1481
|
+
* Model Deployment: Added support for snowflake.ml models.
|
|
1469
1482
|
|
|
1470
1483
|
## 0.3.1 (2023-05-18)
|
|
1471
1484
|
|
|
1472
1485
|
### Behavior Changes
|
|
1473
1486
|
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1487
|
+
* Standardized registry API with following
|
|
1488
|
+
* Create & open registry taking same set of arguments
|
|
1489
|
+
* Create & Open can choose schema to use
|
|
1490
|
+
* Set_tag, set_metric, etc now explicitly calls out arg name as metric_name, tag_name, metric_name, etc.
|
|
1478
1491
|
|
|
1479
1492
|
### New Features
|
|
1480
1493
|
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1494
|
+
* Changes to support python 3.9, 3.10
|
|
1495
|
+
* Added kBinsDiscretizer
|
|
1496
|
+
* Support for deployment of XGBoost models & int8 types of data
|
|
1484
1497
|
|
|
1485
1498
|
## 0.3.0 (2023-05-11)
|
|
1486
1499
|
|
|
1487
1500
|
### Behavior Changes
|
|
1488
1501
|
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1502
|
+
* Big Model Registry Refresh
|
|
1503
|
+
* Fixed API discrepancies between register_model & log_model.
|
|
1504
|
+
* Model can be referred by Name + Version (no opaque internal id is required)
|
|
1492
1505
|
|
|
1493
1506
|
### New Features
|
|
1494
1507
|
|
|
1495
|
-
|
|
1508
|
+
* Model Registry: Added support save/load/deploy SKL & XGB Models
|
|
1496
1509
|
|
|
1497
1510
|
## 0.2.3 (2023-04-27)
|
|
1498
1511
|
|
|
1499
1512
|
### Bug Fixes
|
|
1500
1513
|
|
|
1501
|
-
|
|
1514
|
+
* Allow using OneHotEncoder along with sklearn style estimators in a pipeline.
|
|
1502
1515
|
|
|
1503
1516
|
### New Features
|
|
1504
1517
|
|
|
1505
|
-
|
|
1518
|
+
* Model Registry: Added support for delete_model. Use delete_artifact = False to not delete the underlying model data
|
|
1506
1519
|
but just unregister.
|
|
1507
1520
|
|
|
1508
1521
|
## 0.2.2 (2023-04-11)
|
|
1509
1522
|
|
|
1510
1523
|
### New Features
|
|
1511
1524
|
|
|
1512
|
-
|
|
1513
|
-
|
|
1525
|
+
* Initial version of snowflake-ml modeling package.
|
|
1526
|
+
* Provide support for training most of scikit-learn and xgboost estimators and transformers.
|
|
1514
1527
|
|
|
1515
1528
|
### Bug Fixes
|
|
1516
1529
|
|
|
1517
|
-
|
|
1530
|
+
* Minor fixes in preprocessing package.
|
|
1518
1531
|
|
|
1519
1532
|
## 0.2.1 (2023-03-23)
|
|
1520
1533
|
|
|
1521
1534
|
### New Features
|
|
1522
1535
|
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1536
|
+
* New in Preprocessing:
|
|
1537
|
+
* SimpleImputer
|
|
1538
|
+
* Covariance Matrix
|
|
1539
|
+
* Optimization of Ordinal Encoder client computations.
|
|
1527
1540
|
|
|
1528
1541
|
### Bug Fixes
|
|
1529
1542
|
|
|
1530
|
-
|
|
1543
|
+
* Minor fixes in OneHotEncoder.
|
|
1531
1544
|
|
|
1532
1545
|
## 0.2.0 (2023-02-27)
|
|
1533
1546
|
|
|
1534
1547
|
### New Features
|
|
1535
1548
|
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1549
|
+
* Model Registry
|
|
1550
|
+
* PyTorch & Tensorflow connector file generic FileSet API
|
|
1551
|
+
* New to Preprocessing:
|
|
1552
|
+
* Binarizer
|
|
1553
|
+
* Normalizer
|
|
1554
|
+
* Pearson correlation Matrix
|
|
1555
|
+
* Optimization in Ordinal Encoder to cache vocabulary in temp tables.
|
|
1543
1556
|
|
|
1544
1557
|
## 0.1.3 (2023-02-02)
|
|
1545
1558
|
|
|
1546
1559
|
### New Features
|
|
1547
1560
|
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1561
|
+
* Initial version of transformers including:
|
|
1562
|
+
* Label Encoder
|
|
1563
|
+
* Max Abs Scaler
|
|
1564
|
+
* Min Max Scaler
|
|
1565
|
+
* One Hot Encoder
|
|
1566
|
+
* Ordinal Encoder
|
|
1567
|
+
* Robust Scaler
|
|
1568
|
+
* Standard Scaler
|