mlrun 1.10.0rc24__tar.gz → 1.10.0rc26__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.

Potentially problematic release.


This version of mlrun might be problematic. Click here for more details.

Files changed (397) hide show
  1. {mlrun-1.10.0rc24/mlrun.egg-info → mlrun-1.10.0rc26}/PKG-INFO +24 -23
  2. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/dependencies.py +4 -4
  3. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/dev-requirements.txt +0 -1
  4. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/extras-requirements.txt +5 -5
  5. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/llm_prompt.py +8 -1
  6. mlrun-1.10.0rc26/mlrun/common/model_monitoring/helpers.py +175 -0
  7. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/hub.py +25 -18
  8. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/constants.py +1 -0
  9. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/model_endpoints.py +10 -1
  10. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/config.py +2 -3
  11. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/__init__.py +2 -2
  12. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/azure_blob.py +66 -43
  13. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/datastore_profile.py +35 -5
  14. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/huggingface_provider.py +122 -30
  15. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/model_provider.py +62 -4
  16. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/openai_provider.py +114 -43
  17. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/s3.py +24 -2
  18. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/storeytargets.py +2 -3
  19. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/db/base.py +15 -1
  20. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/db/httpdb.py +17 -6
  21. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/db/nopdb.py +14 -0
  22. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/k8s_utils.py +0 -14
  23. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/api.py +2 -2
  24. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/base.py +37 -10
  25. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/context.py +1 -4
  26. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/controller.py +15 -5
  27. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/_schedules.py +2 -4
  28. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/tdengine_connector.py +3 -1
  29. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/v3io/stream_graph_steps.py +17 -4
  30. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/v3io/v3io_connector.py +3 -0
  31. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/helpers.py +5 -5
  32. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/platforms/iguazio.py +7 -3
  33. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/projects/project.py +33 -29
  34. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/base.py +0 -3
  35. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/mounts.py +15 -2
  36. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/__init__.py +1 -0
  37. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/application/application.py +11 -2
  38. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/function.py +10 -0
  39. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/serving.py +4 -0
  40. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/pod.py +153 -11
  41. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/utils.py +22 -5
  42. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/routers.py +23 -41
  43. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/server.py +26 -14
  44. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/states.py +3 -3
  45. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/system_steps.py +52 -29
  46. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/v2_serving.py +9 -10
  47. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/helpers.py +5 -2
  48. mlrun-1.10.0rc26/mlrun/utils/version/version.json +4 -0
  49. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26/mlrun.egg-info}/PKG-INFO +24 -23
  50. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun.egg-info/requires.txt +23 -22
  51. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/requirements.txt +5 -2
  52. mlrun-1.10.0rc24/mlrun/common/model_monitoring/helpers.py +0 -89
  53. mlrun-1.10.0rc24/mlrun/utils/version/version.json +0 -4
  54. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/LICENSE +0 -0
  55. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/MANIFEST.in +0 -0
  56. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/Makefile +0 -0
  57. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/README.md +0 -0
  58. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/dockerfiles/mlrun-api/requirements.txt +0 -0
  59. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/archive.zip +0 -0
  60. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/function.py +0 -0
  61. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/handler.py +0 -0
  62. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/infile.txt +0 -0
  63. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/load-project.ipynb +0 -0
  64. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/mlrun_basics.ipynb +0 -0
  65. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/mlrun_dask.ipynb +0 -0
  66. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/mlrun_db.ipynb +0 -0
  67. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/mlrun_export_import.ipynb +0 -0
  68. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/mlrun_jobs.ipynb +0 -0
  69. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/mlrun_sparkk8s.ipynb +0 -0
  70. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/mlrun_vault.ipynb +0 -0
  71. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/model.bst +0 -0
  72. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/new-project.ipynb +0 -0
  73. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/nulltst.py +0 -0
  74. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/params.csv +0 -0
  75. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/remote-spark.ipynb +0 -0
  76. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/secrets.txt +0 -0
  77. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/spark-function.py +0 -0
  78. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/training.py +0 -0
  79. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/v2_model_server.ipynb +0 -0
  80. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/examples/xgb_serving.ipynb +0 -0
  81. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/__init__.py +0 -0
  82. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/__main__.py +0 -0
  83. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/alerts/__init__.py +0 -0
  84. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/alerts/alert.py +0 -0
  85. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/__init__.py +0 -0
  86. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/base.py +0 -0
  87. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/dataset.py +0 -0
  88. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/document.py +0 -0
  89. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/helpers.py +0 -0
  90. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/manager.py +0 -0
  91. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/model.py +0 -0
  92. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/artifacts/plots.py +0 -0
  93. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/__init__.py +0 -0
  94. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/constants.py +0 -0
  95. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/db/__init__.py +0 -0
  96. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/db/dialects.py +0 -0
  97. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/__init__.py +0 -0
  98. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/artifact.py +0 -0
  99. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/base.py +0 -0
  100. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/feature_set.py +0 -0
  101. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/function.py +0 -0
  102. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/model_endpoint.py +0 -0
  103. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/pipeline.py +0 -0
  104. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/project.py +0 -0
  105. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/formatters/run.py +0 -0
  106. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/helpers.py +0 -0
  107. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/model_monitoring/__init__.py +0 -0
  108. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/runtimes/constants.py +0 -0
  109. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/__init__.py +0 -0
  110. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/alert.py +0 -0
  111. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/api_gateway.py +0 -0
  112. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/artifact.py +0 -0
  113. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/auth.py +0 -0
  114. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/background_task.py +0 -0
  115. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/client_spec.py +0 -0
  116. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/clusterization_spec.py +0 -0
  117. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/common.py +0 -0
  118. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/constants.py +0 -0
  119. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/datastore_profile.py +0 -0
  120. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/events.py +0 -0
  121. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/feature_store.py +0 -0
  122. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/frontend_spec.py +0 -0
  123. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/function.py +0 -0
  124. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/http.py +0 -0
  125. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/k8s.py +0 -0
  126. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/memory_reports.py +0 -0
  127. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/__init__.py +0 -0
  128. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/functions.py +0 -0
  129. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/grafana.py +0 -0
  130. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/notification.py +0 -0
  131. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/object.py +0 -0
  132. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/pagination.py +0 -0
  133. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/partition.py +0 -0
  134. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/pipeline.py +0 -0
  135. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/project.py +0 -0
  136. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/regex.py +0 -0
  137. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/runs.py +0 -0
  138. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/runtime_resource.py +0 -0
  139. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/schedule.py +0 -0
  140. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/secret.py +0 -0
  141. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/serving.py +0 -0
  142. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/tag.py +0 -0
  143. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/schemas/workflow.py +0 -0
  144. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/secrets.py +0 -0
  145. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/common/types.py +0 -0
  146. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/data_types/__init__.py +0 -0
  147. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/data_types/data_types.py +0 -0
  148. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/data_types/infer.py +0 -0
  149. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/data_types/spark.py +0 -0
  150. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/data_types/to_pandas.py +0 -0
  151. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/alibaba_oss.py +0 -0
  152. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/base.py +0 -0
  153. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/datastore.py +0 -0
  154. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/dbfs_store.py +0 -0
  155. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/filestore.py +0 -0
  156. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/google_cloud_storage.py +0 -0
  157. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/hdfs.py +0 -0
  158. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/inmem.py +0 -0
  159. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/__init__.py +0 -0
  160. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/mock_model_provider.py +0 -0
  161. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/redis.py +0 -0
  162. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/remote_client.py +0 -0
  163. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/snowflake_utils.py +0 -0
  164. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/sources.py +0 -0
  165. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/spark_udf.py +0 -0
  166. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/spark_utils.py +0 -0
  167. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/store_resources.py +0 -0
  168. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/targets.py +0 -0
  169. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/utils.py +0 -0
  170. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/v3io.py +0 -0
  171. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/vectorstore.py +0 -0
  172. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/wasbfs/__init__.py +0 -0
  173. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/datastore/wasbfs/fs.py +0 -0
  174. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/db/__init__.py +0 -0
  175. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/db/auth_utils.py +0 -0
  176. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/db/factory.py +0 -0
  177. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/errors.py +0 -0
  178. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/execution.py +0 -0
  179. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/__init__.py +0 -0
  180. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/api.py +0 -0
  181. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/common.py +0 -0
  182. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/feature_set.py +0 -0
  183. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/feature_vector.py +0 -0
  184. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/feature_vector_utils.py +0 -0
  185. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/ingestion.py +0 -0
  186. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/__init__.py +0 -0
  187. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/base.py +0 -0
  188. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/dask_merger.py +0 -0
  189. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/job.py +0 -0
  190. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/local_merger.py +0 -0
  191. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/spark_merger.py +0 -0
  192. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/storey_merger.py +0 -0
  193. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/feature_store/steps.py +0 -0
  194. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/features.py +0 -0
  195. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/__init__.py +0 -0
  196. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/__init__.py +0 -0
  197. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/artifacts_library.py +0 -0
  198. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/mlrun_interface.py +0 -0
  199. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/model_handler.py +0 -0
  200. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/plan.py +0 -0
  201. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/producer.py +0 -0
  202. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/utils.py +0 -0
  203. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/__init__.py +0 -0
  204. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/__init__.py +0 -0
  205. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/logger.py +0 -0
  206. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/mlrun_logger.py +0 -0
  207. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/tensorboard_logger.py +0 -0
  208. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/model_handler.py +0 -0
  209. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/utils.py +0 -0
  210. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/__init__.py +0 -0
  211. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/artifacts_library.py +0 -0
  212. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/loggers/__init__.py +0 -0
  213. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/loggers/logger.py +0 -0
  214. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/loggers/mlrun_logger.py +0 -0
  215. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/model_handler.py +0 -0
  216. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/pkl_model_server.py +0 -0
  217. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plan.py +0 -0
  218. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/__init__.py +0 -0
  219. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/calibration_curve_plan.py +0 -0
  220. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/confusion_matrix_plan.py +0 -0
  221. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/dataset_plan.py +0 -0
  222. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/feature_importance_plan.py +0 -0
  223. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/roc_curve_plan.py +0 -0
  224. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/producer.py +0 -0
  225. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/utils.py +0 -0
  226. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/auto_mlrun/__init__.py +0 -0
  227. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/auto_mlrun/auto_mlrun.py +0 -0
  228. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/huggingface/__init__.py +0 -0
  229. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/huggingface/model_server.py +0 -0
  230. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/__init__.py +0 -0
  231. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/__init__.py +0 -0
  232. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/callback.py +0 -0
  233. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/logging_callback.py +0 -0
  234. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/mlrun_logging_callback.py +0 -0
  235. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/__init__.py +0 -0
  236. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/booster_mlrun_interface.py +0 -0
  237. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/mlrun_interface.py +0 -0
  238. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/model_mlrun_interface.py +0 -0
  239. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/model_handler.py +0 -0
  240. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/model_server.py +0 -0
  241. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/utils.py +0 -0
  242. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/__init__.py +0 -0
  243. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/dataset.py +0 -0
  244. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/mlrun_interface.py +0 -0
  245. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/model_handler.py +0 -0
  246. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/model_server.py +0 -0
  247. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/parallel_coordinates.py +0 -0
  248. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/__init__.py +0 -0
  249. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/__init__.py +0 -0
  250. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/callback.py +0 -0
  251. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/logging_callback.py +0 -0
  252. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/mlrun_logging_callback.py +0 -0
  253. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/tensorboard_logging_callback.py +0 -0
  254. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks_handler.py +0 -0
  255. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/mlrun_interface.py +0 -0
  256. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/model_handler.py +0 -0
  257. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/model_server.py +0 -0
  258. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/utils.py +0 -0
  259. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/__init__.py +0 -0
  260. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/estimator.py +0 -0
  261. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/metric.py +0 -0
  262. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/metrics_library.py +0 -0
  263. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/mlrun_interface.py +0 -0
  264. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/model_handler.py +0 -0
  265. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/utils.py +0 -0
  266. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/__init__.py +0 -0
  267. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/__init__.py +0 -0
  268. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/logging_callback.py +0 -0
  269. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/mlrun_logging_callback.py +0 -0
  270. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/tensorboard_logging_callback.py +0 -0
  271. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/mlrun_interface.py +0 -0
  272. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/model_handler.py +0 -0
  273. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/model_server.py +0 -0
  274. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/utils.py +0 -0
  275. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/__init__.py +0 -0
  276. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/mlrun_interface.py +0 -0
  277. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/model_handler.py +0 -0
  278. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/utils.py +0 -0
  279. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/launcher/__init__.py +0 -0
  280. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/launcher/base.py +0 -0
  281. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/launcher/client.py +0 -0
  282. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/launcher/factory.py +0 -0
  283. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/launcher/local.py +0 -0
  284. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/launcher/remote.py +0 -0
  285. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/lists.py +0 -0
  286. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model.py +0 -0
  287. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/__init__.py +0 -0
  288. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/__init__.py +0 -0
  289. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/_application_steps.py +0 -0
  290. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/evidently/__init__.py +0 -0
  291. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/evidently/base.py +0 -0
  292. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/histogram_data_drift.py +0 -0
  293. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/results.py +0 -0
  294. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/__init__.py +0 -0
  295. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/_stats.py +0 -0
  296. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/__init__.py +0 -0
  297. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/base.py +0 -0
  298. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/helpers.py +0 -0
  299. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/__init__.py +0 -0
  300. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/schemas.py +0 -0
  301. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/stream_graph_steps.py +0 -0
  302. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/tdengine_connection.py +0 -0
  303. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/v3io/__init__.py +0 -0
  304. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/features_drift_table.py +0 -0
  305. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/metrics/__init__.py +0 -0
  306. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/metrics/histogram_distance.py +0 -0
  307. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/stream_processing.py +0 -0
  308. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/model_monitoring/writer.py +0 -0
  309. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/__init__.py +0 -0
  310. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/context_handler.py +0 -0
  311. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/errors.py +0 -0
  312. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/packager.py +0 -0
  313. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/packagers/__init__.py +0 -0
  314. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/packagers/default_packager.py +0 -0
  315. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/packagers/numpy_packagers.py +0 -0
  316. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/packagers/pandas_packagers.py +0 -0
  317. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/packagers/python_standard_library_packagers.py +0 -0
  318. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/packagers_manager.py +0 -0
  319. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/utils/__init__.py +0 -0
  320. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/utils/_archiver.py +0 -0
  321. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/utils/_formatter.py +0 -0
  322. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/utils/_pickler.py +0 -0
  323. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/utils/_supported_format.py +0 -0
  324. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/utils/log_hint_utils.py +0 -0
  325. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/package/utils/type_hint_utils.py +0 -0
  326. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/platforms/__init__.py +0 -0
  327. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/projects/__init__.py +0 -0
  328. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/projects/operations.py +0 -0
  329. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/projects/pipelines.py +0 -0
  330. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/render.py +0 -0
  331. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/run.py +0 -0
  332. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/__init__.py +0 -0
  333. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/daskjob.py +0 -0
  334. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/__init__.py +0 -0
  335. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/databricks_cancel_task.py +0 -0
  336. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/databricks_runtime.py +0 -0
  337. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/databricks_wrapper.py +0 -0
  338. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/funcdoc.py +0 -0
  339. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/function_reference.py +0 -0
  340. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/generators.py +0 -0
  341. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/kubejob.py +0 -0
  342. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/local.py +0 -0
  343. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/mpijob/__init__.py +0 -0
  344. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/mpijob/abstract.py +0 -0
  345. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/mpijob/v1.py +0 -0
  346. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/api_gateway.py +0 -0
  347. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/application/__init__.py +0 -0
  348. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/application/reverse_proxy.go +0 -0
  349. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/nuclio.py +0 -0
  350. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/remotesparkjob.py +0 -0
  351. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/sparkjob/__init__.py +0 -0
  352. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/runtimes/sparkjob/spark3job.py +0 -0
  353. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/secrets.py +0 -0
  354. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/__init__.py +0 -0
  355. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/merger.py +0 -0
  356. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/remote.py +0 -0
  357. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/serving_wrapper.py +0 -0
  358. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/utils.py +0 -0
  359. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/serving/v1_serving.py +0 -0
  360. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/track/__init__.py +0 -0
  361. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/track/tracker.py +0 -0
  362. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/track/tracker_manager.py +0 -0
  363. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/track/trackers/__init__.py +0 -0
  364. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/track/trackers/mlflow_tracker.py +0 -0
  365. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/__init__.py +0 -0
  366. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/async_http.py +0 -0
  367. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/azure_vault.py +0 -0
  368. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/clones.py +0 -0
  369. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/condition_evaluator.py +0 -0
  370. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/http.py +0 -0
  371. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/logger.py +0 -0
  372. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/__init__.py +0 -0
  373. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/__init__.py +0 -0
  374. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/base.py +0 -0
  375. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/console.py +0 -0
  376. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/git.py +0 -0
  377. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/ipython.py +0 -0
  378. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/mail.py +0 -0
  379. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/slack.py +0 -0
  380. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/webhook.py +0 -0
  381. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification_pusher.py +0 -0
  382. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/regex.py +0 -0
  383. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/retryer.py +0 -0
  384. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/singleton.py +0 -0
  385. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/v3io_clients.py +0 -0
  386. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/vault.py +0 -0
  387. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/version/__init__.py +0 -0
  388. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun/utils/version/version.py +0 -0
  389. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun.egg-info/SOURCES.txt +0 -0
  390. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun.egg-info/dependency_links.txt +0 -0
  391. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun.egg-info/entry_points.txt +0 -0
  392. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun.egg-info/not-zip-safe +0 -0
  393. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/mlrun.egg-info/top_level.txt +0 -0
  394. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/packages.py +0 -0
  395. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/pyproject.toml +0 -0
  396. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/setup.cfg +0 -0
  397. {mlrun-1.10.0rc24 → mlrun-1.10.0rc26}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mlrun
