mlrun 1.10.0rc25__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.0rc25/mlrun.egg-info → mlrun-1.10.0rc26}/PKG-INFO +3 -3
  2. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/dev-requirements.txt +0 -1
  3. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/llm_prompt.py +8 -1
  4. mlrun-1.10.0rc26/mlrun/common/model_monitoring/helpers.py +175 -0
  5. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/hub.py +11 -18
  6. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/config.py +2 -3
  7. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/__init__.py +2 -2
  8. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/datastore_profile.py +27 -3
  9. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/huggingface_provider.py +5 -1
  10. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/model_provider.py +1 -1
  11. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/s3.py +24 -2
  12. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/storeytargets.py +2 -3
  13. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/db/base.py +14 -0
  14. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/db/httpdb.py +11 -2
  15. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/db/nopdb.py +13 -0
  16. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/k8s_utils.py +0 -14
  17. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/base.py +15 -0
  18. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/controller.py +5 -3
  19. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/tdengine_connector.py +3 -1
  20. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/v3io/stream_graph_steps.py +17 -4
  21. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/v3io/v3io_connector.py +3 -0
  22. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/helpers.py +5 -5
  23. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/projects/project.py +5 -5
  24. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/base.py +0 -3
  25. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/mounts.py +15 -2
  26. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/pod.py +153 -11
  27. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/routers.py +23 -41
  28. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/server.py +1 -0
  29. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/states.py +3 -3
  30. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/system_steps.py +52 -29
  31. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/v2_serving.py +9 -10
  32. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/helpers.py +5 -2
  33. mlrun-1.10.0rc26/mlrun/utils/version/version.json +4 -0
  34. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26/mlrun.egg-info}/PKG-INFO +3 -3
  35. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun.egg-info/requires.txt +2 -2
  36. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/requirements.txt +4 -2
  37. mlrun-1.10.0rc25/mlrun/common/model_monitoring/helpers.py +0 -89
  38. mlrun-1.10.0rc25/mlrun/utils/version/version.json +0 -4
  39. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/LICENSE +0 -0
  40. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/MANIFEST.in +0 -0
  41. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/Makefile +0 -0
  42. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/README.md +0 -0
  43. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/dependencies.py +0 -0
  44. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/dockerfiles/mlrun-api/requirements.txt +0 -0
  45. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/archive.zip +0 -0
  46. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/function.py +0 -0
  47. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/handler.py +0 -0
  48. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/infile.txt +0 -0
  49. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/load-project.ipynb +0 -0
  50. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/mlrun_basics.ipynb +0 -0
  51. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/mlrun_dask.ipynb +0 -0
  52. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/mlrun_db.ipynb +0 -0
  53. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/mlrun_export_import.ipynb +0 -0
  54. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/mlrun_jobs.ipynb +0 -0
  55. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/mlrun_sparkk8s.ipynb +0 -0
  56. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/mlrun_vault.ipynb +0 -0
  57. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/model.bst +0 -0
  58. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/new-project.ipynb +0 -0
  59. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/nulltst.py +0 -0
  60. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/params.csv +0 -0
  61. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/remote-spark.ipynb +0 -0
  62. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/secrets.txt +0 -0
  63. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/spark-function.py +0 -0
  64. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/training.py +0 -0
  65. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/v2_model_server.ipynb +0 -0
  66. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/examples/xgb_serving.ipynb +0 -0
  67. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/extras-requirements.txt +0 -0
  68. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/__init__.py +0 -0
  69. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/__main__.py +0 -0
  70. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/alerts/__init__.py +0 -0
  71. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/alerts/alert.py +0 -0
  72. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/__init__.py +0 -0
  73. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/base.py +0 -0
  74. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/dataset.py +0 -0
  75. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/document.py +0 -0
  76. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/helpers.py +0 -0
  77. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/manager.py +0 -0
  78. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/model.py +0 -0
  79. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/artifacts/plots.py +0 -0
  80. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/__init__.py +0 -0
  81. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/constants.py +0 -0
  82. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/db/__init__.py +0 -0
  83. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/db/dialects.py +0 -0
  84. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/__init__.py +0 -0
  85. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/artifact.py +0 -0
  86. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/base.py +0 -0
  87. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/feature_set.py +0 -0
  88. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/function.py +0 -0
  89. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/model_endpoint.py +0 -0
  90. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/pipeline.py +0 -0
  91. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/project.py +0 -0
  92. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/formatters/run.py +0 -0
  93. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/helpers.py +0 -0
  94. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/model_monitoring/__init__.py +0 -0
  95. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/runtimes/constants.py +0 -0
  96. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/__init__.py +0 -0
  97. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/alert.py +0 -0
  98. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/api_gateway.py +0 -0
  99. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/artifact.py +0 -0
  100. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/auth.py +0 -0
  101. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/background_task.py +0 -0
  102. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/client_spec.py +0 -0
  103. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/clusterization_spec.py +0 -0
  104. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/common.py +0 -0
  105. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/constants.py +0 -0
  106. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/datastore_profile.py +0 -0
  107. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/events.py +0 -0
  108. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/feature_store.py +0 -0
  109. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/frontend_spec.py +0 -0
  110. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/function.py +0 -0
  111. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/http.py +0 -0
  112. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/k8s.py +0 -0
  113. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/memory_reports.py +0 -0
  114. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/__init__.py +0 -0
  115. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/constants.py +0 -0
  116. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/functions.py +0 -0
  117. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/grafana.py +0 -0
  118. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/model_monitoring/model_endpoints.py +0 -0
  119. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/notification.py +0 -0
  120. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/object.py +0 -0
  121. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/pagination.py +0 -0
  122. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/partition.py +0 -0
  123. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/pipeline.py +0 -0
  124. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/project.py +0 -0
  125. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/regex.py +0 -0
  126. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/runs.py +0 -0
  127. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/runtime_resource.py +0 -0
  128. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/schedule.py +0 -0
  129. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/secret.py +0 -0
  130. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/serving.py +0 -0
  131. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/tag.py +0 -0
  132. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/schemas/workflow.py +0 -0
  133. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/secrets.py +0 -0
  134. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/common/types.py +0 -0
  135. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/data_types/__init__.py +0 -0
  136. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/data_types/data_types.py +0 -0
  137. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/data_types/infer.py +0 -0
  138. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/data_types/spark.py +0 -0
  139. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/data_types/to_pandas.py +0 -0
  140. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/alibaba_oss.py +0 -0
  141. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/azure_blob.py +0 -0
  142. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/base.py +0 -0
  143. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/datastore.py +0 -0
  144. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/dbfs_store.py +0 -0
  145. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/filestore.py +0 -0
  146. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/google_cloud_storage.py +0 -0
  147. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/hdfs.py +0 -0
  148. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/inmem.py +0 -0
  149. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/__init__.py +0 -0
  150. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/mock_model_provider.py +0 -0
  151. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/model_provider/openai_provider.py +0 -0
  152. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/redis.py +0 -0
  153. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/remote_client.py +0 -0
  154. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/snowflake_utils.py +0 -0
  155. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/sources.py +0 -0
  156. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/spark_udf.py +0 -0
  157. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/spark_utils.py +0 -0
  158. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/store_resources.py +0 -0
  159. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/targets.py +0 -0
  160. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/utils.py +0 -0
  161. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/v3io.py +0 -0
  162. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/vectorstore.py +0 -0
  163. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/wasbfs/__init__.py +0 -0
  164. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/datastore/wasbfs/fs.py +0 -0
  165. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/db/__init__.py +0 -0
  166. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/db/auth_utils.py +0 -0
  167. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/db/factory.py +0 -0
  168. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/errors.py +0 -0
  169. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/execution.py +0 -0
  170. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/__init__.py +0 -0
  171. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/api.py +0 -0
  172. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/common.py +0 -0
  173. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/feature_set.py +0 -0
  174. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/feature_vector.py +0 -0
  175. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/feature_vector_utils.py +0 -0
  176. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/ingestion.py +0 -0
  177. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/__init__.py +0 -0
  178. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/base.py +0 -0
  179. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/dask_merger.py +0 -0
  180. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/job.py +0 -0
  181. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/local_merger.py +0 -0
  182. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/spark_merger.py +0 -0
  183. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/retrieval/storey_merger.py +0 -0
  184. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/feature_store/steps.py +0 -0
  185. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/features.py +0 -0
  186. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/__init__.py +0 -0
  187. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/__init__.py +0 -0
  188. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/artifacts_library.py +0 -0
  189. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/mlrun_interface.py +0 -0
  190. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/model_handler.py +0 -0
  191. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/plan.py +0 -0
  192. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/producer.py +0 -0
  193. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_common/utils.py +0 -0
  194. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/__init__.py +0 -0
  195. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/__init__.py +0 -0
  196. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/logger.py +0 -0
  197. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/mlrun_logger.py +0 -0
  198. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/loggers/tensorboard_logger.py +0 -0
  199. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/model_handler.py +0 -0
  200. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_dl_common/utils.py +0 -0
  201. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/__init__.py +0 -0
  202. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/artifacts_library.py +0 -0
  203. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/loggers/__init__.py +0 -0
  204. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/loggers/logger.py +0 -0
  205. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/loggers/mlrun_logger.py +0 -0
  206. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/model_handler.py +0 -0
  207. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/pkl_model_server.py +0 -0
  208. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plan.py +0 -0
  209. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/__init__.py +0 -0
  210. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/calibration_curve_plan.py +0 -0
  211. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/confusion_matrix_plan.py +0 -0
  212. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/dataset_plan.py +0 -0
  213. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/feature_importance_plan.py +0 -0
  214. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/plans/roc_curve_plan.py +0 -0
  215. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/producer.py +0 -0
  216. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/_ml_common/utils.py +0 -0
  217. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/auto_mlrun/__init__.py +0 -0
  218. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/auto_mlrun/auto_mlrun.py +0 -0
  219. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/huggingface/__init__.py +0 -0
  220. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/huggingface/model_server.py +0 -0
  221. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/__init__.py +0 -0
  222. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/__init__.py +0 -0
  223. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/callback.py +0 -0
  224. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/logging_callback.py +0 -0
  225. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/callbacks/mlrun_logging_callback.py +0 -0
  226. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/__init__.py +0 -0
  227. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/booster_mlrun_interface.py +0 -0
  228. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/mlrun_interface.py +0 -0
  229. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/mlrun_interfaces/model_mlrun_interface.py +0 -0
  230. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/model_handler.py +0 -0
  231. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/model_server.py +0 -0
  232. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/lgbm/utils.py +0 -0
  233. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/__init__.py +0 -0
  234. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/dataset.py +0 -0
  235. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/mlrun_interface.py +0 -0
  236. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/model_handler.py +0 -0
  237. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/onnx/model_server.py +0 -0
  238. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/parallel_coordinates.py +0 -0
  239. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/__init__.py +0 -0
  240. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/__init__.py +0 -0
  241. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/callback.py +0 -0
  242. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/logging_callback.py +0 -0
  243. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/mlrun_logging_callback.py +0 -0
  244. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks/tensorboard_logging_callback.py +0 -0
  245. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/callbacks_handler.py +0 -0
  246. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/mlrun_interface.py +0 -0
  247. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/model_handler.py +0 -0
  248. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/model_server.py +0 -0
  249. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/pytorch/utils.py +0 -0
  250. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/__init__.py +0 -0
  251. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/estimator.py +0 -0
  252. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/metric.py +0 -0
  253. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/metrics_library.py +0 -0
  254. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/mlrun_interface.py +0 -0
  255. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/model_handler.py +0 -0
  256. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/sklearn/utils.py +0 -0
  257. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/__init__.py +0 -0
  258. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/__init__.py +0 -0
  259. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/logging_callback.py +0 -0
  260. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/mlrun_logging_callback.py +0 -0
  261. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/callbacks/tensorboard_logging_callback.py +0 -0
  262. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/mlrun_interface.py +0 -0
  263. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/model_handler.py +0 -0
  264. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/model_server.py +0 -0
  265. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/tf_keras/utils.py +0 -0
  266. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/__init__.py +0 -0
  267. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/mlrun_interface.py +0 -0
  268. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/model_handler.py +0 -0
  269. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/frameworks/xgboost/utils.py +0 -0
  270. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/launcher/__init__.py +0 -0
  271. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/launcher/base.py +0 -0
  272. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/launcher/client.py +0 -0
  273. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/launcher/factory.py +0 -0
  274. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/launcher/local.py +0 -0
  275. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/launcher/remote.py +0 -0
  276. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/lists.py +0 -0
  277. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model.py +0 -0
  278. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/__init__.py +0 -0
  279. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/api.py +0 -0
  280. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/__init__.py +0 -0
  281. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/_application_steps.py +0 -0
  282. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/context.py +0 -0
  283. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/evidently/__init__.py +0 -0
  284. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/evidently/base.py +0 -0
  285. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/histogram_data_drift.py +0 -0
  286. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/applications/results.py +0 -0
  287. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/__init__.py +0 -0
  288. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/_schedules.py +0 -0
  289. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/_stats.py +0 -0
  290. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/__init__.py +0 -0
  291. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/base.py +0 -0
  292. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/helpers.py +0 -0
  293. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/__init__.py +0 -0
  294. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/schemas.py +0 -0
  295. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/stream_graph_steps.py +0 -0
  296. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/tdengine/tdengine_connection.py +0 -0
  297. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/db/tsdb/v3io/__init__.py +0 -0
  298. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/features_drift_table.py +0 -0
  299. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/metrics/__init__.py +0 -0
  300. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/metrics/histogram_distance.py +0 -0
  301. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/stream_processing.py +0 -0
  302. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/model_monitoring/writer.py +0 -0
  303. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/__init__.py +0 -0
  304. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/context_handler.py +0 -0
  305. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/errors.py +0 -0
  306. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/packager.py +0 -0
  307. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/packagers/__init__.py +0 -0
  308. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/packagers/default_packager.py +0 -0
  309. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/packagers/numpy_packagers.py +0 -0
  310. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/packagers/pandas_packagers.py +0 -0
  311. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/packagers/python_standard_library_packagers.py +0 -0
  312. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/packagers_manager.py +0 -0
  313. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/utils/__init__.py +0 -0
  314. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/utils/_archiver.py +0 -0
  315. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/utils/_formatter.py +0 -0
  316. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/utils/_pickler.py +0 -0
  317. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/utils/_supported_format.py +0 -0
  318. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/utils/log_hint_utils.py +0 -0
  319. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/package/utils/type_hint_utils.py +0 -0
  320. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/platforms/__init__.py +0 -0
  321. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/platforms/iguazio.py +0 -0
  322. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/projects/__init__.py +0 -0
  323. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/projects/operations.py +0 -0
  324. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/projects/pipelines.py +0 -0
  325. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/render.py +0 -0
  326. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/run.py +0 -0
  327. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/__init__.py +0 -0
  328. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/daskjob.py +0 -0
  329. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/__init__.py +0 -0
  330. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/databricks_cancel_task.py +0 -0
  331. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/databricks_runtime.py +0 -0
  332. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/databricks_job/databricks_wrapper.py +0 -0
  333. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/funcdoc.py +0 -0
  334. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/function_reference.py +0 -0
  335. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/generators.py +0 -0
  336. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/kubejob.py +0 -0
  337. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/local.py +0 -0
  338. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/mpijob/__init__.py +0 -0
  339. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/mpijob/abstract.py +0 -0
  340. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/mpijob/v1.py +0 -0
  341. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/__init__.py +0 -0
  342. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/api_gateway.py +0 -0
  343. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/application/__init__.py +0 -0
  344. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/application/application.py +0 -0
  345. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/application/reverse_proxy.go +0 -0
  346. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/function.py +0 -0
  347. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/nuclio.py +0 -0
  348. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/nuclio/serving.py +0 -0
  349. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/remotesparkjob.py +0 -0
  350. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/sparkjob/__init__.py +0 -0
  351. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/sparkjob/spark3job.py +0 -0
  352. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/runtimes/utils.py +0 -0
  353. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/secrets.py +0 -0
  354. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/__init__.py +0 -0
  355. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/merger.py +0 -0
  356. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/remote.py +0 -0
  357. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/serving_wrapper.py +0 -0
  358. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/utils.py +0 -0
  359. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/serving/v1_serving.py +0 -0
  360. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/track/__init__.py +0 -0
  361. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/track/tracker.py +0 -0
  362. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/track/tracker_manager.py +0 -0
  363. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/track/trackers/__init__.py +0 -0
  364. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/track/trackers/mlflow_tracker.py +0 -0
  365. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/__init__.py +0 -0
  366. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/async_http.py +0 -0
  367. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/azure_vault.py +0 -0
  368. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/clones.py +0 -0
  369. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/condition_evaluator.py +0 -0
  370. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/http.py +0 -0
  371. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/logger.py +0 -0
  372. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/__init__.py +0 -0
  373. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/__init__.py +0 -0
  374. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/base.py +0 -0
  375. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/console.py +0 -0
  376. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/git.py +0 -0
  377. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/ipython.py +0 -0
  378. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/mail.py +0 -0
  379. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/slack.py +0 -0
  380. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification/webhook.py +0 -0
  381. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/notifications/notification_pusher.py +0 -0
  382. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/regex.py +0 -0
  383. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/retryer.py +0 -0
  384. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/singleton.py +0 -0
  385. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/v3io_clients.py +0 -0
  386. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/vault.py +0 -0
  387. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/version/__init__.py +0 -0
  388. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun/utils/version/version.py +0 -0
  389. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun.egg-info/SOURCES.txt +0 -0
  390. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun.egg-info/dependency_links.txt +0 -0
  391. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun.egg-info/entry_points.txt +0 -0
  392. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun.egg-info/not-zip-safe +0 -0
  393. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/mlrun.egg-info/top_level.txt +0 -0
  394. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/packages.py +0 -0
  395. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/pyproject.toml +0 -0
  396. {mlrun-1.10.0rc25 → mlrun-1.10.0rc26}/setup.cfg +0 -0
  397. {mlrun-1.10.0rc25 → 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.0rc25
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
@@ -45,7 +45,7 @@ Requires-Dist: semver~=3.0
45
45
  Requires-Dist: dependency-injector~=4.41
46
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,7 +56,7 @@ 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~=7.0
59
+ Requires-Dist: deepdiff<9.0.0,>=8.6.1
60
60
  Provides-Extra: s3
61
61
  Requires-Dist: boto3<1.36,>=1.28.0; extra == "s3"
62
62
  Requires-Dist: aiobotocore<2.16,>=2.5.0; extra == "s3"
@@ -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
@@ -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
+ )
@@ -37,9 +37,9 @@ class HubObjectMetadata(BaseModel):
37
37
  extra = Extra.allow
