snowflake-ml-python 1.20.0__tar.gz → 1.22.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/CHANGELOG.md +77 -5
  2. {snowflake_ml_python-1.20.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.22.0}/PKG-INFO +81 -7
  3. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/pyproject.toml +2 -2
  4. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/platform_capabilities.py +36 -0
  5. snowflake_ml_python-1.22.0/snowflake/ml/_internal/utils/url.py +42 -0
  6. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/_internal/arrow_ingestor.py +67 -2
  7. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/data_connector.py +103 -1
  8. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +8 -2
  9. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/callback/keras.py +25 -2
  10. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/callback/lightgbm.py +27 -2
  11. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/callback/xgboost.py +25 -2
  12. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/experiment_tracking.py +93 -3
  13. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/utils.py +6 -0
  14. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/feature_view.py +34 -24
  15. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/protocols.py +3 -0
  16. snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/__init__.py +0 -0
  17. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/constants.py +1 -0
  18. snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/payload_utils.py +761 -0
  19. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +95 -8
  20. snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +92 -0
  21. snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/scripts/startup.sh +112 -0
  22. snowflake_ml_python-1.22.0/snowflake/ml/jobs/_utils/spec_utils.py +22 -0
  23. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/stage_utils.py +22 -1
  24. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/types.py +14 -7
  25. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/job.py +2 -8
  26. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/manager.py +57 -135
  27. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/lineage/lineage_node.py +1 -1
  28. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/__init__.py +6 -0
  29. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +16 -1
  30. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/model_version_impl.py +130 -14
  31. snowflake_ml_python-1.22.0/snowflake/ml/model/_client/ops/deployment_step.py +36 -0
  32. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/ops/model_ops.py +93 -8
  33. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/ops/service_ops.py +32 -52
  34. snowflake_ml_python-1.22.0/snowflake/ml/model/_client/service/import_model_spec_schema.py +23 -0
  35. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +12 -4
  36. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +3 -0
  37. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/model_version.py +30 -6
  38. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/service.py +94 -5
  39. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_composer.py +1 -1
  40. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +5 -0
  41. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +61 -2
  42. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handler.py +8 -2
  43. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/custom.py +52 -0
  44. snowflake_ml_python-1.20.0/snowflake/ml/model/_packager/model_handlers/huggingface_pipeline.py → snowflake_ml_python-1.22.0/snowflake/ml/model/_packager/model_handlers/huggingface.py +203 -76
  45. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +6 -1
  46. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +26 -1
  47. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +40 -7
  48. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_packager.py +1 -1
  49. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/core.py +390 -8
  50. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/utils.py +13 -4
  51. snowflake_ml_python-1.22.0/snowflake/ml/model/code_path.py +104 -0
  52. snowflake_ml_python-1.22.0/snowflake/ml/model/compute_pool.py +2 -0
  53. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/custom_model.py +55 -13
  54. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/model_signature.py +13 -1
  55. snowflake_ml_python-1.22.0/snowflake/ml/model/models/huggingface.py +285 -0
  56. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/models/huggingface_pipeline.py +19 -208
  57. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/type_hints.py +7 -1
  58. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +2 -2
  59. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +12 -0
  60. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +12 -0
  61. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +5 -0
  62. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/_manager/model_manager.py +230 -15
  63. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/registry.py +4 -4
  64. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/html_utils.py +67 -1
  65. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/version.py +1 -1
  66. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0/snowflake_ml_python.egg-info}/PKG-INFO +81 -7
  67. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/SOURCES.txt +10 -2
  68. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/requires.txt +2 -0
  69. snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils/payload_utils.py +0 -763
  70. snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -63
  71. snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils/spec_utils.py +0 -466
  72. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/LICENSE.txt +0 -0
  73. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/README.md +0 -0
  74. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/setup.cfg +0 -0
  75. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/__init__.py +0 -0
  76. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_classify_text.py +0 -0
  77. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_complete.py +0 -0
  78. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_embed_text_1024.py +0 -0
  79. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_embed_text_768.py +0 -0
  80. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_extract_answer.py +0 -0
  81. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_finetune.py +0 -0
  82. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_sentiment.py +0 -0
  83. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_sse_client.py +0 -0
  84. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_summarize.py +0 -0
  85. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_translate.py +0 -0
  86. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/cortex/_util.py +0 -0
  87. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/env.py +0 -0
  88. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/env_utils.py +0 -0
  89. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
  90. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
  91. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
  92. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
  93. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
  94. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
  95. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
  96. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
  97. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
  98. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/file_utils.py +0 -0
  99. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
  100. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
  101. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
  102. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
  103. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/init_utils.py +0 -0
  104. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
  105. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
  106. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
  107. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/telemetry.py +0 -0
  108. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/type_utils.py +0 -0
  109. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
  110. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
  111. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
  112. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
  113. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
  114. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
  115. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
  116. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
  117. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
  118. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
  119. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/result.py +0 -0
  120. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
  121. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
  122. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
  123. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
  124. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
  125. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
  126. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/__init__.py +0 -0
  127. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/data_ingestor.py +0 -0
  128. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/data_source.py +0 -0
  129. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/ingestor_utils.py +0 -0
  130. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/data/torch_utils.py +0 -0
  131. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/__init__.py +0 -0
  132. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset.py +0 -0
  133. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
  134. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
  135. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
  136. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/__init__.py +0 -0
  137. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
  138. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
  139. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
  140. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/run.py +0 -0
  141. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
  142. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
  143. {snowflake_ml_python-1.20.0/snowflake/ml/jobs/_interop → snowflake_ml_python-1.22.0/snowflake/ml/experiment/callback}/__init__.py +0 -0
  144. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/__init__.py +0 -0
  145. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/access_manager.py +0 -0
  146. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/entity.py +0 -0
  147. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
  148. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
  149. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
  150. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
  151. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
  152. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
  153. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
  154. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
  155. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
  156. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
  157. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
  158. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
  159. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
  160. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
  161. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
  162. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
  163. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
  164. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
  165. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
  166. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
  167. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
  168. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
  169. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/feature_store/feature_store.py +0 -0
  170. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
  171. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/fileset.py +0 -0
  172. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/sfcfs.py +0 -0
  173. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/snowfs.py +0 -0
  174. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/fileset/stage_fs.py +0 -0
  175. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/__init__.py +0 -0
  176. {snowflake_ml_python-1.20.0/snowflake/ml/jobs/_utils → snowflake_ml_python-1.22.0/snowflake/ml/jobs/_interop}/__init__.py +0 -0
  177. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
  178. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
  179. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
  180. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
  181. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/results.py +0 -0
  182. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
  183. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
  184. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/function_payload_utils.py +0 -0
  185. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
  186. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
  187. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
  188. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
  189. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
  190. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/jobs/decorators.py +0 -0
  191. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/lineage/__init__.py +0 -0
  192. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
  193. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
  194. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
  195. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
  196. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/model.py +0 -0
  197. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
  198. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
  199. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
  200. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
  201. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
  202. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
  203. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
  204. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
  205. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
  206. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
  207. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
  208. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
  209. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
  210. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
  211. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
  212. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
  213. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
  214. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
  215. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
  216. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
  217. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
  218. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
  219. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
  220. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
  221. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
  222. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
  223. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
  224. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
  225. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
  226. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
  227. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
  228. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
  229. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
  230. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -0
  231. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
  232. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
  233. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
  234. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
  235. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
  236. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
  237. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
  238. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
  239. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
  240. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
  241. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/event_handler.py +0 -0
  242. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/inference_engine.py +0 -0
  243. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/openai_signatures.py +0 -0
  244. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/target_platform.py +0 -0
  245. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/task.py +0 -0
  246. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/model/volatility.py +0 -0
  247. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
  248. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
  249. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
  250. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
  251. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
  252. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
  253. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
  254. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
  255. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
  256. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
  257. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
  258. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
  259. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
  260. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
  261. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
  262. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
  263. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
  264. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
  265. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
  266. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
  267. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
  268. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
  269. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
  270. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
  271. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
  272. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
  273. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
  274. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
  275. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
  276. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
  277. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
  278. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
  279. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
  280. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
  281. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
  282. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
  283. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
  284. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
  285. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
  286. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
  287. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
  288. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
  289. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
  290. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
  291. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
  292. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
  293. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
  294. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
  295. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
  296. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
  297. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
  298. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
  299. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
  300. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
  301. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
  302. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
  303. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
  304. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
  305. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
  306. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
  307. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
  308. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
  309. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
  310. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
  311. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
  312. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
  313. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
  314. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
  315. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
  316. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
  317. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
  318. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
  319. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
  320. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
  321. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
  322. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
  323. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
  324. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
  325. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
  326. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
  327. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
  328. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/framework/base.py +0 -0
  329. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
  330. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
  331. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
  332. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
  333. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
  334. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
  335. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
  336. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
  337. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
  338. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
  339. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
  340. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
  341. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
  342. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
  343. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
  344. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
  345. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
  346. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
  347. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
  348. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
  349. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
  350. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
  351. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
  352. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
  353. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
  354. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
  355. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
  356. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
  357. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
  358. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
  359. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
  360. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
  361. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
  362. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
  363. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
  364. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
  365. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
  366. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
  367. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
  368. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
  369. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
  370. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
  371. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
  372. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
  373. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
  374. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
  375. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
  376. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
  377. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
  378. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
  379. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
  380. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
  381. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
  382. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
  383. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
  384. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
  385. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
  386. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
  387. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
  388. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
  389. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
  390. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
  391. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
  392. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
  393. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
  394. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
  395. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
  396. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
  397. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
  398. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
  399. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
  400. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
  401. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
  402. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
  403. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
  404. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
  405. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
  406. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
  407. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
  408. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
  409. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
  410. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
  411. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
  412. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
  413. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
  414. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
  415. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
  416. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
  417. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
  418. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
  419. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
  420. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
  421. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
  422. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
  423. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
  424. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
  425. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
  426. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
  427. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
  428. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
  429. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
  430. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
  431. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
  432. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
  433. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
  434. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
  435. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
  436. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
  437. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
  438. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
  439. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
  440. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
  441. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
  442. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
  443. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
  444. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
  445. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
  446. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
  447. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
  448. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
  449. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
  450. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
  451. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/svc.py +0 -0
  452. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/svm/svr.py +0 -0
  453. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
  454. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
  455. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
  456. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
  457. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
  458. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
  459. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
  460. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
  461. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
  462. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
  463. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
  464. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
  465. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
  466. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
  467. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/monitoring/shap.py +0 -0
  468. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/__init__.py +0 -0
  469. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +0 -0
  470. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/authentication.py +0 -0
  471. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/connection_params.py +0 -0
  472. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/sparse.py +0 -0
  473. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake/ml/utils/sql_client.py +0 -0
  474. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
  475. {snowflake_ml_python-1.20.0 → snowflake_ml_python-1.22.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
@@ -1,14 +1,90 @@
1
1
  # Release History
2
2
 
3
- ## 1.20.0
3
+ ## 1.22.0
4
+
5
+ ### New Features
6
+
7
+ * Registry: Introducing remotely logging a transformer pipeline model using SPCS job.
8
+
9
+ ```python
10
+ # create reference of the model
11
+ model = huggingface.TransformersPipeline(
12
+ model="TinyLlama/TinyLlama-1.1B-Chat-v1.0",
13
+ task="text-generation",
14
+ )
15
+
16
+ # Remotely log the model, a SPCS job will run async and log the model
17
+ mv = registry.log_model(
18
+ model=model,
19
+ model_name="tinyllama_remote_log",
20
+ target_platforms=["SNOWPARK_CONTAINER_SERVICES"],
21
+ signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
22
+ )
23
+ ```
24
+
25
+ ### Bug Fixes
26
+
27
+ ### Behavior Changes
28
+
29
+ ### Deprecations
30
+
31
+ ## 1.21.0
32
+
33
+ ### New Features
34
+
35
+ * Inference Autocapture (Preview): The `create_service` API will now accept `autocapture` as a new argument to indicate
36
+ whether inference data will be captured.
37
+ * DataConnector: Added `to_huggingface_dataset()` method for converting Snowflake data to HuggingFace datasets.
38
+ Supports both in-memory `Dataset` (streaming=False) and streaming `IterableDataset` (streaming=True) modes.
39
+ * Introducing `snowflake.ml.model.models.huggingface.TransformersPipeline` model which will replace object
40
+ `snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel`. This is a wrapper class to
41
+ `transformers.Pipeline` model. Currently, following tasks
42
+ are supported to log without manually specifying model signatures:
43
+ * "fill-mask"
44
+ * "question-answering"
45
+ * "summarization"
46
+ * "table-question-answering"
47
+ * "text2text-generation"
48
+ * "text-classification" (alias "sentiment-analysis" available)
49
+ * "text-generation"
50
+ * "token-classification" (alias "ner" available)
51
+ * "translation"
52
+ * "translation_xx_to_yy"
53
+ * "zero-shot-classification"
54
+ which provides utility to log the model without loading the model in memory.
4
55
 
5
56
  ### Bug Fixes
6
57
 
7
58
  * Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
8
59
  instead of raising an exception.
60
+ * Registry: `ModelVersion.run()` will now raise a `ValueError` if the model does not support running on warehouse
61
+ (e.g. SPCS-only models) and `service_name` is not provided.
9
62
 
10
63
  ### Behavior Changes
11
64
 
65
+ * ML Job: The `additional_payloads` (Preview API) behavior is changing.
66
+ Use the `imports` argument to declare additional dependencies, such as zip files and Python modules.
67
+ Local directories and Python files are automatically compressed, and their internal layout is determined by the
68
+ specified import path. The import path applies only to local directories, Python files and staged python files;
69
+ it has no effect on other import types. When referencing files in a stage, only individual files
70
+ are supported—not directories.
71
+ * Online Inference (PuPr): `list_services()` now shows internal endpoint that does not need EAI to call from another
72
+ SPCS node or Notebook.
73
+ * Inference Autocapture (Preview): `list_services()` now shows if model service has autocapture enabled.
74
+ * Experiment Tracking (PuPr): `ExperimentTracking` is now a singleton class.
75
+
76
+ ### Deprecations
77
+
78
+ * Deprecating `snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel` and will be removed in later
79
+ version with a notice.
80
+
81
+ ## 1.20.0
82
+
83
+ ### Bug Fixes
84
+
85
+ * Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
86
+ instead of raising an exception.
87
+
12
88
  ### New Features
13
89
 
14
90
  * Registry (PrPr): Introducing vLLM as a backend inference engine. The `create_service` API will now
@@ -39,8 +115,6 @@ mv.create_service(
39
115
  )
40
116
  ```
41
117
 
42
- ### Deprecations
43
-
44
118
  ## 1.19.0 (11-13-2025)
45
119
 
46
120
  ### Bug Fixes
@@ -147,8 +221,6 @@ options = {
147
221
  * Registry: Dropping support for deprecated `conversational` task type for Huggingface models.
148
222
  To read more <https://github.com/huggingface/transformers/pull/31165>
149
223
 
150
- ### New Features
151
-
152
224
  ## 1.14.0 (09-18-2025)
153
225
 
154
226
  ### Bug Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: snowflake-ml-python
3
- Version: 1.20.0
3
+ Version: 1.22.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:
@@ -230,7 +230,7 @@ Classifier: Topic :: Software Development :: Libraries
230
230
  Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
231
231
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
232
232
  Classifier: Topic :: Scientific/Engineering :: Information Analysis
233
- Requires-Python: <3.13,>=3.9
233
+ Requires-Python: <3.14,>=3.9
234
234
  Description-Content-Type: text/markdown
235
235
  License-File: LICENSE.txt
236
236
  Requires-Dist: anyio<5,>=3.5.0
@@ -307,7 +307,9 @@ Requires-Dist: torchdata<1,>=0.4; extra == "torch"
307
307
  Provides-Extra: transformers
308
308
  Requires-Dist: sentence-transformers<4,>=2.7.0; extra == "transformers"
309
309
  Requires-Dist: sentencepiece<0.2.0,>=0.1.95; extra == "transformers"
310
+ Requires-Dist: tokenizers<1,>=0.15.1; extra == "transformers"
310
311
  Requires-Dist: torch<3,>=2.0.1; extra == "transformers"
312
+ Requires-Dist: transformers!=4.51.3,<5,>=4.39.3; extra == "transformers"
311
313
  Dynamic: license-file
312
314
 
313
315
  # Snowflake ML Python
@@ -415,15 +417,91 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
415
417
 
416
418
  # Release History
417
419
 
418
- ## 1.20.0
420
+ ## 1.22.0
421
+
422
+ ### New Features
423
+
424
+ * Registry: Introducing remotely logging a transformer pipeline model using SPCS job.
425
+
426
+ ```python
427
+ # create reference of the model
428
+ model = huggingface.TransformersPipeline(
429
+ model="TinyLlama/TinyLlama-1.1B-Chat-v1.0",
430
+ task="text-generation",
431
+ )
432
+
433
+ # Remotely log the model, a SPCS job will run async and log the model
434
+ mv = registry.log_model(
435
+ model=model,
436
+ model_name="tinyllama_remote_log",
437
+ target_platforms=["SNOWPARK_CONTAINER_SERVICES"],
438
+ signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
439
+ )
440
+ ```
441
+
442
+ ### Bug Fixes
443
+
444
+ ### Behavior Changes
445
+
446
+ ### Deprecations
447
+
448
+ ## 1.21.0
449
+
450
+ ### New Features
451
+
452
+ * Inference Autocapture (Preview): The `create_service` API will now accept `autocapture` as a new argument to indicate
453
+ whether inference data will be captured.
454
+ * DataConnector: Added `to_huggingface_dataset()` method for converting Snowflake data to HuggingFace datasets.
455
+ Supports both in-memory `Dataset` (streaming=False) and streaming `IterableDataset` (streaming=True) modes.
456
+ * Introducing `snowflake.ml.model.models.huggingface.TransformersPipeline` model which will replace object
457
+ `snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel`. This is a wrapper class to
458
+ `transformers.Pipeline` model. Currently, following tasks
459
+ are supported to log without manually specifying model signatures:
460
+ * "fill-mask"
461
+ * "question-answering"
462
+ * "summarization"
463
+ * "table-question-answering"
464
+ * "text2text-generation"
465
+ * "text-classification" (alias "sentiment-analysis" available)
466
+ * "text-generation"
467
+ * "token-classification" (alias "ner" available)
468
+ * "translation"
469
+ * "translation_xx_to_yy"
470
+ * "zero-shot-classification"
471
+ which provides utility to log the model without loading the model in memory.
419
472
 
420
473
  ### Bug Fixes
421
474
 
422
475
  * Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
423
476
  instead of raising an exception.
477
+ * Registry: `ModelVersion.run()` will now raise a `ValueError` if the model does not support running on warehouse
478
+ (e.g. SPCS-only models) and `service_name` is not provided.
424
479
 
425
480
  ### Behavior Changes
426
481
 
482
+ * ML Job: The `additional_payloads` (Preview API) behavior is changing.
483
+ Use the `imports` argument to declare additional dependencies, such as zip files and Python modules.
484
+ Local directories and Python files are automatically compressed, and their internal layout is determined by the
485
+ specified import path. The import path applies only to local directories, Python files and staged python files;
486
+ it has no effect on other import types. When referencing files in a stage, only individual files
487
+ are supported—not directories.
488
+ * Online Inference (PuPr): `list_services()` now shows internal endpoint that does not need EAI to call from another
489
+ SPCS node or Notebook.
490
+ * Inference Autocapture (Preview): `list_services()` now shows if model service has autocapture enabled.
491
+ * Experiment Tracking (PuPr): `ExperimentTracking` is now a singleton class.
492
+
493
+ ### Deprecations
494
+
495
+ * Deprecating `snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel` and will be removed in later
496
+ version with a notice.
497
+
498
+ ## 1.20.0
499
+
500
+ ### Bug Fixes
501
+
502
+ * Experiment Tracking (PuPr): Reaching the run metadata size limit in `log_metrics` or `log_params` will warn the user
503
+ instead of raising an exception.
504
+
427
505
  ### New Features
428
506
 
429
507
  * Registry (PrPr): Introducing vLLM as a backend inference engine. The `create_service` API will now
@@ -454,8 +532,6 @@ mv.create_service(
454
532
  )
455
533
  ```
456
534
 
457
- ### Deprecations
458
-
459
535
  ## 1.19.0 (11-13-2025)
460
536
 
461
537
  ### Bug Fixes
@@ -562,8 +638,6 @@ options = {
562
638
  * Registry: Dropping support for deprecated `conversational` task type for Huggingface models.
563
639
  To read more <https://github.com/huggingface/transformers/pull/31165>
564
640
 
565
- ### New Features
566
-
567
641
  ## 1.14.0 (09-18-2025)
568
642
 
569
643
  ### Bug Fixes
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
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
8
  classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Other Environment", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Database", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Scientific/Engineering :: Information Analysis",]
9
- requires-python = ">=3.9, <3.13"
9
+ requires-python = ">=3.9, <3.14"
10
10
  dynamic = [ "version", "readme",]
11
11
  dependencies = [ "anyio>=3.5.0,<5", "cachetools>=3.1.1,<6", "cloudpickle>=2.0.0", "cryptography", "fsspec[http]>=2024.6.1,<2026", "importlib_resources>=6.1.1, <7", "numpy>=1.23,<3", "packaging>=20.9,<26", "pandas>=2.1.4,<3", "platformdirs<5", "pyarrow<19.0.0", "pydantic>=2.8.2, <3", "pyjwt>=2.0.0, <3", "pytimeparse>=1.1.8,<2", "pyyaml>=6.0,<7", "retrying>=1.3.3,<2", "s3fs>=2024.6.1,<2026", "scikit-learn<1.8", "scipy>=1.9,<2", "shap>=0.46.0,<1", "snowflake-connector-python[pandas]>=3.17.3,<4", "snowflake-snowpark-python>=1.17.0,<2,!=1.26.0", "snowflake.core>=1.0.2,<2", "sqlparse>=0.4,<1", "tqdm<5", "typing-extensions>=4.1.0,<5", "xgboost<4",]
12
12
  [[project.authors]]
@@ -35,7 +35,7 @@ prophet = [ "prophet>=1.1.0, <2",]
35
35
  streamlit = [ "streamlit>=1.30.0,<2",]
36
36
  tensorflow = [ "tensorflow>=2.17.0,<3",]
37
37
  torch = [ "torch>=2.0.1,<3", "torchdata>=0.4,<1",]
38
- transformers = [ "sentence-transformers>=2.7.0,<4", "sentencepiece>=0.1.95,<0.2.0", "torch>=2.0.1,<3",]
38
+ transformers = [ "sentence-transformers>=2.7.0,<4", "sentencepiece>=0.1.95,<0.2.0", "tokenizers>=0.15.1,<1", "torch>=2.0.1,<3", "transformers>=4.39.3,<5,!=4.51.3",]
39
39
 
40
40
  [tool.setuptools.package-data]
41
41
  "*" = [ "*",]
@@ -18,6 +18,8 @@ logger = logging.getLogger(__name__)
18
18
  LIVE_COMMIT_PARAMETER = "ENABLE_LIVE_VERSION_IN_SDK"
19
19
  INLINE_DEPLOYMENT_SPEC_PARAMETER = "ENABLE_INLINE_DEPLOYMENT_SPEC_FROM_CLIENT_VERSION"
20
20
  SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST = "SET_MODULE_FUNCTIONS_VOLATILITY_FROM_MANIFEST"
21
+ ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS = "ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS"
22
+ FEATURE_MODEL_INFERENCE_AUTOCAPTURE = "FEATURE_MODEL_INFERENCE_AUTOCAPTURE"
21
23
 
22
24
 
23
25
  class PlatformCapabilities:
@@ -80,6 +82,12 @@ class PlatformCapabilities:
80
82
  def is_live_commit_enabled(self) -> bool:
81
83
  return self._get_bool_feature(LIVE_COMMIT_PARAMETER, False)
82
84
 
85
+ def is_model_method_signature_parameters_enabled(self) -> bool:
86
+ return self._get_bool_feature(ENABLE_MODEL_METHOD_SIGNATURE_PARAMETERS, False)
87
+
88
+ def is_inference_autocapture_enabled(self) -> bool:
89
+ return self._is_feature_enabled(FEATURE_MODEL_INFERENCE_AUTOCAPTURE)
90
+
83
91
  @staticmethod
84
92
  def _get_features(session: snowpark_session.Session) -> dict[str, Any]:
85
93
  try:
@@ -182,3 +190,31 @@ class PlatformCapabilities:
182
190
  f"current={current_version}, feature={feature_version}, enabled={result}"
183
191
  )
184
192
  return result
193
+
194
+ def _is_feature_enabled(self, feature_name: str) -> bool:
195
+ """Check if the feature parameter value belongs to enabled values.
196
+
197
+ Args:
198
+ feature_name: The name of the feature to retrieve.
199
+
200
+ Returns:
201
+ bool: True if the value is "ENABLED" or "ENABLED_PUBLIC_PREVIEW",
202
+ False if the value is "DISABLED", "DISABLED_PRIVATE_PREVIEW", or not set.
203
+
204
+ Raises:
205
+ ValueError: If the feature value is set but not one of the recognized values.
206
+ """
207
+ value = self.features.get(feature_name)
208
+ if value is None:
209
+ logger.debug(f"Feature {feature_name} not found.")
210
+ return False
211
+
212
+ if isinstance(value, str):
213
+ value_str = str(value)
214
+ if value_str.upper() in ["ENABLED", "ENABLED_PUBLIC_PREVIEW"]:
215
+ return True
216
+ elif value_str.upper() in ["DISABLED", "DISABLED_PRIVATE_PREVIEW"]:
217
+ return False
218
+ else:
219
+ raise ValueError(f"Invalid feature parameter value: {value} for feature {feature_name}")
220
+ raise ValueError(f"Invalid feature parameter string value: {value} for feature {feature_name}")
@@ -0,0 +1,42 @@
1
+ from urllib.parse import urlunparse
2
+
3
+ from snowflake import snowpark as snowpark
4
+
5
+ JOB_URL_PREFIX = "#/compute/job/"
6
+ SERVICE_URL_PREFIX = "#/compute/service/"
7
+
8
+
9
+ def get_snowflake_url(
10
+ session: snowpark.Session,
11
+ url_path: str,
12
+ params: str = "",
13
+ query: str = "",
14
+ fragment: str = "",
15
+ ) -> str:
16
+ """Construct a Snowflake URL from session connection details and URL components.
17
+
18
+ Args:
19
+ session: The Snowpark session containing connection details.
20
+ url_path: The path component of the URL (e.g., "/compute/job/123").
21
+ params: Optional parameters for the URL (RFC 1808). Defaults to "".
22
+ query: Optional query string for the URL. Defaults to "".
23
+ fragment: Optional fragment identifier for the URL (e.g., "#section"). Defaults to "".
24
+
25
+ Returns:
26
+ A fully constructed Snowflake URL string with scheme, host, and specified components.
27
+ """
28
+ scheme = "https"
29
+ if hasattr(session.connection, "scheme"):
30
+ scheme = session.connection.scheme
31
+ host = session.connection.host
32
+
33
+ return urlunparse(
34
+ (
35
+ scheme,
36
+ host,
37
+ url_path,
38
+ params,
39
+ query,
40
+ fragment,
41
+ )
42
+ )
@@ -1,6 +1,8 @@
1
+ import base64
1
2
  import collections
2
3
  import logging
3
4
  import os
5
+ import re
4
6
  import time
5
7
  from typing import TYPE_CHECKING, Any, Deque, Iterator, Optional, Sequence, Union
6
8
 
@@ -165,8 +167,71 @@ class ArrowIngestor(data_ingestor.DataIngestor, mixins.SerializableSessionMixin)
165
167
  # Re-shuffle input files on each iteration start
166
168
  if shuffle:
167
169
  np.random.shuffle(sources)
168
- pa_dataset: pds.Dataset = pds.dataset(sources, format=format, **self._kwargs)
169
- return pa_dataset
170
+ try:
171
+ pa_dataset: pds.Dataset = pds.dataset(sources, format=format, **self._kwargs)
172
+ return pa_dataset
173
+ except Exception as e:
174
+ self._tmp_debug_parquet_invalid(e, sources)
175
+
176
+ def _tmp_debug_parquet_invalid(self, e: Exception, sources: list[Any]) -> None:
177
+ # Attach rich debug info to help diagnose intermittent Parquet footer/magic byte errors
178
+ debug_parts: list[str] = []
179
+ debug_parts.append("SNOWML DEBUG: Failed to construct Arrow Dataset")
180
+ debug_parts.append(
181
+ "SNOWML DEBUG: " f"data_sources_count={len(self._data_sources)} " f"resolved_sources_count={len(sources)}"
182
+ )
183
+ # Try to include the exact file path mentioned by pyarrow, if present
184
+ error_text = str(e)
185
+ snow_paths: list[str] = []
186
+ try:
187
+ # Extract snow://... tokens possibly wrapped in quotes
188
+ for match in re.finditer(r'(snow://[^\s\'"]+)', error_text):
189
+ token = match.group(1).rstrip(").,;]")
190
+ snow_paths.append(token)
191
+ except Exception:
192
+ pass
193
+ fs = self._kwargs.get("filesystem")
194
+ if fs is not None:
195
+ # Always include a directory listing with sizes for context
196
+ try:
197
+ debug_parts.append("SNOWML DEBUG: Listing resolved sources with sizes:")
198
+ for s in sources:
199
+ try:
200
+ info = fs.info(s)
201
+ size = info.get("size", None)
202
+ md5 = info.get("md5", None)
203
+ debug_parts.append(f" - {s} size={size} md5={md5}")
204
+ except Exception as le:
205
+ debug_parts.append(f" - {s} info_failed={le}")
206
+ except Exception as le:
207
+ debug_parts.append(f"SNOWML DEBUG: listing sources failed: {le}")
208
+ # If pyarrow referenced a specific file, dump its full contents (base64) for inspection
209
+ for path in snow_paths[:1]: # usually only one path appears in the message
210
+ try:
211
+ info = fs.info(path)
212
+ size = info.get("size", None)
213
+ debug_parts.append(f"SNOWML DEBUG: Inspecting referenced file: {path} size={size}")
214
+ with fs.open(path, "rb") as f:
215
+ content = f.read()
216
+ magic_head = content[:4]
217
+ magic_tail = content[-4:] if content else b""
218
+ looks_like_parquet = (magic_head == b"PAR1") and (magic_tail == b"PAR1")
219
+ debug_parts.append(
220
+ "SNOWML DEBUG: "
221
+ f"file_magic_head={magic_head!r} "
222
+ f"file_magic_tail={magic_tail!r} "
223
+ f"parquet_magic_detected={looks_like_parquet}"
224
+ )
225
+ b64 = base64.b64encode(content).decode("ascii")
226
+ debug_parts.append("SNOWML DEBUG: file_content_base64 (entire file):")
227
+ debug_parts.append(b64)
228
+ except Exception as fe:
229
+ debug_parts.append(f"SNOWML DEBUG: failed to read referenced file {path}: {fe}")
230
+ else:
231
+ debug_parts.append("SNOWML DEBUG: No filesystem available; cannot inspect files")
232
+ debug_message = "\n".join(debug_parts)
233
+ # Re-raise with augmented message to surface in stacktrace
234
+ raise RuntimeError(f"{e}\n{debug_message}") from e
170
235
 
171
236
  def _get_batches_from_buffer(self, batch_size: int) -> dict[str, npt.NDArray[Any]]:
172
237
  """Generate new batches from the existing record batch buffer."""
@@ -1,5 +1,15 @@
1
1
  import os
2
- from typing import TYPE_CHECKING, Any, Generator, Optional, Sequence, TypeVar
2
+ from typing import (
3
+ TYPE_CHECKING,
4
+ Any,
5
+ Generator,
6
+ Literal,
7
+ Optional,
8
+ Sequence,
9
+ TypeVar,
10
+ Union,
11
+ overload,
12
+ )
3
13
 
4
14
  import numpy.typing as npt
5
15
  from typing_extensions import deprecated
@@ -11,6 +21,7 @@ from snowflake.ml.data._internal.arrow_ingestor import ArrowIngestor
11
21
  from snowflake.snowpark import context as sp_context
12
22
 
13
23
  if TYPE_CHECKING:
24
+ import datasets as hf_datasets
14
25
  import pandas as pd
15
26
  import ray
16
27
  import tensorflow as tf
@@ -257,6 +268,97 @@ class DataConnector:
257
268
  except ImportError as e:
258
269
  raise ImportError("Ray is not installed, please install ray in your local environment.") from e
259
270
 
271
+ @overload
272
+ def to_huggingface_dataset(
273
+ self,
274
+ *,
275
+ streaming: Literal[False] = ...,
276
+ limit: Optional[int] = ...,
277
+ ) -> "hf_datasets.Dataset":
278
+ ...
279
+
280
+ @overload
281
+ def to_huggingface_dataset(
282
+ self,
283
+ *,
284
+ streaming: Literal[True],
285
+ limit: Optional[int] = ...,
286
+ batch_size: int = ...,
287
+ shuffle: bool = ...,
288
+ drop_last_batch: bool = ...,
289
+ ) -> "hf_datasets.IterableDataset":
290
+ ...
291
+
292
+ @telemetry.send_api_usage_telemetry(
293
+ project=_PROJECT,
294
+ subproject_extractor=lambda self: type(self).__name__,
295
+ func_params_to_log=["streaming", "limit", "batch_size", "shuffle", "drop_last_batch"],
296
+ )
297
+ def to_huggingface_dataset(
298
+ self,
299
+ *,
300
+ streaming: bool = False,
301
+ limit: Optional[int] = None,
302
+ batch_size: int = 1024,
303
+ shuffle: bool = False,
304
+ drop_last_batch: bool = False,
305
+ ) -> "Union[hf_datasets.Dataset, hf_datasets.IterableDataset]":
306
+ """Retrieve the Snowflake data as a HuggingFace Dataset.
307
+
308
+ Args:
309
+ streaming: If True, returns an IterableDataset that streams data in batches.
310
+ If False (default), returns an in-memory Dataset.
311
+ limit: Maximum number of rows to load. If None, loads all rows.
312
+ batch_size: Size of batches for internal data retrieval.
313
+ shuffle: Whether to shuffle the data. If True, files will be shuffled and rows
314
+ in each file will also be shuffled.
315
+ drop_last_batch: Whether to drop the last batch if it's smaller than batch_size.
316
+
317
+ Returns:
318
+ A HuggingFace Dataset (in-memory) or IterableDataset (streaming).
319
+ """
320
+ import datasets as hf_datasets
321
+
322
+ if streaming:
323
+ return self._to_huggingface_iterable_dataset(
324
+ limit=limit,
325
+ batch_size=batch_size,
326
+ shuffle=shuffle,
327
+ drop_last_batch=drop_last_batch,
328
+ )
329
+ else:
330
+ return hf_datasets.Dataset.from_pandas(self._ingestor.to_pandas(limit))
331
+
332
+ def _to_huggingface_iterable_dataset(
333
+ self,
334
+ *,
335
+ limit: Optional[int],
336
+ batch_size: int,
337
+ shuffle: bool,
338
+ drop_last_batch: bool,
339
+ ) -> "hf_datasets.IterableDataset":
340
+ """Create a HuggingFace IterableDataset that streams data in batches."""
341
+ import datasets as hf_datasets
342
+
343
+ def generator() -> Generator[dict[str, Any], None, None]:
344
+ rows_yielded = 0
345
+ for batch in self._ingestor.to_batches(batch_size, shuffle, drop_last_batch):
346
+ # Yield individual rows from each batch
347
+ num_rows = len(next(iter(batch.values())))
348
+ for i in range(num_rows):
349
+ if limit is not None and rows_yielded >= limit:
350
+ return
351
+ yield {k: v[i].item() if hasattr(v[i], "item") else v[i] for k, v in batch.items()}
352
+ rows_yielded += 1
353
+
354
+ result = hf_datasets.IterableDataset.from_generator(generator)
355
+ # In datasets >= 3.x, from_generator returns IterableDatasetDict
356
+ # We need to extract the IterableDataset from the dict
357
+ if hasattr(hf_datasets, "IterableDatasetDict") and isinstance(result, hf_datasets.IterableDatasetDict):
358
+ # Get the first (and only) dataset from the dict
359
+ result = next(iter(result.values()))
360
+ return result
361
+
260
362
 
261
363
  # Switch to use Runtime's Data Ingester if running in ML runtime
262
364
  # Fail silently if the data ingester is not found
@@ -41,8 +41,14 @@ class ExperimentTrackingSQLClient(_base._BaseSQLClient):
41
41
  ).has_dimensions(expected_rows=1, expected_cols=1).validate()