3
- Version: 1.10.0rc24
3
+ Version: 1.10.0rc26
4
4
  Summary: Tracking and config of machine learning runs
5
5
  Home-page: https://github.com/mlrun/mlrun
6
6
  Author: Yaron Haviv
@@ -43,9 +43,9 @@ Requires-Dist: v3io-frames~=0.10.15; python_version < "3.11"
43
43
  Requires-Dist: v3io-frames>=0.13.0; python_version >= "3.11"
44
44
  Requires-Dist: semver~=3.0
45
45
  Requires-Dist: dependency-injector~=4.41
46
- Requires-Dist: fsspec<2024.7,>=2023.9.2
46
+ Requires-Dist: fsspec<=2025.7.0,>=2025.5.1
47
47
  Requires-Dist: v3iofs~=0.1.17
48
- Requires-Dist: storey~=1.10.11
48
+ Requires-Dist: storey~=1.10.13
49
49
  Requires-Dist: inflection~=0.5.0
50
50
  Requires-Dist: python-dotenv~=1.0
51
51
  Requires-Dist: setuptools>=75.2
@@ -56,14 +56,15 @@ Requires-Dist: mlrun-pipelines-kfp-common~=0.5.8
56
56
  Requires-Dist: mlrun-pipelines-kfp-v1-8~=0.5.7