38
38
 
39
39
 
40
- # Currently only functions are supported. Will add more in the future.
41
40
  class HubSourceType(mlrun.common.types.StrEnum):
42
41
  functions = "functions"
42
+ modules = "modules"
43
43
 
44
44
 
45
45
  # Sources-related objects
@@ -47,7 +47,6 @@ class HubSourceSpec(ObjectSpec):
47
47
  path: str # URL to base directory, should include schema (s3://, etc...)
48
48
  channel: str
49
49
  credentials: Optional[dict] = {}
50
- object_type: HubSourceType = Field(HubSourceType.functions, const=True)
51
50
 
52
51
 
53
52
  class HubSource(BaseModel):
@@ -56,11 +55,11 @@ class HubSource(BaseModel):
56
55
  spec: HubSourceSpec
57
56
  status: Optional[ObjectStatus] = ObjectStatus(state="created")
58
57
 
59
- def get_full_uri(self, relative_path):
60
- 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}"
61
60
 
62
- def get_catalog_uri(self):
63
- 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)
64
63
 
65
64
  @classmethod
66
65
  def generate_default_source(cls):
@@ -79,7 +78,6 @@ class HubSource(BaseModel):
79
78
  spec=HubSourceSpec(
80
79
  path=mlrun.mlconf.hub.default_source.url,
81
80
  channel=mlrun.mlconf.hub.default_source.channel,
82
- object_type=HubSourceType(mlrun.mlconf.hub.default_source.object_type),
83
81
  ),
