snowflake-ml-python 1.15.0__tar.gz → 1.17.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/CHANGELOG.md +61 -1
- {snowflake_ml_python-1.15.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.17.0}/PKG-INFO +65 -5
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/pyproject.toml +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +5 -5
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/human_readable_id/animals.txt +3 -3
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/platform_capabilities.py +4 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/mixins.py +24 -9
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/experiment_tracking.py +63 -19
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/__init__.py +4 -0
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop/data_utils.py +124 -0
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop/dto_schema.py +95 -0
- snowflake_ml_python-1.15.0/snowflake/ml/jobs/_utils/interop_utils.py → snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop/exception_utils.py +49 -178
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop/legacy.py +225 -0
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop/protocols.py +471 -0
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop/results.py +51 -0
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop/utils.py +144 -0
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_utils/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/constants.py +4 -1
- snowflake_ml_python-1.17.0/snowflake/ml/jobs/_utils/feature_flags.py +48 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/payload_utils.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +139 -102
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/spec_utils.py +50 -11
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/types.py +10 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/job.py +168 -36
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/manager.py +54 -36
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/__init__.py +16 -2
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +18 -2
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/model/model_version_impl.py +44 -7
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/ops/model_ops.py +4 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/ops/service_ops.py +50 -5
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/sql/model_version.py +3 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/sql/stage.py +8 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +1 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +32 -4
- snowflake_ml_python-1.17.0/snowflake/ml/model/_model_composer/model_method/utils.py +28 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_env/model_env.py +48 -21
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +8 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +1 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +3 -3
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/type_hints.py +13 -0
- snowflake_ml_python-1.17.0/snowflake/ml/model/volatility.py +34 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +5 -5
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/birch.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/dbscan.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/k_means.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/mean_shift.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/optics.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/compose/column_transformer.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/min_cov_det.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/oas.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/fast_ica.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/pca.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/impute/iterative_imputer.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/impute/knn_imputer.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/impute/missing_indicator.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/ard_regression.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/elastic_net.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/lars.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/lars_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/lasso.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/linear_regression.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/perceptron.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/ridge.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/manifold/isomap.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/manifold/mds.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/manifold/tsne.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/kernel_density.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/svm/linear_svc.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/svm/linear_svr.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/svm/nu_svc.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/svm/nu_svr.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/svm/svc.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/svm/svr.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/registry/_manager/model_manager.py +1 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +27 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/registry/registry.py +15 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/utils/authentication.py +16 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0/snowflake_ml_python.egg-info}/PKG-INFO +65 -5
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake_ml_python.egg-info/SOURCES.txt +10 -1
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake_ml_python.egg-info/requires.txt +3 -3
- snowflake_ml_python-1.15.0/snowflake/ml/jobs/_utils/feature_flags.py +0 -16
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/README.md +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/setup.cfg +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_classify_text.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_complete.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_embed_text_1024.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_embed_text_768.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_extract_answer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_sentiment.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_summarize.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_translate.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/cortex/_util.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/env_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/file_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/data/data_connector.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/_entities/run.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/callback/keras.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/experiment/utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/feature_store.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/feature_store/feature_view.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-1.15.0/snowflake/ml/jobs/_utils → snowflake_ml_python-1.17.0/snowflake/ml/jobs/_interop}/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/function_payload_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/lineage/lineage_node.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/sql/model.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/sql/service.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/core.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/_signatures/utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/event_handler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/inference_engine.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/model_signature.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/openai_signatures.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/utils/connection_params.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/utils/html_utils.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,66 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.17.0
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* ML Job: Added support for retrieving details of deleted jobs, including status, compute pool, and target instances.
|
|
8
|
+
|
|
9
|
+
### Behavior Changes
|
|
10
|
+
|
|
11
|
+
### New Features
|
|
12
|
+
|
|
13
|
+
* Support xgboost 3.x.
|
|
14
|
+
* ML Job: Overhauled the `MLJob.result()` API with broader cross-version
|
|
15
|
+
compatibility and support for additional data types, namely:
|
|
16
|
+
* Pandas DataFrames
|
|
17
|
+
* PyArrow Tables
|
|
18
|
+
* NumPy arrays
|
|
19
|
+
* NOTE: Requires `snowflake-ml-python>=1.17.0` to be installed inside remote container environment.
|
|
20
|
+
* ML Job: Enabled job submission v2 by default
|
|
21
|
+
* Jobs submitted using v2 will automatically use the latest Container Runtime image
|
|
22
|
+
* v1 behavior can be restored by setting environment variable `MLRS_USE_SUBMIT_JOB_V2` to `false`
|
|
23
|
+
|
|
24
|
+
## 1.16.0
|
|
25
|
+
|
|
26
|
+
### Bug Fixes
|
|
27
|
+
|
|
28
|
+
* Registry: Remove redundant pip dependency warnings when `artifact_repository_map` is provided for warehouse model deployments.
|
|
29
|
+
|
|
30
|
+
### Behavior Changes
|
|
31
|
+
|
|
32
|
+
### New Features
|
|
33
|
+
|
|
34
|
+
* Support scikit-learn < 1.8.
|
|
35
|
+
* ML Job: Added support for configuring the runtime image via `runtime_environment`
|
|
36
|
+
(image tag or full image URL) at submission time.
|
|
37
|
+
Examples:
|
|
38
|
+
* @remote(compute_pool, stage_name = 'payload_stage', runtime_environment = '1.8.0')
|
|
39
|
+
* submit_file('/path/to/repo/test.py', compute_pool, stage_name = 'payload_stage', runtime_environment = '/mydb/myschema/myrepo/myimage:latest')
|
|
40
|
+
* Registry: Ability to mark model methods as `Volatility.VOLATILE` or `Volatility.IMMUTABLE`.
|
|
41
|
+
|
|
42
|
+
```python
|
|
43
|
+
from snowflake.ml.model.volatility import Volatility
|
|
44
|
+
|
|
45
|
+
options = {
|
|
46
|
+
"embed_local_ml_library": True,
|
|
47
|
+
"relax_version": True,
|
|
48
|
+
"save_location": "/path/to/my/directory",
|
|
49
|
+
"function_type": "TABLE_FUNCTION",
|
|
50
|
+
"volatility": Volatility.IMMUTABLE,
|
|
51
|
+
"method_options": {
|
|
52
|
+
"predict": {
|
|
53
|
+
"case_sensitive": False,
|
|
54
|
+
"max_batch_size": 100,
|
|
55
|
+
"function_type": "TABLE_FUNCTION",
|
|
56
|
+
"volatility": Volatility.VOLATILE,
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## 1.15.0 (09-29-2025)
|
|
4
64
|
|
|
5
65
|
### Bug Fixes
|
|
6
66
|
|
{snowflake_ml_python-1.15.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.17.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowflake-ml-python
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.17.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:
|
|
@@ -250,16 +250,16 @@ Requires-Dist: pytimeparse<2,>=1.1.8
|
|
|
250
250
|
Requires-Dist: pyyaml<7,>=6.0
|
|
251
251
|
Requires-Dist: retrying<2,>=1.3.3
|
|
252
252
|
Requires-Dist: s3fs<2026,>=2024.6.1
|
|
253
|
-
Requires-Dist: scikit-learn<1.
|
|
253
|
+
Requires-Dist: scikit-learn<1.8
|
|
254
254
|
Requires-Dist: scipy<2,>=1.9
|
|
255
255
|
Requires-Dist: shap<1,>=0.46.0
|
|
256
|
-
Requires-Dist: snowflake-connector-python[pandas]<4,>=3.
|
|
256
|
+
Requires-Dist: snowflake-connector-python[pandas]<4,>=3.17.0
|
|
257
257
|
Requires-Dist: snowflake-snowpark-python!=1.26.0,<2,>=1.17.0
|
|
258
258
|
Requires-Dist: snowflake.core<2,>=1.0.2
|
|
259
259
|
Requires-Dist: sqlparse<1,>=0.4
|
|
260
260
|
Requires-Dist: tqdm<5
|
|
261
261
|
Requires-Dist: typing-extensions<5,>=4.1.0
|
|
262
|
-
Requires-Dist: xgboost<
|
|
262
|
+
Requires-Dist: xgboost<4
|
|
263
263
|
Provides-Extra: all
|
|
264
264
|
Requires-Dist: altair<6,>=5; extra == "all"
|
|
265
265
|
Requires-Dist: catboost<2,>=1.2.0; extra == "all"
|
|
@@ -406,7 +406,67 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
406
406
|
|
|
407
407
|
# Release History
|
|
408
408
|
|
|
409
|
-
## 1.
|
|
409
|
+
## 1.17.0
|
|
410
|
+
|
|
411
|
+
### Bug Fixes
|
|
412
|
+
|
|
413
|
+
* ML Job: Added support for retrieving details of deleted jobs, including status, compute pool, and target instances.
|
|
414
|
+
|
|
415
|
+
### Behavior Changes
|
|
416
|
+
|
|
417
|
+
### New Features
|
|
418
|
+
|
|
419
|
+
* Support xgboost 3.x.
|
|
420
|
+
* ML Job: Overhauled the `MLJob.result()` API with broader cross-version
|
|
421
|
+
compatibility and support for additional data types, namely:
|
|
422
|
+
* Pandas DataFrames
|
|
423
|
+
* PyArrow Tables
|
|
424
|
+
* NumPy arrays
|
|
425
|
+
* NOTE: Requires `snowflake-ml-python>=1.17.0` to be installed inside remote container environment.
|
|
426
|
+
* ML Job: Enabled job submission v2 by default
|
|
427
|
+
* Jobs submitted using v2 will automatically use the latest Container Runtime image
|
|
428
|
+
* v1 behavior can be restored by setting environment variable `MLRS_USE_SUBMIT_JOB_V2` to `false`
|
|
429
|
+
|
|
430
|
+
## 1.16.0
|
|
431
|
+
|
|
432
|
+
### Bug Fixes
|
|
433
|
+
|
|
434
|
+
* Registry: Remove redundant pip dependency warnings when `artifact_repository_map` is provided for warehouse model deployments.
|
|
435
|
+
|
|
436
|
+
### Behavior Changes
|
|
437
|
+
|
|
438
|
+
### New Features
|
|
439
|
+
|
|
440
|
+
* Support scikit-learn < 1.8.
|
|
441
|
+
* ML Job: Added support for configuring the runtime image via `runtime_environment`
|
|
442
|
+
(image tag or full image URL) at submission time.
|
|
443
|
+
Examples:
|
|
444
|
+
* @remote(compute_pool, stage_name = 'payload_stage', runtime_environment = '1.8.0')
|
|
445
|
+
* submit_file('/path/to/repo/test.py', compute_pool, stage_name = 'payload_stage', runtime_environment = '/mydb/myschema/myrepo/myimage:latest')
|
|
446
|
+
* Registry: Ability to mark model methods as `Volatility.VOLATILE` or `Volatility.IMMUTABLE`.
|
|
447
|
+
|
|
448
|
+
```python
|
|
449
|
+
from snowflake.ml.model.volatility import Volatility
|
|
450
|
+
|
|
451
|
+
options = {
|
|
452
|
+
"embed_local_ml_library": True,
|
|
453
|
+
"relax_version": True,
|
|
454
|
+
"save_location": "/path/to/my/directory",
|
|
455
|
+
"function_type": "TABLE_FUNCTION",
|
|
456
|
+
"volatility": Volatility.IMMUTABLE,
|
|
457
|
+
"method_options": {
|
|
458
|
+
"predict": {
|
|
459
|
+
"case_sensitive": False,
|
|
460
|
+
"max_batch_size": 100,
|
|
461
|
+
"function_type": "TABLE_FUNCTION",
|
|
462
|
+
"volatility": Volatility.VOLATILE,
|
|
463
|
+
},
|
|
464
|
+
},
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
```
|
|
468
|
+
|
|
469
|
+
## 1.15.0 (09-29-2025)
|
|
410
470
|
|
|
411
471
|
### Bug Fixes
|
|
412
472
|
|
|
@@ -8,7 +8,7 @@ description = "The machine learning client library that is used for interacting
|
|
|
8
8
|
classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Other Environment", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Database", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Scientific/Engineering :: Information Analysis",]
|
|
9
9
|
requires-python = ">=3.9, <3.13"
|
|
10
10
|
dynamic = [ "version", "readme",]
|
|
11
|
-
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0", "cryptography", "fsspec[http]>=2024.6.1,<2026", "importlib_resources>=6.1.1, <7", "numpy>=1.23,<3", "packaging>=20.9,<25", "pandas>=2.1.4,<3", "platformdirs<5", "pyarrow<19.0.0", "pydantic>=2.8.2, <3", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "s3fs>=2024.6.1,<2026", "scikit-learn<1.
|
|
11
|
+
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0", "cryptography", "fsspec[http]>=2024.6.1,<2026", "importlib_resources>=6.1.1, <7", "numpy>=1.23,<3", "packaging>=20.9,<25", "pandas>=2.1.4,<3", "platformdirs<5", "pyarrow<19.0.0", "pydantic>=2.8.2, <3", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "s3fs>=2024.6.1,<2026", "scikit-learn<1.8", "scipy>=1.9,<2", "shap>=0.46.0,<1", "snowflake-connector-python[pandas]>=3.17.0,<4", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "snowflake.core>=1.0.2,<2", "sqlparse>=0.4,<1", "tqdm<5", "typing-extensions>=4.1.0,<5", "xgboost<4",]
|
|
12
12
|
[[project.authors]]
|
|
13
13
|
name = "Snowflake, Inc"
|
|
14
14
|
email = "support@snowflake.com"
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
aerial
|
|
1
2
|
afraid
|
|
2
3
|
ancient
|
|
3
4
|
angry
|
|
@@ -26,7 +27,6 @@ dull
|
|
|
26
27
|
empty
|
|
27
28
|
evil
|
|
28
29
|
fast
|
|
29
|
-
fat
|
|
30
30
|
fluffy
|
|
31
31
|
foolish
|
|
32
32
|
fresh
|
|
@@ -57,10 +57,10 @@ lovely
|
|
|
57
57
|
lucky
|
|
58
58
|
massive
|
|
59
59
|
mean
|
|
60
|
+
metallic
|
|
60
61
|
mighty
|
|
61
62
|
modern
|
|
62
63
|
moody
|
|
63
|
-
nasty
|
|
64
64
|
neat
|
|
65
65
|
nervous
|
|
66
66
|
new
|
|
@@ -85,7 +85,6 @@ rotten
|
|
|
85
85
|
rude
|
|
86
86
|
selfish
|
|
87
87
|
serious
|
|
88
|
-
shaggy
|
|
89
88
|
sharp
|
|
90
89
|
short
|
|
91
90
|
shy
|
|
@@ -96,14 +95,15 @@ slippery
|
|
|
96
95
|
smart
|
|
97
96
|
smooth
|
|
98
97
|
soft
|
|
98
|
+
solid
|
|
99
99
|
sour
|
|
100
100
|
spicy
|
|
101
101
|
splendid
|
|
102
102
|
spotty
|
|
103
|
+
squishy
|
|
103
104
|
stale
|
|
104
105
|
strange
|
|
105
106
|
strong
|
|
106
|
-
stupid
|
|
107
107
|
sweet
|
|
108
108
|
swift
|
|
109
109
|
tall
|
|
@@ -116,7 +116,6 @@ tidy
|
|
|
116
116
|
tiny
|
|
117
117
|
tough
|
|
118
118
|
tricky
|
|
119
|
-
ugly
|
|
120
119
|
warm
|
|
121
120
|
weak
|
|
122
121
|
wet
|
|
@@ -124,5 +123,6 @@ wicked
|
|
|
124
123
|
wise
|
|
125
124
|
witty
|
|
126
125
|
wonderful
|
|
126
|
+
wooden
|
|
127
127
|
yellow
|
|
128
128
|
young
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
anaconda
|
|
2
2
|
ant
|
|
3
|
-
ape
|
|
4
|
-
baboon
|
|
5
3
|
badger
|
|
6
4
|
bat
|
|
7
5
|
bear
|
|
6
|
+
beetle
|
|
8
7
|
bird
|
|
9
8
|
bobcat
|
|
10
9
|
bulldog
|
|
@@ -73,7 +72,6 @@ lobster
|
|
|
73
72
|
mayfly
|
|
74
73
|
mamba
|
|
75
74
|
mole
|
|
76
|
-
monkey
|
|
77
75
|
moose
|
|
78
76
|
moth
|
|
79
77
|
mouse
|
|
@@ -114,6 +112,7 @@ swan
|
|
|
114
112
|
termite
|
|
115
113
|
tiger
|
|
116
114
|
treefrog
|
|
115
|
+
tuna
|
|
117
116
|
turkey
|
|
118
117
|
turtle
|
|
119
118
|
vampirebat
|
|
@@ -126,3 +125,4 @@ worm
|
|
|
126
125
|
yak
|
|
127
126
|
yeti
|
|
128
127
|
zebra
|
|
128
|
+
zebrafish
|
|
@@ -17,6 +17,7 @@ logger = logging.getLogger(__name__)
|
|
|
17
17
|
|
|
18
18
|
LIVE_COMMIT_PARAMETER = "ENABLE_LIVE_VERSION_IN_SDK"
|
|
19
19
|
INLINE_DEPLOYMENT_SPEC_PARAMETER = "ENABLE_INLINE_DEPLOYMENT_SPEC_FROM_CLIENT_VERSION"
|
|
20
|
+
SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST = "SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST"
|
|
20
21
|
|
|
21
22
|
|
|
22
23
|
class PlatformCapabilities:
|
|
@@ -73,6 +74,9 @@ class PlatformCapabilities:
|
|
|
73
74
|
def is_inlined_deployment_spec_enabled(self) -> bool:
|
|
74
75
|
return self._is_version_feature_enabled(INLINE_DEPLOYMENT_SPEC_PARAMETER)
|
|
75
76
|
|
|
77
|
+
def is_set_module_functions_volatility_from_manifest(self) -> bool:
|
|
78
|
+
return self._get_bool_feature(SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST, False)
|
|
79
|
+
|
|
76
80
|
def is_live_commit_enabled(self) -> bool:
|
|
77
81
|
return self._get_bool_feature(LIVE_COMMIT_PARAMETER, False)
|
|
78
82
|
|
{snowflake_ml_python-1.15.0 → snowflake_ml_python-1.17.0}/snowflake/ml/_internal/utils/mixins.py
RENAMED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
from dataclasses import dataclass
|
|
1
2
|
from typing import Any, Optional
|
|
2
3
|
|
|
3
4
|
from snowflake.ml._internal.utils import identifier
|
|
@@ -16,6 +17,14 @@ def _identifiers_match(saved: Optional[str], current: Optional[str]) -> bool:
|
|
|
16
17
|
return saved_resolved == current_resolved
|
|
17
18
|
|
|
18
19
|
|
|
20
|
+
@dataclass(frozen=True)
|
|
21
|
+
class _SessionState:
|
|
22
|
+
account: Optional[str]
|
|
23
|
+
role: Optional[str]
|
|
24
|
+
database: Optional[str]
|
|
25
|
+
schema: Optional[str]
|
|
26
|
+
|
|
27
|
+
|
|
19
28
|
class SerializableSessionMixin:
|
|
20
29
|
"""Mixin that provides pickling capabilities for objects with Snowpark sessions."""
|
|
21
30
|
|
|
@@ -40,17 +49,23 @@ class SerializableSessionMixin:
|
|
|
40
49
|
|
|
41
50
|
def __setstate__(self, state: dict[str, Any]) -> None:
|
|
42
51
|
"""Restore session from context during unpickling."""
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
52
|
+
session_state = _SessionState(
|
|
53
|
+
account=state.pop(_SESSION_ACCOUNT_KEY, None),
|
|
54
|
+
role=state.pop(_SESSION_ROLE_KEY, None),
|
|
55
|
+
database=state.pop(_SESSION_DATABASE_KEY, None),
|
|
56
|
+
schema=state.pop(_SESSION_SCHEMA_KEY, None),
|
|
57
|
+
)
|
|
47
58
|
|
|
48
59
|
if hasattr(super(), "__setstate__"):
|
|
49
60
|
super().__setstate__(state) # type: ignore[misc]
|
|
50
61
|
else:
|
|
51
62
|
self.__dict__.update(state)
|
|
52
63
|
|
|
53
|
-
|
|
64
|
+
self._set_session(session_state)
|
|
65
|
+
|
|
66
|
+
def _set_session(self, session_state: _SessionState) -> None:
|
|
67
|
+
|
|
68
|
+
if session_state.account is not None:
|
|
54
69
|
active_sessions = snowpark_session._get_active_sessions()
|
|
55
70
|
if len(active_sessions) == 0:
|
|
56
71
|
raise RuntimeError("No active Snowpark session available. Please create a session.")
|
|
@@ -63,10 +78,10 @@ class SerializableSessionMixin:
|
|
|
63
78
|
active_sessions,
|
|
64
79
|
key=lambda s: sum(
|
|
65
80
|
(
|
|
66
|
-
_identifiers_match(
|
|
67
|
-
_identifiers_match(
|
|
68
|
-
_identifiers_match(
|
|
69
|
-
_identifiers_match(
|
|
81
|
+
_identifiers_match(session_state.account, s.get_current_account()),
|
|
82
|
+
_identifiers_match(session_state.role, s.get_current_role()),
|
|
83
|
+
_identifiers_match(session_state.database, s.get_current_database()),
|
|
84
|
+
_identifiers_match(session_state.schema, s.get_current_schema()),
|
|
70
85
|
)
|
|
71
86
|
),
|
|
72
87
|
),
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import functools
|
|
2
2
|
import json
|
|
3
3
|
import sys
|
|
4
|
-
from typing import Any, Optional, Union
|
|
4
|
+
from typing import Any, Callable, Concatenate, Optional, ParamSpec, TypeVar, Union
|
|
5
5
|
from urllib.parse import quote
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
from snowflake import snowpark
|
|
8
8
|
from snowflake.ml import model as ml_model, registry
|
|
9
9
|
from snowflake.ml._internal.human_readable_id import hrid_generator
|
|
10
10
|
from snowflake.ml._internal.utils import mixins, sql_identifier
|
|
@@ -18,20 +18,40 @@ from snowflake.ml.experiment._client import (
|
|
|
18
18
|
)
|
|
19
19
|
from snowflake.ml.model import type_hints
|
|
20
20
|
from snowflake.ml.utils import sql_client as sql_client_utils
|
|
21
|
-
from snowflake.snowpark import session
|
|
22
21
|
|
|
23
22
|
DEFAULT_EXPERIMENT_NAME = sql_identifier.SqlIdentifier("DEFAULT")
|
|
24
23
|
|
|
24
|
+
P = ParamSpec("P")
|
|
25
|
+
T = TypeVar("T")
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def _restore_session(
|
|
29
|
+
func: Callable[Concatenate["ExperimentTracking", P], T],
|
|
30
|
+
) -> Callable[Concatenate["ExperimentTracking", P], T]:
|
|
31
|
+
@functools.wraps(func)
|
|
32
|
+
def wrapper(self: "ExperimentTracking", /, *args: P.args, **kwargs: P.kwargs) -> T:
|
|
33
|
+
if self._session is None:
|
|
34
|
+
if self._session_state is None:
|
|
35
|
+
raise RuntimeError(
|
|
36
|
+
f"Session is not set before calling {func.__name__}, and there is no session state to restore from"
|
|
37
|
+
)
|
|
38
|
+
self._set_session(self._session_state)
|
|
39
|
+
if self._session is None:
|
|
40
|
+
raise RuntimeError(f"Failed to restore session before calling {func.__name__}")
|
|
41
|
+
return func(self, *args, **kwargs)
|
|
42
|
+
|
|
43
|
+
return wrapper
|
|
44
|
+
|
|
25
45
|
|
|
26
46
|
class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
27
47
|
"""
|
|
28
48
|
Class to manage experiments in Snowflake.
|
|
29
49
|
"""
|
|
30
50
|
|
|
31
|
-
@
|
|
51
|
+
@snowpark._internal.utils.private_preview(version="1.9.1")
|
|
32
52
|
def __init__(
|
|
33
53
|
self,
|
|
34
|
-
session:
|
|
54
|
+
session: snowpark.Session,
|
|
35
55
|
*,
|
|
36
56
|
database_name: Optional[str] = None,
|
|
37
57
|
schema_name: Optional[str] = None,
|
|
@@ -73,7 +93,10 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
73
93
|
database_name=self._database_name,
|
|
74
94
|
schema_name=self._schema_name,
|
|
75
95
|
)
|
|
76
|
-
self._session = session
|
|
96
|
+
self._session: Optional[snowpark.Session] = session
|
|
97
|
+
# Used to store information about the session if the session could not be restored during unpickling
|
|
98
|
+
# _session_state is None if and only if _session is not None
|
|
99
|
+
self._session_state: Optional[mixins._SessionState] = None
|
|
77
100
|
|
|
78
101
|
# The experiment in context
|
|
79
102
|
self._experiment: Optional[entities.Experiment] = None
|
|
@@ -87,20 +110,29 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
87
110
|
state["_registry"] = None
|
|
88
111
|
return state
|
|
89
112
|
|
|
90
|
-
def
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
session
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
113
|
+
def _set_session(self, session_state: mixins._SessionState) -> None:
|
|
114
|
+
try:
|
|
115
|
+
super()._set_session(session_state)
|
|
116
|
+
assert self._session is not None
|
|
117
|
+
except (snowpark.exceptions.SnowparkSessionException, AssertionError):
|
|
118
|
+
# If session was not set, store the session state
|
|
119
|
+
self._session = None
|
|
120
|
+
self._session_state = session_state
|
|
121
|
+
else:
|
|
122
|
+
# If session was set, clear the session state, and reinitialize the SQL client and registry
|
|
123
|
+
self._session_state = None
|
|
124
|
+
self._sql_client = sql_client.ExperimentTrackingSQLClient(
|
|
125
|
+
session=self._session,
|
|
126
|
+
database_name=self._database_name,
|
|
127
|
+
schema_name=self._schema_name,
|
|
128
|
+
)
|
|
129
|
+
self._registry = registry.Registry(
|
|
130
|
+
session=self._session,
|
|
131
|
+
database_name=self._database_name,
|
|
132
|
+
schema_name=self._schema_name,
|
|
133
|
+
)
|
|
103
134
|
|
|
135
|
+
@_restore_session
|
|
104
136
|
def set_experiment(
|
|
105
137
|
self,
|
|
106
138
|
experiment_name: str,
|
|
@@ -125,6 +157,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
125
157
|
self._run = None
|
|
126
158
|
return self._experiment
|
|
127
159
|
|
|
160
|
+
@_restore_session
|
|
128
161
|
def delete_experiment(
|
|
129
162
|
self,
|
|
130
163
|
experiment_name: str,
|
|
@@ -141,8 +174,10 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
141
174
|
self._run = None
|
|
142
175
|
|
|
143
176
|
@functools.wraps(registry.Registry.log_model)
|
|
177
|
+
@_restore_session
|
|
144
178
|
def log_model(
|
|
145
179
|
self,
|
|
180
|
+
/, # self needs to be a positional argument to stop mypy from complaining
|
|
146
181
|
model: Union[type_hints.SupportedModelType, ml_model.ModelVersion],
|
|
147
182
|
*,
|
|
148
183
|
model_name: str,
|
|
@@ -152,6 +187,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
152
187
|
with experiment_info.ExperimentInfoPatcher(experiment_info=run._get_experiment_info()):
|
|
153
188
|
return self._registry.log_model(model, model_name=model_name, **kwargs)
|
|
154
189
|
|
|
190
|
+
@_restore_session
|
|
155
191
|
def start_run(
|
|
156
192
|
self,
|
|
157
193
|
run_name: Optional[str] = None,
|
|
@@ -181,6 +217,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
181
217
|
self._run = entities.Run(experiment_tracking=self, experiment_name=experiment.name, run_name=run_name)
|
|
182
218
|
return self._run
|
|
183
219
|
|
|
220
|
+
@_restore_session
|
|
184
221
|
def end_run(self, run_name: Optional[str] = None) -> None:
|
|
185
222
|
"""
|
|
186
223
|
End the current run if no run name is provided. Otherwise, the specified run is ended.
|
|
@@ -210,6 +247,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
210
247
|
self._run = None
|
|
211
248
|
self._print_urls(experiment_name=experiment_name, run_name=run_name)
|
|
212
249
|
|
|
250
|
+
@_restore_session
|
|
213
251
|
def delete_run(
|
|
214
252
|
self,
|
|
215
253
|
run_name: str,
|
|
@@ -248,6 +286,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
248
286
|
"""
|
|
249
287
|
self.log_metrics(metrics={key: value}, step=step)
|
|
250
288
|
|
|
289
|
+
@_restore_session
|
|
251
290
|
def log_metrics(
|
|
252
291
|
self,
|
|
253
292
|
metrics: dict[str, float],
|
|
@@ -284,6 +323,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
284
323
|
"""
|
|
285
324
|
self.log_params({key: value})
|
|
286
325
|
|
|
326
|
+
@_restore_session
|
|
287
327
|
def log_params(
|
|
288
328
|
self,
|
|
289
329
|
params: dict[str, Any],
|
|
@@ -305,6 +345,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
305
345
|
params=json.dumps([param.to_dict() for param in params_list]),
|
|
306
346
|
)
|
|
307
347
|
|
|
348
|
+
@_restore_session
|
|
308
349
|
def log_artifact(
|
|
309
350
|
self,
|
|
310
351
|
local_path: str,
|
|
@@ -328,6 +369,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
328
369
|
file_path=file_path,
|
|
329
370
|
)
|
|
330
371
|
|
|
372
|
+
@_restore_session
|
|
331
373
|
def list_artifacts(
|
|
332
374
|
self,
|
|
333
375
|
run_name: str,
|
|
@@ -356,6 +398,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
356
398
|
artifact_path=artifact_path or "",
|
|
357
399
|
)
|
|
358
400
|
|
|
401
|
+
@_restore_session
|
|
359
402
|
def download_artifacts(
|
|
360
403
|
self,
|
|
361
404
|
run_name: str,
|
|
@@ -397,6 +440,7 @@ class ExperimentTracking(mixins.SerializableSessionMixin):
|
|
|
397
440
|
return self._run
|
|
398
441
|
return self.start_run()
|
|
399
442
|
|
|
443
|
+
@_restore_session
|
|
400
444
|
def _generate_run_name(self, experiment: entities.Experiment) -> sql_identifier.SqlIdentifier:
|
|
401
445
|
generator = hrid_generator.HRID16()
|
|
402
446
|
existing_runs = self._sql_client.show_runs_in_experiment(experiment_name=experiment.name)
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
from snowflake.ml.jobs._interop.exception_utils import install_exception_display_hooks
|
|
1
2
|
from snowflake.ml.jobs._utils.types import JOB_STATUS
|
|
2
3
|
from snowflake.ml.jobs.decorators import remote
|
|
3
4
|
from snowflake.ml.jobs.job import MLJob
|
|
@@ -10,6 +11,9 @@ from snowflake.ml.jobs.manager import (
|
|
|
10
11
|
submit_from_stage,
|
|
11
12
|
)
|
|
12
13
|
|
|
14
|
+
# Initialize exception display hooks for remote job error handling
|
|
15
|
+
install_exception_display_hooks()
|
|
16
|
+
|
|
13
17
|
__all__ = [
|
|
14
18
|
"remote",
|
|
15
19
|
"submit_file",
|