57
57
  Requires-Dist: docstring_parser~=0.16
58
58
  Requires-Dist: aiosmtplib~=3.0
59
+ Requires-Dist: deepdiff<9.0.0,>=8.6.1
59
60
  Provides-Extra: s3
60
61
  Requires-Dist: boto3<1.36,>=1.28.0; extra == "s3"
61
62
  Requires-Dist: aiobotocore<2.16,>=2.5.0; extra == "s3"
62
- Requires-Dist: s3fs<2024.7,>=2023.9.2; extra == "s3"
63
+ Requires-Dist: s3fs<=2025.7.0,>=2025.5.1; extra == "s3"
63
64
  Provides-Extra: azure-blob-storage
64
65
  Requires-Dist: msrest~=0.6.21; extra == "azure-blob-storage"
65
66
  Requires-Dist: azure-core~=1.24; extra == "azure-blob-storage"
66
- Requires-Dist: adlfs==2023.9.0; extra == "azure-blob-storage"
67
+ Requires-Dist: adlfs==2024.12.0; extra == "azure-blob-storage"
67
68
  Requires-Dist: pyopenssl>=23; extra == "azure-blob-storage"
68
69
  Provides-Extra: azure-key-vault
69
70
  Requires-Dist: azure-identity~=1.5; extra == "azure-key-vault"