84
82
  status=ObjectStatus(state="created"),
85
83
  )
@@ -108,21 +106,16 @@ class IndexedHubSource(BaseModel):
108
106
 
109
107
  # Item-related objects
110
108
  class HubItemMetadata(HubObjectMetadata):
111
- source: HubSourceType = Field(HubSourceType.functions, const=True)
109
+ source: HubSourceType = HubSourceType.functions
112
110
  version: str
113
111
  tag: Optional[str]
114
112
 
115
113
  def get_relative_path(self) -> str:
116
- if self.source == HubSourceType.functions:
117
- # This is needed since the hub deployment script modifies the paths to use _ instead of -.
118
- modified_name = self.name.replace("-", "_")
119
- # Prefer using the tag if exists. Otherwise, use version.
120
- version = self.tag or self.version
121
- return f"{modified_name}/{version}/"
122
- else:
123
- raise mlrun.errors.MLRunInvalidArgumentError(
124
- f"Bad source for hub item - {self.source}"
125
- )
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}/"
126
119
 
127
120
 
128
121
  class HubItemSpec(ObjectSpec):
@@ -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)
@@ -19,6 +19,7 @@ import typing
19
19
  from urllib.parse import ParseResult, urlparse
20
20
 
21
21
  import pydantic.v1
22
+ from deprecated import deprecated
22
23
  from mergedeep import merge
