snowflake-ml-python 1.12.0__tar.gz → 1.13.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 (453) hide show
  1. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/CHANGELOG.md +16 -0
  2. {snowflake_ml_python-1.12.0/snowflake_ml_python.egg-info → snowflake_ml_python-1.13.0}/PKG-INFO +17 -1
  3. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/telemetry.py +3 -1
  4. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/experiment_tracking.py +24 -2
  5. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/scripts/mljob_launcher.py +11 -1
  6. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/job.py +5 -2
  7. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/manager.py +29 -7
  8. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/model/batch_inference_specs.py +3 -5
  9. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/model/model_version_impl.py +5 -4
  10. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/ops/model_ops.py +42 -9
  11. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/ops/service_ops.py +2 -0
  12. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/service/model_deployment_spec.py +3 -0
  13. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/service/model_deployment_spec_schema.py +1 -0
  14. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/sql/service.py +4 -0
  15. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/huggingface_pipeline.py +103 -21
  16. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/xgboost.py +5 -0
  17. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_meta/model_meta_schema.py +1 -0
  18. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/models/huggingface_pipeline.py +23 -0
  19. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/version.py +1 -1
  20. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0/snowflake_ml_python.egg-info}/PKG-INFO +17 -1
  21. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/LICENSE.txt +0 -0
  22. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/README.md +0 -0
  23. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/pyproject.toml +0 -0
  24. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/setup.cfg +0 -0
  25. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/__init__.py +0 -0
  26. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_classify_text.py +0 -0
  27. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_complete.py +0 -0
  28. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_embed_text_1024.py +0 -0
  29. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_embed_text_768.py +0 -0
  30. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_extract_answer.py +0 -0
  31. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_finetune.py +0 -0
  32. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_sentiment.py +0 -0
  33. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_sse_client.py +0 -0
  34. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_summarize.py +0 -0
  35. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_translate.py +0 -0
  36. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/cortex/_util.py +0 -0
  37. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/env.py +0 -0
  38. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/env_utils.py +0 -0
  39. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/dataset_error_messages.py +0 -0
  40. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/dataset_errors.py +0 -0
  41. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/error_codes.py +0 -0
  42. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/error_messages.py +0 -0
  43. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/exceptions.py +0 -0
  44. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/fileset_error_messages.py +0 -0
  45. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/fileset_errors.py +0 -0
  46. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/modeling_error_messages.py +0 -0
  47. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/exceptions/sql_error_codes.py +0 -0
  48. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/file_utils.py +0 -0
  49. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/human_readable_id/adjectives.txt +0 -0
  50. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/human_readable_id/animals.txt +0 -0
  51. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/human_readable_id/hrid_generator.py +0 -0
  52. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/human_readable_id/hrid_generator_base.py +0 -0
  53. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/init_utils.py +0 -0
  54. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/lineage/lineage_utils.py +0 -0
  55. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/migrator_utils.py +0 -0
  56. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/platform_capabilities.py +0 -0
  57. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/relax_version_strategy.py +0 -0
  58. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/type_utils.py +0 -0
  59. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/connection_params.py +0 -0
  60. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/db_utils.py +0 -0
  61. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/formatting.py +0 -0
  62. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/identifier.py +0 -0
  63. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/import_utils.py +0 -0
  64. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/jwt_generator.py +0 -0
  65. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/mixins.py +0 -0
  66. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/parallelize.py +0 -0
  67. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/pkg_version_utils.py +0 -0
  68. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/query_result_checker.py +0 -0
  69. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/result.py +0 -0
  70. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/service_logger.py +0 -0
  71. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/snowflake_env.py +0 -0
  72. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/snowpark_dataframe_utils.py +0 -0
  73. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/sql_identifier.py +0 -0
  74. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/table_manager.py +0 -0
  75. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/_internal/utils/temp_file_utils.py +0 -0
  76. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/data/__init__.py +0 -0
  77. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/data/_internal/arrow_ingestor.py +0 -0
  78. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/data/data_connector.py +0 -0
  79. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/data/data_ingestor.py +0 -0
  80. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/data/data_source.py +0 -0
  81. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/data/ingestor_utils.py +0 -0
  82. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/data/torch_utils.py +0 -0
  83. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/dataset/__init__.py +0 -0
  84. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/dataset/dataset.py +0 -0
  85. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/dataset/dataset_factory.py +0 -0
  86. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/dataset/dataset_metadata.py +0 -0
  87. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/dataset/dataset_reader.py +0 -0
  88. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/__init__.py +0 -0
  89. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/_client/artifact.py +0 -0
  90. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/_client/experiment_tracking_sql_client.py +0 -0
  91. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/_entities/__init__.py +0 -0
  92. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/_entities/experiment.py +0 -0
  93. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/_entities/run.py +0 -0
  94. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/_entities/run_metadata.py +0 -0
  95. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/_experiment_info.py +0 -0
  96. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/callback/keras.py +0 -0
  97. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/callback/lightgbm.py +0 -0
  98. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/callback/xgboost.py +0 -0
  99. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/experiment/utils.py +0 -0
  100. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/__init__.py +0 -0
  101. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/access_manager.py +0 -0
  102. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/entity.py +0 -0
  103. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/airline_features/entities.py +0 -0
  104. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/airline_features/features/plane_features.py +0 -0
  105. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/airline_features/features/weather_features.py +0 -0
  106. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/airline_features/source.yaml +0 -0
  107. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/citibike_trip_features/entities.py +0 -0
  108. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/station_feature.py +0 -0
  109. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/citibike_trip_features/features/trip_feature.py +0 -0
  110. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/citibike_trip_features/source.yaml +0 -0
  111. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/example_helper.py +0 -0
  112. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/entities.py +0 -0
  113. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/location_features.py +0 -0
  114. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/features/trip_features.py +0 -0
  115. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/new_york_taxi_features/source.yaml +0 -0
  116. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/source_data/airline.yaml +0 -0
  117. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/source_data/citibike_trips.yaml +0 -0
  118. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/source_data/fraud_transactions.yaml +0 -0
  119. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/source_data/nyc_yellow_trips.yaml +0 -0
  120. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/source_data/winequality_red.yaml +0 -0
  121. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/wine_quality_features/entities.py +0 -0
  122. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/managed_wine_features.py +0 -0
  123. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/wine_quality_features/features/static_wine_features.py +0 -0
  124. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/examples/wine_quality_features/source.yaml +0 -0
  125. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/feature_store.py +0 -0
  126. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/feature_store/feature_view.py +0 -0
  127. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/fileset/embedded_stage_fs.py +0 -0
  128. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/fileset/fileset.py +0 -0
  129. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/fileset/sfcfs.py +0 -0
  130. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/fileset/snowfs.py +0 -0
  131. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/fileset/stage_fs.py +0 -0
  132. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/__init__.py +0 -0
  133. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/__init__.py +0 -0
  134. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/constants.py +0 -0
  135. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/feature_flags.py +0 -0
  136. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/function_payload_utils.py +0 -0
  137. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/interop_utils.py +0 -0
  138. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/payload_utils.py +0 -0
  139. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/query_helper.py +0 -0
  140. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/runtime_env_utils.py +0 -0
  141. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/scripts/constants.py +0 -0
  142. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/scripts/get_instance_ip.py +0 -0
  143. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/scripts/signal_workers.py +0 -0
  144. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/scripts/worker_shutdown_listener.py +0 -0
  145. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/spec_utils.py +0 -0
  146. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/stage_utils.py +0 -0
  147. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/_utils/types.py +0 -0
  148. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/jobs/decorators.py +0 -0
  149. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/lineage/__init__.py +0 -0
  150. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/lineage/lineage_node.py +0 -0
  151. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/__init__.py +0 -0
  152. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/model/model_impl.py +0 -0
  153. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/ops/metadata_ops.py +0 -0
  154. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/sql/_base.py +0 -0
  155. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/sql/model.py +0 -0
  156. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/sql/model_version.py +0 -0
  157. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/sql/stage.py +0 -0
  158. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_client/sql/tag.py +0 -0
  159. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_composer.py +0 -0
  160. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest.py +0 -0
  161. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_manifest/model_manifest_schema.py +0 -0
  162. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_method/constants.py +0 -0
  163. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_method/function_generator.py +0 -0
  164. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_method/infer_function.py_template +0 -0
  165. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_method/infer_partitioned.py_template +0 -0
  166. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_method/infer_table_function.py_template +0 -0
  167. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_method/model_method.py +0 -0
  168. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_model_composer/model_user_file/model_user_file.py +0 -0
  169. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_env/model_env.py +0 -0
  170. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handler.py +0 -0
  171. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/_base.py +0 -0
  172. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/_utils.py +0 -0
  173. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/catboost.py +0 -0
  174. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/custom.py +0 -0
  175. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/keras.py +0 -0
  176. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/lightgbm.py +0 -0
  177. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/mlflow.py +0 -0
  178. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/pytorch.py +0 -0
  179. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/sentence_transformers.py +0 -0
  180. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/sklearn.py +0 -0
  181. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/snowmlmodel.py +0 -0
  182. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/tensorflow.py +0 -0
  183. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers/torchscript.py +0 -0
  184. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers_migrator/base_migrator.py +0 -0
  185. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers_migrator/pytorch_migrator_2023_12_01.py +0 -0
  186. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2023_12_01.py +0 -0
  187. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers_migrator/tensorflow_migrator_2025_01_01.py +0 -0
  188. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_handlers_migrator/torchscript_migrator_2023_12_01.py +0 -0
  189. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_meta/model_blob_meta.py +0 -0
  190. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_meta/model_meta.py +0 -0
  191. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_meta_migrator/base_migrator.py +0 -0
  192. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_plans.py +0 -0
  193. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_meta_migrator/migrator_v1.py +0 -0
  194. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_packager.py +0 -0
  195. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_runtime/_snowml_inference_alternative_requirements.py +0 -0
  196. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_runtime/model_runtime.py +0 -0
  197. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_packager/model_task/model_task_utils.py +0 -0
  198. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/base_handler.py +0 -0
  199. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/builtins_handler.py +0 -0
  200. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/core.py +0 -0
  201. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/dmatrix_handler.py +0 -0
  202. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/numpy_handler.py +0 -0
  203. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/pandas_handler.py +0 -0
  204. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/pytorch_handler.py +0 -0
  205. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/snowpark_handler.py +0 -0
  206. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/tensorflow_handler.py +0 -0
  207. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/_signatures/utils.py +0 -0
  208. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/custom_model.py +0 -0
  209. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/event_handler.py +0 -0
  210. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/inference_engine.py +0 -0
  211. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/model_signature.py +0 -0
  212. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/openai_signatures.py +0 -0
  213. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/target_platform.py +0 -0
  214. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/task.py +0 -0
  215. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/model/type_hints.py +0 -0
  216. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/estimator_utils.py +0 -0
  217. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_handlers.py +0 -0
  218. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/local_implementations/pandas_trainer.py +0 -0
  219. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/model_specifications.py +0 -0
  220. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/model_trainer.py +0 -0
  221. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/model_trainer_builder.py +0 -0
  222. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/model_transformer_builder.py +0 -0
  223. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_hpo_trainer.py +0 -0
  224. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/snowpark_implementations/distributed_search_udf_file.py +0 -0
  225. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_handlers.py +0 -0
  226. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/snowpark_implementations/snowpark_trainer.py +0 -0
  227. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/snowpark_implementations/xgboost_external_memory_trainer.py +0 -0
  228. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/_internal/transformer_protocols.py +0 -0
  229. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/calibration/__init__.py +0 -0
  230. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/calibration/calibrated_classifier_cv.py +0 -0
  231. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/__init__.py +0 -0
  232. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/affinity_propagation.py +0 -0
  233. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/agglomerative_clustering.py +0 -0
  234. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/birch.py +0 -0
  235. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/bisecting_k_means.py +0 -0
  236. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/dbscan.py +0 -0
  237. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/feature_agglomeration.py +0 -0
  238. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/k_means.py +0 -0
  239. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/mean_shift.py +0 -0
  240. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/mini_batch_k_means.py +0 -0
  241. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/optics.py +0 -0
  242. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/spectral_biclustering.py +0 -0
  243. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/spectral_clustering.py +0 -0
  244. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/cluster/spectral_coclustering.py +0 -0
  245. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/compose/__init__.py +0 -0
  246. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/compose/column_transformer.py +0 -0
  247. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/compose/transformed_target_regressor.py +0 -0
  248. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/__init__.py +0 -0
  249. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/elliptic_envelope.py +0 -0
  250. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/empirical_covariance.py +0 -0
  251. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/graphical_lasso.py +0 -0
  252. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/graphical_lasso_cv.py +0 -0
  253. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/ledoit_wolf.py +0 -0
  254. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/min_cov_det.py +0 -0
  255. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/oas.py +0 -0
  256. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/covariance/shrunk_covariance.py +0 -0
  257. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/__init__.py +0 -0
  258. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/dictionary_learning.py +0 -0
  259. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/factor_analysis.py +0 -0
  260. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/fast_ica.py +0 -0
  261. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/incremental_pca.py +0 -0
  262. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/kernel_pca.py +0 -0
  263. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/mini_batch_dictionary_learning.py +0 -0
  264. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/mini_batch_sparse_pca.py +0 -0
  265. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/pca.py +0 -0
  266. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/sparse_pca.py +0 -0
  267. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/decomposition/truncated_svd.py +0 -0
  268. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/discriminant_analysis/__init__.py +0 -0
  269. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/discriminant_analysis/linear_discriminant_analysis.py +0 -0
  270. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/discriminant_analysis/quadratic_discriminant_analysis.py +0 -0
  271. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/__init__.py +0 -0
  272. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/ada_boost_classifier.py +0 -0
  273. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/ada_boost_regressor.py +0 -0
  274. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/bagging_classifier.py +0 -0
  275. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/bagging_regressor.py +0 -0
  276. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/extra_trees_classifier.py +0 -0
  277. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/extra_trees_regressor.py +0 -0
  278. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/gradient_boosting_classifier.py +0 -0
  279. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/gradient_boosting_regressor.py +0 -0
  280. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_classifier.py +0 -0
  281. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/hist_gradient_boosting_regressor.py +0 -0
  282. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/isolation_forest.py +0 -0
  283. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/random_forest_classifier.py +0 -0
  284. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/random_forest_regressor.py +0 -0
  285. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/stacking_regressor.py +0 -0
  286. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/voting_classifier.py +0 -0
  287. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/ensemble/voting_regressor.py +0 -0
  288. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/__init__.py +0 -0
  289. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/generic_univariate_select.py +0 -0
  290. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/select_fdr.py +0 -0
  291. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/select_fpr.py +0 -0
  292. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/select_fwe.py +0 -0
  293. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/select_k_best.py +0 -0
  294. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/select_percentile.py +0 -0
  295. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/sequential_feature_selector.py +0 -0
  296. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/feature_selection/variance_threshold.py +0 -0
  297. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/framework/_utils.py +0 -0
  298. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/framework/base.py +0 -0
  299. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/gaussian_process/__init__.py +0 -0
  300. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_classifier.py +0 -0
  301. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/gaussian_process/gaussian_process_regressor.py +0 -0
  302. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/impute/__init__.py +0 -0
  303. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/impute/iterative_imputer.py +0 -0
  304. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/impute/knn_imputer.py +0 -0
  305. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/impute/missing_indicator.py +0 -0
  306. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/impute/simple_imputer.py +0 -0
  307. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_approximation/__init__.py +0 -0
  308. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_approximation/additive_chi2_sampler.py +0 -0
  309. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_approximation/nystroem.py +0 -0
  310. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_approximation/polynomial_count_sketch.py +0 -0
  311. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_approximation/rbf_sampler.py +0 -0
  312. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_approximation/skewed_chi2_sampler.py +0 -0
  313. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_ridge/__init__.py +0 -0
  314. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/kernel_ridge/kernel_ridge.py +0 -0
  315. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/lightgbm/__init__.py +0 -0
  316. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/lightgbm/lgbm_classifier.py +0 -0
  317. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/lightgbm/lgbm_regressor.py +0 -0
  318. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/__init__.py +0 -0
  319. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/ard_regression.py +0 -0
  320. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/bayesian_ridge.py +0 -0
  321. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/elastic_net.py +0 -0
  322. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/elastic_net_cv.py +0 -0
  323. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/gamma_regressor.py +0 -0
  324. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/huber_regressor.py +0 -0
  325. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/lars.py +0 -0
  326. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/lars_cv.py +0 -0
  327. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/lasso.py +0 -0
  328. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/lasso_cv.py +0 -0
  329. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/lasso_lars.py +0 -0
  330. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/lasso_lars_cv.py +0 -0
  331. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/lasso_lars_ic.py +0 -0
  332. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/linear_regression.py +0 -0
  333. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/logistic_regression.py +0 -0
  334. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/logistic_regression_cv.py +0 -0
  335. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net.py +0 -0
  336. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/multi_task_elastic_net_cv.py +0 -0
  337. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/multi_task_lasso.py +0 -0
  338. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/multi_task_lasso_cv.py +0 -0
  339. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/orthogonal_matching_pursuit.py +0 -0
  340. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/passive_aggressive_classifier.py +0 -0
  341. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/passive_aggressive_regressor.py +0 -0
  342. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/perceptron.py +0 -0
  343. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/poisson_regressor.py +0 -0
  344. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/ransac_regressor.py +0 -0
  345. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/ridge.py +0 -0
  346. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/ridge_classifier.py +0 -0
  347. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/ridge_classifier_cv.py +0 -0
  348. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/ridge_cv.py +0 -0
  349. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/sgd_classifier.py +0 -0
  350. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/sgd_one_class_svm.py +0 -0
  351. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/sgd_regressor.py +0 -0
  352. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/theil_sen_regressor.py +0 -0
  353. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/linear_model/tweedie_regressor.py +0 -0
  354. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/manifold/__init__.py +0 -0
  355. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/manifold/isomap.py +0 -0
  356. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/manifold/mds.py +0 -0
  357. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/manifold/spectral_embedding.py +0 -0
  358. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/manifold/tsne.py +0 -0
  359. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/metrics/__init__.py +0 -0
  360. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/metrics/classification.py +0 -0
  361. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/metrics/correlation.py +0 -0
  362. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/metrics/covariance.py +0 -0
  363. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/metrics/metrics_utils.py +0 -0
  364. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/metrics/ranking.py +0 -0
  365. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/metrics/regression.py +0 -0
  366. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/mixture/__init__.py +0 -0
  367. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/mixture/bayesian_gaussian_mixture.py +0 -0
  368. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/mixture/gaussian_mixture.py +0 -0
  369. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/model_selection/__init__.py +0 -0
  370. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/model_selection/grid_search_cv.py +0 -0
  371. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/model_selection/randomized_search_cv.py +0 -0
  372. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/multiclass/__init__.py +0 -0
  373. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/multiclass/one_vs_one_classifier.py +0 -0
  374. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/multiclass/one_vs_rest_classifier.py +0 -0
  375. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/multiclass/output_code_classifier.py +0 -0
  376. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/naive_bayes/__init__.py +0 -0
  377. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/naive_bayes/bernoulli_nb.py +0 -0
  378. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/naive_bayes/categorical_nb.py +0 -0
  379. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/naive_bayes/complement_nb.py +0 -0
  380. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/naive_bayes/gaussian_nb.py +0 -0
  381. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/naive_bayes/multinomial_nb.py +0 -0
  382. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/__init__.py +0 -0
  383. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/k_neighbors_classifier.py +0 -0
  384. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/k_neighbors_regressor.py +0 -0
  385. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/kernel_density.py +0 -0
  386. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/local_outlier_factor.py +0 -0
  387. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/nearest_centroid.py +0 -0
  388. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/nearest_neighbors.py +0 -0
  389. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/neighborhood_components_analysis.py +0 -0
  390. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/radius_neighbors_classifier.py +0 -0
  391. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neighbors/radius_neighbors_regressor.py +0 -0
  392. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neural_network/__init__.py +0 -0
  393. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neural_network/bernoulli_rbm.py +0 -0
  394. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neural_network/mlp_classifier.py +0 -0
  395. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/neural_network/mlp_regressor.py +0 -0
  396. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/parameters/disable_distributed_hpo.py +0 -0
  397. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/parameters/disable_model_tracer.py +0 -0
  398. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/parameters/enable_anonymous_sproc.py +0 -0
  399. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/pipeline/__init__.py +0 -0
  400. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/pipeline/pipeline.py +0 -0
  401. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/__init__.py +0 -0
  402. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/binarizer.py +0 -0
  403. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/k_bins_discretizer.py +0 -0
  404. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/label_encoder.py +0 -0
  405. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/max_abs_scaler.py +0 -0
  406. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/min_max_scaler.py +0 -0
  407. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/normalizer.py +0 -0
  408. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/one_hot_encoder.py +0 -0
  409. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/ordinal_encoder.py +0 -0
  410. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/polynomial_features.py +0 -0
  411. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/robust_scaler.py +0 -0
  412. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/preprocessing/standard_scaler.py +0 -0
  413. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/semi_supervised/__init__.py +0 -0
  414. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/semi_supervised/label_propagation.py +0 -0
  415. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/semi_supervised/label_spreading.py +0 -0
  416. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/svm/__init__.py +0 -0
  417. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/svm/linear_svc.py +0 -0
  418. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/svm/linear_svr.py +0 -0
  419. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/svm/nu_svc.py +0 -0
  420. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/svm/nu_svr.py +0 -0
  421. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/svm/svc.py +0 -0
  422. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/svm/svr.py +0 -0
  423. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/tree/__init__.py +0 -0
  424. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/tree/decision_tree_classifier.py +0 -0
  425. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/tree/decision_tree_regressor.py +0 -0
  426. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/tree/extra_tree_classifier.py +0 -0
  427. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/tree/extra_tree_regressor.py +0 -0
  428. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/xgboost/__init__.py +0 -0
  429. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/xgboost/xgb_classifier.py +0 -0
  430. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/xgboost/xgb_regressor.py +0 -0
  431. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/xgboost/xgbrf_classifier.py +0 -0
  432. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/modeling/xgboost/xgbrf_regressor.py +0 -0
  433. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/_client/model_monitor_sql_client.py +0 -0
  434. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/_client/queries/record_count.ssql +0 -0
  435. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/_client/queries/rmse.ssql +0 -0
  436. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/_manager/model_monitor_manager.py +0 -0
  437. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/entities/model_monitor_config.py +0 -0
  438. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/explain_visualize.py +0 -0
  439. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/model_monitor.py +0 -0
  440. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/monitoring/shap.py +0 -0
  441. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/registry/__init__.py +0 -0
  442. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/registry/_manager/model_manager.py +0 -0
  443. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/registry/_manager/model_parameter_reconciler.py +0 -0
  444. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/registry/registry.py +0 -0
  445. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/utils/authentication.py +0 -0
  446. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/utils/connection_params.py +0 -0
  447. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/utils/html_utils.py +0 -0
  448. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/utils/sparse.py +0 -0
  449. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake/ml/utils/sql_client.py +0 -0
  450. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake_ml_python.egg-info/SOURCES.txt +0 -0
  451. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake_ml_python.egg-info/dependency_links.txt +0 -0
  452. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake_ml_python.egg-info/requires.txt +0 -0
  453. {snowflake_ml_python-1.12.0 → snowflake_ml_python-1.13.0}/snowflake_ml_python.egg-info/top_level.txt +0 -0