@@ -78,7 +79,7 @@ Requires-Dist: google-cloud-storage==2.14.0; extra == "google-cloud"
78
79
  Requires-Dist: google-cloud-bigquery[bqstorage,pandas]==3.14.1; extra == "google-cloud"
79
80
  Requires-Dist: google-cloud-bigquery-storage~=2.17; extra == "google-cloud"
80
81
  Requires-Dist: google-cloud==0.34; extra == "google-cloud"
81
- Requires-Dist: gcsfs<2024.7,>=2023.9.2; extra == "google-cloud"
82
+ Requires-Dist: gcsfs<=2025.7.0,>=2025.5.1; extra == "google-cloud"
82
83
  Provides-Extra: kafka
83
84
  Requires-Dist: kafka-python~=2.1.0; extra == "kafka"
84
85
  Requires-Dist: avro~=1.11; extra == "kafka"
@@ -96,8 +97,8 @@ Requires-Dist: distributed~=2024.12.1; python_version >= "3.11" and extra == "da
96
97
  Requires-Dist: dask~=2023.12.1; python_version < "3.11" and extra == "dask"
97
98
  Requires-Dist: distributed~=2023.12.1; python_version < "3.11" and extra == "dask"
98
99
  Provides-Extra: alibaba-oss
99
- Requires-Dist: ossfs==2023.12.0; extra == "alibaba-oss"
100
- Requires-Dist: oss2==2.18.1; extra == "alibaba-oss"
100
+ Requires-Dist: ossfs==2025.5.0; extra == "alibaba-oss"
101
+ Requires-Dist: oss2==2.18.4; extra == "alibaba-oss"
101
102
  Provides-Extra: tdengine
102
103
  Requires-Dist: taos-ws-py==0.3.2; extra == "tdengine"
103
104
  Provides-Extra: snowflake
@@ -126,7 +127,7 @@ Requires-Dist: pydantic<2,>=1; extra == "api"
126
127
  Requires-Dist: mlrun-pipelines-kfp-v1-8~=0.5.7; extra == "api"
127
128
  Requires-Dist: grpcio~=1.70.0; extra == "api"
128
129
  Provides-Extra: all
129
- Requires-Dist: adlfs==2023.9.0; extra == "all"
130
+ Requires-Dist: adlfs==2024.12.0; extra == "all"
130
131
  Requires-Dist: aiobotocore<2.16,>=2.5.0; extra == "all"
131
132
  Requires-Dist: avro~=1.11; extra == "all"
132
133
  Requires-Dist: azure-core~=1.24; extra == "all"
@@ -138,7 +139,7 @@ Requires-Dist: dask~=2024.12.1; python_version >= "3.11" and extra == "all"
138
139
  Requires-Dist: databricks-sdk~=0.20.0; extra == "all"
139
140
  Requires-Dist: distributed~=2023.12.1; python_version < "3.11" and extra == "all"
140
141
  Requires-Dist: distributed~=2024.12.1; python_version >= "3.11" and extra == "all"
141
- Requires-Dist: gcsfs<2024.7,>=2023.9.2; extra == "all"
142
+ Requires-Dist: gcsfs<=2025.7.0,>=2025.5.1; extra == "all"
142
143
  Requires-Dist: google-cloud-bigquery-storage~=2.17; extra == "all"
143
144
  Requires-Dist: google-cloud-bigquery[bqstorage,pandas]==3.14.1; extra == "all"
144
145
  Requires-Dist: google-cloud-storage==2.14.0; extra == "all"
@@ -147,17 +148,17 @@ Requires-Dist: graphviz~=0.20.0; extra == "all"
147
148
  Requires-Dist: kafka-python~=2.1.0; extra == "all"
148
149
  Requires-Dist: mlflow~=2.22; extra == "all"
149
150
  Requires-Dist: msrest~=0.6.21; extra == "all"
150
- Requires-Dist: oss2==2.18.1; extra == "all"
151
- Requires-Dist: ossfs==2023.12.0; extra == "all"
151
+ Requires-Dist: oss2==2.18.4; extra == "all"
152
+ Requires-Dist: ossfs==2025.5.0; extra == "all"
152
153
  Requires-Dist: plotly~=5.23; extra == "all"
153
154
  Requires-Dist: pyopenssl>=23; extra == "all"
154
155
  Requires-Dist: redis~=4.3; extra == "all"