23
24
 
24
25
  import mlrun
@@ -138,6 +139,15 @@ class ConfigProfile(DatastoreProfile):
138
139
  return res
139
140
 
140
141
 
142
+ # TODO: Remove in 1.12.0
143
+ @deprecated(
144
+ version="1.10.0",
145
+ reason=(
146
+ "This class is deprecated from mlrun 1.10.0, and will be removed in 1.12.0. "
147
+ "Use `DatastoreProfileKafkaStream` instead."
148
+ ),
149
+ category=FutureWarning,
150
+ )
141
151
  class DatastoreProfileKafkaTarget(DatastoreProfile):
142
152
  type: str = pydantic.v1.Field("kafka_target")
143
153
  _private_attributes = "kwargs_private"
@@ -158,8 +168,8 @@ class DatastoreProfileKafkaTarget(DatastoreProfile):
158
168
  return attributes
159
169
 
160
170
 
161
- class DatastoreProfileKafkaSource(DatastoreProfile):
162
- type: str = pydantic.v1.Field("kafka_source")
171
+ class DatastoreProfileKafkaStream(DatastoreProfile):
172
+ type: str = pydantic.v1.Field("kafka_stream")
163
173
  _private_attributes = ("kwargs_private", "sasl_user", "sasl_pass")
164
174
  brokers: typing.Union[str, list[str]]
