snowflake-ml-python 1.33.0__tar.gz → 1.35.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 (507) hide show
  1. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/CHANGELOG.md +41 -1
  2. {snowflake_ml_python-1.33.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.35.0}/PKG-INFO +42 -2
  3. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/platform_capabilities.py +3 -5
  4. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +48 -2
  5. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/experiment_tracking.py +83 -1
  6. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/__init__.py +2 -0
  7. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/aggregation.py +12 -118
  8. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/feature_store.py +181 -30
  9. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/feature_view.py +227 -41
  10. snowflake_ml_python-1.35.0/snowflake/ml/feature_store/interval_utils.py +126 -0
  11. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/metadata_manager.py +90 -0
  12. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/spec/builder.py +20 -12
  13. snowflake_ml_python-1.35.0/snowflake/ml/feature_store/stream_config.py +276 -0
  14. snowflake_ml_python-1.35.0/snowflake/ml/feature_store/streaming_registration.py +462 -0
  15. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/tile_sql_generator.py +20 -39
  16. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/fileset/sfcfs.py +5 -1
  17. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/feature_flags.py +1 -1
  18. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +9 -2
  19. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +20 -4
  20. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/decorators.py +0 -1
  21. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/job_definition.py +31 -0
  22. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/manager.py +2 -5
  23. snowflake_ml_python-1.35.0/snowflake/ml/model/_client/model/batch_inference_definition.py +226 -0
  24. snowflake_ml_python-1.35.0/snowflake/ml/model/_client/model/batch_inference_serialization.py +56 -0
  25. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +17 -1
  26. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/model/model_version_impl.py +4 -10
  27. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/ops/param_utils.py +77 -3
  28. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/ops/service_ops.py +56 -62
  29. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +18 -9
  30. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +3 -1
  31. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/sql/model_version.py +4 -4
  32. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/sql/service.py +3 -3
  33. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/custom.py +1 -1
  34. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/__init__.py +22 -0
  35. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/_default.py +74 -0
  36. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/_handler.py +632 -0
  37. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/_openai_chat_wrapper.py +287 -0
  38. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/_task_handler.py +90 -0
  39. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/_utils.py +68 -0
  40. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/conversational.py +52 -0
  41. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/speech.py +39 -0
  42. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/text_generation.py +65 -0
  43. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/video.py +63 -0
  44. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/vision.py +66 -0
  45. snowflake_ml_python-1.35.0/snowflake/ml/model/_packager/model_handlers/huggingface/zero_shot.py +52 -0
  46. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +1 -1
  47. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +19 -10
  48. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +1 -5
  49. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +3 -3
  50. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +1 -1
  51. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/core.py +2 -1
  52. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/snowpark_handler.py +1 -1
  53. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/batch/__init__.py +7 -3
  54. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +3 -3
  55. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +1 -1
  56. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +0 -15
  57. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/registry/registry.py +14 -0
  58. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/version.py +1 -1
  59. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0/snowflake_ml_python.egg-info}/PKG-INFO +42 -2
  60. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake_ml_python.egg-info/SOURCES.txt +17 -1
  61. snowflake_ml_python-1.33.0/snowflake/ml/model/_packager/model_handlers/huggingface.py +0 -1044
  62. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/LICENSE.txt +0 -0
  63. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/README.md +0 -0
  64. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/pyproject.toml +0 -0
  65. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/setup.cfg +0 -0
  66. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/__init__.py +0 -0
  67. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_classify_text.py +0 -0
  68. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_complete.py +0 -0
  69. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_embed_text_1024.py +0 -0
  70. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_embed_text_768.py +0 -0
  71. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_extract_answer.py +0 -0
  72. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_finetune.py +0 -0
  73. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_sentiment.py +0 -0
  74. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_sse_client.py +0 -0
  75. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_summarize.py +0 -0
  76. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_translate.py +0 -0
  77. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/cortex/_util.py +0 -0
  78. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/env.py +0 -0
  79. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/env_utils.py +0 -0
  80. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
  81. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
  82. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
  83. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
  84. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
  85. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
  86. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
  87. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
  88. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
  89. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/file_utils.py +0 -0
  90. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
  91. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
  92. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
  93. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
  94. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/init_utils.py +0 -0
  95. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
  96. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
  97. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
  98. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/telemetry.py +0 -0
  99. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/type_utils.py +0 -0
  100. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
  101. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
  102. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
  103. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
  104. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
  105. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
  106. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
  107. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
  108. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
  109. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
  110. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/result.py +0 -0
  111. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
  112. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
  113. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
  114. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
  115. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
  116. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/tee.py +0 -0
  117. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
  118. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/_internal/utils/url.py +0 -0
  119. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/data/__init__.py +0 -0
  120. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
  121. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/data/data_connector.py +0 -0
  122. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/data/data_ingestor.py +0 -0
  123. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/data/data_source.py +0 -0
  124. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/data/ingestor_utils.py +0 -0
  125. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/data/torch_utils.py +0 -0
  126. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/dataset/__init__.py +0 -0
  127. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/dataset/dataset.py +0 -0
  128. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
  129. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
  130. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
  131. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/__init__.py +0 -0
  132. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
  133. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
  134. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
  135. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_entities/run.py +0 -0
  136. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
  137. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
  138. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_logging/__init__.py +0 -0
  139. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_logging/experiment_logger.py +0 -0
  140. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/_logging/experiment_logging_context.py +0 -0
  141. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/callback/keras.py +0 -0
  142. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
  143. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
  144. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/experiment/utils.py +0 -0
  145. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/access_manager.py +0 -0
  146. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/entity.py +0 -0
  147. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
  148. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
  149. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
  150. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
  151. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
  152. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
  153. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
  154. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
  155. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
  156. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
  157. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
  158. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
  159. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
  160. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
  161. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
  162. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
  163. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
  164. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
  165. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
  166. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
  167. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
  168. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
  169. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/feature.py +0 -0
  170. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/request_source.py +0 -0
  171. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/spec/__init__.py +0 -0
  172. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/spec/enums.py +0 -0
  173. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/spec/models.py +0 -0
  174. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/feature_store/stream_source.py +0 -0
  175. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
  176. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/fileset/fileset.py +0 -0
  177. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/fileset/snowfs.py +0 -0
  178. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/fileset/stage_fs.py +0 -0
  179. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/__init__.py +0 -0
  180. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/__init__.py +0 -0
  181. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/data_utils.py +0 -0
  182. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/dto_schema.py +0 -0
  183. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/exception_utils.py +0 -0
  184. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/legacy.py +0 -0
  185. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/protocols.py +0 -0
  186. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/results.py +0 -0
  187. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_interop/utils.py +0 -0
  188. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
  189. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/arg_protocol.py +0 -0
  190. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
  191. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/payload_utils.py +0 -0
  192. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
  193. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
  194. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
  195. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
  196. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh +0 -0
  197. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/scripts/startup.sh +0 -0
  198. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
  199. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
  200. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/_utils/type_utils.py +0 -0
  201. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/jobs/job.py +0 -0
  202. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/lineage/__init__.py +0 -0
  203. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/lineage/lineage_node.py +0 -0
  204. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/__init__.py +2 -2
  205. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/model/inference_engine_utils.py +0 -0
  206. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
  207. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/ops/deployment_step.py +0 -0
  208. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
  209. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/ops/model_ops.py +0 -0
  210. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/service/import_model_spec_schema.py +0 -0
  211. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
  212. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/sql/model.py +0 -0
  213. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
  214. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
  215. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
  216. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
  217. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
  218. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
  219. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
  220. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
  221. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/infer_function_init_once.py_template +0 -0
  222. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
  223. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
  224. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
  225. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_method/utils.py +0 -0
  226. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
  227. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
  228. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
  229. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
  230. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
  231. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
  232. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
  233. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
  234. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
  235. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/prophet.py +0 -0
  236. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
  237. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
  238. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
  239. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
  240. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +0 -0
  241. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
  242. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
  243. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
  244. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
  245. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
  246. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +0 -0
  247. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
  248. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
  249. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
  250. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
  251. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -0
  252. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
  253. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
  254. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
  255. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
  256. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
  257. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
  258. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
  259. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
  260. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/_signatures/utils.py +0 -0
  261. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/code_path.py +0 -0
  262. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/compute_pool.py +0 -0
  263. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/custom_model.py +0 -0
  264. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/event_handler.py +0 -0
  265. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/inference_engine.py +0 -0
  266. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/model_signature.py +0 -0
  267. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/models/huggingface.py +0 -0
  268. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/models/huggingface_pipeline.py +0 -0
  269. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/openai_signatures.py +0 -0
  270. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/target_platform.py +0 -0
  271. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/task.py +0 -0
  272. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/type_hints.py +0 -0
  273. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/model/volatility.py +0 -0
  274. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
  275. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
  276. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
  277. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
  278. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
  279. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
  280. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
  281. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
  282. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
  283. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
  284. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
  285. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
  286. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
  287. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
  288. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
  289. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
  290. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
  291. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
  292. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
  293. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
  294. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
  295. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
  296. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
  297. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
  298. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
  299. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
  300. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
  301. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
  302. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
  303. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
  304. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
  305. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
  306. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
  307. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
  308. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
  309. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
  310. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
  311. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
  312. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
  313. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
  314. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
  315. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
  316. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
  317. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
  318. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
  319. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
  320. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
  321. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
  322. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
  323. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
  324. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
  325. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
  326. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
  327. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
  328. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
  329. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
  330. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
  331. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
  332. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
  333. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
  334. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
  335. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
  336. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
  337. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
  338. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
  339. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
  340. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
  341. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
  342. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
  343. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
  344. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
  345. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
  346. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
  347. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
  348. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
  349. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
  350. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
  351. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
  352. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
  353. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
  354. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
  355. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
  356. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/framework/base.py +0 -0
  357. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
  358. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
  359. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
  360. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
  361. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
  362. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
  363. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
  364. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
  365. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
  366. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
  367. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
  368. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
  369. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
  370. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
  371. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
  372. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
  373. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
  374. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
  375. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
  376. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
  377. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
  378. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
  379. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
  380. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
  381. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
  382. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
  383. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
  384. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
  385. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
  386. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
  387. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
  388. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
  389. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
  390. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
  391. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
  392. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
  393. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
  394. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
  395. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
  396. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
  397. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
  398. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
  399. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
  400. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
  401. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
  402. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
  403. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
  404. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
  405. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
  406. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
  407. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
  408. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
  409. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
  410. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
  411. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
  412. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
  413. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
  414. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
  415. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
  416. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
  417. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
  418. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
  419. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
  420. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
  421. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
  422. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
  423. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
  424. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
  425. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
  426. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
  427. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
  428. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
  429. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
  430. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
  431. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
  432. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
  433. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
  434. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
  435. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
  436. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
  437. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
  438. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
  439. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
  440. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
  441. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
  442. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
  443. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
  444. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
  445. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
  446. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
  447. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
  448. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
  449. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
  450. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
  451. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
  452. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
  453. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
  454. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
  455. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
  456. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
  457. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
  458. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
  459. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
  460. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
  461. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
  462. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
  463. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
  464. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
  465. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
  466. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
  467. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
  468. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
  469. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
  470. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
  471. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
  472. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
  473. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
  474. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
  475. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
  476. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
  477. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/svm/svc.py +0 -0
  478. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/svm/svr.py +0 -0
  479. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
  480. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
  481. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
  482. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
  483. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
  484. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
  485. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
  486. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
  487. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
  488. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
  489. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
  490. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
  491. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
  492. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
  493. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
  494. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
  495. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
  496. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/monitoring/shap.py +0 -0
  497. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/registry/__init__.py +0 -0
  498. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/registry/_manager/model_manager.py +0 -0
  499. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/utils/authentication.py +0 -0
  500. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/utils/connection_params.py +0 -0
  501. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/utils/html_utils.py +0 -0
  502. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/utils/sparse.py +0 -0
  503. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/utils/sql_client.py +0 -0
  504. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake/ml/utils/stage_file.py +0 -0
  505. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
  506. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake_ml_python.egg-info/requires.txt +0 -0
  507. {snowflake_ml_python-1.33.0 → snowflake_ml_python-1.35.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,43 @@
1
1
  # Release History
2
2
 
3
- ## 1.33.0
3
+ ## 1.35.0
4
+
5
+ ### New Features
6
+
7
+ ### Bug Fixes
8
+
9
+ * Registry: Fixed `ParamSpec.from_mlflow_spec` dropping `shape`, which caused shaped scalar params
10
+ (e.g., array of ints) from MLflow to fail validation during model import.
11
+
12
+ ### Behavior Changes
13
+
14
+ * ML Jobs: `spec_overrides` now validates container keys and warns when keys other than `name` and `secrets`
15
+ are provided. Additional keys are not officially supported and may not behave as expected.
16
+
17
+ ### Deprecations
18
+
19
+ ## 1.34.0 (2026-04-08)
20
+
21
+ ### New Features
22
+
23
+ * Experiment Tracking: Added `list_params` and `list_metrics` methods to retrieve parameters and metrics
24
+ for runs within an experiment. Both methods return a Dataframe and accept an optional `run_name` argument
25
+ to filter to a specific run.
26
+
27
+ ### Bug Fixes
28
+
29
+ * Feature Store: Fixed `generate_dataset()`/`generate_training_set()` SQL generation for Unicode and case-sensitive
30
+ identifiers (for example Japanese column names), ensuring columns are quoted exactly once and preventing SQL
31
+ compilation errors such as `unexpected '<column_name>'`.
32
+
33
+ ### Behavior Changes
34
+
35
+ * Registry: `enable_explainability=True` is now allowed for SPCS-only and non-warehouse-runnable models. Previously
36
+ this raised a `ValueError`.
37
+
38
+ ### Deprecations
39
+
40
+ ## 1.33.0 (2026-03-31)
4
41
 
5
42
  ### New Features
6
43
 
@@ -124,6 +161,9 @@
124
161
 
125
162
  ### Behavior Changes
126
163
 
164
+ * Dependencies: Removed `snowflake.core` as a runtime dependency. If you use `snowflake.core` (e.g.,
165
+ `TaskDag`, `Root`, `Task`), add `snowflake.core` explicitly to your dependencies.
166
+
127
167
  ### Deprecations
128
168
 
129
169
  ## 1.28.0 (2026-02-17)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: snowflake-ml-python
3
- Version: 1.33.0
3
+ Version: 1.35.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:
@@ -416,7 +416,44 @@ 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.33.0
419
+ ## 1.35.0
420
+
421
+ ### New Features
422
+
423
+ ### Bug Fixes
424
+
425
+ * Registry: Fixed `ParamSpec.from_mlflow_spec` dropping `shape`, which caused shaped scalar params
426
+ (e.g., array of ints) from MLflow to fail validation during model import.
427
+
428
+ ### Behavior Changes
429
+
430
+ * ML Jobs: `spec_overrides` now validates container keys and warns when keys other than `name` and `secrets`
431
+ are provided. Additional keys are not officially supported and may not behave as expected.
432
+
433
+ ### Deprecations
434
+
435
+ ## 1.34.0 (2026-04-08)
436
+
437
+ ### New Features
438
+
439
+ * Experiment Tracking: Added `list_params` and `list_metrics` methods to retrieve parameters and metrics
440
+ for runs within an experiment. Both methods return a Dataframe and accept an optional `run_name` argument
441
+ to filter to a specific run.
442
+
443
+ ### Bug Fixes
444
+
445
+ * Feature Store: Fixed `generate_dataset()`/`generate_training_set()` SQL generation for Unicode and case-sensitive
446
+ identifiers (for example Japanese column names), ensuring columns are quoted exactly once and preventing SQL
447
+ compilation errors such as `unexpected '<column_name>'`.
448
+
449
+ ### Behavior Changes
450
+
451
+ * Registry: `enable_explainability=True` is now allowed for SPCS-only and non-warehouse-runnable models. Previously
452
+ this raised a `ValueError`.
453
+
454
+ ### Deprecations
455
+
456
+ ## 1.33.0 (2026-03-31)
420
457
 
421
458
  ### New Features
422
459
 
@@ -540,6 +577,9 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
540
577
 
541
578
  ### Behavior Changes
542
579
 
580
+ * Dependencies: Removed `snowflake.core` as a runtime dependency. If you use `snowflake.core` (e.g.,
581
+ `TaskDag`, `Root`, `Task`), add `snowflake.core` explicitly to your dependencies.
582
+
543
583
  ### Deprecations
544
584
 
545
585
  ## 1.28.0 (2026-02-17)
@@ -1,7 +1,7 @@
1
1
  import json
2
2
  import logging
3
3
  from contextlib import contextmanager
4
- from typing import Any, Optional
4
+ from typing import Any, Iterator, Optional
5
5
 
6
6
  from packaging import version
7
7
 
@@ -57,13 +57,11 @@ class PlatformCapabilities:
57
57
  def clear_mock_features(cls) -> None:
58
58
  cls._mock_features = None
59
59
 
60
- # For contextmanager, we need to have return type Iterator[Never]. However, Never type is introduced only in
61
- # Python 3.11. So, we are ignoring the type for this method.
62
60
  _dummy_features: dict[str, Any] = {"dummy": "dummy"}
63
61
 
64
- @classmethod # type: ignore[arg-type]
62
+ @classmethod
65
63
  @contextmanager
66
- def mock_features(cls, features: dict[str, Any] = _dummy_features) -> None: # type: ignore[misc]
64
+ def mock_features(cls, features: dict[str, Any] = _dummy_features) -> Iterator[None]:
67
65
  logger.debug(f"Setting mock features: {features}")
68
66
  cls.set_mock_features(features)
69
67
  try:
@@ -1,16 +1,62 @@
1
- from typing import Optional
1
+ from typing import Any, Optional
2
2
 
3
3
  from snowflake.ml._internal import telemetry
4
4
  from snowflake.ml._internal.utils import query_result_checker, sql_identifier
5
5
  from snowflake.ml.experiment._client import artifact
6
6
  from snowflake.ml.model._client.sql import _base
7
7
  from snowflake.ml.utils import sql_client
8
- from snowflake.snowpark import file_operation, row, session
8
+ from snowflake.snowpark import dataframe, file_operation, row, session, types
9
9
 
10
10
  RUN_NAME_COL_NAME = "name"
11
11
  RUN_METADATA_COL_NAME = "metadata"
12
12
 
13
13
 
14
+ def pivot_run_attributes(
15
+ sp_session: session.Session,
16
+ rows: list[row.Row],
17
+ run_names: list[str],
18
+ cast_value: Optional[type] = None,
19
+ ) -> dataframe.DataFrame:
20
+ """Pivot SHOW RUN METRICS/PARAMETERS rows into one row per run.
21
+
22
+ Each row is expected to have "run_name", "name", and "value" keys.
23
+ Returns a Snowpark DataFrame with a "run_name" column and one column per distinct
24
+ attribute name (sorted alphabetically). Runs present in ``run_names`` but absent
25
+ from ``rows`` appear with all-NULL attribute columns.
26
+
27
+ Args:
28
+ sp_session: Snowpark session used to create the result DataFrame.
29
+ rows: Collected rows from a SHOW RUN METRICS/PARAMETERS command.
30
+ run_names: Exhaustive list of run names (from SHOW RUNS) to include in the output.
31
+ cast_value: If provided, cast each value with this callable (e.g. ``float`` for metrics).
32
+ Values that fail to cast are set to ``None``.
33
+
34
+ Returns:
35
+ A Snowpark DataFrame with a "run_name" column and one column per distinct attribute name.
36
+ """
37
+ pivoted: dict[str, dict[str, Any]] = {name: {} for name in run_names}
38
+ attr_names: set[str] = set()
39
+ for r in rows:
40
+ d = r.as_dict()
41
+ value = d["value"]
42
+ if cast_value is not None:
43
+ try:
44
+ value = cast_value(value)
45
+ except (ValueError, TypeError):
46
+ value = None
47
+ pivoted.setdefault(d["run_name"], {})[d["name"]] = value
48
+ attr_names.add(d["name"])
49
+
50
+ col_order = sorted(attr_names)
51
+ data = [[run_name] + [attrs.get(c) for c in col_order] for run_name, attrs in pivoted.items()]
52
+ value_type = types.DoubleType() if cast_value is float else types.StringType()
53
+ schema = types.StructType(
54
+ [types.StructField('"run_name"', types.StringType())]
55
+ + [types.StructField(f'"{c}"', value_type) for c in col_order]
56
+ )
57
+ return sp_session.create_dataframe(data, schema=schema)
58
+
59
+
14
60
  class ExperimentTrackingSQLClient(_base._BaseSQLClient):
15
61
  def __init__(
16
62
  self,
@@ -478,6 +478,89 @@ class ExperimentTracking:
478
478
  file_path=file_path,
479
479
  )
480
480
 
481
+ def list_metrics(self, run_name: Optional[str] = None) -> snowpark.DataFrame:
482
+ """
483
+ List metrics for runs within the current experiment.
484
+
485
+ When a metric is logged at multiple steps, the returned value corresponds to the highest step.
486
+
487
+ The returned DataFrame has a ``run_name`` column (str) and one float column per distinct metric name.
488
+ Runs that did not log a given metric have ``NULL`` for that column.
489
+
490
+ Example output::
491
+
492
+ run_name accuracy loss f1
493
+ 0 RUN_1 0.95 0.05 0.90
494
+ 1 RUN_2 0.90 0.10 NULL
495
+
496
+ Args:
497
+ run_name: Name of the run to list metrics from. If None, lists metrics for all runs in the current
498
+ experiment.
499
+
500
+ Returns:
501
+ A Snowpark DataFrame (one row per run). Use ``.to_pandas()`` for a pandas DataFrame or
502
+ ``.collect()`` for a list of Row objects.
503
+
504
+ Raises:
505
+ RuntimeError: If no experiment is currently set.
506
+ """
507
+ if not self._experiment:
508
+ raise RuntimeError("No experiment set. Please use the `set_experiment` method before listing metrics.")
509
+
510
+ if run_name:
511
+ run_names = [run_name]
512
+ else:
513
+ runs = self._sql_client.show_runs_in_experiment(experiment_name=self._experiment.name)
514
+ run_names = [r[sql_client.RUN_NAME_COL_NAME] for r in runs]
515
+
516
+ rows = self._sql_client.show_run_metrics_in_experiment(
517
+ experiment_name=self._experiment.name,
518
+ run_name=sql_identifier.SqlIdentifier(run_name) if run_name else None,
519
+ )
520
+
521
+ return sql_client.pivot_run_attributes(self._session, rows, run_names=run_names, cast_value=float)
522
+
523
+ def list_params(self, run_name: Optional[str] = None) -> snowpark.DataFrame:
524
+ """
525
+ List parameters for runs within the current experiment.
526
+
527
+ The returned DataFrame has a ``run_name`` column (str) and one string column per distinct parameter name.
528
+ Use ``.cast()`` for numeric comparisons on parameter values. Runs that did not log a given parameter
529
+ have ``NULL`` for that column.
530
+
531
+ Example output::
532
+
533
+ run_name learning_rate batch_size optimizer
534
+ 0 RUN_1 0.01 32 adam
535
+ 1 RUN_2 0.02 64 NULL
536
+
537
+ Args:
538
+ run_name: Name of the run to list parameters from. If None, lists parameters for all runs in the current
539
+ experiment.
540
+
541
+ Returns:
542
+ A Snowpark DataFrame (one row per run). Use ``.to_pandas()`` for a pandas DataFrame or
543
+ ``.collect()`` for a list of Row objects.
544
+
545
+ Raises:
546
+ RuntimeError: If no experiment is currently set.
547
+ """
548
+ if not self._experiment:
549
+ raise RuntimeError("No experiment set. Please use the `set_experiment` method before listing parameters.")
550
+
551
+ if run_name:
552
+ run_names = [run_name]
553
+ else:
554
+ runs = self._sql_client.show_runs_in_experiment(experiment_name=self._experiment.name)
555
+ run_names = [r[sql_client.RUN_NAME_COL_NAME] for r in runs]
556
+
557
+ rows = self._sql_client.show_run_parameters_in_experiment(
558
+ experiment_name=self._experiment.name,
559
+ run_name=sql_identifier.SqlIdentifier(run_name) if run_name else None,
560
+ )
561
+
562
+ return sql_client.pivot_run_attributes(self._session, rows, run_names=run_names)
563
+
481
564
  def list_artifacts(
482
565
  self,
483
566
  run_name: str,
@@ -599,7 +682,6 @@ class ExperimentTracking:
599
682
  scheme: str = "https",
600
683
  host: str = "app.snowflake.com",
601
684
  ) -> None:
602
-
603
685
  experiment_url = (
604
686
  f"{scheme}://{host}/_deeplink/#/experiments"
605
687
  f"/databases/{quote(str(self._database_name))}"
@@ -5,6 +5,7 @@ from snowflake.ml._internal import init_utils
5
5
  from .access_manager import setup_feature_store
6
6
  from .feature import Feature
7
7
  from .feature_view import RollupConfig
8
+ from .stream_config import StreamConfig
8
9
  from .stream_source import StreamSource
9
10
 
10
11
  pkg_dir = os.path.dirname(__file__)
@@ -17,5 +18,6 @@ __all__ = list(exportable_classes.keys()) + [
17
18
  "setup_feature_store",
18
19
  "Feature",
19
20
  "RollupConfig",
21
+ "StreamConfig",
20
22
  "StreamSource",
21
23
  ]
@@ -6,12 +6,18 @@ that are computed using a tile-based approach for efficiency and correctness.
6
6
 
7
7
  from __future__ import annotations
8
8
 
9
- import re
10
9
  from dataclasses import dataclass, field
11
10
  from enum import Enum
12
11
  from typing import Any
13
12
 
14
13
  from snowflake.ml._internal.utils.sql_identifier import SqlIdentifier
14
+ from snowflake.ml.feature_store.interval_utils import ( # noqa: F401 - re-export
15
+ LIFETIME_WINDOW as LIFETIME_WINDOW,
16
+ format_interval_for_snowflake as format_interval_for_snowflake,
17
+ interval_to_seconds as interval_to_seconds,
18
+ is_lifetime_window as is_lifetime_window,
19
+ parse_interval as parse_interval,
20
+ )
15
21
 
16
22
 
17
23
  class AggregationType(Enum):
@@ -76,127 +82,11 @@ class AggregationType(Enum):
76
82
  )
77
83
 
78
84
 
79
- # Special window value for lifetime aggregations
80
- LIFETIME_WINDOW = "lifetime"
81
-
82
85
  # Internal column name prefixes used in tile tables.
83
86
  # WARNING: Changing these will break existing registered tiled feature views.
84
87
  _PARTIAL_COL_PREFIX = "_PARTIAL_"
85
88
  _CUMULATIVE_COL_PREFIX = "_CUM_"
86
89
 
87
- # Regex pattern for interval parsing: "1h", "24 hours", "30 minutes", etc.
88
- _INTERVAL_PATTERN = re.compile(
89
- r"^\s*(\d+)\s*(s|sec|secs|second|seconds|m|min|mins|minute|minutes|h|hr|hrs|hour|hours|d|day|days)\s*$",
90
- re.IGNORECASE,
91
- )
92
-
93
- # Mapping of interval unit aliases to canonical Snowflake units
94
- _INTERVAL_UNIT_MAP = {
95
- "s": "SECOND",
96
- "sec": "SECOND",
97
- "secs": "SECOND",
98
- "second": "SECOND",
99
- "seconds": "SECOND",
100
- "m": "MINUTE",
101
- "min": "MINUTE",
102
- "mins": "MINUTE",
103
- "minute": "MINUTE",
104
- "minutes": "MINUTE",
105
- "h": "HOUR",
106
- "hr": "HOUR",
107
- "hrs": "HOUR",
108
- "hour": "HOUR",
109
- "hours": "HOUR",
110
- "d": "DAY",
111
- "day": "DAY",
112
- "days": "DAY",
113
- }
114
-
115
- # Seconds per unit for calculating window sizes
116
- _SECONDS_PER_UNIT = {
117
- "SECOND": 1,
118
- "MINUTE": 60,
119
- "HOUR": 3600,
120
- "DAY": 86400,
121
- }
122
-
123
-
124
- def is_lifetime_window(window: str) -> bool:
125
- """Check if a window string represents a lifetime aggregation.
126
-
127
- Args:
128
- window: The window string to check.
129
-
130
- Returns:
131
- True if the window is "lifetime", False otherwise.
132
- """
133
- return window.lower().strip() == LIFETIME_WINDOW
134
-
135
-
136
- def parse_interval(interval: str) -> tuple[int, str]:
137
- """Parse an interval string into (value, unit) tuple.
138
-
139
- Args:
140
- interval: Interval string like "1h", "24 hours", "30 minutes".
141
- Note: "lifetime" is NOT a valid interval - use is_lifetime_window() first.
142
-
143
- Returns:
144
- Tuple of (numeric_value, snowflake_unit) e.g. (1, "HOUR").
145
-
146
- Raises:
147
- ValueError: If the interval format is invalid.
148
- """
149
- if is_lifetime_window(interval):
150
- raise ValueError(
151
- f"'{interval}' is not a numeric interval. " f"Use is_lifetime_window() to check for lifetime windows."
152
- )
153
-
154
- match = _INTERVAL_PATTERN.match(interval)
155
- if not match:
156
- raise ValueError(
157
- f"Invalid interval format: '{interval}'. "
158
- f"Expected format: '<number> <unit>' where unit is one of: "
159
- f"seconds, minutes, hours, days (or abbreviations s, m, h, d)"
160
- )
161
-
162
- value = int(match.group(1))
163
- unit_str = match.group(2).lower()
164
- unit = _INTERVAL_UNIT_MAP[unit_str]
165
-
166
- if value <= 0:
167
- raise ValueError(f"Interval value must be positive, got: {value}")
168
-
169
- return value, unit
170
-
171
-
172
- def interval_to_seconds(interval: str) -> int:
173
- """Convert an interval string to total seconds.
174
-
175
- Args:
176
- interval: Interval string like "1h", "24 hours".
177
- Note: "lifetime" is NOT supported - returns -1 as sentinel.
178
-
179
- Returns:
180
- Total seconds represented by the interval, or -1 for lifetime.
181
- """
182
- if is_lifetime_window(interval):
183
- return -1 # Sentinel value for lifetime
184
- value, unit = parse_interval(interval)
185
- return value * _SECONDS_PER_UNIT[unit]
186
-
187
-
188
- def format_interval_for_snowflake(interval: str) -> str:
189
- """Format an interval string for use in Snowflake SQL.
190
-
191
- Args:
192
- interval: Interval string like "1h", "24 hours".
193
-
194
- Returns:
195
- Formatted string like "HOUR" or "DAY" for use with DATEADD/TIME_SLICE.
196
- """
197
- _, unit = parse_interval(interval)
198
- return unit
199
-
200
90
 
201
91
  @dataclass(frozen=True)
202
92
  class AggregationSpec:
@@ -232,9 +122,13 @@ class AggregationSpec:
232
122
  # Validate window format (allow "lifetime" as special case)
233
123
  if not is_lifetime_window(self.window):
234
124
  try:
235
- interval_to_seconds(self.window)
125
+ window_seconds = interval_to_seconds(self.window)
236
126
  except ValueError as e:
237
127
  raise ValueError(f"Invalid window for aggregation '{self.output_column}': {e}") from e
128
+ if window_seconds <= 0:
129
+ raise ValueError(
130
+ f"Aggregation window must be positive for '{self.output_column}', got: '{self.window}'"
131
+ )
238
132
 
239
133
  # Validate offset format (if not "0")
240
134
  # Note: offset is not allowed with lifetime windows