155
- Requires-Dist: s3fs<2024.7,>=2023.9.2; extra == "all"
156
+ Requires-Dist: s3fs<=2025.7.0,>=2025.5.1; extra == "all"
156
157
  Requires-Dist: snowflake-connector-python~=3.7; extra == "all"
157
158
  Requires-Dist: sqlalchemy~=2.0; extra == "all"
158
159
  Requires-Dist: taos-ws-py==0.3.2; extra == "all"
159
160
  Provides-Extra: complete
160
- Requires-Dist: adlfs==2023.9.0; extra == "complete"
161
+ Requires-Dist: adlfs==2024.12.0; extra == "complete"
161
162
  Requires-Dist: aiobotocore<2.16,>=2.5.0; extra == "complete"
162
163
  Requires-Dist: avro~=1.11; extra == "complete"
163
164
  Requires-Dist: azure-core~=1.24; extra == "complete"
@@ -169,7 +170,7 @@ Requires-Dist: dask~=2024.12.1; python_version >= "3.11" and extra == "complete"
169
170
  Requires-Dist: databricks-sdk~=0.20.0; extra == "complete"
170
171
  Requires-Dist: distributed~=2023.12.1; python_version < "3.11" and extra == "complete"
171
172
  Requires-Dist: distributed~=2024.12.1; python_version >= "3.11" and extra == "complete"
172
- Requires-Dist: gcsfs<2024.7,>=2023.9.2; extra == "complete"
173
+ Requires-Dist: gcsfs<=2025.7.0,>=2025.5.1; extra == "complete"
173
174
  Requires-Dist: google-cloud-bigquery-storage~=2.17; extra == "complete"
174
175
  Requires-Dist: google-cloud-bigquery[bqstorage,pandas]==3.14.1; extra == "complete"
175
176
  Requires-Dist: google-cloud-storage==2.14.0; extra == "complete"
@@ -178,17 +179,17 @@ Requires-Dist: graphviz~=0.20.0; extra == "complete"
178
179
  Requires-Dist: kafka-python~=2.1.0; extra == "complete"
179
180
  Requires-Dist: mlflow~=2.22; extra == "complete"
180
181
  Requires-Dist: msrest~=0.6.21; extra == "complete"
181
- Requires-Dist: oss2==2.18.1; extra == "complete"
182
- Requires-Dist: ossfs==2023.12.0; extra == "complete"
182
+ Requires-Dist: oss2==2.18.4; extra == "complete"
183
+ Requires-Dist: ossfs==2025.5.0; extra == "complete"
183
184
  Requires-Dist: plotly~=5.23; extra == "complete"
184
185
  Requires-Dist: pyopenssl>=23; extra == "complete"
185
186
  Requires-Dist: redis~=4.3; extra == "complete"
186
- Requires-Dist: s3fs<2024.7,>=2023.9.2; extra == "complete"
187
+ Requires-Dist: s3fs<=2025.7.0,>=2025.5.1; extra == "complete"
187
188
  Requires-Dist: snowflake-connector-python~=3.7; extra == "complete"
188
189
  Requires-Dist: sqlalchemy~=2.0; extra == "complete"
189
190
  Requires-Dist: taos-ws-py==0.3.2; extra == "complete"
190
191
  Provides-Extra: complete-api
191
- Requires-Dist: adlfs==2023.9.0; extra == "complete-api"
192
+ Requires-Dist: adlfs==2024.12.0; extra == "complete-api"
192
193
  Requires-Dist: aiobotocore<2.16,>=2.5.0; extra == "complete-api"
193
194
  Requires-Dist: aiosmtplib~=3.0; extra == "complete-api"
194
195
  Requires-Dist: alembic~=1.14; extra == "complete-api"
@@ -205,7 +206,7 @@ Requires-Dist: databricks-sdk~=0.20.0; extra == "complete-api"
205
206
  Requires-Dist: distributed~=2023.12.1; python_version < "3.11" and extra == "complete-api"
206
207
  Requires-Dist: distributed~=2024.12.1; python_version >= "3.11" and extra == "complete-api"
207
208
  Requires-Dist: fastapi~=0.116.0; extra == "complete-api"
208
- Requires-Dist: gcsfs<2024.7,>=2023.9.2; extra == "complete-api"
209
+ Requires-Dist: gcsfs<=2025.7.0,>=2025.5.1; extra == "complete-api"
209
210
  Requires-Dist: google-cloud-bigquery-storage~=2.17; extra == "complete-api"
210
211
  Requires-Dist: google-cloud-bigquery[bqstorage,pandas]==3.14.1; extra == "complete-api"
211
212
  Requires-Dist: google-cloud-storage==2.14.0; extra == "complete-api"
@@ -220,15 +221,15 @@ Requires-Dist: mlflow~=2.22; extra == "complete-api"
220
221
  Requires-Dist: mlrun-pipelines-kfp-v1-8~=0.5.7; extra == "complete-api"
221
222
  Requires-Dist: msrest~=0.6.21; extra == "complete-api"
222
223
  Requires-Dist: objgraph~=3.6; extra == "complete-api"
223
- Requires-Dist: oss2==2.18.1; extra == "complete-api"
224
- Requires-Dist: ossfs==2023.12.0; extra == "complete-api"
224
+ Requires-Dist: oss2==2.18.4; extra == "complete-api"
225
+ Requires-Dist: ossfs==2025.5.0; extra == "complete-api"
225
226
  Requires-Dist: plotly~=5.23; extra == "complete-api"
226
227
  Requires-Dist: psycopg2-binary~=2.9; extra == "complete-api"
227
228
  Requires-Dist: pydantic<2,>=1; extra == "complete-api"
228
229
  Requires-Dist: pymysql~=1.1; extra == "complete-api"
229
230
  Requires-Dist: pyopenssl>=23; extra == "complete-api"
230
231
  Requires-Dist: redis~=4.3; extra == "complete-api"
231
- Requires-Dist: s3fs<2024.7,>=2023.9.2; extra == "complete-api"
232
+ Requires-Dist: s3fs<=2025.7.0,>=2025.5.1; extra == "complete-api"
232
233
  Requires-Dist: snowflake-connector-python~=3.7; extra == "complete-api"
233
234
  Requires-Dist: sqlalchemy-utils~=0.41.2; extra == "complete-api"
234
235
  Requires-Dist: sqlalchemy~=2.0; extra == "complete-api"
