snowflake-ml-python 1.45.0__tar.gz → 1.47.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.
Files changed (545) hide show
  1. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/CHANGELOG.md +50 -1
  2. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/PKG-INFO +52 -3
  3. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/pyproject.toml +1 -1
  4. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/jwt_generator.py +6 -2
  5. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/experiment_tracking.py +45 -5
  6. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/aggregation.py +10 -0
  7. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/feature_group.py +21 -0
  8. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/feature_store.py +282 -23
  9. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/feature_view.py +60 -1
  10. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/metadata_manager.py +10 -0
  11. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/realtime_registration.py +6 -4
  12. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/spec/builder.py +79 -41
  13. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/stream_config.py +34 -0
  14. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/streaming_registration.py +2 -0
  15. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/tile_sql_generator.py +26 -23
  16. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/lineage/lineage_node.py +1 -1
  17. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +10 -3
  18. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/model/model_version_impl.py +9 -2
  19. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/ops/service_ops.py +3 -1
  20. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +25 -0
  21. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +1 -2
  22. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_handler.py +3 -5
  23. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_task_handler.py +2 -0
  24. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/document_question_answering.py +2 -0
  25. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_classification.py +2 -0
  26. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_feature_extraction.py +2 -0
  27. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_text_to_text.py +2 -0
  28. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_to_text.py +2 -0
  29. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/object_detection.py +2 -0
  30. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_classification.py +2 -0
  31. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/visual_question_answering.py +2 -0
  32. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_image_classification.py +2 -0
  33. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_object_detection.py +2 -0
  34. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +1 -2
  35. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +1 -4
  36. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +1 -18
  37. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +25 -22
  38. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +1 -1
  39. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +1 -1
  40. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/snowpark_handler.py +5 -1
  41. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/openai_signatures.py +44 -0
  42. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/type_hints.py +1 -1
  43. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +18 -5
  44. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +18 -5
  45. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +18 -5
  46. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/birch.py +18 -5
  47. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +18 -5
  48. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/dbscan.py +18 -5
  49. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +18 -5
  50. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/k_means.py +18 -5
  51. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/mean_shift.py +18 -5
  52. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +18 -5
  53. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/optics.py +18 -5
  54. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +18 -5
  55. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +18 -5
  56. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +18 -5
  57. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/compose/column_transformer.py +18 -5
  58. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +18 -5
  59. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +18 -5
  60. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +18 -5
  61. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +18 -5
  62. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +18 -5
  63. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +18 -5
  64. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/min_cov_det.py +18 -5
  65. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/oas.py +18 -5
  66. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +18 -5
  67. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +18 -5
  68. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +18 -5
  69. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/fast_ica.py +18 -5
  70. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +18 -5
  71. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +18 -5
  72. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +18 -5
  73. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +18 -5
  74. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/pca.py +18 -5
  75. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +18 -5
  76. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +18 -5
  77. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +18 -5
  78. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +18 -5
  79. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +18 -5
  80. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +18 -5
  81. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +18 -5
  82. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +18 -5
  83. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +18 -5
  84. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +18 -5
  85. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +18 -5
  86. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +18 -5
  87. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +18 -5
  88. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +18 -5
  89. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +18 -5
  90. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +18 -5
  91. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +18 -5
  92. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +18 -5
  93. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +18 -5
  94. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +18 -5
  95. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +18 -5
  96. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +18 -5
  97. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +18 -5
  98. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +18 -5
  99. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +18 -5
  100. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +18 -5
  101. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +18 -5
  102. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +18 -5
  103. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/framework/base.py +30 -5
  104. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +18 -5
  105. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +18 -5
  106. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/impute/iterative_imputer.py +18 -5
  107. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/impute/knn_imputer.py +18 -5
  108. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/impute/missing_indicator.py +18 -5
  109. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/impute/simple_imputer.py +6 -0
  110. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +18 -5
  111. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +18 -5
  112. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +18 -5
  113. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +18 -5
  114. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +18 -5
  115. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +18 -5
  116. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +18 -5
  117. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +18 -5
  118. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/ard_regression.py +18 -5
  119. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +18 -5
  120. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/elastic_net.py +18 -5
  121. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +18 -5
  122. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +18 -5
  123. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +18 -5
  124. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/lars.py +18 -5
  125. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/lars_cv.py +18 -5
  126. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/lasso.py +18 -5
  127. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +18 -5
  128. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +18 -5
  129. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +18 -5
  130. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +18 -5
  131. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/linear_regression.py +18 -5
  132. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +18 -5
  133. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +18 -5
  134. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +18 -5
  135. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +18 -5
  136. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +18 -5
  137. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +18 -5
  138. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +18 -5
  139. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +18 -5
  140. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +18 -5
  141. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/perceptron.py +18 -5
  142. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +18 -5
  143. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +18 -5
  144. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/ridge.py +18 -5
  145. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +18 -5
  146. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +18 -5
  147. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +18 -5
  148. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +18 -5
  149. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +18 -5
  150. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +18 -5
  151. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +18 -5
  152. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +18 -5
  153. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/manifold/isomap.py +18 -5
  154. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/manifold/mds.py +18 -5
  155. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +18 -5
  156. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/manifold/tsne.py +18 -5
  157. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +18 -5
  158. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +18 -5
  159. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +5 -4
  160. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +5 -4
  161. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +18 -5
  162. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +18 -5
  163. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +18 -5
  164. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +18 -5
  165. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +18 -5
  166. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +18 -5
  167. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +18 -5
  168. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +18 -5
  169. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +18 -5
  170. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +18 -5
  171. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/kernel_density.py +18 -5
  172. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +18 -5
  173. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +18 -5
  174. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +18 -5
  175. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +18 -5
  176. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +18 -5
  177. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +18 -5
  178. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +18 -5
  179. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +18 -5
  180. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +18 -5
  181. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +18 -5
  182. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +18 -5
  183. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +18 -5
  184. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/svm/linear_svc.py +18 -5
  185. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/svm/linear_svr.py +18 -5
  186. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/svm/nu_svc.py +18 -5
  187. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/svm/nu_svr.py +18 -5
  188. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/svm/svc.py +18 -5
  189. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/svm/svr.py +18 -5
  190. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +18 -5
  191. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +18 -5
  192. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +18 -5
  193. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +18 -5
  194. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +18 -5
  195. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +18 -5
  196. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +18 -5
  197. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +18 -5
  198. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +3 -61
  199. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/registry/registry.py +6 -6
  200. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/utils/authentication.py +3 -1
  201. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/version.py +1 -1
  202. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake_ml_python.egg-info/PKG-INFO +52 -3
  203. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake_ml_python.egg-info/requires.txt +1 -1
  204. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/LICENSE.txt +0 -0
  205. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/README.md +0 -0
  206. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/setup.cfg +0 -0
  207. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/__init__.py +0 -0
  208. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_classify_text.py +0 -0
  209. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_complete.py +0 -0
  210. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_embed_text_1024.py +0 -0
  211. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_embed_text_768.py +0 -0
  212. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_extract_answer.py +0 -0
  213. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_finetune.py +0 -0
  214. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_sentiment.py +0 -0
  215. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_sse_client.py +0 -0
  216. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_summarize.py +0 -0
  217. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_translate.py +0 -0
  218. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/cortex/_util.py +0 -0
  219. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/env.py +0 -0
  220. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/env_utils.py +0 -0
  221. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
  222. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
  223. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
  224. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
  225. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
  226. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
  227. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
  228. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
  229. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
  230. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/file_utils.py +0 -0
  231. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
  232. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
  233. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
  234. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
  235. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/init_utils.py +0 -0
  236. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
  237. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
  238. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/platform_capabilities.py +0 -0
  239. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
  240. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/telemetry.py +0 -0
  241. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/type_utils.py +0 -0
  242. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
  243. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
  244. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
  245. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
  246. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
  247. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
  248. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
  249. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
  250. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
  251. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/result.py +0 -0
  252. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
  253. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
  254. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
  255. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
  256. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
  257. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/tee.py +0 -0
  258. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
  259. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/_internal/utils/url.py +0 -0
  260. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/data/__init__.py +0 -0
  261. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
  262. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/data/data_connector.py +0 -0
  263. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/data/data_ingestor.py +0 -0
  264. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/data/data_source.py +0 -0
  265. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/data/ingestor_utils.py +0 -0
  266. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/data/torch_utils.py +0 -0
  267. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/dataset/__init__.py +0 -0
  268. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/dataset/dataset.py +0 -0
  269. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
  270. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
  271. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
  272. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/__init__.py +0 -0
  273. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
  274. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
  275. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
  276. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
  277. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_entities/run.py +0 -0
  278. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
  279. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
  280. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_logging/__init__.py +0 -0
  281. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_logging/experiment_logger.py +0 -0
  282. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/_logging/experiment_logging_context.py +0 -0
  283. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/callback/keras.py +0 -0
  284. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
  285. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
  286. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/experiment/utils.py +0 -0
  287. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/__init__.py +0 -0
  288. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/_compute_fn_validation.py +0 -0
  289. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/access_manager.py +0 -0
  290. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/entity.py +0 -0
  291. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
  292. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
  293. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
  294. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
  295. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
  296. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
  297. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
  298. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
  299. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
  300. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
  301. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
  302. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
  303. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
  304. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
  305. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
  306. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
  307. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
  308. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
  309. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
  310. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
  311. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
  312. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
  313. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/feature.py +0 -0
  314. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/feature_view_append_only_validation.py +0 -0
  315. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/feature_view_refresh_freq.py +0 -0
  316. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/interval_utils.py +0 -0
  317. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/online_service.py +0 -0
  318. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/online_service_http_client.py +0 -0
  319. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/realtime_config.py +0 -0
  320. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/realtime_dataset.py +0 -0
  321. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/realtime_dataset_udf.py +0 -0
  322. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/request_source.py +0 -0
  323. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/spec/__init__.py +0 -0
  324. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/spec/enums.py +0 -0
  325. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/spec/models.py +0 -0
  326. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/spec/table_schema_evolution.py +0 -0
  327. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/feature_store/stream_source.py +0 -0
  328. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
  329. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/fileset/fileset.py +0 -0
  330. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/fileset/sfcfs.py +0 -0
  331. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/fileset/snowfs.py +0 -0
  332. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/fileset/stage_fs.py +0 -0
  333. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/__init__.py +0 -0
  334. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/__init__.py +0 -0
  335. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
  336. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
  337. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
  338. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
  339. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
  340. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/results.py +0 -0
  341. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
  342. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
  343. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/arg_protocol.py +0 -0
  344. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
  345. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
  346. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/payload_utils.py +0 -0
  347. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
  348. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
  349. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/__init__.py +0 -0
  350. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
  351. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
  352. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +0 -0
  353. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
  354. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +0 -0
  355. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/startup.sh +0 -0
  356. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
  357. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
  358. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/_utils/type_utils.py +0 -0
  359. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/decorators.py +0 -0
  360. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/job.py +0 -0
  361. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/job_definition.py +0 -0
  362. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/jobs/manager.py +0 -0
  363. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/lineage/__init__.py +0 -0
  364. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/__init__.py +0 -0
  365. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/model/batch_inference_serialization.py +0 -0
  366. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/model/batch_inference_task.py +0 -0
  367. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
  368. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
  369. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/ops/deployment_step.py +0 -0
  370. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
  371. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/ops/model_ops.py +0 -0
  372. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/ops/param_ops.py +0 -0
  373. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/ops/param_utils.py +0 -0
  374. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/service/import_model_spec_schema.py +0 -0
  375. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/service/inference_job_service_spec.py +0 -0
  376. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +0 -0
  377. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
  378. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
  379. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/sql/model.py +0 -0
  380. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
  381. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/sql/service.py +0 -0
  382. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
  383. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
  384. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/huggingface_lazy_uploader.py +0 -0
  385. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
  386. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
  387. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
  388. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
  389. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
  390. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
  391. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/infer_function_init_once.py_template +0 -0
  392. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
  393. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned_init_once.py_template +0 -0
  394. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
  395. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function_init_once.py_template +0 -0
  396. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
  397. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
  398. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
  399. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
  400. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
  401. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
  402. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
  403. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/__init__.py +0 -0
  404. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_default.py +0 -0
  405. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_openai_chat_wrapper.py +0 -0
  406. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_utils.py +0 -0
  407. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_classification.py +0 -0
  408. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_text_to_text.py +0 -0
  409. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/automatic_speech_recognition.py +0 -0
  410. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/conversational.py +0 -0
  411. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/fill_mask.py +0 -0
  412. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/question_answering.py +0 -0
  413. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/summarization.py +0 -0
  414. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/table_question_answering.py +0 -0
  415. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text2text_generation.py +0 -0
  416. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_classification.py +0 -0
  417. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_generation.py +0 -0
  418. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/token_classification.py +0 -0
  419. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/translation.py +0 -0
  420. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_text_to_text.py +0 -0
  421. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_audio_classification.py +0 -0
  422. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_text_classification.py +0 -0
  423. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
  424. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
  425. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
  426. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
  427. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
  428. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
  429. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
  430. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
  431. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
  432. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
  433. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
  434. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
  435. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +0 -0
  436. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
  437. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_meta/model_sample_input_data.py +0 -0
  438. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
  439. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
  440. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
  441. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
  442. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
  443. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_save_options.py +0 -0
  444. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
  445. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
  446. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
  447. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/core.py +0 -0
  448. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
  449. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
  450. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
  451. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
  452. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
  453. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/_signatures/utils.py +0 -0
  454. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/batch/__init__.py +0 -0
  455. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/code_path.py +0 -0
  456. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/compute_pool.py +0 -0
  457. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/custom_model.py +0 -0
  458. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/event_handler.py +0 -0
  459. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/inference_engine.py +0 -0
  460. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/model_signature.py +0 -0
  461. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/models/huggingface.py +0 -0
  462. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
  463. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/target_platform.py +0 -0
  464. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/task.py +0 -0
  465. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/model/volatility.py +0 -0
  466. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
  467. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
  468. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
  469. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
  470. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
  471. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
  472. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
  473. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
  474. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
  475. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
  476. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
  477. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
  478. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
  479. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
  480. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
  481. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
  482. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
  483. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
  484. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
  485. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
  486. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
  487. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
  488. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
  489. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
  490. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
  491. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
  492. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
  493. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
  494. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
  495. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
  496. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
  497. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
  498. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
  499. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
  500. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
  501. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
  502. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
  503. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
  504. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
  505. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
  506. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
  507. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
  508. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
  509. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
  510. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
  511. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
  512. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
  513. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
  514. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
  515. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
  516. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
  517. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
  518. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
  519. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
  520. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
  521. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
  522. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
  523. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
  524. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
  525. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
  526. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
  527. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
  528. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
  529. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
  530. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
  531. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
  532. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
  533. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
  534. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
  535. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/monitoring/shap.py +0 -0
  536. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/registry/__init__.py +0 -0
  537. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/registry/_manager/model_manager.py +0 -0
  538. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/utils/connection_params.py +0 -0
  539. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/utils/html_utils.py +0 -0
  540. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/utils/sparse.py +0 -0
  541. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/utils/sql_client.py +0 -0
  542. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake/ml/utils/stage_file.py +0 -0
  543. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake_ml_python.egg-info/SOURCES.txt +0 -0
  544. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
  545. {snowflake_ml_python-1.45.0 → snowflake_ml_python-1.47.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,55 @@
1
1
  # Release History
2
2
 
3
- ## 1.45.0
3
+ ## 1.47.0
4
+
5
+ ### New Features
6
+
7
+ * Experiment Tracking: Added `ExperimentTracking.list_model_versions` to retrieve the model versions that were
8
+ logged under a run. Models logged via `log_model` inside a run are linked to that run through Snowflake lineage,
9
+ and this method traverses that lineage to return the corresponding `ModelVersion` objects.
10
+
11
+ ```python
12
+ from snowflake.ml.experiment import ExperimentTracking
13
+
14
+ exp = ExperimentTracking(session)
15
+ exp.set_experiment("MY_EXPERIMENT")
16
+ with exp.start_run(run_name="MY_RUN"):
17
+ exp.log_model(model, model_name="MY_MODEL", sample_input_data=X)
18
+
19
+ model_versions = exp.list_model_versions(run_name="MY_RUN")
20
+ ```
21
+
22
+ ### Bug Fixes
23
+
24
+ * Experiment Tracking: Fix a bug where `.set_experiment` does not recreate an experiment deleted in Snowsight
25
+
26
+ ### Behavior Changes
27
+
28
+ * Registry: `enable_explainability` now defaults to `False` for all model types when logging a model. Previously it
29
+ defaulted to `True` for XGBoost, LightGBM, and CatBoost models and was auto-enabled for supported scikit-learn and
30
+ Snowpark ML modeling models when running in the Warehouse. To generate an `explain` method, explicitly pass
31
+ `options={"enable_explainability": True}` to `log_model` (this requires `sample_input_data` for supported model
32
+ types).
33
+
34
+ ### Deprecations
35
+
36
+ ## 1.46.0 (2026-07-07)
37
+
38
+ ### New Features
39
+
40
+ ### Bug Fixes
41
+
42
+ ### Behavior Changes
43
+
44
+ * Registry: For Snowpark ML Pipeline models with explainability enabled, explanations now cover only the columns the
45
+ final estimator was actually trained on (its `input_cols`). Untransformed passthrough columns (e.g. raw string
46
+ columns left in place by an encoder using new `output_cols`, or the label column) are no longer included in the
47
+ explain output. This also fixes a failure where such passthrough columns could reach the SHAP explainer and raise an
48
+ error during `log_model(..., enable_explainability=True)`.
49
+
50
+ ### Deprecations
51
+
52
+ ## 1.45.0 (2026-07-01)
4
53
 
5
54
  ### New Features
6
55
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: snowflake-ml-python
3
- Version: 1.45.0
3
+ Version: 1.47.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,7 +250,7 @@ Requires-Dist: pyjwt<3,>=2.0.0
250
250
  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
- Requires-Dist: scikit-learn<1.8
253
+ Requires-Dist: scikit-learn<1.9
254
254
  Requires-Dist: scipy<2,>=1.9
255
255
  Requires-Dist: shap<1,>=0.46.0
256
256
  Requires-Dist: snowflake-connector-python[pandas]<5,>=3.17.3
@@ -416,7 +416,56 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
416
416
 
417
417
  # Release History
418
418
 
419
- ## 1.45.0
419
+ ## 1.47.0
420
+
421
+ ### New Features
422
+
423
+ * Experiment Tracking: Added `ExperimentTracking.list_model_versions` to retrieve the model versions that were
424
+ logged under a run. Models logged via `log_model` inside a run are linked to that run through Snowflake lineage,
425
+ and this method traverses that lineage to return the corresponding `ModelVersion` objects.
426
+
427
+ ```python
428
+ from snowflake.ml.experiment import ExperimentTracking
429
+
430
+ exp = ExperimentTracking(session)
431
+ exp.set_experiment("MY_EXPERIMENT")
432
+ with exp.start_run(run_name="MY_RUN"):
433
+ exp.log_model(model, model_name="MY_MODEL", sample_input_data=X)
434
+
435
+ model_versions = exp.list_model_versions(run_name="MY_RUN")
436
+ ```
437
+
438
+ ### Bug Fixes
439
+
440
+ * Experiment Tracking: Fix a bug where `.set_experiment` does not recreate an experiment deleted in Snowsight
441
+
442
+ ### Behavior Changes
443
+
444
+ * Registry: `enable_explainability` now defaults to `False` for all model types when logging a model. Previously it
445
+ defaulted to `True` for XGBoost, LightGBM, and CatBoost models and was auto-enabled for supported scikit-learn and
446
+ Snowpark ML modeling models when running in the Warehouse. To generate an `explain` method, explicitly pass
447
+ `options={"enable_explainability": True}` to `log_model` (this requires `sample_input_data` for supported model
448
+ types).
449
+
450
+ ### Deprecations
451
+
452
+ ## 1.46.0 (2026-07-07)
453
+
454
+ ### New Features
455
+
456
+ ### Bug Fixes
457
+
458
+ ### Behavior Changes
459
+
460
+ * Registry: For Snowpark ML Pipeline models with explainability enabled, explanations now cover only the columns the
461
+ final estimator was actually trained on (its `input_cols`). Untransformed passthrough columns (e.g. raw string
462
+ columns left in place by an encoder using new `output_cols`, or the label column) are no longer included in the
463
+ explain output. This also fixes a failure where such passthrough columns could reach the SHAP explainer and raise an
464
+ error during `log_model(..., enable_explainability=True)`.
465
+
466
+ ### Deprecations
467
+
468
+ ## 1.45.0 (2026-07-01)
420
469
 
421
470
  ### New Features
422
471
 
@@ -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.14"
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", "h2>=4.3.0,<5", "importlib_resources>=6.1.1, <7", "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", "scikit-learn<1.8", "scipy>=1.9,<2", "shap>=0.46.0,<1", "snowflake-connector-python[pandas]>=3.17.3,<5", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "sqlparse>=0.4,<1", "tqdm<5", "typing-extensions>=4.1.0,<5", "xgboost<4",]
11
+ dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0", "cryptography", "fsspec[http]>=2024.6.1,<2026", "h2>=4.3.0,<5", "importlib_resources>=6.1.1, <7", "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", "scikit-learn<1.9", "scipy>=1.9,<2", "shap>=0.46.0,<1", "snowflake-connector-python[pandas]>=3.17.3,<5", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "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,7 @@
1
+ # Annotations are lazy so ``types.PrivateKeyTypes`` (added in cryptography 40.0, replacing the
2
+ # now-removed ``PRIVATE_KEY_TYPES``) is never evaluated at runtime and stays version-tolerant.
3
+ from __future__ import annotations
4
+
1
5
  import base64
2
6
  import hashlib
3
7
  import logging
@@ -30,7 +34,7 @@ class JWTGenerator:
30
34
  self,
31
35
  account: str,
32
36
  user: str,
33
- private_key: types.PRIVATE_KEY_TYPES,
37
+ private_key: types.PrivateKeyTypes,
34
38
  lifetime: Optional[timedelta] = None,
35
39
  renewal_delay: Optional[timedelta] = None,
36
40
  ) -> None:
@@ -125,7 +129,7 @@ class JWTGenerator:
125
129
  return token
126
130
 
127
131
  @staticmethod
128
- def _calculate_public_key_fingerprint(private_key: types.PRIVATE_KEY_TYPES) -> str:
132
+ def _calculate_public_key_fingerprint(private_key: types.PrivateKeyTypes) -> str:
129
133
  # Get the raw bytes of public key.
130
134
  public_key_raw = private_key.public_key().public_bytes(
131
135
  serialization.Encoding.DER, serialization.PublicFormat.SubjectPublicKeyInfo
@@ -24,6 +24,7 @@ from snowflake.ml.experiment._client import (
24
24
  experiment_tracking_sql_client as sql_client,
25
25
  )
26
26
  from snowflake.ml.experiment._entities import run_metadata
27
+ from snowflake.ml.lineage import lineage_node
27
28
  from snowflake.ml.model import type_hints
28
29
  from snowflake.ml.utils import sql_client as sql_client_utils
29
30
 
@@ -196,21 +197,22 @@ class ExperimentTracking:
196
197
  schema_name = sql_identifier.SqlIdentifier(schema_name) if schema_name is not None else self._schema_name
197
198
 
198
199
  experiment_name = sql_identifier.SqlIdentifier(experiment_name)
199
- if (
200
+ if not (
200
201
  self._experiment
201
202
  and self._experiment.name == experiment_name
202
203
  and self._database_name == database_name
203
204
  and self._schema_name == schema_name
204
205
  ):
205
- return self._experiment
206
+ # If the requested experiment differs from the current one, switch context (and drop any active run)
207
+ self._update_database_and_schema(database_name, schema_name)
208
+ self._experiment = entities.Experiment(experiment_name=experiment_name)
209
+ self._unset_run()
206
210
 
207
- self._update_database_and_schema(database_name, schema_name)
211
+ # Always attempt to create idempotently so an experiment that was deleted (e.g. via the UI) is restored.
208
212
  self._sql_client.create_experiment(
209
213
  experiment_name=experiment_name,
210
214
  creation_mode=sql_client_utils.CreationMode(if_not_exists=True),
211
215
  )
212
- self._experiment = entities.Experiment(experiment_name=experiment_name)
213
- self._unset_run()
214
216
  return self._experiment
215
217
 
216
218
  def delete_experiment(
@@ -267,6 +269,44 @@ class ExperimentTracking:
267
269
  with experiment_info.ExperimentInfoPatcher(experiment_info=run._get_experiment_info()):
268
270
  return self._registry.log_model(model, model_name=model_name, **kwargs)
269
271
 
272
+ def list_model_versions(self, run_name: Optional[str] = None) -> list[ml_model.ModelVersion]:
273
+ """
274
+ List the model versions that were logged under a run.
275
+
276
+ Models logged via ``log_model`` inside a run are linked to that run through Snowflake lineage. This method
277
+ traverses that lineage to return the corresponding model versions.
278
+
279
+ Args:
280
+ run_name: The name of the run to list model versions from. If None, uses the currently active run.
281
+
282
+ Returns:
283
+ A list of ModelVersion objects that were logged under the run.
284
+
285
+ Raises:
286
+ RuntimeError: If no experiment is set, or if no run_name is provided and no run is active.
287
+ """
288
+ if not self._experiment:
289
+ raise RuntimeError("No experiment set. Please set an experiment before listing model versions.")
290
+
291
+ if run_name:
292
+ resolved_run_name = sql_identifier.SqlIdentifier(run_name)
293
+ elif self._run:
294
+ resolved_run_name = self._run.name
295
+ else:
296
+ raise RuntimeError("No run is active. Please provide a run_name or start a run.")
297
+
298
+ experiment_fqn = self._sql_client.fully_qualified_object_name(
299
+ self._database_name, self._schema_name, self._experiment.name
300
+ )
301
+ run_node = lineage_node.LineageNode(
302
+ session=self._session,
303
+ name=experiment_fqn,
304
+ domain="experiment",
305
+ version=resolved_run_name.identifier(),
306
+ )
307
+ logged_models = run_node.lineage(direction="downstream", domain_filter={"model"})
308
+ return [model for model in logged_models if isinstance(model, ml_model.ModelVersion)]
309
+
270
310
  def start_run(
271
311
  self,
272
312
  run_name: Optional[str] = None,
@@ -19,6 +19,11 @@ from snowflake.ml.feature_store.interval_utils import ( # noqa: F401 - re-expor
19
19
  parse_interval as parse_interval,
20
20
  )
21
21
 
22
+ # Product-wide upper bound on ``n`` for the ordered-N list aggregations
23
+ # (last_n / first_n / last_distinct_n / first_distinct_n). Enforced at authoring
24
+ # time so users get a clear error, and matched by the engine's own bound.
25
+ _MAX_ORDERED_N = 100
26
+
22
27
 
23
28
  class AggregationType(Enum):
24
29
  """Supported aggregation functions for tiled feature views.
@@ -161,6 +166,11 @@ class AggregationSpec:
161
166
  raise ValueError(
162
167
  f"Parameter 'n' must be a positive integer for aggregation " f"'{self.output_column}', got: {n}"
163
168
  )
169
+ if n > _MAX_ORDERED_N:
170
+ raise ValueError(
171
+ f"Parameter 'n' must be between 1 and {_MAX_ORDERED_N} for "
172
+ f"{self.function.value} aggregation '{self.output_column}', got: {n}"
173
+ )
164
174
 
165
175
  # Validate params for approx_percentile
166
176
  if self.function == AggregationType.APPROX_PERCENTILE:
@@ -730,6 +730,26 @@ def _resolve_fg_output_columns(fg: FeatureGroup) -> list[str]:
730
730
  return cols
731
731
 
732
732
 
733
+ def _normalize_join_key_datatype(datatype: Any) -> Any:
734
+ """Collapse ``StringType`` VARCHAR length so join keys compare by logical type.
735
+
736
+ A shared string join key can surface with different VARCHAR lengths across
737
+ sources -- e.g. a tiled FeatureView exposes the unbounded ``StringType()``
738
+ default while a batch FeatureView read back through its materialized dynamic
739
+ table reports a length narrowed to its stored data. The length is irrelevant
740
+ to join semantics and to the response schema, so all ``StringType`` variants
741
+ normalize to the unbounded ``StringType()``. Other datatypes pass through
742
+ unchanged.
743
+
744
+ Args:
745
+ datatype: A Snowpark datatype from a source's join-key column.
746
+
747
+ Returns:
748
+ ``StringType()`` for any ``StringType`` input; ``datatype`` otherwise.
749
+ """
750
+ return StringType() if isinstance(datatype, StringType) else datatype
751
+
752
+
733
753
  def _fg_join_key_field_types(fg: FeatureGroup, *, strict: bool = False) -> dict[str, Any]:
734
754
  """Resolve ``{join_key -> Snowpark datatype}`` across every source FV.
735
755
 
@@ -787,6 +807,7 @@ def _fg_join_key_field_types(fg: FeatureGroup, *, strict: bool = False) -> dict[
787
807
  else:
788
808
  iterator = ((f.name, f.datatype) for f in fv.output_schema.fields if f.name in pk)
789
809
  for name, datatype in iterator:
810
+ datatype = _normalize_join_key_datatype(datatype)
790
811
  previous = type_by_name.get(name)
791
812
  if previous is None:
792
813
  type_by_name[name] = datatype