snowflake-ml-python 2.4.0__tar.gz → 2.6.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-2.4.0 → snowflake_ml_python-2.6.0}/CHANGELOG.md +62 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/PKG-INFO +65 -4
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/pyproject.toml +1 -1
- snowflake_ml_python-2.6.0/snowflake/cortex/_classify_text.py +99 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/env_utils.py +6 -2
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/file_utils.py +18 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/platform_capabilities.py +1 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/dataset/dataset.py +1 -1
- snowflake_ml_python-2.6.0/snowflake/ml/experiment/_entities/run.py +128 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/experiment_tracking.py +8 -10
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/__init__.py +168 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/api.py +1796 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/compiler.py +770 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/dependencies.py +163 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/enums.py +55 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/errors.py +87 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/exporter.py +2376 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/imperative_executor.py +3487 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/invariants.py +3869 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/loader.py +871 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/manifest.py +348 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/planner.py +1319 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/project_paths.py +152 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/python_codegen.py +413 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/queries.py +172 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/serializer.py +313 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/service.py +736 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/spec_compiler.py +612 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/spec_models.py +1040 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/state.py +1995 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/templating.py +158 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/types.py +219 -0
- snowflake_ml_python-2.6.0/snowflake/ml/feature_store/decl/udf_loader.py +99 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/feature_store.py +45 -21
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/feature_view.py +59 -17
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/spec/table_schema_evolution.py +10 -4
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/__init__.py +10 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/data_utils.py +34 -2
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/legacy.py +3 -3
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/constants.py +9 -0
- snowflake_ml_python-2.6.0/snowflake/ml/jobs/_utils/object_naming.py +45 -0
- snowflake_ml_python-2.6.0/snowflake/ml/jobs/_utils/option_parsing.py +102 -0
- snowflake_ml_python-2.6.0/snowflake/ml/jobs/_utils/runtime_env_utils.py +42 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/stage_utils.py +25 -1
- snowflake_ml_python-2.6.0/snowflake/ml/jobs/code_bundle.py +532 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/job.py +59 -12
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/job_definition.py +20 -51
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/manager.py +3 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/lineage/lineage_node.py +9 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/__init__.py +0 -2
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model/batch_inference_task.py +5 -9
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model/model_version_impl.py +24 -51
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/ops/model_ops.py +12 -19
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/ops/service_ops.py +3 -2
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +53 -33
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/sql/model.py +17 -51
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_handler.py +19 -50
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +66 -101
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +3 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +2 -2
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +5 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/models/huggingface.py +135 -37
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/type_hints.py +3 -4
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/optional_dependency.py +6 -30
- {snowflake_ml_python-2.4.0/snowflake/ml/modeling/compose → snowflake_ml_python-2.6.0/snowflake/ml/modeling/calibration}/__init__.py +1 -2
- {snowflake_ml_python-2.4.0/snowflake/ml/modeling/calibration → snowflake_ml_python-2.6.0/snowflake/ml/modeling/cluster}/__init__.py +1 -2
- {snowflake_ml_python-2.4.0/snowflake/ml/modeling/covariance → snowflake_ml_python-2.6.0/snowflake/ml/modeling/compose}/__init__.py +1 -2
- {snowflake_ml_python-2.4.0/snowflake/ml/modeling/cluster → snowflake_ml_python-2.6.0/snowflake/ml/modeling/covariance}/__init__.py +1 -2
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/decomposition/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/discriminant_analysis/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/ensemble/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/feature_selection/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/gaussian_process/__init__.py +15 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/impute/__init__.py +1 -2
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/kernel_approximation/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/kernel_ridge/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/lightgbm/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/linear_model/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/manifold/__init__.py +15 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/metrics/__init__.py +2 -3
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/mixture/__init__.py +15 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/model_selection/__init__.py +1 -2
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/multiclass/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/naive_bayes/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/neighbors/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/neural_network/__init__.py +15 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/pipeline/__init__.py +1 -2
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/__init__.py +1 -2
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/semi_supervised/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/svm/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/tree/__init__.py +15 -0
- snowflake_ml_python-2.6.0/snowflake/ml/modeling/xgboost/__init__.py +15 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/registry/_manager/model_manager.py +0 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +31 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake_ml_python.egg-info/PKG-INFO +65 -4
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake_ml_python.egg-info/SOURCES.txt +26 -1
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake_ml_python.egg-info/requires.txt +2 -2
- snowflake_ml_python-2.4.0/snowflake/cortex/_classify_text.py +0 -93
- snowflake_ml_python-2.4.0/snowflake/ml/experiment/_entities/run.py +0 -75
- snowflake_ml_python-2.4.0/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -18
- snowflake_ml_python-2.4.0/snowflake/ml/model/models/huggingface_pipeline.py +0 -268
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/decomposition/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/ensemble/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/feature_selection/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/gaussian_process/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/lightgbm/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/linear_model/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/manifold/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/mixture/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/multiclass/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/naive_bayes/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/neighbors/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/neural_network/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/semi_supervised/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/svm/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/tree/__init__.py +0 -16
- snowflake_ml_python-2.4.0/snowflake/ml/modeling/xgboost/__init__.py +0 -16
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/README.md +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/setup.cfg +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_complete.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/tee.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/utils/url.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/data/data_connector.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_logging/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_logging/experiment_logger.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_logging/experiment_logging_context.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/_source_info.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/callback/catboost.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/callback/keras.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/experiment/utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/_compute_fn_validation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/aggregation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/feature.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/feature_group.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/feature_view_append_only_validation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/feature_view_refresh_freq.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/interval_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/metadata_manager.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/online_service.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/online_service_http_client.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/realtime_config.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/realtime_dataset.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/realtime_dataset_udf.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/realtime_registration.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/request_source.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/spec/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/spec/builder.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/spec/enums.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/spec/models.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/stream_config.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/stream_source.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/streaming_registration.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/feature_store/tile_sql_generator.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/results.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/arg_protocol.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/payload_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/startup.sh +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/_utils/type_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model/_loaded_model_telemetry.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model/batch_inference_job_specs.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model/telemetry_params.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model_spec/legacy_model_spec.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model_spec/model_extension_spec.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model_spec/model_extension_spec_schema.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model_spec/model_spec.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/model_spec/model_spec_parser.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/ops/deployment_step.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/ops/live_commit_naming.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/ops/param_ops.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/ops/param_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/service/import_model_spec_schema.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/service/inference_job_service_spec.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/sql/service.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/huggingface_lazy_uploader.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/infer_function_init_once.py_template +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned_init_once.py_template +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function_init_once.py_template +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_default.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_openai_chat_wrapper.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_task_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_text_to_text.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/automatic_speech_recognition.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/conversational.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/document_question_answering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/fill_mask.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_feature_extraction.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_text_to_text.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_to_text.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/object_detection.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/question_answering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/summarization.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/table_question_answering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text2text_generation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_generation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/token_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/translation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_text_to_text.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/visual_question_answering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_audio_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_image_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_object_detection.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_text_classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/peft_adapter.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_meta/model_sample_input_data.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_save_options.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/core.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/_signatures/utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/batch_inference/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/code_path.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/compute_pool.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/event_handler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/inference_engine.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/model_signature.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/openai_signatures.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/model/volatility.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/svm/svc.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/svm/svr.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/registry/registry.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/utils/html_utils.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/utils/stage_file.py +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,11 +1,67 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
-
## 2.
|
|
3
|
+
## 2.6.0
|
|
4
|
+
|
|
5
|
+
### New Features
|
|
6
|
+
|
|
7
|
+
* ML Jobs: Added `register_code_bundle` and `register_job_from_code_bundle` (Public Preview) to
|
|
8
|
+
create a Snowflake code bundle and run ML Jobs from it. `delete_code_bundle` drops a registered bundle.
|
|
9
|
+
* Feature Store: The Postgres-backed Online Feature Store is now generally available, including tiled aggregations,
|
|
10
|
+
streaming and realtime feature views and feature groups.
|
|
11
|
+
|
|
12
|
+
### Bug Fixes
|
|
13
|
+
|
|
14
|
+
* ML Jobs: `submit_from_stage` accepts stage paths with double-quoted segments, such as a Git repository branch whose
|
|
15
|
+
name contains `/` (`@repo/branches/"feature/x"/src`). These paths used to fail with "does not exist".
|
|
16
|
+
* ML Jobs: `MLJob.result()` no longer returns another job's result when results are fetched concurrently on one
|
|
17
|
+
machine.
|
|
18
|
+
|
|
19
|
+
### Behavior Changes
|
|
20
|
+
|
|
21
|
+
### Deprecations
|
|
22
|
+
|
|
23
|
+
## 2.5.0 (2026-10-14)
|
|
24
|
+
|
|
25
|
+
### New Features
|
|
26
|
+
|
|
27
|
+
* Registry: `huggingface.TransformersPipeline` can omit `task`; when omitted, the task is inferred
|
|
28
|
+
automatically from the model's Hugging Face Hub `pipeline_tag` (requires `huggingface_hub`).
|
|
29
|
+
|
|
30
|
+
### Bug Fixes
|
|
31
|
+
|
|
32
|
+
* Modeling: The `snowflake.ml.modeling` estimators and preprocessing transformers are not deprecated.
|
|
33
|
+
The `DeprecationWarning` emitted when importing a `snowflake.ml.modeling` subpackage, announced in
|
|
34
|
+
2.0.0, has been removed.
|
|
35
|
+
* ML Jobs: `MLJob.get_logs(verbose=False)` no longer returns container startup and shutdown logs when other log
|
|
36
|
+
lines land between the lines of the job start or end banner.
|
|
37
|
+
* Dependencies: Raised the `fsspec` requirement ceiling from `<2026` to `<2027` so `fsspec`
|
|
38
|
+
2026.6.0, which fixes CVE-2026-104851, can be installed.
|
|
39
|
+
|
|
40
|
+
### Behavior Changes
|
|
41
|
+
|
|
42
|
+
* Registry: `huggingface.TransformersPipeline` now takes required `model` as the first argument;
|
|
43
|
+
`task` is optional and inferred when not provided. Prefer
|
|
44
|
+
`TransformersPipeline(model="org/model")` over passing `task` explicitly.
|
|
45
|
+
* Registry: Removed deprecated `huggingface_pipeline.HuggingFacePipelineModel` and its
|
|
46
|
+
`log_model_and_create_service` API. Use `huggingface.TransformersPipeline` with
|
|
47
|
+
`registry.log_model` / `ModelVersion.create_service` instead. A pickle-compat alias remains
|
|
48
|
+
for loading models logged with the old class.
|
|
49
|
+
* Feature Store: Batch feature views with a Postgres online store now default `OnlineConfig.target_lag` to
|
|
50
|
+
`"1 minute"` instead of `"10 seconds"`. Setting a Postgres `target_lag` below 1 minute emits a `UserWarning`.
|
|
51
|
+
Hybrid table online stores are unchanged.
|
|
52
|
+
|
|
53
|
+
### Deprecations
|
|
54
|
+
|
|
55
|
+
## 2.4.0 (2026-10-06)
|
|
4
56
|
|
|
5
57
|
### New Features
|
|
6
58
|
|
|
7
59
|
* Generic: Support Python 3.14.
|
|
8
60
|
|
|
61
|
+
* Registry: `create_service` now accepts `FeatureGroup` objects in `feature_sources_per_function`
|
|
62
|
+
alongside `FeatureView`s. Snowflake resolves the `FeatureGroup`'s online feature tables at
|
|
63
|
+
deploy time, so callers no longer need to enumerate the underlying feature views manually.
|
|
64
|
+
|
|
9
65
|
* Registry: `FeatureSpec(dtype=DataType.OBJECT)` now accepts schema-free Python dictionaries as a
|
|
10
66
|
model input or output (SQL `OBJECT`). Callers can pass a dict to `ModelVersion.run`, an object
|
|
11
67
|
literal in SQL, or a JSON object over REST, without stringifying to JSON. Use `shape=(-1,)` for
|
|
@@ -20,6 +76,11 @@
|
|
|
20
76
|
* Experiment Tracking: `ExperimentTracking` accepts an optional `warnings_as_errors` parameter. When True,
|
|
21
77
|
conditions that are normally reported as warnings are raised instead.
|
|
22
78
|
|
|
79
|
+
* Experiment Tracking: Experiment runs now appear as first-class objects in lineage. Calling
|
|
80
|
+
`model_version.lineage(direction="upstream", domain_filter={"experiment"})` returns `Run` instances
|
|
81
|
+
with `database_name`, `schema_name`, `experiment_name`, and `name` properties that can be passed straight back
|
|
82
|
+
into experiment tracking.
|
|
83
|
+
|
|
23
84
|
### Bug Fixes
|
|
24
85
|
|
|
25
86
|
### Behavior Changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowflake-ml-python
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.6.0
|
|
4
4
|
Summary: The machine learning client library that is used for interacting with Snowflake to build machine learning solutions.
|
|
5
5
|
Author-email: "Snowflake, Inc" <support@snowflake.com>
|
|
6
6
|
License:
|
|
@@ -237,7 +237,7 @@ License-File: LICENSE.txt
|
|
|
237
237
|
Requires-Dist: anyio<5,>=3.5.0
|
|
238
238
|
Requires-Dist: cachetools>=3.1.1
|
|
239
239
|
Requires-Dist: cloudpickle>=2.0.0
|
|
240
|
-
Requires-Dist: fsspec[http]<
|
|
240
|
+
Requires-Dist: fsspec[http]<2027,>=2024.6.1
|
|
241
241
|
Requires-Dist: importlib_resources<7,>=6.1.1
|
|
242
242
|
Requires-Dist: jinja2<4,>=3.1.0
|
|
243
243
|
Requires-Dist: numpy<3,>=1.23
|
|
@@ -251,7 +251,7 @@ Requires-Dist: pytimeparse<2,>=1.1.8
|
|
|
251
251
|
Requires-Dist: pyyaml<7,>=6.0
|
|
252
252
|
Requires-Dist: retrying<2,>=1.3.3
|
|
253
253
|
Requires-Dist: snowflake-connector-python[pandas]<5,>=3.17.3
|
|
254
|
-
Requires-Dist: snowflake-snowpark-python<2,>=1.
|
|
254
|
+
Requires-Dist: snowflake-snowpark-python<2,>=1.43.0
|
|
255
255
|
Requires-Dist: sqlparse<1,>=0.4
|
|
256
256
|
Requires-Dist: tqdm<5
|
|
257
257
|
Requires-Dist: typing-extensions<5,>=4.1.0
|
|
@@ -426,12 +426,68 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
426
426
|
|
|
427
427
|
# Release History
|
|
428
428
|
|
|
429
|
-
## 2.
|
|
429
|
+
## 2.6.0
|
|
430
|
+
|
|
431
|
+
### New Features
|
|
432
|
+
|
|
433
|
+
* ML Jobs: Added `register_code_bundle` and `register_job_from_code_bundle` (Public Preview) to
|
|
434
|
+
create a Snowflake code bundle and run ML Jobs from it. `delete_code_bundle` drops a registered bundle.
|
|
435
|
+
* Feature Store: The Postgres-backed Online Feature Store is now generally available, including tiled aggregations,
|
|
436
|
+
streaming and realtime feature views and feature groups.
|
|
437
|
+
|
|
438
|
+
### Bug Fixes
|
|
439
|
+
|
|
440
|
+
* ML Jobs: `submit_from_stage` accepts stage paths with double-quoted segments, such as a Git repository branch whose
|
|
441
|
+
name contains `/` (`@repo/branches/"feature/x"/src`). These paths used to fail with "does not exist".
|
|
442
|
+
* ML Jobs: `MLJob.result()` no longer returns another job's result when results are fetched concurrently on one
|
|
443
|
+
machine.
|
|
444
|
+
|
|
445
|
+
### Behavior Changes
|
|
446
|
+
|
|
447
|
+
### Deprecations
|
|
448
|
+
|
|
449
|
+
## 2.5.0 (2026-10-14)
|
|
450
|
+
|
|
451
|
+
### New Features
|
|
452
|
+
|
|
453
|
+
* Registry: `huggingface.TransformersPipeline` can omit `task`; when omitted, the task is inferred
|
|
454
|
+
automatically from the model's Hugging Face Hub `pipeline_tag` (requires `huggingface_hub`).
|
|
455
|
+
|
|
456
|
+
### Bug Fixes
|
|
457
|
+
|
|
458
|
+
* Modeling: The `snowflake.ml.modeling` estimators and preprocessing transformers are not deprecated.
|
|
459
|
+
The `DeprecationWarning` emitted when importing a `snowflake.ml.modeling` subpackage, announced in
|
|
460
|
+
2.0.0, has been removed.
|
|
461
|
+
* ML Jobs: `MLJob.get_logs(verbose=False)` no longer returns container startup and shutdown logs when other log
|
|
462
|
+
lines land between the lines of the job start or end banner.
|
|
463
|
+
* Dependencies: Raised the `fsspec` requirement ceiling from `<2026` to `<2027` so `fsspec`
|
|
464
|
+
2026.6.0, which fixes CVE-2026-104851, can be installed.
|
|
465
|
+
|
|
466
|
+
### Behavior Changes
|
|
467
|
+
|
|
468
|
+
* Registry: `huggingface.TransformersPipeline` now takes required `model` as the first argument;
|
|
469
|
+
`task` is optional and inferred when not provided. Prefer
|
|
470
|
+
`TransformersPipeline(model="org/model")` over passing `task` explicitly.
|
|
471
|
+
* Registry: Removed deprecated `huggingface_pipeline.HuggingFacePipelineModel` and its
|
|
472
|
+
`log_model_and_create_service` API. Use `huggingface.TransformersPipeline` with
|
|
473
|
+
`registry.log_model` / `ModelVersion.create_service` instead. A pickle-compat alias remains
|
|
474
|
+
for loading models logged with the old class.
|
|
475
|
+
* Feature Store: Batch feature views with a Postgres online store now default `OnlineConfig.target_lag` to
|
|
476
|
+
`"1 minute"` instead of `"10 seconds"`. Setting a Postgres `target_lag` below 1 minute emits a `UserWarning`.
|
|
477
|
+
Hybrid table online stores are unchanged.
|
|
478
|
+
|
|
479
|
+
### Deprecations
|
|
480
|
+
|
|
481
|
+
## 2.4.0 (2026-10-06)
|
|
430
482
|
|
|
431
483
|
### New Features
|
|
432
484
|
|
|
433
485
|
* Generic: Support Python 3.14.
|
|
434
486
|
|
|
487
|
+
* Registry: `create_service` now accepts `FeatureGroup` objects in `feature_sources_per_function`
|
|
488
|
+
alongside `FeatureView`s. Snowflake resolves the `FeatureGroup`'s online feature tables at
|
|
489
|
+
deploy time, so callers no longer need to enumerate the underlying feature views manually.
|
|
490
|
+
|
|
435
491
|
* Registry: `FeatureSpec(dtype=DataType.OBJECT)` now accepts schema-free Python dictionaries as a
|
|
436
492
|
model input or output (SQL `OBJECT`). Callers can pass a dict to `ModelVersion.run`, an object
|
|
437
493
|
literal in SQL, or a JSON object over REST, without stringifying to JSON. Use `shape=(-1,)` for
|
|
@@ -446,6 +502,11 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
446
502
|
* Experiment Tracking: `ExperimentTracking` accepts an optional `warnings_as_errors` parameter. When True,
|
|
447
503
|
conditions that are normally reported as warnings are raised instead.
|
|
448
504
|
|
|
505
|
+
* Experiment Tracking: Experiment runs now appear as first-class objects in lineage. Calling
|
|
506
|
+
`model_version.lineage(direction="upstream", domain_filter={"experiment"})` returns `Run` instances
|
|
507
|
+
with `database_name`, `schema_name`, `experiment_name`, and `name` properties that can be passed straight back
|
|
508
|
+
into experiment tracking.
|
|
509
|
+
|
|
449
510
|
### Bug Fixes
|
|
450
511
|
|
|
451
512
|
### Behavior Changes
|
|
@@ -8,7 +8,7 @@ description = "The machine learning client library that is used for interacting
|
|
|
8
8
|
classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Other Environment", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Topic :: Database", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Scientific/Engineering :: Information Analysis",]
|
|
9
9
|
requires-python = ">=3.10, <3.15"
|
|
10
10
|
dynamic = [ "version", "readme",]
|
|
11
|
-
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1", "cloudpickle>=2.0.0", "fsspec[http]>=2024.6.1,<
|
|
11
|
+
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1", "cloudpickle>=2.0.0", "fsspec[http]>=2024.6.1,<2027", "importlib_resources>=6.1.1, <7", "jinja2>=3.1.0,<4", "numpy>=1.23,<3", "packaging>=20.9,<26", "pandas>=2.1.4,<3", "platformdirs<5", "pyarrow", "pydantic>=2.8.2, <3", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "snowflake-connector-python[pandas]>=3.17.3,<5", "snowflake-snowpark-python>=1.43.0,<2", "sqlparse>=0.4,<1", "tqdm<5", "typing-extensions>=4.1.0,<5",]
|
|
12
12
|
[[project.authors]]
|
|
13
13
|
name = "Snowflake, Inc"
|
|
14
14
|
email = "support@snowflake.com"
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import json
|
|
2
|
+
from typing import Any, cast
|
|
3
|
+
|
|
4
|
+
from typing_extensions import deprecated
|
|
5
|
+
|
|
6
|
+
from snowflake import snowpark
|
|
7
|
+
from snowflake.cortex._util import (
|
|
8
|
+
CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
9
|
+
SnowflakeAuthenticationException,
|
|
10
|
+
warn_cortex_deprecated,
|
|
11
|
+
)
|
|
12
|
+
from snowflake.ml._internal import telemetry
|
|
13
|
+
from snowflake.snowpark import context, functions
|
|
14
|
+
|
|
15
|
+
_AI_CLASSIFY_FUNCTION_NAME = "AI_CLASSIFY"
|
|
16
|
+
# AI_CLASSIFY requires its config argument to be a constant object literal. A Python dict is rendered by
|
|
17
|
+
# Snowpark as PARSE_JSON('...')::OBJECT, which the server rejects ("... is not a constant"), so emit the
|
|
18
|
+
# config as a SQL object constant via sql_expr -- this mirrors snowflake.snowpark.functions.ai_classify.
|
|
19
|
+
# Legacy CLASSIFY_TEXT was always single-label, so set output_mode explicitly to keep that contract.
|
|
20
|
+
_AI_CLASSIFY_SINGLE_LABEL_CONFIG_SQL = "{'output_mode': 'single'}"
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def _adapt_ai_classify_result(result: Any) -> str:
|
|
24
|
+
"""Map an AI_CLASSIFY result to the legacy CLASSIFY_TEXT {"label": ...} JSON string."""
|
|
25
|
+
# Used for non-Column results (e.g. a dict/JSON string): reproduce the legacy single-label object shape.
|
|
26
|
+
parsed: Any = result
|
|
27
|
+
if isinstance(result, str):
|
|
28
|
+
try:
|
|
29
|
+
parsed = json.loads(result)
|
|
30
|
+
except json.JSONDecodeError:
|
|
31
|
+
return result
|
|
32
|
+
label: Any = None
|
|
33
|
+
if isinstance(parsed, dict):
|
|
34
|
+
labels = parsed.get("labels")
|
|
35
|
+
if isinstance(labels, list) and labels:
|
|
36
|
+
label = labels[0]
|
|
37
|
+
elif parsed.get("label") is not None:
|
|
38
|
+
label = parsed.get("label")
|
|
39
|
+
return json.dumps({"label": label})
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def _ai_classify_label_column(
|
|
43
|
+
str_input: str | snowpark.Column,
|
|
44
|
+
categories: list[str] | snowpark.Column,
|
|
45
|
+
) -> snowpark.Column:
|
|
46
|
+
"""Call AI_CLASSIFY in single-label mode and re-wrap to the legacy CLASSIFY_TEXT {"label": ...} OBJECT."""
|
|
47
|
+
result = functions.builtin(_AI_CLASSIFY_FUNCTION_NAME)(
|
|
48
|
+
str_input, categories, functions.sql_expr(_AI_CLASSIFY_SINGLE_LABEL_CONFIG_SQL)
|
|
49
|
+
)
|
|
50
|
+
# AI_CLASSIFY returns {"labels": [...]}; collapse to the legacy single {"label": ...}. Subscript access
|
|
51
|
+
# (not functions.get with a bare string, which Snowpark treats as a column identifier) uses literal keys.
|
|
52
|
+
label = functions.coalesce(result["labels"][0], result["label"])
|
|
53
|
+
return functions.object_construct(functions.lit("label"), label)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
@telemetry.send_api_usage_telemetry(
|
|
57
|
+
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
58
|
+
)
|
|
59
|
+
def classify_text(
|
|
60
|
+
str_input: str | snowpark.Column,
|
|
61
|
+
categories: list[str] | snowpark.Column,
|
|
62
|
+
session: snowpark.Session | None = None,
|
|
63
|
+
) -> str | snowpark.Column:
|
|
64
|
+
"""Use the LLM inference service to classify the INPUT text into one of the target CATEGORIES.
|
|
65
|
+
|
|
66
|
+
Args:
|
|
67
|
+
str_input: A Column of strings to classify.
|
|
68
|
+
categories: A list of candidate categories to classify the INPUT text into.
|
|
69
|
+
session: The snowpark session to use. Will be inferred by context if not specified.
|
|
70
|
+
|
|
71
|
+
Returns:
|
|
72
|
+
A column of classification responses (legacy CLASSIFY_TEXT {"label": ...} shape).
|
|
73
|
+
|
|
74
|
+
Raises:
|
|
75
|
+
SnowflakeAuthenticationException: if no session is provided and none is active.
|
|
76
|
+
"""
|
|
77
|
+
warn_cortex_deprecated("classify_text", "ai_classify")
|
|
78
|
+
column = _ai_classify_label_column(str_input, categories)
|
|
79
|
+
if isinstance(str_input, snowpark.Column) or isinstance(categories, snowpark.Column):
|
|
80
|
+
return column
|
|
81
|
+
|
|
82
|
+
# Immediate (literal) path: evaluate and return the collected OBJECT as a JSON string, exactly as the
|
|
83
|
+
# legacy CLASSIFY_TEXT immediate path did.
|
|
84
|
+
session = session or context.get_active_session()
|
|
85
|
+
if session is None:
|
|
86
|
+
raise SnowflakeAuthenticationException(
|
|
87
|
+
"""Session required. Provide the session through a session=... argument or ensure an active session is
|
|
88
|
+
available in your environment."""
|
|
89
|
+
)
|
|
90
|
+
return cast(str, session.create_dataframe([snowpark.Row()]).select(column).collect()[0][0])
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
ClassifyText = deprecated(
|
|
94
|
+
"ClassifyText() is deprecated and will be removed in a future release. Please use classify_text() instead."
|
|
95
|
+
)(
|
|
96
|
+
telemetry.send_api_usage_telemetry(
|
|
97
|
+
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
98
|
+
)(classify_text)
|
|
99
|
+
)
|
|
@@ -90,6 +90,9 @@ def _validate_pip_requirement_string(req_str: str) -> requirements.Requirement:
|
|
|
90
90
|
Returns:
|
|
91
91
|
A requirements.Requirement object containing the requirement information.
|
|
92
92
|
"""
|
|
93
|
+
# A requirement string must not carry surrounding whitespace: packaging>=26 accepts only a
|
|
94
|
+
# requirement that ends at the end of the string, so a trailing newline is a parse error.
|
|
95
|
+
req_str = req_str.strip()
|
|
93
96
|
try:
|
|
94
97
|
r = requirements.Requirement(req_str)
|
|
95
98
|
|
|
@@ -780,8 +783,9 @@ def load_requirements_file(path: pathlib.Path) -> list[requirements.Requirement]
|
|
|
780
783
|
with open(path, encoding="utf-8") as f:
|
|
781
784
|
reqs = f.readlines()
|
|
782
785
|
|
|
783
|
-
#
|
|
784
|
-
|
|
786
|
+
# "-" lines are pip options (e.g. --extra-index-url) and "#" lines are comments; neither is a
|
|
787
|
+
# requirement. Strip as well, since a requirement string must not keep readlines()' newline.
|
|
788
|
+
reqs = [stripped for line in reqs if (stripped := line.strip()) and not stripped.startswith(("-", "#"))]
|
|
785
789
|
|
|
786
790
|
return validate_pip_requirement_string_list(reqs)
|
|
787
791
|
|
{snowflake_ml_python-2.4.0 → snowflake_ml_python-2.6.0}/snowflake/ml/_internal/file_utils.py
RENAMED
|
@@ -120,7 +120,21 @@ def make_archive(
|
|
|
120
120
|
)
|
|
121
121
|
|
|
122
122
|
|
|
123
|
-
def zip_python_package(
|
|
123
|
+
def zip_python_package(
|
|
124
|
+
zipfile_path: str,
|
|
125
|
+
package_name: str,
|
|
126
|
+
ignore_generated_py_file: bool = True,
|
|
127
|
+
*,
|
|
128
|
+
exclude_dir_names: tuple[str, ...] = (),
|
|
129
|
+
) -> None:
|
|
130
|
+
"""Zip an imported Python package.
|
|
131
|
+
|
|
132
|
+
Args:
|
|
133
|
+
zipfile_path: Destination zip path.
|
|
134
|
+
package_name: Dotted package name to zip.
|
|
135
|
+
ignore_generated_py_file: When True, omit generated bytecode and stub files.
|
|
136
|
+
exclude_dir_names: Directory names to omit anywhere in the package. The directory entry itself is not written.
|
|
137
|
+
"""
|
|
124
138
|
import importlib_resources
|
|
125
139
|
from importlib_resources import abc as importlib_resources_abc
|
|
126
140
|
|
|
@@ -131,6 +145,7 @@ def zip_python_package(zipfile_path: str, package_name: str, ignore_generated_py
|
|
|
131
145
|
|
|
132
146
|
base_dirs = package_name.split(".")
|
|
133
147
|
assert len(base_dirs) >= 1, "Invalid package name."
|
|
148
|
+
excluded_dirs = set(exclude_dir_names)
|
|
134
149
|
|
|
135
150
|
with zipfile.ZipFile(zipfile_path, mode="w", compression=zipfile.ZIP_DEFLATED) as zf:
|
|
136
151
|
for i in range(len(base_dirs)):
|
|
@@ -141,6 +156,8 @@ def zip_python_package(zipfile_path: str, package_name: str, ignore_generated_py
|
|
|
141
156
|
def _add_to_zip(
|
|
142
157
|
zf: zipfile.ZipFile, path_info: importlib_resources_abc.Traversable, base_arcname: pathlib.PurePosixPath
|
|
143
158
|
) -> None:
|
|
159
|
+
if path_info.name in excluded_dirs:
|
|
160
|
+
return
|
|
144
161
|
if path_info.is_file():
|
|
145
162
|
if ignore_generated_py_file and path_info.name.endswith(GENERATED_PY_FILE_EXT):
|
|
146
163
|
return
|
|
@@ -93,7 +93,7 @@ class PlatformCapabilities:
|
|
|
93
93
|
return self._get_bool_feature(ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS, False)
|
|
94
94
|
|
|
95
95
|
def is_lora_adapters_enabled(self) -> bool:
|
|
96
|
-
return False
|
|
96
|
+
return self._get_bool_feature(ENABLE_LORA_ADAPTERS, False)
|
|
97
97
|
|
|
98
98
|
def is_single_output_native_type_enabled(self) -> bool:
|
|
99
99
|
"""Whether a single, non-OBJECT model FUNCTION output is registered with its native SQL type.
|
|
@@ -341,7 +341,7 @@ class Dataset(lineage_node.LineageNode):
|
|
|
341
341
|
metadata = dataset_metadata.DatasetMetadata(
|
|
342
342
|
source_query=source_query,
|
|
343
343
|
owner=self._session.sql("SELECT CURRENT_USER()").collect(statement_params=_TELEMETRY_STATEMENT_PARAMS)[0][
|
|
344
|
-
|
|
344
|
+
0
|
|
345
345
|
],
|
|
346
346
|
exclude_cols=exclude_cols,
|
|
347
347
|
label_cols=label_cols,
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import types
|
|
2
|
+
import warnings
|
|
3
|
+
from typing import TYPE_CHECKING
|
|
4
|
+
|
|
5
|
+
from snowflake import snowpark
|
|
6
|
+
from snowflake.ml._internal.utils import identifier, sql_identifier
|
|
7
|
+
from snowflake.ml.experiment import _experiment_info as experiment_info
|
|
8
|
+
from snowflake.ml.experiment._entities import run_metadata
|
|
9
|
+
from snowflake.ml.lineage import lineage_node
|
|
10
|
+
|
|
11
|
+
if TYPE_CHECKING:
|
|
12
|
+
from snowflake.ml.experiment import experiment_tracking
|
|
13
|
+
|
|
14
|
+
METADATA_SIZE_WARNING_MESSAGE = "It is likely that no further metrics or parameters will be logged for this run."
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Run(lineage_node.LineageNode):
|
|
18
|
+
"""An experiment run.
|
|
19
|
+
|
|
20
|
+
When created by ``ExperimentTracking.start_run``, the run is an active context manager that
|
|
21
|
+
patches model logging and ends the run on exit. When returned by the lineage system
|
|
22
|
+
(``model_version.lineage(direction="upstream", domain_filter={"experiment"})``), it is a
|
|
23
|
+
read-only handle exposing the identifiers needed to look up metrics and parameters.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
def __init__(
|
|
27
|
+
self,
|
|
28
|
+
experiment_tracking: "experiment_tracking.ExperimentTracking | None" = None,
|
|
29
|
+
*,
|
|
30
|
+
experiment_name: sql_identifier.SqlIdentifier,
|
|
31
|
+
run_name: sql_identifier.SqlIdentifier,
|
|
32
|
+
session: snowpark.Session | None = None,
|
|
33
|
+
database_name: str | None = None,
|
|
34
|
+
schema_name: str | None = None,
|
|
35
|
+
) -> None:
|
|
36
|
+
self._experiment_tracking = experiment_tracking
|
|
37
|
+
self.experiment_name = experiment_name
|
|
38
|
+
self.name = run_name
|
|
39
|
+
|
|
40
|
+
# Whether we've already shown the user a warning about exceeding the run metadata size limit.
|
|
41
|
+
self._warned_about_metadata_size = False
|
|
42
|
+
|
|
43
|
+
if experiment_tracking is not None:
|
|
44
|
+
_session = experiment_tracking._session
|
|
45
|
+
self.database_name = str(experiment_tracking._database_name)
|
|
46
|
+
self.schema_name = str(experiment_tracking._schema_name)
|
|
47
|
+
else:
|
|
48
|
+
if session is None or database_name is None or schema_name is None:
|
|
49
|
+
raise ValueError(
|
|
50
|
+
"session, database_name, and schema_name are required when experiment_tracking is None"
|
|
51
|
+
)
|
|
52
|
+
_session = session
|
|
53
|
+
self.database_name = database_name
|
|
54
|
+
self.schema_name = schema_name
|
|
55
|
+
|
|
56
|
+
self._patcher = experiment_info.ExperimentInfoPatcher(
|
|
57
|
+
experiment_info=self._get_experiment_info(),
|
|
58
|
+
)
|
|
59
|
+
|
|
60
|
+
# A run is modelled in lineage as a version of its experiment, so the node name is the experiment's.
|
|
61
|
+
super().__init__(
|
|
62
|
+
session=_session,
|
|
63
|
+
name=self._fully_qualified_experiment_name(),
|
|
64
|
+
domain="experiment",
|
|
65
|
+
version=str(run_name),
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
def __enter__(self) -> "Run":
|
|
69
|
+
self._patcher.__enter__()
|
|
70
|
+
return self
|
|
71
|
+
|
|
72
|
+
def __exit__(
|
|
73
|
+
self,
|
|
74
|
+
exc_type: type[BaseException] | None,
|
|
75
|
+
exc_value: BaseException | None,
|
|
76
|
+
tb: types.TracebackType | None,
|
|
77
|
+
) -> None:
|
|
78
|
+
self._patcher.__exit__(exc_type, exc_value, tb)
|
|
79
|
+
if self._experiment_tracking is not None and self._experiment_tracking._run is self:
|
|
80
|
+
if exc_type is not None:
|
|
81
|
+
self._experiment_tracking._try_log_exception(exc_type, exc_value, tb)
|
|
82
|
+
self._experiment_tracking.end_run(status=run_metadata.RunStatus.FAILED.value)
|
|
83
|
+
else:
|
|
84
|
+
self._experiment_tracking.end_run()
|
|
85
|
+
|
|
86
|
+
def _fully_qualified_experiment_name(self) -> str:
|
|
87
|
+
return sql_identifier.get_fully_qualified_name(self.database_name, self.schema_name, self.experiment_name)
|
|
88
|
+
|
|
89
|
+
def _get_experiment_info(self) -> experiment_info.ExperimentInfo:
|
|
90
|
+
return experiment_info.ExperimentInfo(
|
|
91
|
+
fully_qualified_name=self._fully_qualified_experiment_name(),
|
|
92
|
+
run_name=self.name.identifier(),
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
def _handle_run_metadata_size_limit(self, sql_error_msg: str) -> None:
|
|
96
|
+
"""Report that run metadata exceeded the size limit.
|
|
97
|
+
|
|
98
|
+
Args:
|
|
99
|
+
sql_error_msg: The error message returned by Snowflake.
|
|
100
|
+
|
|
101
|
+
Raises:
|
|
102
|
+
RuntimeWarning: If the experiment tracking instance was created with warnings_as_errors=True.
|
|
103
|
+
"""
|
|
104
|
+
message = f"{sql_error_msg}. {METADATA_SIZE_WARNING_MESSAGE}"
|
|
105
|
+
if self._experiment_tracking is not None and self._experiment_tracking._warnings_as_errors:
|
|
106
|
+
raise RuntimeWarning(message)
|
|
107
|
+
# Once the limit is hit every subsequent log attempt fails the same way, so warn only once.
|
|
108
|
+
if not self._warned_about_metadata_size:
|
|
109
|
+
warnings.warn(message, RuntimeWarning, stacklevel=2)
|
|
110
|
+
self._warned_about_metadata_size = True
|
|
111
|
+
|
|
112
|
+
@staticmethod
|
|
113
|
+
def _load_from_lineage_node(
|
|
114
|
+
session: snowpark.Session,
|
|
115
|
+
name: str,
|
|
116
|
+
version: str,
|
|
117
|
+
) -> "Run":
|
|
118
|
+
database_name, schema_name, experiment_name = identifier.parse_schema_level_object_identifier(name)
|
|
119
|
+
return Run(
|
|
120
|
+
experiment_name=sql_identifier.SqlIdentifier(experiment_name),
|
|
121
|
+
run_name=sql_identifier.SqlIdentifier(version),
|
|
122
|
+
session=session,
|
|
123
|
+
database_name=database_name,
|
|
124
|
+
schema_name=schema_name,
|
|
125
|
+
)
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
lineage_node.DOMAIN_LINEAGE_REGISTRY["experiment"] = Run
|
|
@@ -25,7 +25,6 @@ from snowflake.ml.experiment._client import (
|
|
|
25
25
|
experiment_tracking_sql_client as sql_client,
|
|
26
26
|
)
|
|
27
27
|
from snowflake.ml.experiment._entities import run_metadata
|
|
28
|
-
from snowflake.ml.lineage import lineage_node
|
|
29
28
|
from snowflake.ml.model import type_hints
|
|
30
29
|
from snowflake.ml.utils import sql_client as sql_client_utils
|
|
31
30
|
from snowflake.snowpark import functions
|
|
@@ -328,15 +327,14 @@ class ExperimentTracking:
|
|
|
328
327
|
else:
|
|
329
328
|
raise RuntimeError("No run is active. Please provide a run_name or start a run.")
|
|
330
329
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
)
|
|
330
|
+
if self._run and self._run.name == resolved_run_name:
|
|
331
|
+
run_node = self._run
|
|
332
|
+
else:
|
|
333
|
+
run_node = entities.Run(
|
|
334
|
+
experiment_tracking=self,
|
|
335
|
+
experiment_name=self._experiment.name,
|
|
336
|
+
run_name=resolved_run_name,
|
|
337
|
+
)
|
|
340
338
|
logged_models = run_node.lineage(direction="downstream", domain_filter={"model"})
|
|
341
339
|
return [model for model in logged_models if isinstance(model, ml_model.ModelVersion)]
|
|
342
340
|
|