@@ -29,12 +29,12 @@ def extra_requirements() -> dict[str, list[str]]:
29
29
  "s3": [
30
30
  "boto3>=1.28.0,<1.36",
31
31
  "aiobotocore>=2.5.0,<2.16",
32
- "s3fs>=2023.9.2, <2024.7",
32
+ "s3fs>=2025.5.1, <=2025.7.0",
33
33
  ],
34
34
  "azure-blob-storage": [
35
35
  "msrest~=0.6.21",
36
36
  "azure-core~=1.24",
37
- "adlfs==2023.9.0",
37
+ "adlfs==2024.12.0",
38
38
  "pyopenssl>=23",
39
39
  ],
40
40
  "azure-key-vault": [
@@ -53,7 +53,7 @@ def extra_requirements() -> dict[str, list[str]]:
53
53
  # (https://github.com/pypa/setuptools/issues/4476) with setuptools (ML-7273)
54
54
  "google-cloud-bigquery-storage~=2.17",
55
55
  "google-cloud==0.34",
56
- "gcsfs>=2023.9.2, <2024.7",
56
+ "gcsfs>=2025.5.1, <=2025.7.0",
57
57
  ],
58
58
  "kafka": [
59
59
  "kafka-python~=2.1.0",
@@ -72,7 +72,7 @@ def extra_requirements() -> dict[str, list[str]]:
72
72
  'dask~=2023.12.1; python_version < "3.11"',
73
73
  'distributed~=2023.12.1; python_version < "3.11"',
74
74
  ],
75
- "alibaba-oss": ["ossfs==2023.12.0", "oss2==2.18.1"],
75
+ "alibaba-oss": ["ossfs==2025.5.0", "oss2==2.18.4"],
76
76
  "tdengine": ["taos-ws-py==0.3.2"],
77
77
  "snowflake": ["snowflake-connector-python~=3.7"],
78
78
  }
@@ -17,7 +17,6 @@ testcontainers[k3s]~=4.10.0
17
17
  aioresponses~=0.7
18
18
  requests-mock~=1.8
19
19
  httpx~=0.27.0
20
- deepdiff~=7.0
21
20
  hypothesis[numpy]~=6.103
22
21
  pytest-rerunfailures~=14.0
23
22
  pytest-forked~=1.6
@@ -10,18 +10,18 @@
10
10
  # we have a test test_extras_requirement_file_aligned to verify this file is aligned to setup.py
11
11
  # The versions of gcsfs and s3fs should be identical to the fsspec version;
12
12
  # Therefore, they must be equal to each other.
13
- s3fs>=2023.9.2, <2024.7
14
- gcsfs>=2023.9.2, <2024.7
15
- ossfs==2023.12.0
13
+ s3fs>=2025.5.1, <=2025.7.0
14
+ gcsfs>=2025.5.1, <=2025.7.0
15
+ ossfs==2025.5.0
16
16
  boto3>=1.28.0,<1.36
17
- oss2==2.18.1
17
+ oss2==2.18.4
18
18
  aiobotocore>=2.5.0,<2.16
19
19
  # https://github.com/Azure/azure-sdk-for-python/issues/24765#issuecomment-1150310498
20
20
  msrest~=0.6.21
21
21
  azure-core~=1.24
22
22
  # This version is required in order to support the self._strip_protocol
23
23
  # function in Azure Blob File System functions (such as _ls and more).
24
- adlfs==2023.9.0
24
+ adlfs==2024.12.0
25
25
  azure-identity~=1.5
26
26
  azure-keyvault-secrets~=4.2
27
27
  # cryptography>=39, which is required by azure, needs this, or else we get
@@ -62,12 +62,19 @@ class LLMPromptArtifactSpec(ArtifactSpec):
62
62
  parent_uri=model_artifact.uri
63
63
  if isinstance(model_artifact, model_art.ModelArtifact)
64
64
  else model_artifact,
65
+ format=kwargs.pop("format", "") or "json",
65
66
  **kwargs,
66
67
  )
67
68
 
68
69
  self.prompt_template = prompt_template
69
70
  self.prompt_legend = prompt_legend
70
- self.model_configuration = model_configuration
71
+ if model_configuration is not None and not isinstance(
72
+ model_configuration, dict
73
+ ):
74
+ raise mlrun.errors.MLRunInvalidArgumentError(
75
+ "LLMPromptArtifact model_configuration must be a dictionary or None"
76
+ )
77
+ self.model_configuration = model_configuration or {}
71
78
  self.description = description
