snowflake-ml-python 1.50.0__tar.gz → 1.52.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 (550) hide show
  1. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/CHANGELOG.md +32 -1
  2. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/PKG-INFO +36 -5
  3. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/pyproject.toml +3 -3
  4. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/telemetry.py +1 -1
  5. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/feature_store.py +228 -46
  6. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/feature_view.py +21 -0
  7. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/stream_source.py +3 -0
  8. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/type_utils.py +1 -0
  9. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/decorators.py +2 -0
  10. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/job_definition.py +7 -0
  11. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/manager.py +6 -0
  12. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/model/batch_inference_task.py +13 -0
  13. snowflake_ml_python-1.52.0/snowflake/ml/model/_client/model/batch_inference_task_v2.py +156 -0
  14. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/model/model_version_impl.py +53 -18
  15. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/ops/service_ops.py +199 -54
  16. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/sql/service.py +68 -19
  17. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_env/model_env.py +12 -6
  18. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +122 -94
  19. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/batch_inference/__init__.py +2 -0
  20. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/registry/_manager/model_manager.py +19 -0
  21. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/utils/sparse.py +6 -1
  22. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/version.py +1 -1
  23. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake_ml_python.egg-info/PKG-INFO +36 -5
  24. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake_ml_python.egg-info/SOURCES.txt +1 -0
  25. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake_ml_python.egg-info/requires.txt +3 -3
  26. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/LICENSE.txt +0 -0
  27. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/README.md +0 -0
  28. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/setup.cfg +0 -0
  29. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/__init__.py +0 -0
  30. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_classify_text.py +0 -0
  31. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_complete.py +0 -0
  32. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_embed_text_1024.py +0 -0
  33. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_embed_text_768.py +0 -0
  34. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_extract_answer.py +0 -0
  35. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_finetune.py +0 -0
  36. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_sentiment.py +0 -0
  37. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_sse_client.py +0 -0
  38. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_summarize.py +0 -0
  39. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_translate.py +0 -0
  40. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/cortex/_util.py +0 -0
  41. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/env.py +0 -0
  42. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/env_utils.py +0 -0
  43. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
  44. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
  45. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
  46. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
  47. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
  48. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
  49. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
  50. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
  51. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
  52. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/file_utils.py +0 -0
  53. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
  54. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
  55. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
  56. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
  57. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/init_utils.py +0 -0
  58. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
  59. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
  60. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/platform_capabilities.py +0 -0
  61. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
  62. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/type_utils.py +0 -0
  63. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
  64. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
  65. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
  66. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
  67. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
  68. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
  69. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
  70. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
  71. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
  72. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
  73. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/result.py +0 -0
  74. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
  75. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
  76. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
  77. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
  78. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
  79. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/tee.py +0 -0
  80. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
  81. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/_internal/utils/url.py +0 -0
  82. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/data/__init__.py +0 -0
  83. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
  84. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/data/data_connector.py +0 -0
  85. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/data/data_ingestor.py +0 -0
  86. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/data/data_source.py +0 -0
  87. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/data/ingestor_utils.py +0 -0
  88. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/data/torch_utils.py +0 -0
  89. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/dataset/__init__.py +0 -0
  90. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/dataset/dataset.py +0 -0
  91. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
  92. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
  93. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
  94. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/__init__.py +0 -0
  95. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
  96. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
  97. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
  98. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
  99. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_entities/run.py +0 -0
  100. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
  101. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
  102. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_logging/__init__.py +0 -0
  103. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_logging/experiment_logger.py +0 -0
  104. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_logging/experiment_logging_context.py +0 -0
  105. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/_source_info.py +0 -0
  106. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/callback/keras.py +0 -0
  107. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
  108. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
  109. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/experiment_tracking.py +0 -0
  110. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/experiment/utils.py +0 -0
  111. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/__init__.py +0 -0
  112. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/_compute_fn_validation.py +0 -0
  113. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/access_manager.py +0 -0
  114. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/aggregation.py +0 -0
  115. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/entity.py +0 -0
  116. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
  117. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
  118. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
  119. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
  120. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
  121. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
  122. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
  123. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
  124. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
  125. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
  126. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
  127. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
  128. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
  129. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
  130. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
  131. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
  132. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
  133. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
  134. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
  135. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
  136. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
  137. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
  138. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/feature.py +0 -0
  139. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/feature_group.py +0 -0
  140. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/feature_view_append_only_validation.py +0 -0
  141. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/feature_view_refresh_freq.py +0 -0
  142. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/interval_utils.py +0 -0
  143. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/metadata_manager.py +0 -0
  144. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/online_service.py +0 -0
  145. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/online_service_http_client.py +0 -0
  146. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/realtime_config.py +0 -0
  147. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/realtime_dataset.py +0 -0
  148. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/realtime_dataset_udf.py +0 -0
  149. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/realtime_registration.py +0 -0
  150. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/request_source.py +0 -0
  151. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/spec/__init__.py +0 -0
  152. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/spec/builder.py +0 -0
  153. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/spec/enums.py +0 -0
  154. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/spec/models.py +0 -0
  155. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/spec/table_schema_evolution.py +0 -0
  156. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/stream_config.py +0 -0
  157. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/streaming_registration.py +0 -0
  158. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/feature_store/tile_sql_generator.py +0 -0
  159. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
  160. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/fileset/fileset.py +0 -0
  161. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/fileset/sfcfs.py +0 -0
  162. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/fileset/snowfs.py +0 -0
  163. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/fileset/stage_fs.py +0 -0
  164. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/__init__.py +0 -0
  165. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/__init__.py +0 -0
  166. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
  167. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
  168. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
  169. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
  170. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
  171. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/results.py +0 -0
  172. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
  173. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
  174. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/arg_protocol.py +0 -0
  175. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
  176. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
  177. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/payload_utils.py +0 -0
  178. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
  179. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
  180. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/__init__.py +0 -0
  181. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
  182. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
  183. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +0 -0
  184. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
  185. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +0 -0
  186. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/startup.sh +0 -0
  187. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
  188. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
  189. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/jobs/job.py +0 -0
  190. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/lineage/__init__.py +0 -0
  191. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/lineage/lineage_node.py +0 -0
  192. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/__init__.py +0 -0
  193. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/model/batch_inference_job_specs.py +0 -0
  194. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/model/batch_inference_serialization.py +0 -0
  195. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +0 -0
  196. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
  197. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
  198. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/ops/deployment_step.py +0 -0
  199. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/ops/live_commit_naming.py +0 -0
  200. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
  201. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/ops/model_ops.py +0 -0
  202. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/ops/param_ops.py +0 -0
  203. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/ops/param_utils.py +0 -0
  204. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/service/import_model_spec_schema.py +0 -0
  205. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/service/inference_job_service_spec.py +0 -0
  206. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +0 -0
  207. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +0 -0
  208. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
  209. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/sql/model.py +0 -0
  210. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
  211. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
  212. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
  213. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/huggingface_lazy_uploader.py +0 -0
  214. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
  215. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
  216. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
  217. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
  218. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
  219. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
  220. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/infer_function_init_once.py_template +0 -0
  221. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
  222. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned_init_once.py_template +0 -0
  223. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
  224. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function_init_once.py_template +0 -0
  225. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
  226. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
  227. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
  228. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
  229. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
  230. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
  231. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
  232. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
  233. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/__init__.py +0 -0
  234. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_default.py +0 -0
  235. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_handler.py +0 -0
  236. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_openai_chat_wrapper.py +0 -0
  237. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_task_handler.py +0 -0
  238. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/_utils.py +0 -0
  239. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_classification.py +0 -0
  240. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/audio_text_to_text.py +0 -0
  241. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/automatic_speech_recognition.py +0 -0
  242. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/conversational.py +0 -0
  243. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/document_question_answering.py +0 -0
  244. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/fill_mask.py +0 -0
  245. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_classification.py +0 -0
  246. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_feature_extraction.py +0 -0
  247. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_text_to_text.py +0 -0
  248. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/image_to_text.py +0 -0
  249. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/object_detection.py +0 -0
  250. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/question_answering.py +0 -0
  251. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/summarization.py +0 -0
  252. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/table_question_answering.py +0 -0
  253. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text2text_generation.py +0 -0
  254. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_classification.py +0 -0
  255. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/text_generation.py +0 -0
  256. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/token_classification.py +0 -0
  257. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/translation.py +0 -0
  258. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_classification.py +0 -0
  259. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/video_text_to_text.py +0 -0
  260. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/visual_question_answering.py +0 -0
  261. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_audio_classification.py +0 -0
  262. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_image_classification.py +0 -0
  263. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_object_detection.py +0 -0
  264. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot_text_classification.py +0 -0
  265. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
  266. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
  267. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
  268. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
  269. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
  270. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
  271. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
  272. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
  273. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
  274. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
  275. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
  276. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
  277. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
  278. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
  279. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
  280. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
  281. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +0 -0
  282. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
  283. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_meta/model_sample_input_data.py +0 -0
  284. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
  285. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
  286. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
  287. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
  288. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -0
  289. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
  290. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_save_options.py +0 -0
  291. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
  292. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
  293. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
  294. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/core.py +0 -0
  295. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
  296. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
  297. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
  298. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
  299. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
  300. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
  301. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/_signatures/utils.py +0 -0
  302. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/batch/__init__.py +0 -0
  303. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/code_path.py +0 -0
  304. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/compute_pool.py +0 -0
  305. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/custom_model.py +0 -0
  306. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/event_handler.py +0 -0
  307. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/inference_engine.py +0 -0
  308. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/model_signature.py +0 -0
  309. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/models/huggingface.py +0 -0
  310. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
  311. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/openai_signatures.py +0 -0
  312. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/target_platform.py +0 -0
  313. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/task.py +0 -0
  314. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/type_hints.py +0 -0
  315. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/model/volatility.py +0 -0
  316. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
  317. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
  318. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
  319. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
  320. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
  321. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
  322. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
  323. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
  324. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
  325. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
  326. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
  327. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
  328. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
  329. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
  330. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
  331. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
  332. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
  333. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
  334. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
  335. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
  336. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
  337. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
  338. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
  339. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
  340. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
  341. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
  342. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
  343. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
  344. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
  345. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
  346. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
  347. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
  348. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
  349. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
  350. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
  351. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
  352. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
  353. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
  354. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
  355. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
  356. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
  357. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
  358. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
  359. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
  360. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
  361. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
  362. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
  363. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
  364. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
  365. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
  366. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
  367. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
  368. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
  369. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
  370. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
  371. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
  372. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
  373. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
  374. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
  375. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
  376. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
  377. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
  378. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
  379. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
  380. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
  381. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
  382. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
  383. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
  384. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
  385. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
  386. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
  387. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
  388. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
  389. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
  390. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
  391. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
  392. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
  393. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
  394. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
  395. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
  396. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
  397. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
  398. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/framework/base.py +0 -0
  399. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
  400. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
  401. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
  402. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
  403. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
  404. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
  405. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
  406. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
  407. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
  408. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
  409. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
  410. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
  411. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
  412. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
  413. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
  414. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
  415. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
  416. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
  417. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
  418. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
  419. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
  420. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
  421. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
  422. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
  423. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
  424. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
  425. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
  426. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
  427. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
  428. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
  429. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
  430. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
  431. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
  432. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
  433. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
  434. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
  435. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
  436. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
  437. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
  438. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
  439. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
  440. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
  441. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
  442. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
  443. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
  444. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
  445. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
  446. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
  447. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
  448. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
  449. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
  450. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
  451. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
  452. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
  453. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
  454. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
  455. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
  456. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
  457. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
  458. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
  459. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
  460. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
  461. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
  462. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
  463. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
  464. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
  465. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
  466. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
  467. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
  468. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
  469. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
  470. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
  471. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
  472. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
  473. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
  474. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
  475. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
  476. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
  477. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
  478. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
  479. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
  480. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
  481. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
  482. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
  483. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
  484. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
  485. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
  486. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
  487. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
  488. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
  489. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
  490. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
  491. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
  492. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
  493. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
  494. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
  495. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
  496. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
  497. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
  498. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
  499. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
  500. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
  501. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
  502. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
  503. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
  504. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
  505. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
  506. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
  507. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
  508. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
  509. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
  510. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
  511. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
  512. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
  513. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
  514. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
  515. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
  516. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
  517. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
  518. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
  519. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
  520. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
  521. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/svm/svc.py +0 -0
  522. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/svm/svr.py +0 -0
  523. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
  524. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
  525. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
  526. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
  527. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
  528. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
  529. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
  530. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
  531. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
  532. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
  533. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
  534. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
  535. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
  536. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
  537. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
  538. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
  539. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
  540. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/monitoring/shap.py +0 -0
  541. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/registry/__init__.py +0 -0
  542. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +0 -0
  543. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/registry/registry.py +0 -0
  544. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/utils/authentication.py +0 -0
  545. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/utils/connection_params.py +0 -0
  546. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/utils/html_utils.py +0 -0
  547. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/utils/sql_client.py +0 -0
  548. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake/ml/utils/stage_file.py +0 -0
  549. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
  550. {snowflake_ml_python-1.50.0 → snowflake_ml_python-1.52.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,37 @@
1
1
  # Release History
2
2
 
3
- ## 1.50.0
3
+ ## 1.52.0
4
+
5
+ ### New Features
6
+
7
+ ### Bug Fixes
8
+
9
+ ### Behavior Changes
10
+
11
+ ### Deprecations
12
+
13
+ ## 1.51.0 (2026-08-12)
14
+
15
+ ### New Features
16
+
17
+ * ML Jobs: `artifact_repositories` now accepts a list of repositories, allowing multiple artifact
18
+ repositories to be specified for a job.
19
+ * Registry: Added support for logging and running MLflow 3.x models.
20
+
21
+ ### Bug Fixes
22
+
23
+ * Registry: Fixed a bug where an MLflow model logged with
24
+ `target_platforms=["SNOWPARK_CONTAINER_SERVICES"]` could drop its pip dependencies, leaving the
25
+ deployed model missing required packages.
26
+
27
+ ### Behavior Changes
28
+
29
+ * Feature Store: `stream_ingest` now reuses the Online Service ingest endpoint cached on the
30
+ `StreamSource` by `get_stream_source`, avoiding a per-call server status round-trip.
31
+
32
+ ### Deprecations
33
+
34
+ ## 1.50.0 (2026-08-03)
4
35
 
5
36
  ### New Features
6
37
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: snowflake-ml-python
3
- Version: 1.50.0
3
+ Version: 1.52.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:
@@ -264,7 +264,7 @@ Requires-Dist: altair<7,>=5; extra == "all"
264
264
  Requires-Dist: catboost<2,>=1.2.0; extra == "all"
265
265
  Requires-Dist: keras<4,>=2.0.0; extra == "all"
266
266
  Requires-Dist: lightgbm<5,>=4.1.0; extra == "all"
267
- Requires-Dist: mlflow<3,>=2.16.0; extra == "all"
267
+ Requires-Dist: mlflow<4,>=2.16.0; extra == "all"
268
268
  Requires-Dist: prophet<2,>=1.1.0; extra == "all"
269
269
  Requires-Dist: sentence-transformers<6,>=2.7.0; extra == "all"
270
270
  Requires-Dist: sentencepiece<0.3,>=0.1.95; extra == "all"
@@ -285,7 +285,7 @@ Requires-Dist: torch<3,>=2.0.1; extra == "keras"
285
285
  Provides-Extra: lightgbm
286
286
  Requires-Dist: lightgbm<5,>=4.1.0; extra == "lightgbm"
287
287
  Provides-Extra: llm
288
- Requires-Dist: mlflow<3,>=2.16.0; extra == "llm"
288
+ Requires-Dist: mlflow<4,>=2.16.0; extra == "llm"
289
289
  Requires-Dist: sentence-transformers<6,>=2.7.0; extra == "llm"
290
290
  Requires-Dist: sentencepiece<0.3,>=0.1.95; extra == "llm"
291
291
  Requires-Dist: tokenizers<1,>=0.15.1; extra == "llm"
@@ -293,7 +293,7 @@ Requires-Dist: torch<3,>=2.0.1; extra == "llm"
293
293
  Requires-Dist: torchdata<1,>=0.4; extra == "llm"
294
294
  Requires-Dist: transformers!=4.51.3,<6,>=4.39.3; extra == "llm"
295
295
  Provides-Extra: mlflow
296
- Requires-Dist: mlflow<3,>=2.16.0; extra == "mlflow"
296
+ Requires-Dist: mlflow<4,>=2.16.0; extra == "mlflow"
297
297
  Provides-Extra: prophet
298
298
  Requires-Dist: prophet<2,>=1.1.0; extra == "prophet"
299
299
  Provides-Extra: streamlit
@@ -416,7 +416,38 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
416
416
 
417
417
  # Release History
418
418
 
419
- ## 1.50.0
419
+ ## 1.52.0
420
+
421
+ ### New Features
422
+
423
+ ### Bug Fixes
424
+
425
+ ### Behavior Changes
426
+
427
+ ### Deprecations
428
+
429
+ ## 1.51.0 (2026-08-12)
430
+
431
+ ### New Features
432
+
433
+ * ML Jobs: `artifact_repositories` now accepts a list of repositories, allowing multiple artifact
434
+ repositories to be specified for a job.
435
+ * Registry: Added support for logging and running MLflow 3.x models.
436
+
437
+ ### Bug Fixes
438
+
439
+ * Registry: Fixed a bug where an MLflow model logged with
440
+ `target_platforms=["SNOWPARK_CONTAINER_SERVICES"]` could drop its pip dependencies, leaving the
441
+ deployed model missing required packages.
442
+
443
+ ### Behavior Changes
444
+
445
+ * Feature Store: `stream_ingest` now reuses the Online Service ingest endpoint cached on the
446
+ `StreamSource` by `get_stream_source`, avoiding a per-call server status round-trip.
447
+
448
+ ### Deprecations
449
+
450
+ ## 1.50.0 (2026-08-03)
420
451
 
421
452
  ### New Features
422
453
 
@@ -24,13 +24,13 @@ Issues = "https://github.com/snowflakedb/snowflake-ml-python/issues"
24
24
  Changelog = "https://github.com/snowflakedb/snowflake-ml-python/blob/master/CHANGELOG.md"
25
25
 
26
26
  [project.optional-dependencies]
27
- all = [ "altair>=5,<7", "catboost>=1.2.0, <2", "keras>=2.0.0,<4", "lightgbm>=4.1.0, <5", "mlflow>=2.16.0, <3", "prophet>=1.1.0, <2", "sentence-transformers>=2.7.0,<6", "sentencepiece>=0.1.95,<0.3", "streamlit>=1.30.0,<2", "tensorflow>=2.17.0,<3", "tokenizers>=0.15.1,<1", "torch>=2.0.1,<3", "torchdata>=0.4,<1", "transformers>=4.39.3,!=4.51.3,<6",]
27
+ all = [ "altair>=5,<7", "catboost>=1.2.0, <2", "keras>=2.0.0,<4", "lightgbm>=4.1.0, <5", "mlflow>=2.16.0, <4", "prophet>=1.1.0, <2", "sentence-transformers>=2.7.0,<6", "sentencepiece>=0.1.95,<0.3", "streamlit>=1.30.0,<2", "tensorflow>=2.17.0,<3", "tokenizers>=0.15.1,<1", "torch>=2.0.1,<3", "torchdata>=0.4,<1", "transformers>=4.39.3,!=4.51.3,<6",]
28
28
  altair = [ "altair>=5,<7",]
29
29
  catboost = [ "catboost>=1.2.0, <2",]
30
30
  keras = [ "keras>=2.0.0,<4", "tensorflow>=2.17.0,<3", "torch>=2.0.1,<3",]
31
31
  lightgbm = [ "lightgbm>=4.1.0, <5",]
32
- llm = [ "mlflow>=2.16.0, <3", "sentence-transformers>=2.7.0,<6", "sentencepiece>=0.1.95,<0.3", "tokenizers>=0.15.1,<1", "torch>=2.0.1,<3", "torchdata>=0.4,<1", "transformers>=4.39.3,!=4.51.3,<6",]
33
- mlflow = [ "mlflow>=2.16.0, <3",]
32
+ llm = [ "mlflow>=2.16.0, <4", "sentence-transformers>=2.7.0,<6", "sentencepiece>=0.1.95,<0.3", "tokenizers>=0.15.1,<1", "torch>=2.0.1,<3", "torchdata>=0.4,<1", "transformers>=4.39.3,!=4.51.3,<6",]
33
+ mlflow = [ "mlflow>=2.16.0, <4",]
34
34
  prophet = [ "prophet>=1.1.0, <2",]
35
35
  streamlit = [ "streamlit>=1.30.0,<2",]
36
36
  tensorflow = [ "tensorflow>=2.17.0,<3",]
@@ -300,7 +300,7 @@ def add_statement_params_custom_tags(
300
300
  """
301
301
  if not statement_params:
302
302
  return {}
303
- existing_custom_tags: dict[str, Any] = statement_params.pop(TelemetryField.KEY_CUSTOM_TAGS.value, {})
303
+ existing_custom_tags: dict[str, Any] = dict(statement_params.get(TelemetryField.KEY_CUSTOM_TAGS.value, {}))
304
304
  existing_custom_tags.update(custom_tags)
305
305
  # NOTE: This can be done with | operator after upgrade from py3.8
306
306
  return {
@@ -49,6 +49,7 @@ from snowflake.ml.feature_store import (
49
49
  feature_group as fg_mod,
50
50
  feature_view_append_only_validation,
51
51
  feature_view_refresh_freq,
52
+ interval_utils,
52
53
  online_service,
53
54
  online_service_http_client,
54
55
  realtime_dataset as rtfv_dataset,
@@ -449,6 +450,59 @@ class _FeatureStoreConfig:
449
450
  return f"{self.database}.{self.schema}"
450
451
 
451
452
 
453
+ def _canonicalize_operational_fields(payload: dict[str, Any]) -> dict[str, Any]:
454
+ """Return a canonicalized copy of an FV operational-field payload (Plan section A4).
455
+
456
+ Closes Bug 2 (``UPDATE_FV`` operational drift on tiled online BFVs) by
457
+ coercing two fields to a single representation that the diff logic in
458
+ ``decl/invariants.py`` and ``decl/planner.py`` consumes symmetrically:
459
+
460
+ * ``online_store_type`` — lowercased and whitespace-stripped. Snowflake
461
+ ``DESCRIBE … TYPE = SPECIFICATION`` returns mixed-case enum values
462
+ with surrounding whitespace; the local compile emits the lowercase
463
+ form. Without canonicalization the diff observes cosmetic drift on
464
+ a clean re-plan.
465
+ * ``target_lag_sec`` — always an ``int`` computed from the deployed
466
+ string form (``payload["target_lag"]``) via
467
+ :func:`interval_utils.interval_to_seconds`. The OFT may return
468
+ either ``"5 minutes"`` or ``"300 SECONDS"`` for the same value;
469
+ diffing on seconds (not strings) makes the comparison stable.
470
+
471
+ The helper is pure: the input ``payload`` is not mutated. Absent or
472
+ ``None`` keys are preserved as-is so callers can chain this through a
473
+ pipeline of canonicalizers without re-introducing fields.
474
+
475
+ The ``"DOWNSTREAM"`` sentinel (CRON-task target_lag) is silently
476
+ skipped: the planner recovers the cron expression via the companion
477
+ Task, and ``interval_to_seconds`` would otherwise crash trying to
478
+ parse it.
479
+
480
+ Args:
481
+ payload: Operational-field dictionary, typically the
482
+ ``spec_payload["spec"]`` shape that ``decl/`` consumes.
483
+
484
+ Returns:
485
+ A new dict (caller's payload is not mutated) with
486
+ ``online_store_type`` and ``target_lag_sec`` in canonical form.
487
+ """
488
+ out = dict(payload)
489
+
490
+ if "online_store_type" in out:
491
+ value = out["online_store_type"]
492
+ if isinstance(value, str):
493
+ out["online_store_type"] = value.strip().lower()
494
+
495
+ if "target_lag" in out and out["target_lag"] is not None:
496
+ target_lag_str = str(out["target_lag"])
497
+ if target_lag_str.strip().upper() != "DOWNSTREAM":
498
+ try:
499
+ out["target_lag_sec"] = int(interval_utils.interval_to_seconds(target_lag_str))
500
+ except (KeyError, ValueError, TypeError):
501
+ pass
502
+
503
+ return out
504
+
505
+
452
506
  def switch_warehouse(
453
507
  f: Callable[Concatenate[FeatureStore, _Args], _RT],
454
508
  ) -> Callable[Concatenate[FeatureStore, _Args], _RT]:
@@ -862,7 +916,12 @@ class FeatureStore:
862
916
 
863
917
  return self.get_entity(entity.name)
864
918
 
865
- def update_entity(self, name: str, *, desc: Optional[str] = None) -> Optional[Entity]:
919
+ def update_entity(
920
+ self,
921
+ name: str,
922
+ *,
923
+ desc: Optional[str] = None,
924
+ ) -> Optional[Entity]:
866
925
  """Update a registered entity with provided information.
867
926
 
868
927
  Args:
@@ -910,9 +969,9 @@ class FeatureStore:
910
969
  return None
911
970
 
912
971
  new_desc = desc if desc is not None else found_rows[0]["DESC"]
972
+ full_name = f"{self._config.full_schema_path}.{self._get_entity_name(name)}"
913
973
 
914
974
  try:
915
- full_name = f"{self._config.full_schema_path}.{self._get_entity_name(name)}"
916
975
  self._session.sql(f"ALTER TAG {full_name} SET COMMENT = {_sql_string_literal(new_desc)}").collect(
917
976
  statement_params=self._telemetry_stmp
918
977
  )
@@ -3159,7 +3218,9 @@ class FeatureStore:
3159
3218
  original_exception=ValueError(f"Cannot find StreamSource with name: {name_id}."),
3160
3219
  )
3161
3220
 
3162
- return StreamSource._from_dict(metadata)
3221
+ stream_source = StreamSource._from_dict(metadata)
3222
+ self._hydrate_stream_source_online_service(stream_source)
3223
+ return stream_source
3163
3224
 
3164
3225
  @dispatch_decorator()
3165
3226
  def stream_ingest(
@@ -3200,20 +3261,26 @@ class FeatureStore:
3200
3261
  src = self.get_stream_source(str(stream_source))
3201
3262
  stream_name_wire = src.name.resolved()
3202
3263
 
3203
- stmp = self._telemetry_stmp if statement_params is None else statement_params
3204
- st = online_service.assert_online_service_running_with_ingest_endpoint(
3205
- self._session,
3206
- self._config.database,
3207
- self._config.schema,
3208
- statement_params=stmp,
3209
- )
3210
- ingest_url = online_service.endpoint_url(st, "ingest", access=self._online_service_access)
3211
- if not ingest_url:
3212
- raise snowml_exceptions.SnowflakeMLException(
3213
- error_code=error_codes.INVALID_ARGUMENT,
3214
- original_exception=ValueError("Online Service returned no ingest endpoint."),
3264
+ # Reuse the ingest endpoint cached on the StreamSource by get_stream_source to
3265
+ # skip the per-call GS status lookup. Fall back to a live status fetch when the
3266
+ # URL is absent (manually constructed StreamSource, or hydrated before the
3267
+ # Online Service was RUNNING).
3268
+ ingest_base = getattr(src, "_postgres_online_ingest_url", None)
3269
+ if not ingest_base:
3270
+ stmp = self._telemetry_stmp if statement_params is None else statement_params
3271
+ st = online_service.assert_online_service_running_with_ingest_endpoint(
3272
+ self._session,
3273
+ self._config.database,
3274
+ self._config.schema,
3275
+ statement_params=stmp,
3215
3276
  )
3216
- ingest_base = ingest_url
3277
+ ingest_url = online_service.endpoint_url(st, "ingest", access=self._online_service_access)
3278
+ if not ingest_url:
3279
+ raise snowml_exceptions.SnowflakeMLException(
3280
+ error_code=error_codes.INVALID_ARGUMENT,
3281
+ original_exception=ValueError("Online Service returned no ingest endpoint."),
3282
+ )
3283
+ ingest_base = ingest_url
3217
3284
 
3218
3285
  expected_cols = _stream_source_schema_field_names(src.schema)
3219
3286
  rows = _normalize_stream_ingest_records(records)
@@ -7921,12 +7988,6 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
7921
7988
  source_refs_meta = self._metadata_manager.get_feature_view_source_refs(name, version)
7922
7989
  source_refs_json = json.dumps(source_refs_meta.sources) if source_refs_meta is not None else None
7923
7990
 
7924
- # Surface the authored source-ref list (JSON-encoded) when a
7925
- # ``FV_SOURCE_REFS`` row exists; otherwise leave the column null.
7926
- # Verbose-only: goes into output_values_extra alongside backup_source.
7927
- source_refs_meta = self._metadata_manager.get_feature_view_source_refs(name, version)
7928
- source_refs_json = json.dumps(source_refs_meta.sources) if source_refs_meta is not None else None
7929
-
7930
7991
  backup_source: Optional[str] = None
7931
7992
  if fv_metadata.is_append_only:
7932
7993
  append_only_meta = self._metadata_manager.get_append_only_metadata(name, version)
@@ -8110,11 +8171,6 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
8110
8171
  source_refs_meta = self._metadata_manager.get_feature_view_source_refs(name.identifier(), version)
8111
8172
  restored_source_refs = source_refs_meta.sources if source_refs_meta is not None else None
8112
8173
 
8113
- # Rehydrate the authored source-ref list onto the reconstructed
8114
- # FV when a ``FV_SOURCE_REFS`` row was persisted at register time.
8115
- source_refs_meta = self._metadata_manager.get_feature_view_source_refs(name.identifier(), version)
8116
- restored_source_refs = source_refs_meta.sources if source_refs_meta is not None else None
8117
-
8118
8174
  if obj_type == _FeatureStoreObjTypes.MANAGED_FEATURE_VIEW:
8119
8175
  df = self._session.sql(query)
8120
8176
  entities = [find_and_compose_entity(n) for n in fv_metadata.entities]
@@ -8272,21 +8328,28 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
8272
8328
 
8273
8329
  return fv
8274
8330
 
8275
- def _resolve_postgres_online_query_url(self, *, log_label: str) -> Optional[str]:
8276
- """Fetch the Postgres OFT query endpoint URL or warn and return ``None``.
8331
+ def _resolve_postgres_online_endpoint_url(
8332
+ self, endpoint_name: str, *, log_label: str, warn: bool = True
8333
+ ) -> Optional[str]:
8334
+ """Fetch a Postgres OFT Online Service endpoint URL or return ``None``.
8277
8335
 
8278
8336
  Failures (status not RUNNING, missing endpoint URL, transient
8279
- SYSTEM$ errors) are downgraded to ``UserWarning`` so callers can
8280
- still construct the target object and see the "Online Service not
8281
- RUNNING" error on first read.
8337
+ SYSTEM$ errors) are downgraded to a return value of ``None`` so callers
8338
+ can still construct the target object and surface the "Online Service
8339
+ not RUNNING" error at use time. When ``warn`` is ``True`` these
8340
+ failures also emit a ``UserWarning``.
8282
8341
 
8283
8342
  Args:
8343
+ endpoint_name: Endpoint to resolve (``"query"`` or ``"ingest"``).
8284
8344
  log_label: Caller name embedded in the warning log
8285
- (e.g. ``"get_feature_view"``, ``"get_feature_group"``).
8345
+ (e.g. ``"get_feature_view"``, ``"get_stream_source"``).
8346
+ warn: When ``True``, emit a ``UserWarning`` on failure. Callers that
8347
+ have their own use-time fallback (e.g. ``stream_ingest``) pass
8348
+ ``False`` to avoid spurious warnings during metadata reads.
8286
8349
 
8287
8350
  Returns:
8288
- The query endpoint URL when the Online Service is RUNNING or
8289
- UPDATING and advertises a ``query`` endpoint; ``None`` otherwise.
8351
+ The endpoint URL when the Online Service is RUNNING or UPDATING and
8352
+ advertises the named endpoint; ``None`` otherwise.
8290
8353
  """
8291
8354
  try:
8292
8355
  st = online_service.fetch_online_service_status(
@@ -8297,30 +8360,62 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
8297
8360
  )
8298
8361
  except Exception as ex:
8299
8362
  logger.warning("Could not fetch Online Service status during %s: %s", log_label, ex)
8363
+ if warn:
8364
+ warnings.warn(
8365
+ online_service.online_service_not_ready_message(),
8366
+ category=UserWarning,
8367
+ stacklevel=4,
8368
+ )
8369
+ return None
8370
+ endpoint = online_service.endpoint_url(st, endpoint_name, access=self._online_service_access)
8371
+ # UPDATING (redeploy in progress) still serves endpoints, so accept it too.
8372
+ if st.status in ("RUNNING", "UPDATING") and endpoint:
8373
+ # Temporary: SYSTEM$ may return host-only URLs until server sends full https URLs.
8374
+ return endpoint
8375
+ if warn:
8300
8376
  warnings.warn(
8301
8377
  online_service.online_service_not_ready_message(),
8302
8378
  category=UserWarning,
8303
8379
  stacklevel=4,
8304
8380
  )
8305
- return None
8306
- query_url = online_service.endpoint_url(st, "query", access=self._online_service_access)
8307
- # UPDATING (redeploy in progress) still serves the query endpoint, so accept it too.
8308
- if st.status in ("RUNNING", "UPDATING") and query_url:
8309
- # Temporary: SYSTEM$ may return host-only query URLs until server sends full https URLs.
8310
- return query_url
8311
- warnings.warn(
8312
- online_service.online_service_not_ready_message(),
8313
- category=UserWarning,
8314
- stacklevel=4,
8315
- )
8316
8381
  return None
8317
8382
 
8383
+ def _resolve_postgres_online_query_url(self, *, log_label: str) -> Optional[str]:
8384
+ """Resolve the Postgres OFT ``query`` endpoint URL (thin wrapper).
8385
+
8386
+ Args:
8387
+ log_label: Caller name embedded in the warning log
8388
+ (e.g. ``"get_feature_view"``, ``"get_feature_group"``).
8389
+
8390
+ Returns:
8391
+ The query endpoint URL when the Online Service is RUNNING or
8392
+ UPDATING and advertises a ``query`` endpoint; ``None`` otherwise.
8393
+ """
8394
+ return self._resolve_postgres_online_endpoint_url("query", log_label=log_label)
8395
+
8318
8396
  def _hydrate_postgres_online_service(self, fv: FeatureView) -> None:
8319
8397
  """Set ``_postgres_online_query_url`` and warn when Postgres online reads are not ready."""
8320
8398
  if not fv.online or fv.online_config is None or fv.online_config.store_type != OnlineStoreType.POSTGRES:
8321
8399
  return
8322
8400
  fv._postgres_online_query_url = self._resolve_postgres_online_query_url(log_label="get_feature_view")
8323
8401
 
8402
+ def _hydrate_stream_source_online_service(self, stream_source: StreamSource) -> None:
8403
+ """Cache the Online Service ingest endpoint URL on a StreamSource for reuse.
8404
+
8405
+ Best-effort: resolves the ``ingest`` endpoint without emitting a
8406
+ ``UserWarning`` (``warn=False``) because ``get_stream_source`` is a
8407
+ metadata read that also backs ``register_stream_source``; a not-yet-RUNNING
8408
+ service should not warn here. ``stream_ingest`` surfaces a clear,
8409
+ actionable error at ingest time via its live fallback when the URL is
8410
+ unavailable.
8411
+
8412
+ Args:
8413
+ stream_source: The StreamSource whose ingest URL should be populated.
8414
+ """
8415
+ stream_source._postgres_online_ingest_url = self._resolve_postgres_online_endpoint_url(
8416
+ "ingest", log_label="get_stream_source", warn=False
8417
+ )
8418
+
8324
8419
  def _hydrate_fg_postgres_online_service(self, fg: FeatureGroup) -> None:
8325
8420
  """Set ``FeatureGroup._postgres_online_query_url`` for read-time use.
8326
8421
 
@@ -8511,6 +8606,11 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
8511
8606
  else:
8512
8607
  source_clause = f"FROM {source_table_name}"
8513
8608
 
8609
+ # A view-backed source only lets the OFT refresh incrementally when it has change tracking
8610
+ # enabled; otherwise the backend silently downgrades the OFT to a FULL refresh. Enable it
8611
+ # before issuing the CREATE so the refresh mode is derived correctly.
8612
+ self._enable_source_view_change_tracking_for_incremental_oft(feature_view, source_table_name)
8613
+
8514
8614
  # Create online feature table
8515
8615
  try:
8516
8616
  query = fv_mod.build_oft_create_sql(
@@ -8536,6 +8636,88 @@ FROM {batch_cte_names[0]}{''.join(merge_join_parts)}
8536
8636
 
8537
8637
  return online_table_name
8538
8638
 
8639
+ def _enable_source_view_change_tracking_for_incremental_oft(
8640
+ self,
8641
+ feature_view: FeatureView,
8642
+ fully_qualified_source_name: str,
8643
+ ) -> None:
8644
+ """Enable change tracking on a POSTGRES-backed OFT's source view so it can refresh incrementally.
8645
+
8646
+ The backend derives a spec-backed (POSTGRES) Online Feature Table's refresh mode from its
8647
+ source object. When that source is a plain View (static/external feature views), change
8648
+ tracking is off by default and the OFT silently falls back to a FULL refresh — an explicit
8649
+ ``INCREMENTAL`` request even errors. Enabling change tracking on the view lets the OFT
8650
+ resolve to an incremental refresh.
8651
+
8652
+ This targets the object the OFT actually reads from at refresh time, and is a no-op
8653
+ otherwise:
8654
+
8655
+ - Managed feature views are backed by a Dynamic Table (change tracking is inherent to an
8656
+ incremental DT and cannot be enabled on a FULL one), so their OFT never reads from a
8657
+ plain view.
8658
+ - Streaming feature views may be backed offline by a view (a non-aggregated SFV with
8659
+ ``refresh_freq is None`` materializes as a View), but their OFT is spec-backed by the
8660
+ UDF-transformed table / stream source (``FROM SPECIFICATION``) and refreshes
8661
+ continuously — it does not read from that offline view, so enabling change tracking on
8662
+ it would not affect the OFT.
8663
+ - Realtime feature views have no offline view at all.
8664
+ - HYBRID_TABLE-backed OFTs are out of scope. This targets the spec-backed refresh-mode
8665
+ derivation used by POSTGRES OFTs, and enabling change tracking has real side effects
8666
+ (it cascades to the view's base tables and requires ``OWNERSHIP`` on them), so we do not
8667
+ newly impose it on the legacy HYBRID_TABLE path — its behavior is left unchanged.
8668
+
8669
+ It is also skipped when the refresh mode is not one that benefits from change tracking
8670
+ (i.e., only AUTO, INCREMENTAL, and the default None proceed; FULL and unknown/future
8671
+ modes are conservatively skipped).
8672
+
8673
+ Args:
8674
+ feature_view: The FeatureView backing the online feature table.
8675
+ fully_qualified_source_name: ``DB.SCHEMA.SOURCE`` object the OFT reads from.
8676
+
8677
+ Raises:
8678
+ SnowflakeMLException: If enabling change tracking fails and the refresh mode is
8679
+ explicitly ``INCREMENTAL``. For ``AUTO`` or unset modes the failure is logged
8680
+ as a warning and the OFT falls back to FULL refresh.
8681
+ """
8682
+ # Only POSTGRES-backed OFTs whose source is a plain View need this. The offline object is a
8683
+ # View exactly when refresh_freq is None (managed FVs are DT-backed); streaming/realtime FVs
8684
+ # are excluded because their OFT does not read from an offline view. HYBRID_TABLE is out of
8685
+ # scope: enabling change tracking has base-table side effects we don't impose on the legacy path.
8686
+ online_config = feature_view.online_config
8687
+ oft_reads_from_source_view = (
8688
+ online_config is not None
8689
+ and online_config.store_type == OnlineStoreType.POSTGRES
8690
+ and feature_view.refresh_freq is None
8691
+ and not feature_view.is_streaming
8692
+ and not feature_view.is_realtime_feature_view
8693
+ )
8694
+ if not oft_reads_from_source_view:
8695
+ return
8696
+
8697
+ refresh_mode = feature_view.refresh_mode
8698
+ if refresh_mode is not None and refresh_mode.upper() not in ("AUTO", "INCREMENTAL"):
8699
+ return
8700
+
8701
+ try:
8702
+ self._session.sql(fv_mod.build_enable_view_change_tracking_sql(fully_qualified_source_name)).collect(
8703
+ statement_params=self._telemetry_stmp
8704
+ )
8705
+ except SnowparkSQLException as e:
8706
+ if refresh_mode is not None and refresh_mode.upper() == "INCREMENTAL":
8707
+ raise snowml_exceptions.SnowflakeMLException(
8708
+ error_code=error_codes.SNOWML_CREATE_FAILED,
8709
+ original_exception=RuntimeError(
8710
+ f"Failed to enable change tracking on source view {fully_qualified_source_name}, "
8711
+ f"which the online feature table requires to refresh incrementally: {e}"
8712
+ ),
8713
+ ) from e
8714
+ logger.warning(
8715
+ "Could not enable change tracking on source view %s; "
8716
+ "the online feature table will use FULL refresh: %s",
8717
+ fully_qualified_source_name,
8718
+ e,
8719
+ )
8720
+
8539
8721
  def _build_batch_feature_view_spec(
8540
8722
  self,
8541
8723
  feature_view: FeatureView,
@@ -2949,6 +2949,27 @@ def build_oft_warehouse_clause(
2949
2949
  return ""
2950
2950
 
2951
2951
 
2952
+ def build_enable_view_change_tracking_sql(fully_qualified_view_name: str) -> str:
2953
+ """Build ``ALTER VIEW ... SET CHANGE_TRACKING = TRUE`` for an OFT source view.
2954
+
2955
+ An Online Feature Table can only resolve to an incremental refresh when the
2956
+ object it reads from exposes change tracking. Managed feature views are
2957
+ backed by a Dynamic Table (change tracking is inherent to an incremental DT
2958
+ and cannot be enabled on a FULL one), but static/external feature views are
2959
+ backed by a plain View that has change tracking disabled by default. Without
2960
+ it the backend silently downgrades the OFT to a FULL refresh. This statement
2961
+ is a no-op when change tracking is already enabled.
2962
+
2963
+ Args:
2964
+ fully_qualified_view_name: ``DB.SCHEMA.VIEW`` the Online Feature Table
2965
+ reads from.
2966
+
2967
+ Returns:
2968
+ The ``ALTER VIEW ... SET CHANGE_TRACKING = TRUE`` SQL.
2969
+ """
2970
+ return f"ALTER VIEW {fully_qualified_view_name} SET CHANGE_TRACKING = TRUE"
2971
+
2972
+
2952
2973
  def build_oft_create_sql(
2953
2974
  *,
2954
2975
  fully_qualified_oft_name: str,
@@ -179,6 +179,9 @@ class StreamSource:
179
179
  self.schema: StructType = schema
180
180
  self.owner: Optional[str] = None
181
181
  self.desc: str = desc
182
+ # Runtime-only cache of the Online Service ingest endpoint URL, populated by
183
+ # FeatureStore.get_stream_source. Not persisted to metadata.
184
+ self._postgres_online_ingest_url: Optional[str] = None
182
185
 
183
186
  def _validate(self, name: str, schema: StructType) -> None:
184
187
  if len(name) > _STREAM_SOURCE_NAME_LENGTH_LIMIT:
@@ -148,3 +148,4 @@ class SpecOptions:
148
148
  spec_overrides: Optional[dict[str, Any]] = None
149
149
  runtime: Optional[str] = None
150
150
  enable_stage_mount_v2: Optional[bool] = True
151
+ artifact_repositories: Optional[list[str]] = None
@@ -48,6 +48,8 @@ def remote(
48
48
  runtime_environment (str): The runtime image to use. Only support image tag or full image URL,
49
49
  e.g. "1.7.1" or "image_repo/image_name:image_tag". When it refers to a full image URL,
50
50
  it should contain image repository, image name and image tag.
51
+ artifact_repositories (list[str]): (Public Preview) A list of artifact repositories to use for
52
+ resolving pip requirements. Each entry is the name of a Snowflake artifact repository.
51
53
  name (str): The name of the job. If not specified, a name will be generated based on the
52
54
  entrypoint file name or function name. A unique suffix is appended to the final name.
53
55
 
@@ -102,6 +102,7 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
102
102
  database: Optional[str] = None,
103
103
  schema: Optional[str] = None,
104
104
  payload: Optional[payload_utils.JobPayload] = None,
105
+ artifact_repositories: Optional[list[str]] = None,
105
106
  ) -> None:
106
107
  self.source = source
107
108
  self.compute_pool = identifier.resolve_identifier(compute_pool)
@@ -122,6 +123,7 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
122
123
  self.runtime_environment = runtime_environment
123
124
  self.overwrite = overwrite
124
125
  self.payload = payload
126
+ self.artifact_repositories = artifact_repositories
125
127
 
126
128
  self._is_registered = False
127
129
 
@@ -197,6 +199,7 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
197
199
  spec_overrides=self.spec_overrides,
198
200
  runtime=self.runtime_environment if self.runtime_environment else None,
199
201
  enable_stage_mount_v2=feature_flags.FeatureFlags.ENABLE_STAGE_MOUNT_V2.is_enabled(),
202
+ artifact_repositories=self.artifact_repositories if self.artifact_repositories else None,
200
203
  )
201
204
 
202
205
  self.job_options = type_utils.JobOptions(
@@ -304,6 +307,9 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
304
307
  target_instances = kwargs.pop("target_instances", 1)
305
308
  min_instances = kwargs.pop("min_instances", target_instances)
306
309
  pip_requirements = kwargs.pop("pip_requirements", None)
310
+ artifact_repositories = kwargs.pop("artifact_repositories", None)
311
+ if artifact_repositories is not None:
312
+ logger.warning("'artifact_repositories' is in public preview since 1.50.0.")
307
313
  external_access_integrations = kwargs.pop("external_access_integrations", None)
308
314
  env_vars = kwargs.pop("env_vars", None)
309
315
  spec_overrides = kwargs.pop("spec_overrides", None)
@@ -368,6 +374,7 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
368
374
  database=database,
369
375
  schema=schema,
370
376
  payload=payload,
377
+ artifact_repositories=artifact_repositories,
371
378
  )
372
379
 
373
380
  @classmethod
@@ -235,6 +235,8 @@ def submit_file(
235
235
  runtime_environment (str): The runtime image to use. Only support image tag or full image URL,
236
236
  e.g. "1.7.1" or "image_repo/image_name:image_tag". When it refers to a full image URL,
237
237
  it should contain image repository, image name and image tag.
238
+ artifact_repositories (list[str]): (Public Preview) A list of artifact repositories to use for
239
+ resolving pip requirements. Each entry is the name of a Snowflake artifact repository.
238
240
  name (str): The name of the job. If not specified, a name will be generated based on the
239
241
  entrypoint file name or function name. A unique suffix is appended to the final name.
240
242
 
@@ -298,6 +300,8 @@ def submit_directory(
298
300
  runtime_environment (str): The runtime image to use. Only support image tag or full image URL,
299
301
  e.g. "1.7.1" or "image_repo/image_name:image_tag". When it refers to a full image URL,
300
302
  it should contain image repository, image name and image tag.
303
+ artifact_repositories (list[str]): (Public Preview) A list of artifact repositories to use for
304
+ resolving pip requirements. Each entry is the name of a Snowflake artifact repository.
301
305
  name (str): The name of the job. If not specified, a name will be generated based on the
302
306
  entrypoint file name or function name. A unique suffix is appended to the final name.
303
307
 
@@ -363,6 +367,8 @@ def submit_from_stage(
363
367
  runtime_environment (str): The runtime image to use. Only support image tag or full image URL,
364
368
  e.g. "1.7.1" or "image_repo/image_name:image_tag". When it refers to a full image URL,
365
369
  it should contain image repository, image name and image tag.
370
+ artifact_repositories (list[str]): (Public Preview) A list of artifact repositories to use for
371
+ resolving pip requirements. Each entry is the name of a Snowflake artifact repository.
366
372
  name (str): The name of the job. If not specified, a name will be generated based on the
367
373
  entrypoint file name or function name. A unique suffix is appended to the final name.
368
374