@@ -1,11 +1,27 @@
1
1
  # Release History
2
2
 
3
+ ## 1.13.0
4
+
5
+ ### Bug Fixes
6
+
7
+ ### Behavior Changes
8
+
9
+ ### New Features
10
+
11
+ * Registry: Log a HuggingFace model without having to load the model in memory using
12
+ the `huggingface_pipeline.HuggingFacePipelineModel`. Requires `huggingface_hub` package to installed.
13
+ To disable downloading HuggingFace repository, provide `download_snapshot=False` while creating the
14
+ `huggingface_pipeline.HuggingFacePipelineModel` object.
15
+ * Registry: Added support for XGBoost models to use `enable_categorical=True` with pandas DataFrame
16
+ * Registry: Added support to display privatelink inference endpoint in ModelVersion list services.
17
+
3
18
  ## 1.12.0
4
19
 
5
20
  ### Bug Fixes
6
21
 
7
22
  * Registry: Fixed an issue where the string representation of dictionary-type output columns was being incorrectly
8
23
  created during structured output deserialization. Now, the original data type is properly preserved.
24
+ * Registry: Fixed the inference server performance issue for wide (500+ features) and JSON inputs.
9
25
 
10
26
  ### Behavior Changes
11
27
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: snowflake-ml-python
3
- Version: 1.12.0
3
+ Version: 1.13.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:
@@ -410,12 +410,28 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
410
410
 