72
79
  self._model_artifact = (
73
80
  model_artifact
@@ -0,0 +1,175 @@
1
+ # Copyright 2023 Iguazio
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ import sys
16
+ import typing
17
+ from datetime import datetime
18
+
19
+ import mlrun.common
20
+ import mlrun.common.schemas.model_monitoring.constants as mm_constants
21
+
22
+ FeatureStats = typing.NewType("FeatureStats", dict[str, dict[str, typing.Any]])
23
+ Histogram = typing.NewType("Histogram", list[list])
24
+ BinCounts = typing.NewType("BinCounts", list[int])
25
+ BinEdges = typing.NewType("BinEdges", list[float])
26
+
27
+ _MAX_FLOAT = sys.float_info.max
28
+ logger = mlrun.utils.create_logger(level="info", name="mm_helpers")
29
+
30
+
31
+ def parse_model_endpoint_project_prefix(path: str, project_name: str):
32
+ return path.split(project_name, 1)[0] + project_name
33
+
34
+
35
+ def parse_model_endpoint_store_prefix(store_prefix: str):
36
+ endpoint, parsed_url = mlrun.platforms.iguazio.parse_path(store_prefix)
37
+ container, path = parsed_url.split("/", 1)
38
+ return endpoint, container, path
39
+
40
+
41
+ def get_kafka_topic(project: str, function_name: typing.Optional[str] = None) -> str:
42
+ if (
43
+ function_name is None
44
+ or function_name == mm_constants.MonitoringFunctionNames.STREAM
45
+ ):
46
+ function_specifier = ""
47
+ else:
48
+ function_specifier = f"_{function_name}"
49
+
50
+ return (
51
+ f"monitoring_stream_{mlrun.mlconf.system_id}_{project}{function_specifier}_v1"
52
+ )
53
+
54
+
55
+ def _get_counts(hist: Histogram) -> BinCounts:
56
+ """Return the histogram counts"""
57
+ return BinCounts(hist[0])
58
+
59
+
60
+ def _get_edges(hist: Histogram) -> BinEdges:
61
+ """Return the histogram edges"""
62
+ return BinEdges(hist[1])
63
+
64
+
65
+ def pad_hist(hist: Histogram) -> None:
66
+ """
67
+ Add [-inf, x_0] and [x_n, inf] bins to the histogram inplace unless present
68
+ """
69
+ counts = _get_counts(hist)
70
+ edges = _get_edges(hist)
71
+
72
+ is_padded = edges[0] == -_MAX_FLOAT and edges[-1] == _MAX_FLOAT
73
+ if is_padded:
74
+ return
75
+
76
+ counts.insert(0, 0)
77
+ edges.insert(0, -_MAX_FLOAT)
78
+
79
+ counts.append(0)
80
+ edges.append(_MAX_FLOAT)
81
+
82
+
83
+ def pad_features_hist(feature_stats: FeatureStats) -> None:
84
+ """
85
+ Given a feature statistics dictionary, pad the histograms with edges bins
86
+ inplace to cover input statistics from -inf to inf.
87
+ """
88
+ hist_key = "hist"
89
+ for feature in feature_stats.values():
90
+ if hist_key in feature:
91
+ pad_hist(Histogram(feature[hist_key]))
92
+
93
+
94
+ def get_model_endpoints_creation_task_status(
95
+ server,
96
+ ) -> tuple[
97
+ mlrun.common.schemas.BackgroundTaskState,
98
+ typing.Optional[datetime],
99
+ typing.Optional[set[str]],
100
+ ]:
101
+ background_task = None
102
+ background_task_state = mlrun.common.schemas.BackgroundTaskState.running
103
+ background_task_check_timestamp = None
104
+ model_endpoint_uids = None
105
+ try:
106
+ background_task = mlrun.get_run_db().get_project_background_task(
107
+ server.project, server.model_endpoint_creation_task_name
108
+ )
109
+ background_task_check_timestamp = mlrun.utils.now_date()
110
+ log_background_task_state(
111
+ server, background_task.status.state, background_task_check_timestamp
112
+ )
113
+ background_task_state = background_task.status.state
114
+ except mlrun.errors.MLRunNotFoundError:
115
+ logger.warning(
116
+ "Model endpoint creation task not found listing model endpoints",
117
+ project=server.project,
118
+ task_name=server.model_endpoint_creation_task_name,
119
+ )
120
+ if background_task is None:
121
+ model_endpoints = mlrun.get_run_db().list_model_endpoints(
122
+ project=server.project,
123
+ function_name=server.function_name,
124
+ function_tag=server.function_tag,
125
+ tsdb_metrics=False,
126
+ )
127
+ if model_endpoints:
128
+ model_endpoint_uids = {
129
+ endpoint.metadata.uid for endpoint in model_endpoints.endpoints
130
+ }
131
+ logger.info(
132
+ "Model endpoints found after background task not found, model monitoring will monitor "
133
+ "events",
134
+ project=server.project,
135
+ function_name=server.function_name,
136
+ function_tag=server.function_tag,
137
+ uids=model_endpoint_uids,
138
+ )
139
+ background_task_state = mlrun.common.schemas.BackgroundTaskState.succeeded
140
+ else:
141
+ logger.warning(
142
+ "Model endpoints not found after background task not found, model monitoring will not "
143
+ "monitor events",
144
+ project=server.project,
145
+ function_name=server.function_name,
146
+ function_tag=server.function_tag,
147
+ )
148
+ background_task_state = mlrun.common.schemas.BackgroundTaskState.failed
149
+ return background_task_state, background_task_check_timestamp, model_endpoint_uids
150
+
151
+
152
+ def log_background_task_state(
153
+ server,
154
+ background_task_state: mlrun.common.schemas.BackgroundTaskState,
155
+ background_task_check_timestamp: typing.Optional[datetime],
156
+ ):
157
+ logger.info(
158
+ "Checking model endpoint creation task status",
159
+ task_name=server.model_endpoint_creation_task_name,
160
+ )
161
+ if (
162
+ background_task_state
163
+ in mlrun.common.schemas.BackgroundTaskState.terminal_states()
164
+ ):
165
+ logger.info(
166
+ f"Model endpoint creation task completed with state {background_task_state}"
167
+ )
168
+ else: # in progress
169
+ logger.info(
170
+ f"Model endpoint creation task is still in progress with the current state: "
171
+ f"{background_task_state}. Events will not be monitored for the next "
172
+ f"{mlrun.mlconf.model_endpoint_monitoring.model_endpoint_creation_check_period} seconds",
173
+ function_name=server.function.name,
174
+ background_task_check_timestamp=background_task_check_timestamp.isoformat(),
175
+ )
@@ -15,6 +15,7 @@
15
15
  from datetime import datetime, timezone
16
16
  from typing import Optional
17
17
 
18
+ import deepdiff
18
19
  from pydantic.v1 import BaseModel, Extra, Field
19
20
 
20
21
  import mlrun.common.types
@@ -36,9 +37,9 @@ class HubObjectMetadata(BaseModel):
36
37
  extra = Extra.allow
37
38
 
38
39
 
39
- # Currently only functions are supported. Will add more in the future.
40
40
  class HubSourceType(mlrun.common.types.StrEnum):
41
41
  functions = "functions"
42
+ modules = "modules"
42
43
 
43
44
 
44
45
  # Sources-related objects
@@ -46,7 +47,6 @@ class HubSourceSpec(ObjectSpec):
46
47
  path: str # URL to base directory, should include schema (s3://, etc...)
47
48
  channel: str
48
49
  credentials: Optional[dict] = {}
49
- object_type: HubSourceType = Field(HubSourceType.functions, const=True)
50
50
 
51
51
 
52
52
  class HubSource(BaseModel):
@@ -55,11 +55,11 @@ class HubSource(BaseModel):
55
55
  spec: HubSourceSpec
56
56
  status: Optional[ObjectStatus] = ObjectStatus(state="created")
57
57
 
58
- def get_full_uri(self, relative_path):
59
- return f"{self.spec.path}/{self.spec.object_type}/{self.spec.channel}/{relative_path}"
58
+ def get_full_uri(self, relative_path, object_type):
59
+ return f"{self.spec.path}/{object_type}/{self.spec.channel}/{relative_path}"
60
60
 
61
- def get_catalog_uri(self):
62
- return self.get_full_uri(mlrun.mlconf.hub.catalog_filename)
61
+ def get_catalog_uri(self, object_type):
62
+ return self.get_full_uri(mlrun.mlconf.hub.catalog_filename, object_type)
63
63
 
64
64
  @classmethod
65
65
  def generate_default_source(cls):
@@ -78,11 +78,23 @@ class HubSource(BaseModel):
78
78
  spec=HubSourceSpec(
79
79
  path=mlrun.mlconf.hub.default_source.url,
80
80
  channel=mlrun.mlconf.hub.default_source.channel,
81
- object_type=HubSourceType(mlrun.mlconf.hub.default_source.object_type),
82
81
  ),
83
82
  status=ObjectStatus(state="created"),
84
83
  )
