mlrun 1.10.0rc23__tar.gz → 1.10.0rc25__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.
- {mlrun-1.10.0rc23/mlrun.egg-info → mlrun-1.10.0rc25}/PKG-INFO +23 -22
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/dependencies.py +4 -4
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/extras-requirements.txt +5 -5
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/hub.py +14 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/model_monitoring/constants.py +1 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/model_monitoring/model_endpoints.py +10 -1
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/config.py +5 -1
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/azure_blob.py +66 -43
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/datastore_profile.py +8 -2
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/model_provider/huggingface_provider.py +118 -30
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/model_provider/model_provider.py +66 -8
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/model_provider/openai_provider.py +149 -47
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/db/base.py +1 -1
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/db/httpdb.py +6 -4
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/db/nopdb.py +1 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/api.py +2 -2
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/base.py +22 -10
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/context.py +1 -4
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/controller.py +10 -2
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/_schedules.py +2 -4
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/platforms/iguazio.py +7 -3
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/projects/project.py +28 -24
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/__init__.py +1 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/application/application.py +26 -2
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/function.py +10 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/serving.py +4 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/utils.py +22 -5
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/server.py +25 -14
- mlrun-1.10.0rc25/mlrun/utils/version/version.json +4 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25/mlrun.egg-info}/PKG-INFO +23 -22
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun.egg-info/requires.txt +22 -21
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/requirements.txt +2 -1
- mlrun-1.10.0rc23/mlrun/utils/version/version.json +0 -4
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/LICENSE +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/MANIFEST.in +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/Makefile +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/README.md +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/dev-requirements.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/dockerfiles/mlrun-api/requirements.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/archive.zip +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/function.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/infile.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/load-project.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/mlrun_basics.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/mlrun_dask.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/mlrun_db.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/mlrun_export_import.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/mlrun_jobs.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/mlrun_sparkk8s.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/mlrun_vault.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/model.bst +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/new-project.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/nulltst.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/params.csv +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/remote-spark.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/secrets.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/spark-function.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/training.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/v2_model_server.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/examples/xgb_serving.ipynb +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/__main__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/alerts/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/alerts/alert.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/dataset.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/document.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/helpers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/llm_prompt.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/manager.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/model.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/artifacts/plots.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/constants.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/db/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/db/dialects.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/artifact.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/feature_set.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/function.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/model_endpoint.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/pipeline.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/project.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/formatters/run.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/helpers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/model_monitoring/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/model_monitoring/helpers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/runtimes/constants.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/alert.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/api_gateway.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/artifact.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/auth.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/background_task.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/client_spec.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/clusterization_spec.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/common.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/constants.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/datastore_profile.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/events.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/feature_store.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/frontend_spec.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/function.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/http.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/k8s.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/memory_reports.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/model_monitoring/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/model_monitoring/functions.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/model_monitoring/grafana.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/notification.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/object.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/pagination.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/partition.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/pipeline.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/project.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/regex.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/runs.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/runtime_resource.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/schedule.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/secret.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/serving.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/tag.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/workflow.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/secrets.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/types.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/data_types/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/data_types/data_types.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/data_types/infer.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/data_types/spark.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/data_types/to_pandas.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/alibaba_oss.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/datastore.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/dbfs_store.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/filestore.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/google_cloud_storage.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/hdfs.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/inmem.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/model_provider/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/model_provider/mock_model_provider.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/redis.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/remote_client.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/s3.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/snowflake_utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/sources.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/spark_udf.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/spark_utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/store_resources.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/storeytargets.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/targets.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/v3io.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/vectorstore.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/wasbfs/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/datastore/wasbfs/fs.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/db/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/db/auth_utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/db/factory.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/errors.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/execution.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/api.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/common.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/feature_set.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/feature_vector.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/feature_vector_utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/ingestion.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/retrieval/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/retrieval/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/retrieval/dask_merger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/retrieval/job.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/retrieval/local_merger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/retrieval/spark_merger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/retrieval/storey_merger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/feature_store/steps.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/features.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_common/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_common/artifacts_library.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_common/mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_common/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_common/plan.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_common/producer.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_common/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_dl_common/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_dl_common/loggers/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_dl_common/loggers/logger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_dl_common/loggers/mlrun_logger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_dl_common/loggers/tensorboard_logger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_dl_common/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_dl_common/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/artifacts_library.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/loggers/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/loggers/logger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/loggers/mlrun_logger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/pkl_model_server.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/plan.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/plans/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/plans/calibration_curve_plan.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/plans/confusion_matrix_plan.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/plans/dataset_plan.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/plans/feature_importance_plan.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/plans/roc_curve_plan.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/producer.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/_ml_common/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/auto_mlrun/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/auto_mlrun/auto_mlrun.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/huggingface/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/huggingface/model_server.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/callbacks/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/callbacks/callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/callbacks/logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/callbacks/mlrun_logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/mlrun_interfaces/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/mlrun_interfaces/booster_mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/mlrun_interfaces/mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/mlrun_interfaces/model_mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/model_server.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/lgbm/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/onnx/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/onnx/dataset.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/onnx/mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/onnx/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/onnx/model_server.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/parallel_coordinates.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/callbacks/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/callbacks/callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/callbacks/logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/callbacks/mlrun_logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/callbacks/tensorboard_logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/callbacks_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/model_server.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/pytorch/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/sklearn/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/sklearn/estimator.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/sklearn/metric.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/sklearn/metrics_library.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/sklearn/mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/sklearn/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/sklearn/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/callbacks/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/callbacks/logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/callbacks/mlrun_logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/callbacks/tensorboard_logging_callback.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/model_server.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/tf_keras/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/xgboost/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/xgboost/mlrun_interface.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/xgboost/model_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/frameworks/xgboost/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/k8s_utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/launcher/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/launcher/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/launcher/client.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/launcher/factory.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/launcher/local.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/launcher/remote.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/lists.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/_application_steps.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/evidently/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/evidently/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/histogram_data_drift.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/applications/results.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/_stats.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/helpers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/tdengine/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/tdengine/schemas.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/tdengine/stream_graph_steps.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/tdengine/tdengine_connection.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/tdengine/tdengine_connector.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/v3io/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/v3io/stream_graph_steps.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/db/tsdb/v3io/v3io_connector.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/features_drift_table.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/helpers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/metrics/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/metrics/histogram_distance.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/stream_processing.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/model_monitoring/writer.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/context_handler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/errors.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/packager.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/packagers/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/packagers/default_packager.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/packagers/numpy_packagers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/packagers/pandas_packagers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/packagers/python_standard_library_packagers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/packagers_manager.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/utils/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/utils/_archiver.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/utils/_formatter.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/utils/_pickler.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/utils/_supported_format.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/utils/log_hint_utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/package/utils/type_hint_utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/platforms/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/projects/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/projects/operations.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/projects/pipelines.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/render.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/run.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/daskjob.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/databricks_job/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/databricks_job/databricks_cancel_task.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/databricks_job/databricks_runtime.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/databricks_job/databricks_wrapper.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/funcdoc.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/function_reference.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/generators.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/kubejob.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/local.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/mounts.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/mpijob/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/mpijob/abstract.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/mpijob/v1.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/api_gateway.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/application/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/application/reverse_proxy.go +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/nuclio/nuclio.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/pod.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/remotesparkjob.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/sparkjob/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/runtimes/sparkjob/spark3job.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/secrets.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/merger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/remote.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/routers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/serving_wrapper.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/states.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/system_steps.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/utils.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/v1_serving.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/serving/v2_serving.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/track/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/track/tracker.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/track/tracker_manager.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/track/trackers/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/track/trackers/mlflow_tracker.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/async_http.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/azure_vault.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/clones.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/condition_evaluator.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/helpers.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/http.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/logger.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/base.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/console.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/git.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/ipython.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/mail.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/slack.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification/webhook.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/notifications/notification_pusher.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/regex.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/retryer.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/singleton.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/v3io_clients.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/vault.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/version/__init__.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/utils/version/version.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun.egg-info/SOURCES.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun.egg-info/dependency_links.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun.egg-info/entry_points.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun.egg-info/not-zip-safe +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun.egg-info/top_level.txt +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/packages.py +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/pyproject.toml +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/setup.cfg +0 -0
- {mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mlrun
|
|
3
|
-
Version: 1.10.
|
|
3
|
+
Version: 1.10.0rc25
|
|
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,7 +43,7 @@ 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
|
|
46
|
+
Requires-Dist: fsspec<=2025.7.0,>=2025.5.1
|
|
47
47
|
Requires-Dist: v3iofs~=0.1.17
|
|
48
48
|
Requires-Dist: storey~=1.10.11
|
|
49
49
|
Requires-Dist: inflection~=0.5.0
|
|
@@ -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~=7.0
|
|
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
|
|
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==
|
|
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
|
|
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==
|
|
100
|
-
Requires-Dist: oss2==2.18.
|
|
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==
|
|
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
|
|
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.
|
|
151
|
-
Requires-Dist: ossfs==
|
|
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
|
|
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==
|
|
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
|
|
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.
|
|
182
|
-
Requires-Dist: ossfs==
|
|
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
|
|
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==
|
|
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
|
|
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.
|
|
224
|
-
Requires-Dist: ossfs==
|
|
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
|
|
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>=
|
|
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==
|
|
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>=
|
|
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==
|
|
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
|
}
|
|
@@ -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>=
|
|
14
|
-
gcsfs>=
|
|
15
|
-
ossfs==
|
|
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.
|
|
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==
|
|
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
|
|
@@ -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
|
|
@@ -83,6 +84,19 @@ class HubSource(BaseModel):
|
|
|
83
84
|
status=ObjectStatus(state="created"),
|
|
84
85
|
)
|
|
85
86
|
|
|
87
|
+
def diff(self, another_source: "HubSource") -> dict:
|
|
88
|
+
"""
|
|
89
|
+
Compare this HubSource with another one.
|
|
90
|
+
Returns a dict of differences (metadata, spec, status).
|
|
91
|
+
"""
|
|
92
|
+
exclude_paths = [
|
|
93
|
+
"root['metadata']['updated']",
|
|
94
|
+
"root['metadata']['created']",
|
|
95
|
+
]
|
|
96
|
+
return deepdiff.DeepDiff(
|
|
97
|
+
self.dict(), another_source.dict(), exclude_paths=exclude_paths
|
|
98
|
+
)
|
|
99
|
+
|
|
86
100
|
|
|
87
101
|
last_source_index = -1
|
|
88
102
|
|
|
@@ -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):
|
{mlrun-1.10.0rc23 → mlrun-1.10.0rc25}/mlrun/common/schemas/model_monitoring/model_endpoints.py
RENAMED
|
@@ -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 =
|
|
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] = ""
|
|
@@ -107,7 +107,11 @@ default_config = {
|
|
|
107
107
|
"submit_timeout": "280", # timeout when submitting a new k8s resource
|
|
108
108
|
# runtimes cleanup interval in seconds
|
|
109
109
|
"runtimes_cleanup_interval": "300",
|
|
110
|
-
|
|
110
|
+
# disabled by default due to an internal bug in serving functions
|
|
111
|
+
# relying on a background task to hold the status for its model endpoints
|
|
112
|
+
# TODO: need to refine what/when we can delete the background tasks
|
|
113
|
+
# e.g: use labels or naming convention.
|
|
114
|
+
"background_task_cleanup_interval": "0",
|
|
111
115
|
"background_task_max_age": "21600", # 6 hours in seconds
|
|
112
116
|
"monitoring": {
|
|
113
117
|
"runs": {
|
|
@@ -229,18 +229,25 @@ class AzureBlobStore(DataStore):
|
|
|
229
229
|
st = self.storage_options
|
|
230
230
|
service = "blob"
|
|
231
231
|
primary_url = None
|
|
232
|
-
|
|
232
|
+
|
|
233
|
+
# Parse connection string (fills account_name/account_key or SAS)
|
|
234
|
+
connection_string = st.get("connection_string")
|
|
235
|
+
if connection_string:
|
|
233
236
|
primary_url, _, parsed_credential = parse_connection_str(
|
|
234
|
-
|
|
237
|
+
connection_string, credential=None, service=service
|
|
235
238
|
)
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
+
|
|
240
|
+
if isinstance(parsed_credential, str):
|
|
241
|
+
# SharedAccessSignature as raw string
|
|
242
|
+
parsed_credential = {"sas_token": parsed_credential}
|
|
243
|
+
|
|
244
|
+
for key in ["account_name", "account_key", "sas_token"]:
|
|
245
|
+
if parsed_value := parsed_credential.get(key):
|
|
239
246
|
if key in st and st[key] != parsed_value:
|
|
240
247
|
if key == "account_name":
|
|
241
248
|
raise mlrun.errors.MLRunInvalidArgumentError(
|
|
242
|
-
f"Storage option for '{key}' is '{st[key]}'
|
|
243
|
-
|
|
249
|
+
f"Storage option for '{key}' is '{st[key]}', "
|
|
250
|
+
f"which does not match corresponding connection string '{parsed_value}'"
|
|
244
251
|
)
|
|
245
252
|
else:
|
|
246
253
|
raise mlrun.errors.MLRunInvalidArgumentError(
|
|
@@ -249,6 +256,7 @@ class AzureBlobStore(DataStore):
|
|
|
249
256
|
st[key] = parsed_value
|
|
250
257
|
|
|
251
258
|
account_name = st.get("account_name")
|
|
259
|
+
# Derive host (prefer connection string primary URL)
|
|
252
260
|
if primary_url:
|
|
253
261
|
if primary_url.startswith("http://"):
|
|
254
262
|
primary_url = primary_url[len("http://") :]
|
|
@@ -258,48 +266,63 @@ class AzureBlobStore(DataStore):
|
|
|
258
266
|
elif account_name:
|
|
259
267
|
host = f"{account_name}.{service}.core.windows.net"
|
|
260
268
|
else:
|
|
269
|
+
# nothing to configure yet
|
|
261
270
|
return res
|
|
262
271
|
|
|
263
|
-
|
|
272
|
+
host = host.rstrip("/")
|
|
273
|
+
|
|
274
|
+
# Account key (optional; WASB supports it)
|
|
275
|
+
if "account_key" in st and st["account_key"]:
|
|
264
276
|
res[f"spark.hadoop.fs.azure.account.key.{host}"] = st["account_key"]
|
|
265
277
|
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
res[f"spark.hadoop.fs.azure.account.oauth2.client.id.{host}"] = st[
|
|
273
|
-
"client_id"
|
|
274
|
-
]
|
|
275
|
-
if "client_secret" in st:
|
|
276
|
-
res[f"spark.hadoop.fs.azure.account.oauth2.client.secret.{host}"] = st[
|
|
277
|
-
"client_secret"
|
|
278
|
-
]
|
|
279
|
-
if "tenant_id" in st:
|
|
280
|
-
tenant_id = st["tenant_id"]
|
|
281
|
-
res[f"spark.hadoop.fs.azure.account.oauth2.client.endpoint.{host}"] = (
|
|
282
|
-
f"https://login.microsoftonline.com/{tenant_id}/oauth2/token"
|
|
283
|
-
)
|
|
278
|
+
# --- WASB + SAS (container-scoped key; no provider classes needed) ---
|
|
279
|
+
if "sas_token" in st and st["sas_token"]:
|
|
280
|
+
sas = st["sas_token"].lstrip("?")
|
|
281
|
+
if container := getattr(self, "endpoint", None) or st.get("container"):
|
|
282
|
+
# fs.azure.sas.<container>.<account>.blob.core.windows.net = <sas>
|
|
283
|
+
res[f"spark.hadoop.fs.azure.sas.{container}.{host}"] = sas
|
|
284
284
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
res[f"spark.hadoop.fs.azure.sas.fixed.token.{host}"] = st["sas_token"]
|
|
285
|
+
else:
|
|
286
|
+
raise mlrun.errors.MLRunInvalidArgumentError(
|
|
287
|
+
"Container name is required for WASB SAS. "
|
|
288
|
+
"Set self.endpoint or storage_options['container']."
|
|
289
|
+
)
|
|
291
290
|
return res
|
|
292
291
|
|
|
293
292
|
@property
|
|
294
293
|
def spark_url(self):
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
294
|
+
# Build: wasbs://<container>@<host>
|
|
295
|
+
st = self.storage_options
|
|
296
|
+
service = "blob"
|
|
297
|
+
|
|
298
|
+
container = getattr(self, "endpoint", None) or st.get("container")
|
|
299
|
+
if not container:
|
|
300
|
+
raise mlrun.errors.MLRunInvalidArgumentError(
|
|
301
|
+
"Container is required to build the WASB URL "
|
|
302
|
+
"(self.endpoint or storage_options['container'])."
|
|
303
|
+
)
|
|
304
|
+
|
|
305
|
+
# Prefer host from connection string; else synthesize from account_name
|
|
306
|
+
host = None
|
|
307
|
+
account_name = st.get("account_name")
|
|
308
|
+
connection_string = st.get("connection_string")
|
|
309
|
+
|
|
310
|
+
if connection_string:
|
|
311
|
+
primary_url, _, _ = parse_connection_str(
|
|
312
|
+
connection_string, credential=None, service=service
|
|
313
|
+
)
|
|
314
|
+
if primary_url.startswith("http://"):
|
|
315
|
+
primary_url = primary_url[len("http://") :]
|
|
316
|
+
if primary_url.startswith("https://"):
|
|
317
|
+
primary_url = primary_url[len("https://") :]
|
|
318
|
+
host = primary_url.rstrip("/")
|
|
319
|
+
|
|
320
|
+
if not host and account_name:
|
|
321
|
+
host = f"{account_name}.{service}.core.windows.net"
|
|
322
|
+
|
|
323
|
+
if not host:
|
|
324
|
+
raise mlrun.errors.MLRunInvalidArgumentError(
|
|
325
|
+
"account_name is required (or provide a connection_string) to build the WASB URL."
|
|
326
|
+
)
|
|
327
|
+
|
|
328
|
+
return f"wasbs://{container}@{host}"
|
|
@@ -333,7 +333,9 @@ class DatastoreProfileGCS(DatastoreProfile):
|
|
|
333
333
|
# in gcs the path after schema is starts with bucket, wherefore it should not start with "/".
|
|
334
334
|
subpath = subpath[1:]
|
|
335
335
|
if self.bucket:
|
|
336
|
-
return
|
|
336
|
+
return (
|
|
337
|
+
f"gcs://{self.bucket}/{subpath}" if subpath else f"gcs://{self.bucket}"
|
|
338
|
+
)
|
|
337
339
|
else:
|
|
338
340
|
return f"gcs://{subpath}"
|
|
339
341
|
|
|
@@ -370,7 +372,11 @@ class DatastoreProfileAzureBlob(DatastoreProfile):
|
|
|
370
372
|
# in azure the path after schema is starts with container, wherefore it should not start with "/".
|
|
371
373
|
subpath = subpath[1:]
|
|
372
374
|
if self.container:
|
|
373
|
-
return
|
|
375
|
+
return (
|
|
376
|
+
f"az://{self.container}/{subpath}"
|
|
377
|
+
if subpath
|
|
378
|
+
else f"az://{self.container}"
|
|
379
|
+
)
|
|
374
380
|
else:
|
|
375
381
|
return f"az://{subpath}"
|
|
376
382
|
|