411
411
  # Release History
412
412
 
413
+ ## 1.13.0
414
+
415
+ ### Bug Fixes
416
+
417
+ ### Behavior Changes
418
+
419
+ ### New Features
420
+
421
+ * Registry: Log a HuggingFace model without having to load the model in memory using
422
+ the `huggingface_pipeline.HuggingFacePipelineModel`. Requires `huggingface_hub` package to installed.
423
+ To disable downloading HuggingFace repository, provide `download_snapshot=False` while creating the
424
+ `huggingface_pipeline.HuggingFacePipelineModel` object.
425
+ * Registry: Added support for XGBoost models to use `enable_categorical=True` with pandas DataFrame
426
+ * Registry: Added support to display privatelink inference endpoint in ModelVersion list services.
427
+
413
428
  ## 1.12.0
414
429
 
415
430
  ### Bug Fixes
416
431
 
417
432
  * Registry: Fixed an issue where the string representation of dictionary-type output columns was being incorrectly
418
433
  created during structured output deserialization. Now, the original data type is properly preserved.
434
+ * Registry: Fixed the inference server performance issue for wide (500+ features) and JSON inputs.
419
435
 
420
436
  ### Behavior Changes
421
437
 
@@ -680,8 +680,10 @@ def _extract_arg_value(field: str, func_spec: inspect.FullArgSpec, args: Any, kw
680
680
  elif func_spec.kwonlydefaults and field in func_spec.kwonlyargs:
681
681
  if field in kwargs:
682
682
  return True, kwargs[field]
683
- else:
683
+ elif field in func_spec.kwonlydefaults:
684
684
  return True, func_spec.kwonlydefaults[field]
685
+ else:
686
+ return False, None
685
687
  else:
686
688
  return False, None
687
689
 
@@ -7,7 +7,7 @@ from urllib.parse import quote
7
7
  import snowflake.snowpark._internal.utils as snowpark_utils
8
8
  from snowflake.ml import model as ml_model, registry
9
9
  from snowflake.ml._internal.human_readable_id import hrid_generator
10
- from snowflake.ml._internal.utils import sql_identifier
10
+ from snowflake.ml._internal.utils import mixins, sql_identifier
11
11
  from snowflake.ml.experiment import (
12
12
  _entities as entities,
13
13
  _experiment_info as experiment_info,
@@ -23,7 +23,7 @@ from snowflake.snowpark import session
23
23
  DEFAULT_EXPERIMENT_NAME = sql_identifier.SqlIdentifier("DEFAULT")
24
24
 
25
25
 
26
- class ExperimentTracking:
26
+ class ExperimentTracking(mixins.SerializableSessionMixin):
27
27
  """
28
28
  Class to manage experiments in Snowflake.
29
29
  """
@@ -73,12 +73,34 @@ class ExperimentTracking:
73
73
  database_name=self._database_name,
74
74
  schema_name=self._schema_name,
75
75
  )
76
+ self._session = session
76
77
 
77
78
  # The experiment in context
78
79
  self._experiment: Optional[entities.Experiment] = None
79
80
  # The run in context
80
81
  self._run: Optional[entities.Run] = None
81
82
 
83
+ def __getstate__(self) -> dict[str, Any]:
84
+ state = super().__getstate__()
85
+ # Remove unpicklable attributes
86
+ state["_sql_client"] = None
87
+ state["_registry"] = None
88
+ return state
89
+
90
+ def __setstate__(self, state: dict[str, Any]) -> None:
91
+ super().__setstate__(state)
92
+ # Restore unpicklable attributes
93
+ self._sql_client = sql_client.ExperimentTrackingSQLClient(
94
+ session=self._session,
95
+ database_name=self._database_name,
96
+ schema_name=self._schema_name,
97
+ )
98
+ self._registry = registry.Registry(
99
+ session=self._session,
100
+ database_name=self._database_name,
101
+ schema_name=self._schema_name,
102
+ )
103
+
82
104
  def set_experiment(
83
105
  self,
84
106
  experiment_name: str,
@@ -236,7 +236,9 @@ def run_script(script_path: str, *script_args: Any, main_func: Optional[str] = N
236
236
 
237
237
  # Create a Snowpark session before running the script
238
238
  # Session can be retrieved from using snowflake.snowpark.context.get_active_session()
239
- session = Session.builder.configs(SnowflakeLoginOptions()).create() # noqa: F841
239
+ config = SnowflakeLoginOptions()
240
+ config["client_session_keep_alive"] = "True"
241
+ session = Session.builder.configs(config).create() # noqa: F841
240
242
 
241
243
  try:
242
244
 
@@ -264,6 +266,7 @@ def run_script(script_path: str, *script_args: Any, main_func: Optional[str] = N
264
266
  finally:
265
267
  # Restore original sys.argv
266
268
  sys.argv = original_argv
269
+ session.close()
267
270
 
268
271
 
269
272
  def main(script_path: str, *script_args: Any, script_main_func: Optional[str] = None) -> ExecutionResult:
@@ -287,6 +290,13 @@ def main(script_path: str, *script_args: Any, script_main_func: Optional[str] =
287
290
  output_dir = os.path.dirname(result_abs_path)
288
291
  os.makedirs(output_dir, exist_ok=True)
289
292
 
293
+ try:
294
+ import ray
295
+
296
+ ray.init(address="auto")
297
+ except ModuleNotFoundError:
298
+ warnings.warn("Ray is not installed, skipping Ray initialization", ImportWarning, stacklevel=1)
299
+
290
300
  try:
291
301
  # Wait for minimum required instances if specified
292
302
  min_instances_str = os.environ.get(MIN_INSTANCES_ENV_VAR) or "1"
@@ -50,7 +50,7 @@ class MLJob(Generic[T], SerializableSessionMixin):
50
50
  def min_instances(self) -> int:
51
51
  try:
52
52
  return int(self._container_spec["env"].get(constants.MIN_INSTANCES_ENV_VAR, 1))
53
- except TypeError:
53
+ except (TypeError, ValueError):
54
54
  return 1
55
55
 
56
56
  @property
@@ -83,7 +83,10 @@ class MLJob(Generic[T], SerializableSessionMixin):
83
83
  def _container_spec(self) -> dict[str, Any]:
84
84
  """Get the job's main container spec."""
85
85
  containers = self._service_spec["spec"]["containers"]
86
- container_spec = next(c for c in containers if c["name"] == constants.DEFAULT_CONTAINER_NAME)
86
+ try:
87
+ container_spec = next(c for c in containers if c["name"] == constants.DEFAULT_CONTAINER_NAME)
88
+ except StopIteration:
89
+ raise ValueError(f"Container '{constants.DEFAULT_CONTAINER_NAME}' not found in job {self.name}")
87
90
  return cast(dict[str, Any], container_spec)
88
91
 
89
92
  @property
@@ -58,7 +58,8 @@ def list_jobs(
58
58
  >>> from snowflake.ml.jobs import list_jobs
59
59
  >>> list_jobs(limit=5)
60
60
  """
61
- session = session or get_active_session()
61
+
62
+ session = _ensure_session(session)
62
63
  try:
63
64
  df = _get_job_history_spcs(
64
65
  session,
@@ -162,7 +163,7 @@ def _get_job_history_spcs(
162
163
  @telemetry.send_api_usage_telemetry(project=_PROJECT)
163
164
  def get_job(job_id: str, session: Optional[snowpark.Session] = None) -> jb.MLJob[Any]:
164
165
  """Retrieve a job service from the backend."""
165
- session = session or get_active_session()
166
+ session = _ensure_session(session)
166
167
  try:
167
168
  database, schema, job_name = identifier.parse_schema_level_object_identifier(job_id)
168
169
  database = identifier.resolve_identifier(cast(str, database or session.get_current_database()))
@@ -434,8 +435,10 @@ def _submit_job(
434
435
 
435
436
  Raises:
436
437
  ValueError: If database or schema value(s) are invalid
438
+ RuntimeError: If schema is not specified in session context or job submission
439
+ snowpark.exceptions.SnowparkSQLException: if failed to upload payload
437
440
  """
438
- session = session or get_active_session()
441
+ session = _ensure_session(session)
439
442
 
440
443
  # Check for deprecated args
441
444
  if "num_instances" in kwargs:
@@ -486,10 +489,17 @@ def _submit_job(
486
489
  stage_name = f"@{'.'.join(filter(None, stage_path_parts[:3]))}"
487
490
  stage_path = pathlib.PurePosixPath(f"{stage_name}{stage_path_parts[-1].rstrip('/')}/{job_name}")
488
491
 
489
- # Upload payload
490
- uploaded_payload = payload_utils.JobPayload(
491
- source, entrypoint=entrypoint, pip_requirements=pip_requirements, additional_payloads=additional_payloads
492
- ).upload(session, stage_path)
492
+ try:
493
+ # Upload payload
494
+ uploaded_payload = payload_utils.JobPayload(
495
+ source, entrypoint=entrypoint, pip_requirements=pip_requirements, additional_payloads=additional_payloads
496
+ ).upload(session, stage_path)
497
+ except snowpark.exceptions.SnowparkSQLException as e:
498
+ if e.sql_error_code == 90106:
499
+ raise RuntimeError(
500
+ "Please specify a schema, either in the session context or as a parameter in the job submission"
501
+ )
502
+ raise
493
503
 
494
504
  if feature_flags.FeatureFlags.USE_SUBMIT_JOB_V2.is_enabled():
495
505
  # Add default env vars (extracted from spec_utils.generate_service_spec)
@@ -651,3 +661,15 @@ def _do_submit_job_v2(
651
661
  actual_job_id = query_helper.run_query(session, query_template, params=params)[0][0]
652
662
 
653
663
  return get_job(actual_job_id, session=session)
664
+
665
+
666
+ def _ensure_session(session: Optional[snowpark.Session]) -> snowpark.Session:
667
+ try:
668
+ session = session or get_active_session()
669
+ except snowpark.exceptions.SnowparkSessionException as e:
670
+ if "More than one active session" in e.message:
671
+ raise RuntimeError("Please specify the session as a parameter in API call")
672
+ if "No default Session is found" in e.message:
673
+ raise RuntimeError("Please create a session before API call")
674
+ raise
675
+ return session
@@ -4,14 +4,11 @@ from pydantic import BaseModel
4
4
 
5
5
 
6
6
  class InputSpec(BaseModel):
7
- input_stage_location: str
8
- input_file_pattern: str = "*"
7
+ stage_location: str
9
8
 
10
9
 
11
10
  class OutputSpec(BaseModel):
12
- output_stage_location: str
13
- output_file_prefix: Optional[str] = None
14
- completion_filename: str = "_SUCCESS"
11
+ stage_location: str
15
12
 
16
13
 
17
14
  class JobSpec(BaseModel):
@@ -25,3 +22,4 @@ class JobSpec(BaseModel):
25
22
  warehouse: Optional[str] = None
26
23
  cpu_requests: Optional[str] = None
27
24
  memory_requests: Optional[str] = None
25
+ replicas: Optional[int] = None
@@ -590,11 +590,12 @@ class ModelVersion(lineage_node.LineageNode):
590
590
  cpu_requests=job_spec.cpu_requests,
591
591
  memory_requests=job_spec.memory_requests,
592
592
  job_name=job_name,
593
+ replicas=job_spec.replicas,
593
594
  # input and output
594
- input_stage_location=input_spec.input_stage_location,
595
- input_file_pattern=input_spec.input_file_pattern,
596
- output_stage_location=output_spec.output_stage_location,
597
- completion_filename=output_spec.completion_filename,
595
+ input_stage_location=input_spec.stage_location,
596
+ input_file_pattern="*",
597
+ output_stage_location=output_spec.stage_location,
598
+ completion_filename="_SUCCESS",
598
599
  # misc
599
600
  statement_params=statement_params,
600
601
  )
@@ -47,6 +47,7 @@ class ServiceInfo(TypedDict):
47
47
  class ModelOperator:
48
48
  INFERENCE_SERVICE_ENDPOINT_NAME = "inference"
49
49
  INGRESS_ENDPOINT_URL_SUFFIX = "snowflakecomputing.app"
50
+ PRIVATELINK_INGRESS_ENDPOINT_URL_SUBSTRING = "privatelink.snowflakecomputing"
50
51
 
51
52
  def __init__(
52
53
  self,
@@ -612,6 +613,30 @@ class ModelOperator:
612
613
  statement_params=statement_params,
613
614
  )
614
615
 
616
+ def _is_privatelink_connection(self) -> bool:
617
+ """Detect if the current session is using a privatelink connection."""
618
+ try:
619
+ host = self._session.connection.host
620
+ return ModelOperator.PRIVATELINK_INGRESS_ENDPOINT_URL_SUBSTRING in host
621
+ except AttributeError:
622
+ return False
623
+
624
+ def _extract_and_validate_ingress_url(self, res_row: "row.Row") -> Optional[str]:
625
+ """Extract and validate ingress URL from endpoint row."""
626
+ url_value = res_row[self._service_client.MODEL_INFERENCE_SERVICE_ENDPOINT_INGRESS_URL_COL_NAME]
627
+ if url_value is None:
628
+ return None
629
+ url_str = str(url_value)
630
+ return url_str if url_str.endswith(ModelOperator.INGRESS_ENDPOINT_URL_SUFFIX) else None
631
+
632
+ def _extract_and_validate_privatelink_url(self, res_row: "row.Row") -> Optional[str]:
633
+ """Extract and validate privatelink ingress URL from endpoint row."""
634
+ url_value = res_row[self._service_client.MODEL_INFERENCE_SERVICE_ENDPOINT_PRIVATELINK_INGRESS_URL_COL_NAME]
635
+ if url_value is None:
636
+ return None
637
+ url_str = str(url_value)
638
+ return url_str if ModelOperator.PRIVATELINK_INGRESS_ENDPOINT_URL_SUBSTRING in url_str else None
639
+
615
640
  def show_services(
616
641
  self,
617
642
  *,
@@ -644,8 +669,10 @@ class ModelOperator:
644
669
  fully_qualified_service_names = [str(service) for service in json_array if "MODEL_BUILD_" not in service]
645
670
 
646
671
  result: list[ServiceInfo] = []
672
+ is_privatelink_connection = self._is_privatelink_connection()
673
+
647
674
  for fully_qualified_service_name in fully_qualified_service_names:
648
- ingress_url: Optional[str] = None
675
+ inference_endpoint: Optional[str] = None
649
676
  db, schema, service_name = sql_identifier.parse_fully_qualified_name(fully_qualified_service_name)
650
677
  statuses = self._service_client.get_service_container_statuses(
651
678
  database_name=db, schema_name=schema, service_name=service_name, statement_params=statement_params
@@ -659,17 +686,23 @@ class ModelOperator:
659
686
  ):
660
687
  if (
661
688
  res_row[self._service_client.MODEL_INFERENCE_SERVICE_ENDPOINT_NAME_COL_NAME]
662
- == self.INFERENCE_SERVICE_ENDPOINT_NAME
663
- and res_row[self._service_client.MODEL_INFERENCE_SERVICE_ENDPOINT_INGRESS_URL_COL_NAME] is not None
689
+ != self.INFERENCE_SERVICE_ENDPOINT_NAME
664
690
  ):
665
- ingress_url = str(
666
- res_row[self._service_client.MODEL_INFERENCE_SERVICE_ENDPOINT_INGRESS_URL_COL_NAME]
667
- )
668
- if not ingress_url.endswith(ModelOperator.INGRESS_ENDPOINT_URL_SUFFIX):
669
- ingress_url = None
691
+ continue
692
+
693
+ ingress_url = self._extract_and_validate_ingress_url(res_row)
694
+ privatelink_ingress_url = self._extract_and_validate_privatelink_url(res_row)
695
+
696
+ if is_privatelink_connection and privatelink_ingress_url is not None:
697
+ inference_endpoint = privatelink_ingress_url
698
+ else:
699
+ inference_endpoint = ingress_url
700
+
670
701
  result.append(
671
702
  ServiceInfo(
672
- name=fully_qualified_service_name, status=service_status.value, inference_endpoint=ingress_url
703
+ name=fully_qualified_service_name,
704
+ status=service_status.value,
705
+ inference_endpoint=inference_endpoint,
673
706
  )
674
707
  )
675
708
 
@@ -881,6 +881,7 @@ class ServiceOperator:
881
881
  max_batch_rows: Optional[int],
882
882
  cpu_requests: Optional[str],
883
883
  memory_requests: Optional[str],
884
+ replicas: Optional[int],
884
885
  statement_params: Optional[dict[str, Any]] = None,
885
886
  ) -> jobs.MLJob[Any]:
886
887
  database_name = self._database_name
@@ -914,6 +915,7 @@ class ServiceOperator:
914
915
  warehouse=warehouse,
915
916
  cpu=cpu_requests,
916
917
  memory=memory_requests,
918
+ replicas=replicas,
917
919
  )
918
920
 
919
921
  self._model_deployment_spec.add_image_build_spec(
@@ -207,6 +207,7 @@ class ModelDeploymentSpec:
207
207
  gpu: Optional[Union[str, int]] = None,
208
208
  num_workers: Optional[int] = None,
209
209
  max_batch_rows: Optional[int] = None,
210
+ replicas: Optional[int] = None,
210
211
  ) -> "ModelDeploymentSpec":
211
212
  """Add job specification to the deployment spec.
212
213
 
@@ -226,6 +227,7 @@ class ModelDeploymentSpec:
226
227
  gpu: GPU requirement.
227
228
  num_workers: Number of workers.
228
229
  max_batch_rows: Maximum batch rows for inference.
230
+ replicas: Number of replicas.
229
231
 
230
232
  Raises:
231
233
  ValueError: If a service spec already exists.
@@ -260,6 +262,7 @@ class ModelDeploymentSpec:
260
262
  output_stage_location=output_stage_location,
261
263
  completion_filename=completion_filename,
262
264
  ),
265
+ replicas=replicas,
263
266
  **self._inference_spec,
264
267
  )
265
268
  return self
@@ -57,6 +57,7 @@ class Job(BaseModel):
57
57
  function_name: str
58
58
  input: Input
59
59
  output: Output
60
+ replicas: Optional[int] = None
60
61
 
61
62
 
62
63
  class LogModelArgs(BaseModel):
@@ -63,6 +63,7 @@ class ServiceStatusInfo:
63
63
  class ServiceSQLClient(_base._BaseSQLClient):
64
64
  MODEL_INFERENCE_SERVICE_ENDPOINT_NAME_COL_NAME = "name"
65
65
  MODEL_INFERENCE_SERVICE_ENDPOINT_INGRESS_URL_COL_NAME = "ingress_url"
66
+ MODEL_INFERENCE_SERVICE_ENDPOINT_PRIVATELINK_INGRESS_URL_COL_NAME = "privatelink_ingress_url"
66
67
  SERVICE_STATUS = "service_status"
67
68
  INSTANCE_ID = "instance_id"
68
69
  INSTANCE_STATUS = "instance_status"
@@ -255,6 +256,9 @@ class ServiceSQLClient(_base._BaseSQLClient):
255
256
  )
256
257
  .has_column(ServiceSQLClient.MODEL_INFERENCE_SERVICE_ENDPOINT_NAME_COL_NAME, allow_empty=True)
257
258
  .has_column(ServiceSQLClient.MODEL_INFERENCE_SERVICE_ENDPOINT_INGRESS_URL_COL_NAME, allow_empty=True)
259
+ .has_column(
260
+ ServiceSQLClient.MODEL_INFERENCE_SERVICE_ENDPOINT_PRIVATELINK_INGRESS_URL_COL_NAME, allow_empty=True
261
+ )
258
262
  )
259
263
 
260
264
  return res.validate()
@@ -1,6 +1,7 @@
1
1
  import json
2
2
  import logging
3
3
  import os
4
+ import shutil
4
5
  import time
5
6
  import uuid
6
7
  import warnings
@@ -88,6 +89,7 @@ class HuggingFacePipelineHandler(
88
89
  _HANDLER_MIGRATOR_PLANS: dict[str, type[base_migrator.BaseModelHandlerMigrator]] = {}
89
90
 
90
91
  MODEL_BLOB_FILE_OR_DIR = "model"
92
+ MODEL_PICKLE_FILE = "snowml_huggingface_pipeline.pkl"
91
93
  ADDITIONAL_CONFIG_FILE = "pipeline_config.pt"
92
94
  DEFAULT_TARGET_METHODS = ["__call__"]
93
95
  IS_AUTO_SIGNATURE = True
@@ -199,6 +201,7 @@ class HuggingFacePipelineHandler(
199
201
  model_blob_path = os.path.join(model_blobs_dir_path, name)
200
202
  os.makedirs(model_blob_path, exist_ok=True)
201
203
 
204
+ is_repo_downloaded = False
202
205
  if type_utils.LazyType("transformers.Pipeline").isinstance(model):
203
206
  save_path = os.path.join(model_blob_path, cls.MODEL_BLOB_FILE_OR_DIR)
204
207
  model.save_pretrained( # type:ignore[attr-defined]
@@ -224,11 +227,22 @@ class HuggingFacePipelineHandler(
224
227
  ) as f:
225
228
  cloudpickle.dump(pipeline_params, f)
226
229
  else:
230
+ model_blob_file_or_dir = os.path.join(model_blob_path, cls.MODEL_BLOB_FILE_OR_DIR)
231
+ model_blob_pickle_file = os.path.join(model_blob_file_or_dir, cls.MODEL_PICKLE_FILE)
232
+ os.makedirs(model_blob_file_or_dir, exist_ok=True)
227
233
  with open(
228
- os.path.join(model_blob_path, cls.MODEL_BLOB_FILE_OR_DIR),
234
+ model_blob_pickle_file,
229
235
  "wb",
230
236
  ) as f:
231
237
  cloudpickle.dump(model, f)
238
+ if model.repo_snapshot_dir:
239
+ logger.info("model's repo_snapshot_dir is available, copying snapshot")
240
+ shutil.copytree(
241
+ model.repo_snapshot_dir,
242
+ model_blob_file_or_dir,
243
+ dirs_exist_ok=True,
244
+ )
245
+ is_repo_downloaded = True
232
246
 
233
247
  base_meta = model_blob_meta.ModelBlobMeta(
234
248
  name=name,
@@ -236,13 +250,12 @@ class HuggingFacePipelineHandler(
236
250
  handler_version=cls.HANDLER_VERSION,
237
251
  path=cls.MODEL_BLOB_FILE_OR_DIR,
238
252
  options=model_meta_schema.HuggingFacePipelineModelBlobOptions(
239
- {
240
- "task": task,
241
- "batch_size": batch_size if batch_size is not None else 1,
242
- "has_tokenizer": has_tokenizer,
243
- "has_feature_extractor": has_feature_extractor,
244
- "has_image_preprocessor": has_image_preprocessor,
245
- }
253
+ task=task,
254
+ batch_size=batch_size if batch_size is not None else 1,
255
+ has_tokenizer=has_tokenizer,
256
+ has_feature_extractor=has_feature_extractor,
257
+ has_image_preprocessor=has_image_preprocessor,
258
+ is_repo_downloaded=is_repo_downloaded,
246
259
  ),
247
260
  )
248
261
  model_meta.models[name] = base_meta
@@ -286,6 +299,27 @@ class HuggingFacePipelineHandler(
286
299
 
287
300
  return device_config
288
301
 
302
+ @staticmethod
303
+ def _load_pickle_model(
304
+ pickle_file: str,
305
+ **kwargs: Unpack[model_types.HuggingFaceLoadOptions],
306
+ ) -> huggingface_pipeline.HuggingFacePipelineModel:
307
+ with open(pickle_file, "rb") as f:
308
+ m = cloudpickle.load(f)
309
+ assert isinstance(m, huggingface_pipeline.HuggingFacePipelineModel)
310
+ torch_dtype: Optional[str] = None
311
+ device_config = None
312
+ if getattr(m, "device", None) is None and getattr(m, "device_map", None) is None:
313
+ device_config = HuggingFacePipelineHandler._get_device_config(**kwargs)
314
+ m.__dict__.update(device_config)
315
+
316
+ if getattr(m, "torch_dtype", None) is None and kwargs.get("use_gpu", False):
317
+ torch_dtype = "auto"
318
+ m.__dict__.update(torch_dtype=torch_dtype)
319
+ else:
320
+ m.__dict__.update(torch_dtype=None)
321
+ return m
322
+
289
323
  @classmethod
290
324
  def load_model(
291
325
  cls,
@@ -310,7 +344,13 @@ class HuggingFacePipelineHandler(
310
344
  raise ValueError("Missing field `batch_size` in model blob metadata for type `huggingface_pipeline`")
311
345
 
312
346
  model_blob_file_or_dir_path = os.path.join(model_blob_path, model_blob_filename)
313
- if os.path.isdir(model_blob_file_or_dir_path):
347
+ is_repo_downloaded = model_blob_options.get("is_repo_downloaded", False)
348
+
349
+ def _create_pipeline_from_dir(
350
+ model_blob_file_or_dir_path: str,
351
+ model_blob_options: model_meta_schema.HuggingFacePipelineModelBlobOptions,
352
+ **kwargs: Unpack[model_types.HuggingFaceLoadOptions],
353
+ ) -> "transformers.Pipeline":
314
354
  import transformers
315
355
 
316
356
  additional_pipeline_params = {}
@@ -330,7 +370,7 @@ class HuggingFacePipelineHandler(
330
370
  ) as f:
331
371
  pipeline_params = cloudpickle.load(f)
332
372
 
333
- device_config = cls._get_device_config(**kwargs)
373
+ device_config = HuggingFacePipelineHandler._get_device_config(**kwargs)
334
374
 
335
375
  m = transformers.pipeline(
336
376
  model_blob_options["task"],
@@ -359,18 +399,59 @@ class HuggingFacePipelineHandler(
359
399
  m.tokenizer.chat_template = DEFAULT_CHAT_TEMPLATE
360
400
 
361
401
  m.__dict__.update(pipeline_params)
402
+ return m
362
403
 
404
+ def _create_pipeline_from_model(
405
+ model_blob_file_or_dir_path: str,
406
+ m: huggingface_pipeline.HuggingFacePipelineModel,
407
+ **kwargs: Unpack[model_types.HuggingFaceLoadOptions],
408
+ ) -> "transformers.Pipeline":
409
+ import transformers
410
+
411
+ return transformers.pipeline(
412
+ m.task,
413
+ model=model_blob_file_or_dir_path,
414
+ trust_remote_code=m.trust_remote_code,
415
+ torch_dtype=getattr(m, "torch_dtype", None),
416
+ revision=m.revision,
417
+ # pass device or device_map when creating the pipeline
418
+ **HuggingFacePipelineHandler._get_device_config(**kwargs),
419
+ # pass other model_kwargs to transformers.pipeline.from_pretrained method
420
+ **m.model_kwargs,
421
+ )
422
+
423
+ if os.path.isdir(model_blob_file_or_dir_path) and not is_repo_downloaded:
424
+ # the logged model is a transformers.Pipeline object
425
+ # weights of the model are saved in the directory
426
+ return _create_pipeline_from_dir(model_blob_file_or_dir_path, model_blob_options, **kwargs)
363
427
  else:
364
- assert os.path.isfile(model_blob_file_or_dir_path)
365
- with open(model_blob_file_or_dir_path, "rb") as f:
366
- m = cloudpickle.load(f)
367
- assert isinstance(m, huggingface_pipeline.HuggingFacePipelineModel)
368
- if getattr(m, "device", None) is None and getattr(m, "device_map", None) is None:
369
- m.__dict__.update(cls._get_device_config(**kwargs))
370
-
371
- if getattr(m, "torch_dtype", None) is None and kwargs.get("use_gpu", False):
372
- m.__dict__.update(torch_dtype="auto")
373
- return m
428
+ # case 1: LEGACY logging, repo snapshot is not logged
429
+ if os.path.isfile(model_blob_file_or_dir_path):
430
+ # LEGACY logging that had model as a pickle file in the model blob directory
431
+ # the logged model is a huggingface_pipeline.HuggingFacePipelineModel object
432
+ # the model_blob_file_or_dir_path is the pickle file that holds
433
+ # the huggingface_pipeline.HuggingFacePipelineModel object
434
+ # the snapshot of the repo is not logged
435
+ return cls._load_pickle_model(model_blob_file_or_dir_path)
436
+ else:
437
+ assert os.path.isdir(model_blob_file_or_dir_path)
438
+ # the logged model is a huggingface_pipeline.HuggingFacePipelineModel object
439
+ # the pickle_file holds the huggingface_pipeline.HuggingFacePipelineModel object
440
+ pickle_file = os.path.join(model_blob_file_or_dir_path, cls.MODEL_PICKLE_FILE)
441
+ m = cls._load_pickle_model(pickle_file)
442
+
443
+ # case 2: logging without the snapshot of the repo
444
+ if not is_repo_downloaded:
445
+ # we return the huggingface_pipeline.HuggingFacePipelineModel object
446
+ return m
447
+ # case 3: logging with the snapshot of the repo
448
+ else:
449
+ # the model_blob_file_or_dir_path is the directory that holds
450
+ # weights of the model from `huggingface_hub.snapshot_download`
451
+ # the huggingface_pipeline.HuggingFacePipelineModel object is logged
452
+ # with a snapshot of the repo, we create a transformers.Pipeline object
453
+ # by reading the snapshot directory
454
+ return _create_pipeline_from_model(model_blob_file_or_dir_path, m, **kwargs)
374
455
 
375
456
  @classmethod
376
457
  def convert_as_custom_model(
@@ -665,7 +746,7 @@ class HuggingFaceOpenAICompatibleModel:
665
746
  prompt_text,
666
747
  return_tensors="pt",
667
748
  padding=True,
668
- )
749
+ ).to(self.model.device)
669
750
  prompt_tokens = inputs.input_ids.shape[1]
670
751
 
671
752
  from transformers import GenerationConfig
@@ -683,6 +764,7 @@ class HuggingFaceOpenAICompatibleModel:
683
764
  num_return_sequences=n,
684
765
  num_beams=max(2, n), # must be >1
685
766
  num_beam_groups=max(2, n) if presence_penalty else 1,
767
+ do_sample=False,
686
768
  )
687
769
 
688
770
  # Generate text
@@ -229,6 +229,11 @@ class XGBModelHandler(_base.BaseModelHandler[Union["xgboost.Booster", "xgboost.X
229
229
  enable_categorical = False
230
230
  for col, d_type in X.dtypes.items():
231
231
  if pd.api.extensions.ExtensionDtype.is_dtype(d_type):
232
+ if pd.CategoricalDtype.is_dtype(d_type):
233
+ enable_categorical = True
234
+ elif isinstance(d_type, pd.StringDtype):
235
+ X[col] = X[col].astype("category")
236
+ enable_categorical = True
232
237
  continue
233
238
  if not np.issubdtype(d_type, np.number):
234
239
  # categorical columns are converted to numpy's str dtype