85
84
 
85
+ def diff(self, another_source: "HubSource") -> dict:
86
+ """
87
+ Compare this HubSource with another one.
88
+ Returns a dict of differences (metadata, spec, status).
89
+ """
90
+ exclude_paths = [
91
+ "root['metadata']['updated']",
92
+ "root['metadata']['created']",
93
+ ]
94
+ return deepdiff.DeepDiff(
95
+ self.dict(), another_source.dict(), exclude_paths=exclude_paths
96
+ )
97
+
86
98
 
87
99
  last_source_index = -1
88
100
 
@@ -94,21 +106,16 @@ class IndexedHubSource(BaseModel):
94
106
 
95
107
  # Item-related objects
96
108
  class HubItemMetadata(HubObjectMetadata):
97
- source: HubSourceType = Field(HubSourceType.functions, const=True)
109
+ source: HubSourceType = HubSourceType.functions
98
110
  version: str
99
111
  tag: Optional[str]
100
112
 
101
113
  def get_relative_path(self) -> str:
102
- if self.source == HubSourceType.functions:
103
- # This is needed since the hub deployment script modifies the paths to use _ instead of -.
104
- modified_name = self.name.replace("-", "_")
105
- # Prefer using the tag if exists. Otherwise, use version.
106
- version = self.tag or self.version
107
- return f"{modified_name}/{version}/"
108
- else:
109
- raise mlrun.errors.MLRunInvalidArgumentError(
110
- f"Bad source for hub item - {self.source}"
111
- )
114
+ # This is needed since the hub deployment script modifies the paths to use _ instead of -.
115
+ modified_name = self.name.replace("-", "_")
116
+ # Prefer using the tag if exists. Otherwise, use version.
117
+ version = self.tag or self.version
118
+ return f"{modified_name}/{version}/"
112
119
 
113
120
 
114
121
  class HubItemSpec(ObjectSpec):
@@ -331,6 +331,7 @@ class EndpointType(IntEnum):
331
331
  class EndpointMode(IntEnum):
332
332
  REAL_TIME = 0
333
333
  BATCH = 1
334
+ BATCH_LEGACY = 2 # legacy batch mode, used for endpoints created through the batch inference job
334
335
 
335
336
 
336
337
  class MonitoringFunctionNames(MonitoringStrEnum):
@@ -119,7 +119,7 @@ class ModelEndpointMetadata(ObjectMetadata, ModelEndpointParser):
119
119
  project: constr(regex=PROJECT_PATTERN)
120
120
  endpoint_type: EndpointType = EndpointType.NODE_EP
121
121
  uid: Optional[constr(regex=MODEL_ENDPOINT_ID_PATTERN)]
122
- mode: EndpointMode = EndpointMode.REAL_TIME
122
+ mode: Optional[EndpointMode] = None
123
123
 
124
124
  @classmethod
125
125
  def mutable_fields(cls):
@@ -131,6 +131,15 @@ class ModelEndpointMetadata(ObjectMetadata, ModelEndpointParser):
131
131
  return str(v)
132
132
  return v
133
133
 
134
+ @validator("mode", pre=True, always=True)
135
+ def _set_mode_based_on_endpoint_type(cls, v, values): # noqa: N805
136
+ if v is None:
137
+ if values.get("endpoint_type") == EndpointType.BATCH_EP:
138
+ return EndpointMode.BATCH_LEGACY
139
+ else:
140
+ return EndpointMode.REAL_TIME
141
+ return v
142
+
134
143
 
135
144
  class ModelEndpointSpec(ObjectSpec, ModelEndpointParser):
136
145
  model_class: Optional[str] = ""
@@ -718,7 +718,6 @@ default_config = {
718
718
  "name": "default",
719
719
  "description": "MLRun global function hub",
720
720
  "url": "https://mlrun.github.io/marketplace",
721
- "object_type": "functions",
722
721
  "channel": "master",
723
722
  },
724
723
  },
@@ -1000,9 +999,9 @@ class Config:
1000
999
  )
1001
1000
 
1002
1001
  @staticmethod
1003
- def get_default_hub_source() -> str:
1002
+ def get_default_hub_source_url_prefix(object_type) -> str:
1004
1003
  default_source = config.hub.default_source
1005
- return f"{default_source.url}/{default_source.object_type}/{default_source.channel}/"
1004
+ return f"{default_source.url}/{object_type}/{default_source.channel}/"
1006
1005
 
1007
1006
  @staticmethod
1008
1007
  def decode_base64_config_and_load_to_object(
@@ -43,7 +43,7 @@ import storey
43
43
 
44
44
  import mlrun.datastore.wasbfs
45
45
  from mlrun.datastore.datastore_profile import (
46
- DatastoreProfileKafkaSource,
46
+ DatastoreProfileKafkaStream,
47
47
  DatastoreProfileKafkaTarget,
48
48
  DatastoreProfileV3io,
49
49
  )
@@ -123,7 +123,7 @@ def get_stream_pusher(stream_path: str, **kwargs):
123
123
  )
124
124
  if isinstance(
125
125
  datastore_profile,
126
- (DatastoreProfileKafkaSource, DatastoreProfileKafkaTarget),
126
+ (DatastoreProfileKafkaStream, DatastoreProfileKafkaTarget),
127
127
  ):
128
128
  attributes = datastore_profile.attributes()
129
129
  brokers = attributes.pop("brokers", None)