165
175
  topics: typing.Union[str, list[str]]
@@ -198,6 +208,19 @@ class DatastoreProfileKafkaSource(DatastoreProfile):
198
208
  return attributes
199
209
 
200
210
 
211
+ # TODO: Remove in 1.12.0
212
+ @deprecated(
213
+ version="1.10.0",
214
+ reason=(
215
+ "This class is deprecated from mlrun 1.10.0, and will be removed in 1.12.0. "
216
+ "Use `DatastoreProfileKafkaStream` instead."
217
+ ),
218
+ category=FutureWarning,
219
+ )
220
+ class DatastoreProfileKafkaSource(DatastoreProfileKafkaStream):
221
+ type: str = pydantic.v1.Field("kafka_source")
222
+
223
+
201
224
  class DatastoreProfileV3io(DatastoreProfile):
202
225
  type: str = pydantic.v1.Field("v3io")
203
226
  v3io_access_key: typing.Optional[str] = None
@@ -232,7 +255,7 @@ class DatastoreProfileS3(DatastoreProfile):
232
255
  if self.secret_key:
233
256
  res["AWS_SECRET_ACCESS_KEY"] = self.secret_key
234
257
  if self.endpoint_url:
235
- res["S3_ENDPOINT_URL"] = self.endpoint_url
258
+ res["AWS_ENDPOINT_URL_S3"] = self.endpoint_url
236
259
  if self.force_non_anonymous:
237
260
  res["S3_NON_ANONYMOUS"] = self.force_non_anonymous
238
261
  if self.profile_name:
@@ -524,6 +547,7 @@ _DATASTORE_TYPE_TO_PROFILE_CLASS: dict[str, type[DatastoreProfile]] = {
524
547
  "basic": DatastoreProfileBasic,
525
548
  "kafka_target": DatastoreProfileKafkaTarget,
526
549
  "kafka_source": DatastoreProfileKafkaSource,
550
+ "kafka_stream": DatastoreProfileKafkaStream,
527
551
  "dbfs": DatastoreProfileDBFS,
528
552
  "gcs": DatastoreProfileGCS,
529
553
  "az": DatastoreProfileAzureBlob,
@@ -113,7 +113,11 @@ class HuggingFaceProvider(ModelProvider):
113
113
  from huggingface_hub import snapshot_download
114
114
 
115
115
  # Download the model and tokenizer files directly to the cache.
116
- snapshot_download(repo_id=self.model, local_dir_use_symlinks=False)
116
+ snapshot_download(
117
+ repo_id=self.model,
118
+ local_dir_use_symlinks=False,
119
+ token=self._get_secret_or_env("HF_TOKEN") or None,
120
+ )
117
121
  except ImportError as exc:
118
122
  raise ImportError("huggingface_hub package is not installed") from exc
119
123
 
@@ -180,7 +180,7 @@ class ModelProvider(BaseRemoteClient):
180
180
  raise NotImplementedError("custom_invoke method is not implemented")
181
181
 
182
182
  async def async_custom_invoke(
183
- self, operation: Optional[Callable[..., Awaitable[Any]]], **invoke_kwargs
183
+ self, operation: Optional[Callable[..., Awaitable[Any]]] = None, **invoke_kwargs
184
184
  ) -> Any:
185
185
  """
186
186
  Asynchronously invokes a model operation from a provider (e.g., OpenAI, Hugging Face, etc.)
@@ -13,6 +13,7 @@
13
13
  # limitations under the License.
14
14
 
15
15
  import time
16
+ import warnings
16
17
  from typing import Optional
17
18
  from urllib.parse import urlparse
18
19
 
@@ -28,6 +29,27 @@ from .base import DataStore, FileStats, make_datastore_schema_sanitizer
28
29
  class S3Store(DataStore):
29
30
  using_bucket = True
30
31
 
32
+ # TODO: Remove this in 1.12.0
33
+ def _get_endpoint_url_with_deprecation_warning(self):
34
+ """Get S3 endpoint URL with backward compatibility for deprecated S3_ENDPOINT_URL"""
35
+ # First try the new environment variable
36
+ endpoint_url = self._get_secret_or_env("AWS_ENDPOINT_URL_S3")
37
+ if endpoint_url:
38
+ return endpoint_url
39
+
40
+ # Check for deprecated environment variable
41
+ deprecated_endpoint_url = self._get_secret_or_env("S3_ENDPOINT_URL")
42
+ if deprecated_endpoint_url:
43
+ warnings.warn(
44
+ "S3_ENDPOINT_URL is deprecated in 1.10.0 and will be removed in 1.12.0, "
45
+ "use AWS_ENDPOINT_URL_S3 instead.",
46
+ # TODO: Remove this in 1.12.0
47
+ FutureWarning,
48
+ )
49
+ return deprecated_endpoint_url
50
+
51
+ return None
52
+
31
53
  def __init__(
32
54
  self, parent, schema, name, endpoint="", secrets: Optional[dict] = None
33
55
  ):
@@ -41,7 +63,7 @@ class S3Store(DataStore):
41
63
  access_key_id = self._get_secret_or_env("AWS_ACCESS_KEY_ID")
42
64
  secret_key = self._get_secret_or_env("AWS_SECRET_ACCESS_KEY")
43
65
  token_file = self._get_secret_or_env("AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE")
44
- endpoint_url = self._get_secret_or_env("S3_ENDPOINT_URL")
66
+ endpoint_url = self._get_endpoint_url_with_deprecation_warning()
45
67
  force_non_anonymous = self._get_secret_or_env("S3_NON_ANONYMOUS")
46
68
  profile_name = self._get_secret_or_env("AWS_PROFILE")
47
69
  assume_role_arn = self._get_secret_or_env("MLRUN_AWS_ROLE_ARN")
@@ -159,7 +181,7 @@ class S3Store(DataStore):
159
181
  def get_storage_options(self):
160
182
  force_non_anonymous = self._get_secret_or_env("S3_NON_ANONYMOUS")
161
183
  profile = self._get_secret_or_env("AWS_PROFILE")
162
- endpoint_url = self._get_secret_or_env("S3_ENDPOINT_URL")
184
+ endpoint_url = self._get_endpoint_url_with_deprecation_warning()
163
185
  access_key_id = self._get_secret_or_env("AWS_ACCESS_KEY_ID")
164
186
  secret = self._get_secret_or_env("AWS_SECRET_ACCESS_KEY")
165
187
  token_file = self._get_secret_or_env("AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE")
@@ -18,10 +18,9 @@ from mergedeep import merge
18
18
  from storey import V3ioDriver
19
19
 
20
20
  import mlrun
21
- import mlrun.model_monitoring.helpers
22
21
  from mlrun.datastore.base import DataStore
23
22
  from mlrun.datastore.datastore_profile import (
24
- DatastoreProfileKafkaSource,
23
+ DatastoreProfileKafkaStream,
25
24
  DatastoreProfileKafkaTarget,
26
25
  DatastoreProfileTDEngine,
27
26
  datastore_profile_read,
@@ -138,7 +137,7 @@ class KafkaStoreyTarget(storey.KafkaTarget):
138
137
  datastore_profile = datastore_profile_read(path)
139
138
  if not isinstance(
140
139
  datastore_profile,
141
- (DatastoreProfileKafkaSource, DatastoreProfileKafkaTarget),
140
+ (DatastoreProfileKafkaStream, DatastoreProfileKafkaTarget),
142
141
  ):
143
142
  raise mlrun.errors.MLRunInvalidArgumentError(
144
143
  f"Unsupported datastore profile type: {type(datastore_profile)}"
@@ -792,6 +792,7 @@ class RunDBInterface(ABC):
792
792
  version: Optional[str] = None,
793
793
  tag: Optional[str] = None,
794
794
  force_refresh: bool = False,
795
+ object_type: mlrun.common.schemas.hub.HubSourceType = mlrun.common.schemas.hub.HubSourceType.functions,
795
796
  ):
796
797
  pass
797
798
 
@@ -803,6 +804,19 @@ class RunDBInterface(ABC):
803
804
  version: Optional[str] = None,
804
805
  tag: str = "latest",
805
806
  force_refresh: bool = False,
807
+ item_type: mlrun.common.schemas.hub.HubSourceType = mlrun.common.schemas.hub.HubSourceType.functions,
808
+ ):
809
+ pass
810
+
811
+ @abstractmethod
812
+ def get_hub_asset(
813
+ self,
814
+ source_name: str,
815
+ item_name: str,
816
+ asset_name: str,
817
+ version: Optional[str] = None,
818
+ tag: str = "latest",
819
+ item_type: mlrun.common.schemas.hub.HubSourceType = mlrun.common.schemas.hub.HubSourceType.functions,
806
820
  ):
807
821
  pass
808
822
 
@@ -45,6 +45,7 @@ import mlrun.runtimes.nuclio.api_gateway
45
45
  import mlrun.runtimes.nuclio.function
46
46
  import mlrun.utils
47
47
  from mlrun.alerts.alert import AlertConfig
48
+ from mlrun.common.schemas.hub import HubSourceType
48
49
  from mlrun.db.auth_utils import OAuthClientIDTokenProvider, StaticTokenProvider
49
50
  from mlrun.errors import MLRunInvalidArgumentError, err_to_str
50
51
  from mlrun.secrets import get_secret_or_env
@@ -4081,7 +4082,7 @@ class HTTPRunDB(RunDBInterface):
4081
4082
  response = self.api_call(
4082
4083
  method=mlrun.common.types.HTTPMethod.DELETE,
4083
4084
  path=f"projects/{project}/model-monitoring/functions",
4084
- params={"functions": functions},
4085
+ params={"function": functions},
4085
4086
  )
4086
4087
  deletion_failed = False
4087
4088
  if response.status_code == http.HTTPStatus.ACCEPTED:
@@ -4361,6 +4362,7 @@ class HTTPRunDB(RunDBInterface):
4361
4362
  version: Optional[str] = None,
4362
4363
  tag: Optional[str] = None,
4363
4364
  force_refresh: bool = False,
4365
+ object_type: HubSourceType = HubSourceType.functions,
4364
4366
  ):
4365
4367
  """
4366
4368
  Retrieve the item catalog for a specified hub source.
@@ -4373,6 +4375,7 @@ class HTTPRunDB(RunDBInterface):
4373
4375
  rather than rely on cached information which may exist from previous get requests. For example,
4374
4376
  if the source was re-built,
4375
4377
  this will make the server get the updated information. Default is ``False``.
4378
+ :param object_type: Type of object to retrieve from the hub source (e.g: functions, modules).
4376
4379
  :returns: :py:class:`~mlrun.common.schemas.hub.HubCatalog` object, which is essentially a list
4377
4380
  of :py:class:`~mlrun.common.schemas.hub.HubItem` entries.
4378
4381
  """
@@ -4381,6 +4384,7 @@ class HTTPRunDB(RunDBInterface):
4381
4384
  "version": version,
4382
4385
  "tag": tag,
4383
4386
  "force-refresh": force_refresh,
4387
+ "object_type": object_type,
4384
4388
  }
4385
4389
  response = self.api_call(method="GET", path=path, params=params)
4386
4390
  return mlrun.common.schemas.HubCatalog(**response.json())
@@ -4392,6 +4396,7 @@ class HTTPRunDB(RunDBInterface):
4392
4396
  version: Optional[str] = None,
4393
4397
  tag: str = "latest",
4394
4398
  force_refresh: bool = False,
4399
+ item_type: HubSourceType = HubSourceType.functions,
4395
4400
  ):
4396
4401
  """
4397
4402
  Retrieve a specific hub item.
@@ -4403,6 +4408,7 @@ class HTTPRunDB(RunDBInterface):
4403
4408
  :param force_refresh: Make the server fetch the information from the actual hub
4404
4409
  source, rather than
4405
4410
  rely on cached information. Default is ``False``.
4411
+ :param item_type: The type of item to retrieve from the hub source (e.g: functions, modules).
4406
4412
  :returns: :py:class:`~mlrun.common.schemas.hub.HubItem`.
4407
4413
  """
4408
4414
  path = (f"hub/sources/{source_name}/items/{item_name}",)
@@ -4410,6 +4416,7 @@ class HTTPRunDB(RunDBInterface):
4410
4416
  "version": version,
4411
4417
  "tag": tag,
4412
4418
  "force-refresh": force_refresh,
4419
+ "item_type": item_type,
4413
4420
  }
4414
4421
  response = self.api_call(method="GET", path=path, params=params)
4415
4422
  return mlrun.common.schemas.HubItem(**response.json())
@@ -4421,6 +4428,7 @@ class HTTPRunDB(RunDBInterface):
4421
4428
  asset_name: str,
4422
4429
  version: Optional[str] = None,
4423
4430
  tag: str = "latest",
4431
+ item_type: HubSourceType = HubSourceType.functions,
4424
4432
  ):
4425
4433
  """
4426
4434
  Get hub asset from item.
@@ -4430,13 +4438,14 @@ class HTTPRunDB(RunDBInterface):
4430
4438
  :param asset_name: Name of the asset to retrieve.
4431
4439
  :param version: Get a specific version of the item. Default is ``None``.
4432
4440
  :param tag: Get a specific version of the item identified by tag. Default is ``latest``.
4433
-
4441
+ :param item_type: The type of item to retrieve from the hub source (e.g: functions, modules).
4434
4442
  :returns: http response with the asset in the content attribute
4435
4443
  """
4436
4444
  path = f"hub/sources/{source_name}/items/{item_name}/assets/{asset_name}"
4437
4445
  params = {
4438
4446
  "version": version,
4439
4447
  "tag": tag,
4448
+ "item_type": item_type,
4440
4449
  }
4441
4450
  response = self.api_call(method="GET", path=path, params=params)
4442
4451
  return response
@@ -689,6 +689,7 @@ class NopDB(RunDBInterface):
689
689
  version: Optional[str] = None,
690
690
  tag: Optional[str] = None,
691
691
  force_refresh: bool = False,
692
+ object_type: mlrun.common.schemas.hub.HubSourceType = mlrun.common.schemas.hub.HubSourceType.functions,
692
693
  ):
693
694
  pass
694
695
 
@@ -700,6 +701,18 @@ class NopDB(RunDBInterface):
700
701
  version: Optional[str] = None,
701
702
  tag: str = "latest",
702
703
  force_refresh: bool = False,
704
+ item_type: mlrun.common.schemas.hub.HubSourceType = mlrun.common.schemas.hub.HubSourceType.functions,
705
+ ):
706
+ pass
707
+
708
+ def get_hub_asset(
709
+ self,
710
+ source_name: str,
711
+ item_name: str,
712
+ asset_name: str,
713
+ version: Optional[str] = None,
714
+ tag: str = "latest",
715
+ item_type: mlrun.common.schemas.hub.HubSourceType = mlrun.common.schemas.hub.HubSourceType.functions,
703
716
  ):
704
717
  pass
705
718
 
@@ -470,20 +470,6 @@ def _handle_allow_mode(
470
470
  list[kubernetes.client.V1Toleration],
471
471
  typing.Optional[kubernetes.client.V1Affinity],
472
472
  ]:
473
- for op in [
474
- mlrun.common.schemas.NodeSelectorOperator.node_selector_op_not_in.value,
475
- mlrun.common.schemas.NodeSelectorOperator.node_selector_op_in.value,
476
- ]:
477
- affinity = _prune_affinity_node_selector_requirement(
478
- generate_preemptible_node_selector_requirements(op),
479
- affinity=affinity,
480
- )
481
-
482
- node_selector = _prune_node_selector(
483
- mlconfig.get_preemptible_node_selector(),
484
- enriched_node_selector=node_selector,
485
- )
486
-
487
473
  tolerations = _merge_tolerations(tolerations, preemptible_tolerations)
488
474
  return node_selector, tolerations, affinity
489
475