42
42
 
43
43
  @telemetry.send_api_usage_telemetry(project=telemetry.TelemetryProject.EXPERIMENT_TRACKING.value)
44
- def drop_experiment(self, *, experiment_name: sql_identifier.SqlIdentifier) -> None:
45
- experiment_fqn = self.fully_qualified_object_name(self._database_name, self._schema_name, experiment_name)
44
+ def drop_experiment(
45
+ self,
46
+ *,
47
+ database_name: sql_identifier.SqlIdentifier,
48
+ schema_name: sql_identifier.SqlIdentifier,
49
+ experiment_name: sql_identifier.SqlIdentifier,
50
+ ) -> None:
51
+ experiment_fqn = self.fully_qualified_object_name(database_name, schema_name, experiment_name)
46
52
  query_result_checker.SqlResultValidator(self._session, f"DROP EXPERIMENT {experiment_fqn}").has_dimensions(
47
53
  expected_rows=1, expected_cols=1
48
54
  ).validate()
@@ -12,6 +12,8 @@ if TYPE_CHECKING:
12
12
 
13
13
 
14
14
  class SnowflakeKerasCallback(keras.callbacks.Callback):
15
+ """Keras callback for automatically logging to a Snowflake ML Experiment."""
16
+
15
17
  def __init__(
16
18
  self,
17
19
  experiment_tracking: "ExperimentTracking",
@@ -23,12 +25,33 @@ class SnowflakeKerasCallback(keras.callbacks.Callback):
23
25
  version_name: Optional[str] = None,
24
26
  model_signature: Optional["ModelSignature"] = None,
25
27
  ) -> None:
28
+ """
29
+ Creates a new Keras callback.
30
+
31
+ Args:
32
+ experiment_tracking (snowflake.ml.experiment.ExperimentTracking): The Experiment Tracking instance
33
+ to use for logging.
34
+ log_model (bool): Whether to log the model at the end of training. Default is True.
35
+ log_metrics (bool): Whether to log metrics during training. Default is True.
36
+ log_params (bool): Whether to log model parameters at the start of training. Default is True.
37
+ log_every_n_epochs (int): Frequency with which to log metrics. Must be positive.
38
+ Default is 1, logging after every epoch.
39
+ model_name (Optional[str]): The model name to use when logging the model.
40
+ If None, the model name will be derived from the experiment name.
41
+ version_name (Optional[str]): The model version name to use when logging the model.
42
+ If None, the version name will be randomly generated.
43
+ model_signature (Optional[snowflake.ml.model.model_signature.ModelSignature]): The model signature to use
44
+ when logging the model. This is required if ``log_model`` is set to True.
45
+
46
+ Raises:
47
+ ValueError: When ``log_every_n_epochs`` is not a positive integer.
48
+ """
26
49
  self._experiment_tracking = experiment_tracking
27
50
  self.log_model = log_model
28
51
  self.log_metrics = log_metrics
29
52
  self.log_params = log_params
30
- if log_every_n_epochs < 1:
31
- raise ValueError("`log_every_n_epochs` must be positive.")
53
+ if not (utils.is_integer(log_every_n_epochs) and log_every_n_epochs > 0):
54
+ raise ValueError("`log_every_n_epochs` must be a positive integer.")
32
55
  self.log_every_n_epochs = log_every_n_epochs
33
56
  self.model_name = model_name
34
57
  self.version_name = version_name