snowflake-ml-python 2.3.0__tar.gz → 2.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/CHANGELOG.md +66 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/PKG-INFO +73 -6
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/README.md +1 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/pyproject.toml +3 -3
- snowflake_ml_python-2.5.0/snowflake/cortex/_classify_text.py +93 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_complete.py +41 -9
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_embed_text_1024.py +11 -5
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_embed_text_768.py +11 -5
- snowflake_ml_python-2.5.0/snowflake/cortex/_extract_answer.py +85 -0
- snowflake_ml_python-2.5.0/snowflake/cortex/_sentiment.py +78 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_summarize.py +11 -5
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_translate.py +11 -5
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_util.py +35 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/env_utils.py +6 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/file_utils.py +18 -1
- snowflake_ml_python-2.5.0/snowflake/ml/experiment/_entities/run.py +128 -0
- snowflake_ml_python-2.5.0/snowflake/ml/experiment/callback/catboost.py +75 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/experiment_tracking.py +19 -17
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/feature_store.py +55 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/job.py +42 -12
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/lineage/lineage_node.py +9 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model/batch_inference_job_specs.py +81 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model/batch_inference_task.py +24 -6
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model/model_version_impl.py +115 -22
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/ops/model_ops.py +12 -19
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/ops/service_ops.py +8 -6
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/service/inference_job_service_spec.py +1 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +53 -33
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/sql/model.py +17 -51
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +3 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +2 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +5 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/core.py +9 -4
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/model_signature.py +85 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/model_specifications.py +10 -4
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/optional_dependency.py +6 -30
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -2
- {snowflake_ml_python-2.3.0/snowflake/ml/modeling/compose → snowflake_ml_python-2.5.0/snowflake/ml/modeling/calibration}/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +2 -1
- {snowflake_ml_python-2.3.0/snowflake/ml/modeling/calibration → snowflake_ml_python-2.5.0/snowflake/ml/modeling/cluster}/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/birch.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/dbscan.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/k_means.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/mean_shift.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/optics.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +2 -1
- {snowflake_ml_python-2.3.0/snowflake/ml/modeling/covariance → snowflake_ml_python-2.5.0/snowflake/ml/modeling/compose}/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/compose/column_transformer.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +2 -1
- {snowflake_ml_python-2.3.0/snowflake/ml/modeling/cluster → snowflake_ml_python-2.5.0/snowflake/ml/modeling/covariance}/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/min_cov_det.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/oas.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/decomposition/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/fast_ica.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/pca.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/discriminant_analysis/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/ensemble/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/feature_selection/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/gaussian_process/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/impute/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/impute/iterative_imputer.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/impute/knn_imputer.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/impute/missing_indicator.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/kernel_approximation/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/kernel_ridge/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/lightgbm/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/linear_model/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/ard_regression.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/elastic_net.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/lars.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/lars_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/lasso.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/linear_regression.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/perceptron.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/ridge.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/manifold/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/manifold/isomap.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/manifold/mds.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/manifold/tsne.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/metrics/__init__.py +2 -3
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/metrics/classification.py +1 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/metrics/metrics_utils.py +6 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/metrics/ranking.py +3 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/metrics/regression.py +3 -0
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/mixture/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/model_selection/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +2 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +2 -0
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/multiclass/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/naive_bayes/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/neighbors/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/kernel_density.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/neural_network/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/pipeline/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/pipeline/pipeline.py +6 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/__init__.py +1 -2
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/semi_supervised/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/svm/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/svm/linear_svc.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/svm/linear_svr.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/svm/nu_svc.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/svm/nu_svr.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/svm/svc.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/svm/svr.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/tree/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +2 -1
- snowflake_ml_python-2.5.0/snowflake/ml/modeling/xgboost/__init__.py +15 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +2 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/registry/_manager/model_manager.py +0 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +7 -7
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/version.py +1 -1
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake_ml_python.egg-info/PKG-INFO +73 -6
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake_ml_python.egg-info/SOURCES.txt +1 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake_ml_python.egg-info/requires.txt +2 -2
- snowflake_ml_python-2.3.0/snowflake/cortex/_classify_text.py +0 -47
- snowflake_ml_python-2.3.0/snowflake/cortex/_extract_answer.py +0 -43
- snowflake_ml_python-2.3.0/snowflake/cortex/_sentiment.py +0 -38
- snowflake_ml_python-2.3.0/snowflake/ml/experiment/_entities/run.py +0 -67
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/decomposition/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/ensemble/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/feature_selection/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/gaussian_process/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/lightgbm/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/linear_model/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/manifold/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/mixture/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/multiclass/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/naive_bayes/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/neighbors/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/neural_network/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/semi_supervised/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/svm/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/tree/__init__.py +0 -16
- snowflake_ml_python-2.3.0/snowflake/ml/modeling/xgboost/__init__.py +0 -16
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/LICENSE.txt +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/setup.cfg +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_finetune.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_sse_client.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/env.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/init_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/platform_capabilities.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/telemetry.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/type_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/result.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/tee.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/_internal/utils/url.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/data/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/data/data_connector.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/data/data_ingestor.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/data/data_source.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/data/ingestor_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/data/torch_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/dataset/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/dataset/dataset.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_logging/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_logging/experiment_logger.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_logging/experiment_logging_context.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/_source_info.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/callback/keras.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/experiment/utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/_compute_fn_validation.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/access_manager.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/aggregation.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/entity.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/feature.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/feature_group.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/feature_view.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/feature_view_append_only_validation.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/feature_view_refresh_freq.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/interval_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/metadata_manager.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/online_service.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/online_service_http_client.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/realtime_config.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/realtime_dataset.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/realtime_dataset_udf.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/realtime_registration.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/request_source.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/spec/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/spec/builder.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/spec/enums.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/spec/models.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/spec/table_schema_evolution.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/stream_config.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/stream_source.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/streaming_registration.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/feature_store/tile_sql_generator.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/fileset/fileset.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/fileset/sfcfs.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/fileset/snowfs.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/fileset/stage_fs.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/results.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/arg_protocol.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/payload_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/startup.sh +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/_utils/type_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/decorators.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/job_definition.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/jobs/manager.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/lineage/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model/_loaded_model_telemetry.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model/telemetry_params.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model_spec/legacy_model_spec.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model_spec/model_extension_spec.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model_spec/model_extension_spec_schema.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model_spec/model_spec.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/model_spec/model_spec_parser.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/ops/deployment_step.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/ops/live_commit_naming.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/ops/param_ops.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/ops/param_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/service/import_model_spec_schema.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/sql/service.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/huggingface_lazy_uploader.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/infer_function_init_once.py_template +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned_init_once.py_template +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function_init_once.py_template +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_default.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_openai_chat_wrapper.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_task_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_text_to_text.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/automatic_speech_recognition.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/conversational.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/document_question_answering.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/fill_mask.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_feature_extraction.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_text_to_text.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_to_text.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/object_detection.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/question_answering.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/summarization.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/table_question_answering.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text2text_generation.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_generation.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/token_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/translation.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_text_to_text.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/visual_question_answering.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_audio_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_image_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_object_detection.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_text_classification.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/peft_adapter.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_meta/model_sample_input_data.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_save_options.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/_signatures/utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/batch_inference/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/code_path.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/compute_pool.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/custom_model.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/event_handler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/inference_engine.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/models/huggingface.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/openai_signatures.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/target_platform.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/task.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/type_hints.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/model/volatility.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/framework/base.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/monitoring/shap.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/registry/__init__.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/registry/registry.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/utils/authentication.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/utils/html_utils.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/utils/sparse.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/utils/sql_client.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/ml/utils/stage_file.py +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
- {snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,66 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
-
## 2.
|
|
3
|
+
## 2.5.0
|
|
4
|
+
|
|
5
|
+
### New Features
|
|
6
|
+
|
|
7
|
+
### Bug Fixes
|
|
8
|
+
|
|
9
|
+
* Modeling: The `snowflake.ml.modeling` estimators and preprocessing transformers are not deprecated.
|
|
10
|
+
The `DeprecationWarning` emitted when importing a `snowflake.ml.modeling` subpackage, announced in
|
|
11
|
+
2.0.0, has been removed.
|
|
12
|
+
* ML Jobs: `MLJob.get_logs(verbose=False)` no longer returns container startup and shutdown logs when other log
|
|
13
|
+
lines land between the lines of the job start or end banner.
|
|
14
|
+
* Dependencies: Raised the `fsspec` requirement ceiling from `<2026` to `<2027` so `fsspec`
|
|
15
|
+
2026.6.0, which fixes CVE-2026-104851, can be installed.
|
|
16
|
+
|
|
17
|
+
### Behavior Changes
|
|
18
|
+
|
|
19
|
+
### Deprecations
|
|
20
|
+
|
|
21
|
+
## 2.4.0 (2026-10-06)
|
|
22
|
+
|
|
23
|
+
### New Features
|
|
24
|
+
|
|
25
|
+
* Generic: Support Python 3.14.
|
|
26
|
+
|
|
27
|
+
* Registry: `create_service` now accepts `FeatureGroup` objects in `feature_sources_per_function`
|
|
28
|
+
alongside `FeatureView`s. Snowflake resolves the `FeatureGroup`'s online feature tables at
|
|
29
|
+
deploy time, so callers no longer need to enumerate the underlying feature views manually.
|
|
30
|
+
|
|
31
|
+
* Registry: `FeatureSpec(dtype=DataType.OBJECT)` now accepts schema-free Python dictionaries as a
|
|
32
|
+
model input or output (SQL `OBJECT`). Callers can pass a dict to `ModelVersion.run`, an object
|
|
33
|
+
literal in SQL, or a JSON object over REST, without stringifying to JSON. Use `shape=(-1,)` for
|
|
34
|
+
a list of dictionaries (`ARRAY(OBJECT)`). Closed structs with a fixed field list remain
|
|
35
|
+
`FeatureGroupSpec`.
|
|
36
|
+
|
|
37
|
+
* Experiment Tracking: Added `snowflake.ml.experiment.callback.catboost.SnowflakeCatboostCallback`, a
|
|
38
|
+
CatBoost training callback that logs metrics and, optionally, parameters to a Snowflake experiment.
|
|
39
|
+
Pass `params=model.get_params()` to log parameters. Model logging is handled separately after
|
|
40
|
+
training via ``ExperimentTracking.log_model``.
|
|
41
|
+
|
|
42
|
+
* Experiment Tracking: `ExperimentTracking` accepts an optional `warnings_as_errors` parameter. When True,
|
|
43
|
+
conditions that are normally reported as warnings are raised instead.
|
|
44
|
+
|
|
45
|
+
* Experiment Tracking: Experiment runs now appear as first-class objects in lineage. Calling
|
|
46
|
+
`model_version.lineage(direction="upstream", domain_filter={"experiment"})` returns `Run` instances
|
|
47
|
+
with `database_name`, `schema_name`, `experiment_name`, and `name` properties that can be passed straight back
|
|
48
|
+
into experiment tracking.
|
|
49
|
+
|
|
50
|
+
### Bug Fixes
|
|
51
|
+
|
|
52
|
+
### Behavior Changes
|
|
53
|
+
|
|
54
|
+
* Experiment Tracking: Re-constructing the `ExperimentTracking` singleton now logs an informational
|
|
55
|
+
message instead of emitting a `UserWarning`.
|
|
56
|
+
|
|
57
|
+
* Registry: `log_model` no longer raises when `options={'relax_version': True}` is used with pip
|
|
58
|
+
requirements or Snowpark Container Services-only targets. The option is ignored, a warning is
|
|
59
|
+
emitted, and exact pip version specifications are kept.
|
|
60
|
+
|
|
61
|
+
### Deprecations
|
|
62
|
+
|
|
63
|
+
## 2.3.0 (2026-09-28)
|
|
4
64
|
|
|
5
65
|
### New Features
|
|
6
66
|
|
|
@@ -16,6 +76,11 @@
|
|
|
16
76
|
|
|
17
77
|
### Behavior Changes
|
|
18
78
|
|
|
79
|
+
* Feature Store: `update_feature_view()` now rejects a `target_lag` change on a feature view whose online store
|
|
80
|
+
is `POSTGRES`, instead of reporting success for a change that is not applied. Set `target_lag` when online
|
|
81
|
+
storage is first enabled, or delete and re-register the feature view to change it. Enabling or disabling
|
|
82
|
+
online storage, and `target_lag` changes on hybrid-table online stores, are unaffected.
|
|
83
|
+
|
|
19
84
|
### Deprecations
|
|
20
85
|
|
|
21
86
|
## 2.2.0 (2026-09-21)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowflake-ml-python
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.5.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:
|
|
@@ -223,19 +223,21 @@ Classifier: Operating System :: OS Independent
|
|
|
223
223
|
Classifier: Programming Language :: Python :: 3.10
|
|
224
224
|
Classifier: Programming Language :: Python :: 3.11
|
|
225
225
|
Classifier: Programming Language :: Python :: 3.12
|
|
226
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
227
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
226
228
|
Classifier: Topic :: Database
|
|
227
229
|
Classifier: Topic :: Software Development
|
|
228
230
|
Classifier: Topic :: Software Development :: Libraries
|
|
229
231
|
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
|
|
230
232
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
231
233
|
Classifier: Topic :: Scientific/Engineering :: Information Analysis
|
|
232
|
-
Requires-Python: <3.
|
|
234
|
+
Requires-Python: <3.15,>=3.10
|
|
233
235
|
Description-Content-Type: text/markdown
|
|
234
236
|
License-File: LICENSE.txt
|
|
235
237
|
Requires-Dist: anyio<5,>=3.5.0
|
|
236
238
|
Requires-Dist: cachetools>=3.1.1
|
|
237
239
|
Requires-Dist: cloudpickle>=2.0.0
|
|
238
|
-
Requires-Dist: fsspec[http]<
|
|
240
|
+
Requires-Dist: fsspec[http]<2027,>=2024.6.1
|
|
239
241
|
Requires-Dist: importlib_resources<7,>=6.1.1
|
|
240
242
|
Requires-Dist: jinja2<4,>=3.1.0
|
|
241
243
|
Requires-Dist: numpy<3,>=1.23
|
|
@@ -249,7 +251,7 @@ Requires-Dist: pytimeparse<2,>=1.1.8
|
|
|
249
251
|
Requires-Dist: pyyaml<7,>=6.0
|
|
250
252
|
Requires-Dist: retrying<2,>=1.3.3
|
|
251
253
|
Requires-Dist: snowflake-connector-python[pandas]<5,>=3.17.3
|
|
252
|
-
Requires-Dist: snowflake-snowpark-python<2,>=1.
|
|
254
|
+
Requires-Dist: snowflake-snowpark-python<2,>=1.43.0
|
|
253
255
|
Requires-Dist: sqlparse<1,>=0.4
|
|
254
256
|
Requires-Dist: tqdm<5
|
|
255
257
|
Requires-Dist: typing-extensions<5,>=4.1.0
|
|
@@ -378,7 +380,7 @@ In Snowflake Warehouse notebook environments, snowflake-ml-python can be install
|
|
|
378
380
|
Follow the [installation instructions](https://docs.snowflake.com/en/developer-guide/snowpark-ml/index#installing-snowpark-ml)
|
|
379
381
|
in the Snowflake documentation.
|
|
380
382
|
|
|
381
|
-
Python versions 3.10 to 3.
|
|
383
|
+
Python versions 3.10 to 3.14 are supported. You can use [miniconda](https://docs.conda.io/en/latest/miniconda.html) or
|
|
382
384
|
[anaconda](https://www.anaconda.com/) to create a Conda environment (recommended),
|
|
383
385
|
or [virtualenv](https://docs.python.org/3/tutorial/venv.html) to create a virtual environment.
|
|
384
386
|
|
|
@@ -424,7 +426,67 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
424
426
|
|
|
425
427
|
# Release History
|
|
426
428
|
|
|
427
|
-
## 2.
|
|
429
|
+
## 2.5.0
|
|
430
|
+
|
|
431
|
+
### New Features
|
|
432
|
+
|
|
433
|
+
### Bug Fixes
|
|
434
|
+
|
|
435
|
+
* Modeling: The `snowflake.ml.modeling` estimators and preprocessing transformers are not deprecated.
|
|
436
|
+
The `DeprecationWarning` emitted when importing a `snowflake.ml.modeling` subpackage, announced in
|
|
437
|
+
2.0.0, has been removed.
|
|
438
|
+
* ML Jobs: `MLJob.get_logs(verbose=False)` no longer returns container startup and shutdown logs when other log
|
|
439
|
+
lines land between the lines of the job start or end banner.
|
|
440
|
+
* Dependencies: Raised the `fsspec` requirement ceiling from `<2026` to `<2027` so `fsspec`
|
|
441
|
+
2026.6.0, which fixes CVE-2026-104851, can be installed.
|
|
442
|
+
|
|
443
|
+
### Behavior Changes
|
|
444
|
+
|
|
445
|
+
### Deprecations
|
|
446
|
+
|
|
447
|
+
## 2.4.0 (2026-10-06)
|
|
448
|
+
|
|
449
|
+
### New Features
|
|
450
|
+
|
|
451
|
+
* Generic: Support Python 3.14.
|
|
452
|
+
|
|
453
|
+
* Registry: `create_service` now accepts `FeatureGroup` objects in `feature_sources_per_function`
|
|
454
|
+
alongside `FeatureView`s. Snowflake resolves the `FeatureGroup`'s online feature tables at
|
|
455
|
+
deploy time, so callers no longer need to enumerate the underlying feature views manually.
|
|
456
|
+
|
|
457
|
+
* Registry: `FeatureSpec(dtype=DataType.OBJECT)` now accepts schema-free Python dictionaries as a
|
|
458
|
+
model input or output (SQL `OBJECT`). Callers can pass a dict to `ModelVersion.run`, an object
|
|
459
|
+
literal in SQL, or a JSON object over REST, without stringifying to JSON. Use `shape=(-1,)` for
|
|
460
|
+
a list of dictionaries (`ARRAY(OBJECT)`). Closed structs with a fixed field list remain
|
|
461
|
+
`FeatureGroupSpec`.
|
|
462
|
+
|
|
463
|
+
* Experiment Tracking: Added `snowflake.ml.experiment.callback.catboost.SnowflakeCatboostCallback`, a
|
|
464
|
+
CatBoost training callback that logs metrics and, optionally, parameters to a Snowflake experiment.
|
|
465
|
+
Pass `params=model.get_params()` to log parameters. Model logging is handled separately after
|
|
466
|
+
training via ``ExperimentTracking.log_model``.
|
|
467
|
+
|
|
468
|
+
* Experiment Tracking: `ExperimentTracking` accepts an optional `warnings_as_errors` parameter. When True,
|
|
469
|
+
conditions that are normally reported as warnings are raised instead.
|
|
470
|
+
|
|
471
|
+
* Experiment Tracking: Experiment runs now appear as first-class objects in lineage. Calling
|
|
472
|
+
`model_version.lineage(direction="upstream", domain_filter={"experiment"})` returns `Run` instances
|
|
473
|
+
with `database_name`, `schema_name`, `experiment_name`, and `name` properties that can be passed straight back
|
|
474
|
+
into experiment tracking.
|
|
475
|
+
|
|
476
|
+
### Bug Fixes
|
|
477
|
+
|
|
478
|
+
### Behavior Changes
|
|
479
|
+
|
|
480
|
+
* Experiment Tracking: Re-constructing the `ExperimentTracking` singleton now logs an informational
|
|
481
|
+
message instead of emitting a `UserWarning`.
|
|
482
|
+
|
|
483
|
+
* Registry: `log_model` no longer raises when `options={'relax_version': True}` is used with pip
|
|
484
|
+
requirements or Snowpark Container Services-only targets. The option is ignored, a warning is
|
|
485
|
+
emitted, and exact pip version specifications are kept.
|
|
486
|
+
|
|
487
|
+
### Deprecations
|
|
488
|
+
|
|
489
|
+
## 2.3.0 (2026-09-28)
|
|
428
490
|
|
|
429
491
|
### New Features
|
|
430
492
|
|
|
@@ -440,6 +502,11 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
|
|
|
440
502
|
|
|
441
503
|
### Behavior Changes
|
|
442
504
|
|
|
505
|
+
* Feature Store: `update_feature_view()` now rejects a `target_lag` change on a feature view whose online store
|
|
506
|
+
is `POSTGRES`, instead of reporting success for a change that is not applied. Set `target_lag` when online
|
|
507
|
+
storage is first enabled, or delete and re-register the feature view to change it. Enabling or disabling
|
|
508
|
+
online storage, and `target_lag` changes on hybrid-table online stores, are unaffected.
|
|
509
|
+
|
|
443
510
|
### Deprecations
|
|
444
511
|
|
|
445
512
|
## 2.2.0 (2026-09-21)
|
|
@@ -57,7 +57,7 @@ In Snowflake Warehouse notebook environments, snowflake-ml-python can be install
|
|
|
57
57
|
Follow the [installation instructions](https://docs.snowflake.com/en/developer-guide/snowpark-ml/index#installing-snowpark-ml)
|
|
58
58
|
in the Snowflake documentation.
|
|
59
59
|
|
|
60
|
-
Python versions 3.10 to 3.
|
|
60
|
+
Python versions 3.10 to 3.14 are supported. You can use [miniconda](https://docs.conda.io/en/latest/miniconda.html) or
|
|
61
61
|
[anaconda](https://www.anaconda.com/) to create a Conda environment (recommended),
|
|
62
62
|
or [virtualenv](https://docs.python.org/3/tutorial/venv.html) to create a virtual environment.
|
|
63
63
|
|
|
@@ -5,10 +5,10 @@ build-backend = "setuptools.build_meta"
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "snowflake-ml-python"
|
|
7
7
|
description = "The machine learning client library that is used for interacting with Snowflake to build machine learning solutions."
|
|
8
|
-
classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Other Environment", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Database", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Scientific/Engineering :: Information Analysis",]
|
|
9
|
-
requires-python = ">=3.10, <3.
|
|
8
|
+
classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Other Environment", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Topic :: Database", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Scientific/Engineering :: Information Analysis",]
|
|
9
|
+
requires-python = ">=3.10, <3.15"
|
|
10
10
|
dynamic = [ "version", "readme",]
|
|
11
|
-
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1", "cloudpickle>=2.0.0", "fsspec[http]>=2024.6.1,<
|
|
11
|
+
dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1", "cloudpickle>=2.0.0", "fsspec[http]>=2024.6.1,<2027", "importlib_resources>=6.1.1, <7", "jinja2>=3.1.0,<4", "numpy>=1.23,<3", "packaging>=20.9,<26", "pandas>=2.1.4,<3", "platformdirs<5", "pyarrow", "pydantic>=2.8.2, <3", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "snowflake-connector-python[pandas]>=3.17.3,<5", "snowflake-snowpark-python>=1.43.0,<2", "sqlparse>=0.4,<1", "tqdm<5", "typing-extensions>=4.1.0,<5",]
|
|
12
12
|
[[project.authors]]
|
|
13
13
|
name = "Snowflake, Inc"
|
|
14
14
|
email = "support@snowflake.com"
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import json
|
|
2
|
+
from typing import Any, cast
|
|
3
|
+
|
|
4
|
+
from typing_extensions import deprecated
|
|
5
|
+
|
|
6
|
+
from snowflake import snowpark
|
|
7
|
+
from snowflake.cortex._util import (
|
|
8
|
+
CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
9
|
+
call_sql_function,
|
|
10
|
+
warn_cortex_deprecated,
|
|
11
|
+
)
|
|
12
|
+
from snowflake.ml._internal import telemetry
|
|
13
|
+
from snowflake.snowpark import functions
|
|
14
|
+
|
|
15
|
+
_AI_CLASSIFY_FUNCTION_NAME = "AI_CLASSIFY"
|
|
16
|
+
# Legacy CLASSIFY_TEXT always returned exactly one label. AI_CLASSIFY defaults to single-label mode, but
|
|
17
|
+
# we set output_mode explicitly so the single-label contract can't drift and multi-label results can
|
|
18
|
+
# never leak through.
|
|
19
|
+
_AI_CLASSIFY_SINGLE_LABEL_CONFIG = {"output_mode": "single"}
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def _adapt_ai_classify_result(result: Any) -> str:
|
|
23
|
+
"""Map an AI_CLASSIFY result to the legacy CLASSIFY_TEXT {"label": ...} JSON string."""
|
|
24
|
+
# Legacy classify_text returned the raw CLASSIFY_TEXT OBJECT, which the immediate (non-Column) path
|
|
25
|
+
# collects as a JSON string such as '{"label": "positive"}'. We reproduce that exact shape so
|
|
26
|
+
# existing callers that json.loads the result and read ["label"] keep working.
|
|
27
|
+
parsed: Any = result
|
|
28
|
+
if isinstance(result, str):
|
|
29
|
+
try:
|
|
30
|
+
parsed = json.loads(result)
|
|
31
|
+
except json.JSONDecodeError:
|
|
32
|
+
return result
|
|
33
|
+
label: Any = None
|
|
34
|
+
if isinstance(parsed, dict):
|
|
35
|
+
labels = parsed.get("labels")
|
|
36
|
+
if isinstance(labels, list) and labels:
|
|
37
|
+
label = labels[0]
|
|
38
|
+
elif parsed.get("label") is not None:
|
|
39
|
+
label = parsed.get("label")
|
|
40
|
+
return json.dumps({"label": label})
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
@telemetry.send_api_usage_telemetry(
|
|
44
|
+
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
45
|
+
)
|
|
46
|
+
def classify_text(
|
|
47
|
+
str_input: str | snowpark.Column,
|
|
48
|
+
categories: list[str] | snowpark.Column,
|
|
49
|
+
session: snowpark.Session | None = None,
|
|
50
|
+
) -> str | snowpark.Column:
|
|
51
|
+
"""Use the LLM inference service to classify the INPUT text into one of the target CATEGORIES.
|
|
52
|
+
|
|
53
|
+
Args:
|
|
54
|
+
str_input: A Column of strings to classify.
|
|
55
|
+
categories: A list of candidate categories to classify the INPUT text into.
|
|
56
|
+
session: The snowpark session to use. Will be inferred by context if not specified.
|
|
57
|
+
|
|
58
|
+
Returns:
|
|
59
|
+
A column of classification responses.
|
|
60
|
+
"""
|
|
61
|
+
warn_cortex_deprecated("classify_text", "ai_classify")
|
|
62
|
+
result = _classify_text_impl(
|
|
63
|
+
_AI_CLASSIFY_FUNCTION_NAME, str_input, categories, _AI_CLASSIFY_SINGLE_LABEL_CONFIG, session=session
|
|
64
|
+
)
|
|
65
|
+
if isinstance(result, snowpark.Column):
|
|
66
|
+
# AI_CLASSIFY returns {"labels": [...]}; re-wrap as the legacy CLASSIFY_TEXT {"label": ...} OBJECT
|
|
67
|
+
# so downstream SQL that reads col["label"] is unchanged. Subscript access (not functions.get with
|
|
68
|
+
# a bare string, which Snowpark treats as a column identifier) extracts the field by literal key.
|
|
69
|
+
label = functions.coalesce(result["labels"][0], result["label"])
|
|
70
|
+
return functions.object_construct(functions.lit("label"), label)
|
|
71
|
+
return _adapt_ai_classify_result(result)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def _classify_text_impl(
|
|
75
|
+
function: str,
|
|
76
|
+
str_input: str | snowpark.Column,
|
|
77
|
+
categories: list[str] | snowpark.Column,
|
|
78
|
+
config: dict[str, Any] | None = None,
|
|
79
|
+
session: snowpark.Session | None = None,
|
|
80
|
+
) -> str | snowpark.Column:
|
|
81
|
+
args: list[Any] = [str_input, categories]
|
|
82
|
+
if config is not None:
|
|
83
|
+
args.append(config)
|
|
84
|
+
return cast(str | snowpark.Column, call_sql_function(function, session, *args))
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
ClassifyText = deprecated(
|
|
88
|
+
"ClassifyText() is deprecated and will be removed in a future release. Please use classify_text() instead."
|
|
89
|
+
)(
|
|
90
|
+
telemetry.send_api_usage_telemetry(
|
|
91
|
+
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
92
|
+
)(classify_text)
|
|
93
|
+
)
|
|
@@ -14,6 +14,7 @@ from snowflake.cortex._util import (
|
|
|
14
14
|
CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
15
15
|
SnowflakeAuthenticationException,
|
|
16
16
|
SnowflakeConfigurationException,
|
|
17
|
+
warn_cortex_deprecated,
|
|
17
18
|
)
|
|
18
19
|
from snowflake.ml._internal import telemetry
|
|
19
20
|
from snowflake.snowpark import context, functions
|
|
@@ -331,12 +332,46 @@ def _return_stream_response(
|
|
|
331
332
|
pass
|
|
332
333
|
|
|
333
334
|
|
|
334
|
-
def _complete_call_sql_function_snowpark(
|
|
335
|
-
function: str, *args: str | snowpark.Column | CompleteOptions
|
|
336
|
-
) -> snowpark.Column:
|
|
335
|
+
def _complete_call_sql_function_snowpark(function: str, *args: Any) -> snowpark.Column:
|
|
337
336
|
return cast(snowpark.Column, functions.builtin(function)(*args))
|
|
338
337
|
|
|
339
338
|
|
|
339
|
+
_SQL_MODEL_PARAMETER_KEYS = ("max_tokens", "temperature", "top_p", "guardrails")
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
def _sql_ai_complete_args(
|
|
343
|
+
model: str | snowpark.Column,
|
|
344
|
+
prompt: str | list[ConversationMessage] | snowpark.Column,
|
|
345
|
+
options: CompleteOptions | snowpark.Column | None,
|
|
346
|
+
) -> tuple[Any, ...]:
|
|
347
|
+
"""Build positional SQL arguments for AI_COMPLETE.
|
|
348
|
+
|
|
349
|
+
Args:
|
|
350
|
+
model: Model name or Column of model names.
|
|
351
|
+
prompt: Prompt string, conversation history, or Column of prompts.
|
|
352
|
+
options: Complete options, a Column of options, or None.
|
|
353
|
+
|
|
354
|
+
Returns:
|
|
355
|
+
Positional AI_COMPLETE arguments with response format separate from
|
|
356
|
+
model parameters.
|
|
357
|
+
"""
|
|
358
|
+
if options is None:
|
|
359
|
+
return (model, prompt)
|
|
360
|
+
if isinstance(options, snowpark.Column):
|
|
361
|
+
# Can't introspect a Column's keys at build time, so split response_format out of the options
|
|
362
|
+
# object in SQL: model_parameters is the object minus response_format, response_format is read
|
|
363
|
+
# out separately (NULL when absent, which AI_COMPLETE treats as "no response format").
|
|
364
|
+
model_parameters_col = functions.builtin("object_delete")(options, functions.lit("response_format"))
|
|
365
|
+
response_format_col = functions.get(options, functions.lit("response_format"))
|
|
366
|
+
return (model, prompt, model_parameters_col, response_format_col)
|
|
367
|
+
option_values = cast(dict[str, Any], options)
|
|
368
|
+
model_parameters = {key: option_values[key] for key in _SQL_MODEL_PARAMETER_KEYS if key in option_values}
|
|
369
|
+
response_format = options.get("response_format")
|
|
370
|
+
if response_format is None:
|
|
371
|
+
return (model, prompt, model_parameters) if model_parameters else (model, prompt)
|
|
372
|
+
return (model, prompt, model_parameters, response_format)
|
|
373
|
+
|
|
374
|
+
|
|
340
375
|
def _complete_non_streaming_immediate(
|
|
341
376
|
snow_api_xp_request_handler: Callable[..., dict[str, Any]] | None,
|
|
342
377
|
model: str,
|
|
@@ -366,10 +401,7 @@ def _complete_non_streaming_impl(
|
|
|
366
401
|
deadline: float | None = None,
|
|
367
402
|
) -> str | snowpark.Column:
|
|
368
403
|
if isinstance(prompt, snowpark.Column):
|
|
369
|
-
|
|
370
|
-
return _complete_call_sql_function_snowpark(function, model, prompt, options)
|
|
371
|
-
else:
|
|
372
|
-
return _complete_call_sql_function_snowpark(function, model, prompt)
|
|
404
|
+
return _complete_call_sql_function_snowpark(function, *_sql_ai_complete_args(model, prompt, options))
|
|
373
405
|
if isinstance(model, snowpark.Column):
|
|
374
406
|
raise ValueError("'model' cannot be a snowpark.Column when 'prompt' is a string.")
|
|
375
407
|
if isinstance(options, snowpark.Column):
|
|
@@ -414,7 +446,7 @@ def _complete_impl(
|
|
|
414
446
|
model: str | snowpark.Column,
|
|
415
447
|
prompt: str | list[ConversationMessage] | snowpark.Column,
|
|
416
448
|
snow_api_xp_request_handler: Callable[..., dict[str, Any]] | None = None,
|
|
417
|
-
function: str = "
|
|
449
|
+
function: str = "AI_COMPLETE",
|
|
418
450
|
options: CompleteOptions | None = None,
|
|
419
451
|
session: snowpark.Session | None = None,
|
|
420
452
|
stream: bool = False,
|
|
@@ -480,7 +512,7 @@ def complete(
|
|
|
480
512
|
Returns:
|
|
481
513
|
A column of string responses.
|
|
482
514
|
"""
|
|
483
|
-
|
|
515
|
+
warn_cortex_deprecated("complete", "ai_complete")
|
|
484
516
|
# Set the XP snow api function, if available.
|
|
485
517
|
snow_api_xp_request_handler = None
|
|
486
518
|
if is_in_stored_procedure(): # type: ignore[no-untyped-call]
|
{snowflake_ml_python-2.3.0 → snowflake_ml_python-2.5.0}/snowflake/cortex/_embed_text_1024.py
RENAMED
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
from typing import
|
|
1
|
+
from typing import cast
|
|
2
2
|
|
|
3
3
|
from typing_extensions import deprecated
|
|
4
4
|
|
|
5
5
|
from snowflake import snowpark
|
|
6
|
-
from snowflake.cortex._util import
|
|
6
|
+
from snowflake.cortex._util import (
|
|
7
|
+
CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
8
|
+
call_sql_function,
|
|
9
|
+
warn_cortex_deprecated,
|
|
10
|
+
)
|
|
7
11
|
from snowflake.ml._internal import telemetry
|
|
8
12
|
|
|
13
|
+
_AI_EMBED_FUNCTION_NAME = "AI_EMBED"
|
|
14
|
+
|
|
9
15
|
|
|
10
16
|
@telemetry.send_api_usage_telemetry(
|
|
11
17
|
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
@@ -26,8 +32,8 @@ def embed_text_1024(
|
|
|
26
32
|
Returns:
|
|
27
33
|
A column of vectors containing embeddings.
|
|
28
34
|
"""
|
|
29
|
-
|
|
30
|
-
return _embed_text_1024_impl(
|
|
35
|
+
warn_cortex_deprecated("embed_text_1024", "ai_embed")
|
|
36
|
+
return _embed_text_1024_impl(_AI_EMBED_FUNCTION_NAME, model, text, session=session)
|
|
31
37
|
|
|
32
38
|
|
|
33
39
|
def _embed_text_1024_impl(
|
|
@@ -36,7 +42,7 @@ def _embed_text_1024_impl(
|
|
|
36
42
|
text: str | snowpark.Column,
|
|
37
43
|
session: snowpark.Session | None = None,
|
|
38
44
|
) -> list[float] | snowpark.Column:
|
|
39
|
-
return cast(
|
|
45
|
+
return cast(list[float] | snowpark.Column, call_sql_function(function, session, model, text))
|
|
40
46
|
|
|
41
47
|
|
|
42
48
|
EmbedText1024 = deprecated(
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
from typing import
|
|
1
|
+
from typing import cast
|
|
2
2
|
|
|
3
3
|
from typing_extensions import deprecated
|
|
4
4
|
|
|
5
5
|
from snowflake import snowpark
|
|
6
|
-
from snowflake.cortex._util import
|
|
6
|
+
from snowflake.cortex._util import (
|
|
7
|
+
CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
8
|
+
call_sql_function,
|
|
9
|
+
warn_cortex_deprecated,
|
|
10
|
+
)
|
|
7
11
|
from snowflake.ml._internal import telemetry
|
|
8
12
|
|
|
13
|
+
_AI_EMBED_FUNCTION_NAME = "AI_EMBED"
|
|
14
|
+
|
|
9
15
|
|
|
10
16
|
@telemetry.send_api_usage_telemetry(
|
|
11
17
|
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
@@ -26,8 +32,8 @@ def embed_text_768(
|
|
|
26
32
|
Returns:
|
|
27
33
|
A column of vectors containing embeddings.
|
|
28
34
|
"""
|
|
29
|
-
|
|
30
|
-
return _embed_text_768_impl(
|
|
35
|
+
warn_cortex_deprecated("embed_text_768", "ai_embed")
|
|
36
|
+
return _embed_text_768_impl(_AI_EMBED_FUNCTION_NAME, model, text, session=session)
|
|
31
37
|
|
|
32
38
|
|
|
33
39
|
def _embed_text_768_impl(
|
|
@@ -36,7 +42,7 @@ def _embed_text_768_impl(
|
|
|
36
42
|
text: str | snowpark.Column,
|
|
37
43
|
session: snowpark.Session | None = None,
|
|
38
44
|
) -> list[float] | snowpark.Column:
|
|
39
|
-
return cast(
|
|
45
|
+
return cast(list[float] | snowpark.Column, call_sql_function(function, session, model, text))
|
|
40
46
|
|
|
41
47
|
|
|
42
48
|
EmbedText768 = deprecated(
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
from typing import Any, cast
|
|
2
|
+
|
|
3
|
+
from typing_extensions import deprecated
|
|
4
|
+
|
|
5
|
+
from snowflake import snowpark
|
|
6
|
+
from snowflake.cortex._util import (
|
|
7
|
+
CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
8
|
+
SnowflakeAuthenticationException,
|
|
9
|
+
warn_cortex_deprecated,
|
|
10
|
+
)
|
|
11
|
+
from snowflake.ml._internal import telemetry
|
|
12
|
+
from snowflake.snowpark import context, functions
|
|
13
|
+
|
|
14
|
+
_AI_EXTRACT_FUNCTION_NAME = "AI_EXTRACT"
|
|
15
|
+
_ANSWER_KEY = "answer"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def _legacy_extract_answer_column(
|
|
19
|
+
from_text: str | snowpark.Column,
|
|
20
|
+
response_format: dict[str, Any] | snowpark.Column,
|
|
21
|
+
) -> snowpark.Column:
|
|
22
|
+
"""Call AI_EXTRACT and reshape it to the legacy EXTRACT_ANSWER [{"answer": ..., "score": ...}] ARRAY."""
|
|
23
|
+
# AI_EXTRACT returns the score only when the `scores` argument is TRUE, and `scores` is a named-only
|
|
24
|
+
# argument that the Snowpark builtin wrapper can't pass positionally -- inject it as a raw SQL fragment.
|
|
25
|
+
# AI_EXTRACT(<text>, <response_format>, scores => TRUE) returns:
|
|
26
|
+
# {"response": {"answer": ...}, "scoring": {"scores": {"answer": {"score": ...}}}}
|
|
27
|
+
extracted = functions.builtin(_AI_EXTRACT_FUNCTION_NAME)(
|
|
28
|
+
from_text, response_format, functions.sql_expr("scores => TRUE")
|
|
29
|
+
)
|
|
30
|
+
# Subscript access (not functions.get with a bare string, which Snowpark treats as a column
|
|
31
|
+
# identifier) extracts fields by literal key.
|
|
32
|
+
answer = extracted["response"][_ANSWER_KEY]
|
|
33
|
+
score = extracted["scoring"]["scores"][_ANSWER_KEY]["score"]
|
|
34
|
+
return functions.array_construct(
|
|
35
|
+
functions.object_construct(functions.lit(_ANSWER_KEY), answer, functions.lit("score"), score)
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
@telemetry.send_api_usage_telemetry(
|
|
40
|
+
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
41
|
+
)
|
|
42
|
+
def extract_answer(
|
|
43
|
+
from_text: str | snowpark.Column,
|
|
44
|
+
question: str | snowpark.Column,
|
|
45
|
+
session: snowpark.Session | None = None,
|
|
46
|
+
) -> str | snowpark.Column:
|
|
47
|
+
"""Calls into the LLM inference service to extract an answer from within specified text.
|
|
48
|
+
|
|
49
|
+
Args:
|
|
50
|
+
from_text: A Column of strings representing input text.
|
|
51
|
+
question: A Column of strings representing a question to ask against from_text.
|
|
52
|
+
session: The snowpark session to use. Will be inferred by context if not specified.
|
|
53
|
+
|
|
54
|
+
Returns:
|
|
55
|
+
A column of arrays, each [{"answer": ..., "score": ...}], matching legacy EXTRACT_ANSWER.
|
|
56
|
+
|
|
57
|
+
Raises:
|
|
58
|
+
SnowflakeAuthenticationException: if no session is provided and none is active.
|
|
59
|
+
"""
|
|
60
|
+
warn_cortex_deprecated("extract_answer", "ai_extract")
|
|
61
|
+
if isinstance(question, snowpark.Column):
|
|
62
|
+
response_format: dict[str, Any] | snowpark.Column = functions.object_construct(
|
|
63
|
+
functions.lit(_ANSWER_KEY), question
|
|
64
|
+
)
|
|
65
|
+
else:
|
|
66
|
+
response_format = {_ANSWER_KEY: question}
|
|
67
|
+
|
|
68
|
+
column = _legacy_extract_answer_column(from_text, response_format)
|
|
69
|
+
if isinstance(from_text, snowpark.Column) or isinstance(question, snowpark.Column):
|
|
70
|
+
return column
|
|
71
|
+
|
|
72
|
+
# Immediate (literal) path: evaluate the expression and return the collected ARRAY as a JSON string,
|
|
73
|
+
# exactly as the legacy EXTRACT_ANSWER immediate path did.
|
|
74
|
+
session = session or context.get_active_session()
|
|
75
|
+
if session is None:
|
|
76
|
+
raise SnowflakeAuthenticationException(
|
|
77
|
+
"""Session required. Provide the session through a session=... argument or ensure an active session is
|
|
78
|
+
available in your environment."""
|
|
79
|
+
)
|
|
80
|
+
return cast(str, session.create_dataframe([snowpark.Row()]).select(column).collect()[0][0])
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
ExtractAnswer = deprecated(
|
|
84
|
+
"ExtractAnswer() is deprecated and will be removed in a future release. Use extract_answer() instead"
|
|
85
|
+
)(telemetry.send_api_usage_telemetry(project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT)(extract_answer))
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
from typing import cast
|
|
2
|
+
|
|
3
|
+
from typing_extensions import deprecated
|
|
4
|
+
|
|
5
|
+
from snowflake import snowpark
|
|
6
|
+
from snowflake.cortex._util import (
|
|
7
|
+
CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
8
|
+
SnowflakeAuthenticationException,
|
|
9
|
+
warn_cortex_deprecated,
|
|
10
|
+
)
|
|
11
|
+
from snowflake.ml._internal import telemetry
|
|
12
|
+
from snowflake.snowpark import context, functions, types
|
|
13
|
+
|
|
14
|
+
_AI_COMPLETE_FUNCTION_NAME = "AI_COMPLETE"
|
|
15
|
+
|
|
16
|
+
# AI_SENTIMENT returns a categorical label (positive/negative/neutral/mixed), not the legacy FLOAT in
|
|
17
|
+
# [-1, 1] that SNOWFLAKE.CORTEX.SENTIMENT produced. To keep the numeric return contract we score the
|
|
18
|
+
# text with AI_COMPLETE and a constrained prompt instead. The score is model-derived, so exact values
|
|
19
|
+
# differ from the legacy sentiment model.
|
|
20
|
+
_SENTIMENT_MODEL = "llama3.1-8b"
|
|
21
|
+
_SENTIMENT_PROMPT_PREFIX = (
|
|
22
|
+
"Rate the sentiment of the following text from -1.0 (very negative) to 1.0 (very positive). "
|
|
23
|
+
"Respond with only the score. Text: "
|
|
24
|
+
)
|
|
25
|
+
_SENTIMENT_MODEL_PARAMETERS = {"temperature": 0}
|
|
26
|
+
_SENTIMENT_RESPONSE_FORMAT = {
|
|
27
|
+
"type": "json",
|
|
28
|
+
"schema": {"type": "object", "properties": {"score": {"type": "number"}}, "required": ["score"]},
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def _sentiment_score_column(text: snowpark.Column) -> snowpark.Column:
|
|
33
|
+
"""Build the AI_COMPLETE sentiment-score expression, clamped to the legacy [-1, 1] range."""
|
|
34
|
+
prompt = functions.concat(functions.lit(_SENTIMENT_PROMPT_PREFIX), text)
|
|
35
|
+
completion = functions.builtin(_AI_COMPLETE_FUNCTION_NAME)(
|
|
36
|
+
functions.lit(_SENTIMENT_MODEL),
|
|
37
|
+
prompt,
|
|
38
|
+
_SENTIMENT_MODEL_PARAMETERS,
|
|
39
|
+
_SENTIMENT_RESPONSE_FORMAT,
|
|
40
|
+
)
|
|
41
|
+
score = functions.get(functions.parse_json(completion), functions.lit("score")).cast(types.FloatType())
|
|
42
|
+
return functions.least(functions.lit(1.0), functions.greatest(functions.lit(-1.0), score))
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
@telemetry.send_api_usage_telemetry(
|
|
46
|
+
project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT,
|
|
47
|
+
)
|
|
48
|
+
def sentiment(text: str | snowpark.Column, session: snowpark.Session | None = None) -> float | snowpark.Column:
|
|
49
|
+
"""Calls into the LLM inference service to perform sentiment analysis on the input text.
|
|
50
|
+
|
|
51
|
+
Args:
|
|
52
|
+
text: A Column of text strings to send to the LLM.
|
|
53
|
+
session: The snowpark session to use. Will be inferred by context if not specified.
|
|
54
|
+
|
|
55
|
+
Returns:
|
|
56
|
+
A column of floats. 1 represents positive sentiment, -1 represents negative sentiment.
|
|
57
|
+
|
|
58
|
+
Raises:
|
|
59
|
+
SnowflakeAuthenticationException: if no session is provided and none is active.
|
|
60
|
+
"""
|
|
61
|
+
warn_cortex_deprecated("sentiment", "ai_complete")
|
|
62
|
+
if isinstance(text, snowpark.Column):
|
|
63
|
+
return _sentiment_score_column(text)
|
|
64
|
+
|
|
65
|
+
session = session or context.get_active_session()
|
|
66
|
+
if session is None:
|
|
67
|
+
raise SnowflakeAuthenticationException(
|
|
68
|
+
"""Session required. Provide the session through a session=... argument or ensure an active session is
|
|
69
|
+
available in your environment."""
|
|
70
|
+
)
|
|
71
|
+
score_column = _sentiment_score_column(functions.lit(text))
|
|
72
|
+
output = session.create_dataframe([snowpark.Row()]).select(score_column).collect()[0][0]
|
|
73
|
+
return float(cast(str, output))
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
Sentiment = deprecated("Sentiment() is deprecated and will be removed in a future release. Use sentiment() instead")(
|
|
77
|
+
telemetry.send_api_usage_telemetry(project=CORTEX_FUNCTIONS_TELEMETRY_PROJECT)(sentiment)
|
|
78
|
+
)
|