mlrun 1.8.0rc27__py3-none-any.whl → 1.8.0rc29__py3-none-any.whl
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/artifacts/document.py +9 -6
- mlrun/common/schemas/serving.py +22 -0
- mlrun/config.py +9 -0
- mlrun/datastore/base.py +0 -7
- mlrun/datastore/s3.py +9 -2
- mlrun/db/base.py +0 -1
- mlrun/db/httpdb.py +11 -14
- mlrun/db/nopdb.py +0 -1
- mlrun/execution.py +15 -4
- mlrun/model_monitoring/applications/_application_steps.py +1 -0
- mlrun/model_monitoring/applications/base.py +132 -21
- mlrun/model_monitoring/applications/context.py +2 -3
- mlrun/model_monitoring/controller.py +117 -57
- mlrun/model_monitoring/db/_schedules.py +8 -0
- mlrun/model_monitoring/db/tsdb/__init__.py +12 -5
- mlrun/model_monitoring/stream_processing.py +3 -2
- mlrun/projects/project.py +38 -7
- mlrun/runtimes/base.py +1 -1
- mlrun/runtimes/generators.py +1 -1
- mlrun/runtimes/nuclio/function.py +39 -0
- mlrun/runtimes/nuclio/serving.py +3 -0
- mlrun/runtimes/pod.py +1 -3
- mlrun/serving/routers.py +62 -17
- mlrun/serving/server.py +11 -0
- mlrun/serving/states.py +0 -4
- mlrun/serving/v2_serving.py +45 -10
- mlrun/utils/version/version.json +2 -2
- {mlrun-1.8.0rc27.dist-info → mlrun-1.8.0rc29.dist-info}/METADATA +4 -2
- {mlrun-1.8.0rc27.dist-info → mlrun-1.8.0rc29.dist-info}/RECORD +33 -32
- {mlrun-1.8.0rc27.dist-info → mlrun-1.8.0rc29.dist-info}/LICENSE +0 -0
- {mlrun-1.8.0rc27.dist-info → mlrun-1.8.0rc29.dist-info}/WHEEL +0 -0
- {mlrun-1.8.0rc27.dist-info → mlrun-1.8.0rc29.dist-info}/entry_points.txt +0 -0
- {mlrun-1.8.0rc27.dist-info → mlrun-1.8.0rc29.dist-info}/top_level.txt +0 -0
mlrun/serving/routers.py
CHANGED
|
@@ -389,7 +389,7 @@ class ParallelRun(BaseModelRouter):
|
|
|
389
389
|
self._pool = executor_class(
|
|
390
390
|
max_workers=len(self.routes),
|
|
391
391
|
initializer=ParallelRun.init_pool,
|
|
392
|
-
initargs=(server, routes),
|
|
392
|
+
initargs=(server, routes, self.context.is_mock),
|
|
393
393
|
)
|
|
394
394
|
elif self.executor_type == ParallelRunnerModes.thread:
|
|
395
395
|
executor_class = concurrent.futures.ThreadPoolExecutor
|
|
@@ -452,9 +452,9 @@ class ParallelRun(BaseModelRouter):
|
|
|
452
452
|
return results
|
|
453
453
|
|
|
454
454
|
@staticmethod
|
|
455
|
-
def init_pool(server_spec, routes):
|
|
455
|
+
def init_pool(server_spec, routes, is_mock):
|
|
456
456
|
server = mlrun.serving.GraphServer.from_dict(server_spec)
|
|
457
|
-
server.init_states(None, None)
|
|
457
|
+
server.init_states(None, None, is_mock=is_mock)
|
|
458
458
|
global local_routes
|
|
459
459
|
for route in routes.values():
|
|
460
460
|
route.context = server.context
|
|
@@ -596,11 +596,6 @@ class VotingEnsemble(ParallelRun):
|
|
|
596
596
|
self.vote_type = vote_type
|
|
597
597
|
self.vote_flag = True if self.vote_type is not None else False
|
|
598
598
|
self.weights = weights
|
|
599
|
-
self._model_logger = (
|
|
600
|
-
_ModelLogPusher(self, context)
|
|
601
|
-
if context and context.stream.enabled
|
|
602
|
-
else None
|
|
603
|
-
)
|
|
604
599
|
self.version = kwargs.get("version", "v1")
|
|
605
600
|
self.log_router = True
|
|
606
601
|
self.prediction_col_name = prediction_col_name or "prediction"
|
|
@@ -608,8 +603,12 @@ class VotingEnsemble(ParallelRun):
|
|
|
608
603
|
self.model_endpoint_uid = None
|
|
609
604
|
self.model_endpoint = None
|
|
610
605
|
self.shard_by_endpoint = shard_by_endpoint
|
|
606
|
+
self.initialized = False
|
|
611
607
|
|
|
612
608
|
def post_init(self, mode="sync", **kwargs):
|
|
609
|
+
self._update_weights(self.weights)
|
|
610
|
+
|
|
611
|
+
def _lazy_init(self, event_id):
|
|
613
612
|
server: mlrun.serving.GraphServer = getattr(
|
|
614
613
|
self.context, "_server", None
|
|
615
614
|
) or getattr(self.context, "server", None)
|
|
@@ -617,14 +616,59 @@ class VotingEnsemble(ParallelRun):
|
|
|
617
616
|
logger.warn("GraphServer not initialized for VotingEnsemble instance")
|
|
618
617
|
return
|
|
619
618
|
if not self.context.is_mock or self.context.monitoring_mock:
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
619
|
+
if server.model_endpoint_creation_task_name:
|
|
620
|
+
background_task = mlrun.get_run_db().get_project_background_task(
|
|
621
|
+
server.project, server.model_endpoint_creation_task_name
|
|
622
|
+
)
|
|
623
|
+
logger.info(
|
|
624
|
+
"Checking model endpoint creation task status",
|
|
625
|
+
task_name=server.model_endpoint_creation_task_name,
|
|
626
|
+
)
|
|
627
|
+
if (
|
|
628
|
+
background_task.status.state
|
|
629
|
+
in mlrun.common.schemas.BackgroundTaskState.terminal_states()
|
|
630
|
+
):
|
|
631
|
+
logger.info(
|
|
632
|
+
f"Model endpoint creation task completed with state {background_task.status.state}"
|
|
633
|
+
)
|
|
634
|
+
else: # in progress
|
|
635
|
+
logger.debug(
|
|
636
|
+
f"Model endpoint creation task is still in progress with the current state: "
|
|
637
|
+
f"{background_task.status.state}. This event will not be monitored.",
|
|
638
|
+
name=self.name,
|
|
639
|
+
event_id=event_id,
|
|
640
|
+
)
|
|
641
|
+
self.initialized = False
|
|
642
|
+
return
|
|
643
|
+
else:
|
|
644
|
+
logger.info(
|
|
645
|
+
"Model endpoint creation task name not provided",
|
|
646
|
+
)
|
|
647
|
+
try:
|
|
648
|
+
self.model_endpoint_uid = (
|
|
649
|
+
mlrun.get_run_db()
|
|
650
|
+
.get_model_endpoint(
|
|
651
|
+
project=server.project,
|
|
652
|
+
name=self.name,
|
|
653
|
+
function_name=server.function_name,
|
|
654
|
+
function_tag=server.function_tag or "latest",
|
|
655
|
+
tsdb_metrics=False,
|
|
656
|
+
)
|
|
657
|
+
.metadata.uid
|
|
658
|
+
)
|
|
659
|
+
except mlrun.errors.MLRunNotFoundError:
|
|
660
|
+
logger.info(
|
|
661
|
+
"Model endpoint not found for this step; monitoring for this model will not be performed",
|
|
662
|
+
function_name=server.function_name,
|
|
663
|
+
name=self.name,
|
|
664
|
+
)
|
|
665
|
+
self.model_endpoint_uid = None
|
|
666
|
+
self._model_logger = (
|
|
667
|
+
_ModelLogPusher(self, self.context)
|
|
668
|
+
if self.context and self.context.stream.enabled and self.model_endpoint_uid
|
|
669
|
+
else None
|
|
670
|
+
)
|
|
671
|
+
self.initialized = True
|
|
628
672
|
|
|
629
673
|
def _resolve_route(self, body, urlpath):
|
|
630
674
|
"""Resolves the appropriate model to send the event to.
|
|
@@ -829,8 +873,9 @@ class VotingEnsemble(ParallelRun):
|
|
|
829
873
|
Response
|
|
830
874
|
Event response after running the requested logic
|
|
831
875
|
"""
|
|
876
|
+
if not self.initialized:
|
|
877
|
+
self._lazy_init(event.id)
|
|
832
878
|
start = now_date()
|
|
833
|
-
|
|
834
879
|
# Handle and verify the request
|
|
835
880
|
original_body = event.body
|
|
836
881
|
event.body = _extract_input_data(self._input_path, event.body)
|
mlrun/serving/server.py
CHANGED
|
@@ -112,6 +112,7 @@ class GraphServer(ModelObj):
|
|
|
112
112
|
function_name=None,
|
|
113
113
|
function_tag=None,
|
|
114
114
|
project=None,
|
|
115
|
+
model_endpoint_creation_task_name=None,
|
|
115
116
|
):
|
|
116
117
|
self._graph = None
|
|
117
118
|
self.graph: Union[RouterStep, RootFlowStep] = graph
|
|
@@ -137,6 +138,7 @@ class GraphServer(ModelObj):
|
|
|
137
138
|
self.function_name = function_name
|
|
138
139
|
self.function_tag = function_tag
|
|
139
140
|
self.project = project
|
|
141
|
+
self.model_endpoint_creation_task_name = model_endpoint_creation_task_name
|
|
140
142
|
|
|
141
143
|
def set_current_function(self, function):
|
|
142
144
|
"""set which child function this server is currently running on"""
|
|
@@ -332,6 +334,7 @@ def v2_serving_init(context, namespace=None):
|
|
|
332
334
|
context.logger.info("Initializing server from spec")
|
|
333
335
|
spec = mlrun.utils.get_serving_spec()
|
|
334
336
|
server = GraphServer.from_dict(spec)
|
|
337
|
+
|
|
335
338
|
if config.log_level.lower() == "debug":
|
|
336
339
|
server.verbose = True
|
|
337
340
|
if hasattr(context, "trigger"):
|
|
@@ -544,11 +547,19 @@ class GraphContext:
|
|
|
544
547
|
self.get_store_resource = None
|
|
545
548
|
self.get_table = None
|
|
546
549
|
self.is_mock = False
|
|
550
|
+
self.monitoring_mock = False
|
|
551
|
+
self._project_obj = None
|
|
547
552
|
|
|
548
553
|
@property
|
|
549
554
|
def server(self):
|
|
550
555
|
return self._server
|
|
551
556
|
|
|
557
|
+
@property
|
|
558
|
+
def project_obj(self):
|
|
559
|
+
if not self._project_obj:
|
|
560
|
+
self._project_obj = mlrun.get_run_db().get_project(name=self.project)
|
|
561
|
+
return self._project_obj
|
|
562
|
+
|
|
552
563
|
@property
|
|
553
564
|
def project(self) -> str:
|
|
554
565
|
"""current project name (for the current function)"""
|
mlrun/serving/states.py
CHANGED
|
@@ -595,10 +595,6 @@ class TaskStep(BaseStep):
|
|
|
595
595
|
creation_strategy=self.model_endpoint_creation_strategy,
|
|
596
596
|
endpoint_type=self.endpoint_type,
|
|
597
597
|
)
|
|
598
|
-
if hasattr(self._object, "model_endpoint_uid"):
|
|
599
|
-
self.endpoint_uid = self._object.model_endpoint_uid
|
|
600
|
-
if hasattr(self._object, "name"):
|
|
601
|
-
self.endpoint_name = self._object.name
|
|
602
598
|
|
|
603
599
|
def respond(self):
|
|
604
600
|
"""mark this step as the responder.
|
mlrun/serving/v2_serving.py
CHANGED
|
@@ -115,9 +115,9 @@ class V2ModelServer(StepToDict):
|
|
|
115
115
|
self.model = model
|
|
116
116
|
self.ready = True
|
|
117
117
|
self.model_endpoint_uid = None
|
|
118
|
-
self.model_endpoint = None
|
|
119
118
|
self.shard_by_endpoint = shard_by_endpoint
|
|
120
119
|
self._model_logger = None
|
|
120
|
+
self.initialized = False
|
|
121
121
|
|
|
122
122
|
def _load_and_update_state(self):
|
|
123
123
|
try:
|
|
@@ -139,36 +139,69 @@ class V2ModelServer(StepToDict):
|
|
|
139
139
|
else:
|
|
140
140
|
self._load_and_update_state()
|
|
141
141
|
|
|
142
|
+
def _lazy_init(self, event_id):
|
|
142
143
|
server: mlrun.serving.GraphServer = getattr(
|
|
143
144
|
self.context, "_server", None
|
|
144
145
|
) or getattr(self.context, "server", None)
|
|
145
146
|
if not server:
|
|
146
147
|
logger.warn("GraphServer not initialized for VotingEnsemble instance")
|
|
147
148
|
return
|
|
148
|
-
|
|
149
149
|
if not self.context.is_mock and not self.model_spec:
|
|
150
150
|
self.get_model()
|
|
151
151
|
if not self.context.is_mock or self.context.monitoring_mock:
|
|
152
|
+
if server.model_endpoint_creation_task_name:
|
|
153
|
+
background_task = mlrun.get_run_db().get_project_background_task(
|
|
154
|
+
server.project, server.model_endpoint_creation_task_name
|
|
155
|
+
)
|
|
156
|
+
logger.debug(
|
|
157
|
+
"Checking model endpoint creation task status",
|
|
158
|
+
task_name=server.model_endpoint_creation_task_name,
|
|
159
|
+
)
|
|
160
|
+
if (
|
|
161
|
+
background_task.status.state
|
|
162
|
+
in mlrun.common.schemas.BackgroundTaskState.terminal_states()
|
|
163
|
+
):
|
|
164
|
+
logger.debug(
|
|
165
|
+
f"Model endpoint creation task completed with state {background_task.status.state}"
|
|
166
|
+
)
|
|
167
|
+
else: # in progress
|
|
168
|
+
logger.debug(
|
|
169
|
+
f"Model endpoint creation task is still in progress with the current state: "
|
|
170
|
+
f"{background_task.status.state}. This event will not be monitored.",
|
|
171
|
+
name=self.name,
|
|
172
|
+
event_id=event_id,
|
|
173
|
+
)
|
|
174
|
+
self.initialized = False
|
|
175
|
+
return
|
|
176
|
+
else:
|
|
177
|
+
logger.debug(
|
|
178
|
+
"Model endpoint creation task name not provided",
|
|
179
|
+
)
|
|
152
180
|
try:
|
|
153
|
-
self.
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
181
|
+
self.model_endpoint_uid = (
|
|
182
|
+
mlrun.get_run_db()
|
|
183
|
+
.get_model_endpoint(
|
|
184
|
+
project=server.project,
|
|
185
|
+
name=self.name,
|
|
186
|
+
function_name=server.function_name,
|
|
187
|
+
function_tag=server.function_tag or "latest",
|
|
188
|
+
tsdb_metrics=False,
|
|
189
|
+
)
|
|
190
|
+
.metadata.uid
|
|
158
191
|
)
|
|
159
|
-
self.model_endpoint_uid = self.model_endpoint.metadata.uid
|
|
160
192
|
except mlrun.errors.MLRunNotFoundError:
|
|
161
193
|
logger.info(
|
|
162
|
-
"Model
|
|
194
|
+
"Model endpoint not found for this step; monitoring for this model will not be performed",
|
|
163
195
|
function_name=server.function_name,
|
|
164
196
|
name=self.name,
|
|
165
197
|
)
|
|
166
|
-
self.
|
|
198
|
+
self.model_endpoint_uid = None
|
|
167
199
|
self._model_logger = (
|
|
168
200
|
_ModelLogPusher(self, self.context)
|
|
169
201
|
if self.context and self.context.stream.enabled and self.model_endpoint_uid
|
|
170
202
|
else None
|
|
171
203
|
)
|
|
204
|
+
self.initialized = True
|
|
172
205
|
|
|
173
206
|
def get_param(self, key: str, default=None):
|
|
174
207
|
"""get param by key (specified in the model or the function)"""
|
|
@@ -246,6 +279,8 @@ class V2ModelServer(StepToDict):
|
|
|
246
279
|
|
|
247
280
|
def do_event(self, event, *args, **kwargs):
|
|
248
281
|
"""main model event handler method"""
|
|
282
|
+
if not self.initialized:
|
|
283
|
+
self._lazy_init(event.id)
|
|
249
284
|
start = now_date()
|
|
250
285
|
original_body = event.body
|
|
251
286
|
event_body = _extract_input_data(self._input_path, event.body)
|
mlrun/utils/version/version.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: mlrun
|
|
3
|
-
Version: 1.8.
|
|
3
|
+
Version: 1.8.0rc29
|
|
4
4
|
Summary: Tracking and config of machine learning runs
|
|
5
5
|
Home-page: https://github.com/mlrun/mlrun
|
|
6
6
|
Author: Yaron Haviv
|
|
@@ -44,7 +44,7 @@ Requires-Dist: semver~=3.0
|
|
|
44
44
|
Requires-Dist: dependency-injector~=4.41
|
|
45
45
|
Requires-Dist: fsspec<2024.7,>=2023.9.2
|
|
46
46
|
Requires-Dist: v3iofs~=0.1.17
|
|
47
|
-
Requires-Dist: storey~=1.8.
|
|
47
|
+
Requires-Dist: storey~=1.8.9
|
|
48
48
|
Requires-Dist: inflection~=0.5.0
|
|
49
49
|
Requires-Dist: python-dotenv~=1.0
|
|
50
50
|
Requires-Dist: setuptools>=75.2
|
|
@@ -120,6 +120,7 @@ Requires-Dist: memray~=1.12; sys_platform != "win32" and extra == "api"
|
|
|
120
120
|
Requires-Dist: aiosmtplib~=3.0; extra == "api"
|
|
121
121
|
Requires-Dist: pydantic<2,>=1; extra == "api"
|
|
122
122
|
Requires-Dist: mlrun-pipelines-kfp-v1-8[kfp]~=0.3.5; python_version < "3.11" and extra == "api"
|
|
123
|
+
Requires-Dist: grpcio~=1.70.0; extra == "api"
|
|
123
124
|
Provides-Extra: all
|
|
124
125
|
Requires-Dist: adlfs==2023.9.0; extra == "all"
|
|
125
126
|
Requires-Dist: aiobotocore<2.16,>=2.5.0; extra == "all"
|
|
@@ -208,6 +209,7 @@ Requires-Dist: google-cloud-bigquery[bqstorage,pandas]==3.14.1; extra == "comple
|
|
|
208
209
|
Requires-Dist: google-cloud-storage==2.14.0; extra == "complete-api"
|
|
209
210
|
Requires-Dist: google-cloud==0.34; extra == "complete-api"
|
|
210
211
|
Requires-Dist: graphviz~=0.20.0; extra == "complete-api"
|
|
212
|
+
Requires-Dist: grpcio~=1.70.0; extra == "complete-api"
|
|
211
213
|
Requires-Dist: humanfriendly~=10.0; extra == "complete-api"
|
|
212
214
|
Requires-Dist: igz-mgmt~=0.4.1; extra == "complete-api"
|
|
213
215
|
Requires-Dist: kafka-python~=2.0; extra == "complete-api"
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
mlrun/__init__.py,sha256=zS40Lp5ZKivLBlNDkv-OQmVvwDib7C-cCdtD6UKXe28,8808
|
|
2
2
|
mlrun/__main__.py,sha256=ysteSDo1LYe_YOXVdIVEJ3BhLPOfBngkEfRg5iaGGg4,46202
|
|
3
|
-
mlrun/config.py,sha256=
|
|
3
|
+
mlrun/config.py,sha256=a9BFpySYq9kUHpe0fW1xTGAK13tEl8eZoqtlp-E4Aos,72234
|
|
4
4
|
mlrun/errors.py,sha256=LkcbXTLANGdsgo2CRX2pdbyNmt--lMsjGv0XZMgP-Nc,8222
|
|
5
|
-
mlrun/execution.py,sha256=
|
|
5
|
+
mlrun/execution.py,sha256=FUktsD3puSFjc3LZJU35b-OmFBrBPBNntViCLQVuwnk,50008
|
|
6
6
|
mlrun/features.py,sha256=ReBaNGsBYXqcbgI012n-SO_j6oHIbk_Vpv0CGPXbUmo,15842
|
|
7
7
|
mlrun/k8s_utils.py,sha256=mRQMs6NzPq36vx1n5_2BfFapXysc8wv3NcrZ77_2ANA,8949
|
|
8
8
|
mlrun/lists.py,sha256=-nbmqScRia0v2IdSHt6Pd0fLRLSEtdB9bSxyD92BWvs,8562
|
|
@@ -16,7 +16,7 @@ mlrun/api/schemas/__init__.py,sha256=fEWH4I8hr5AdRJ7yoW44RlFB6NHkYDxyomP5J6ct1z4
|
|
|
16
16
|
mlrun/artifacts/__init__.py,sha256=ofC2extBCOC1wg1YtdTzWzH3eeG_f-sFBUkHjYtZJpk,1175
|
|
17
17
|
mlrun/artifacts/base.py,sha256=nz2ZqC74JGfWN0M6_hOXXQj3bXSTxNp4eUgvWHVcdvY,29979
|
|
18
18
|
mlrun/artifacts/dataset.py,sha256=QTot5vCgLHatlIWwNnKbWdZ8HHTxaZ7wk4gWQDoqQ2k,16655
|
|
19
|
-
mlrun/artifacts/document.py,sha256=
|
|
19
|
+
mlrun/artifacts/document.py,sha256=7OvuMlBmvMfHH3UDNto8EAsgHlEL8CVT9r40aq46VxQ,17464
|
|
20
20
|
mlrun/artifacts/manager.py,sha256=bXb70mKF6wIGs7syCiFfGnjalqx4g9bO_J5DaVzUUKw,16163
|
|
21
21
|
mlrun/artifacts/model.py,sha256=H5g7rINXol_aTcYIQaKRx1CO90b1h_3aajsItqef4-w,22144
|
|
22
22
|
mlrun/artifacts/plots.py,sha256=dS0mHGt1b20tN2JyEH9H5o5I0oMKZkzn3Uz_3Hf4WjU,4813
|
|
@@ -69,6 +69,7 @@ mlrun/common/schemas/runs.py,sha256=-OJOQiorFUiWgy2DKLGovWr-xbMTJ1BC3IIVXCdyp94,
|
|
|
69
69
|
mlrun/common/schemas/runtime_resource.py,sha256=74EGmk1iODg-wV0cn2ew44ZX20nqJMowgj-gNsh0vyU,1569
|
|
70
70
|
mlrun/common/schemas/schedule.py,sha256=LTWdZ4FvKDGkmmfyqKoBQ36VFqnnyIYLnq1I6qrTPyo,4292
|
|
71
71
|
mlrun/common/schemas/secret.py,sha256=CCxFYiPwJtDxwg2VVJH9nUG9cAZ2a34IjeuaWv-BYlc,1487
|
|
72
|
+
mlrun/common/schemas/serving.py,sha256=81ZxlDHP1fm9VPmXZGkjZj2n6cVRmqEN478hsmvv5QA,744
|
|
72
73
|
mlrun/common/schemas/tag.py,sha256=HRZi5QZ4vVGaCr2AMk9eJgcNiAIXmH4YDc8a4fvF770,893
|
|
73
74
|
mlrun/common/schemas/workflow.py,sha256=6u9niXfXpV-_c2rZL97gFIdAnOfM5WK-OCbrM5Kk34s,2108
|
|
74
75
|
mlrun/common/schemas/model_monitoring/__init__.py,sha256=jz0fvdn8BEecgUCKhiSNH6QtFhSW4O19Ql9KXo0AxOg,1900
|
|
@@ -83,7 +84,7 @@ mlrun/data_types/to_pandas.py,sha256=KOy0FLXPJirsgH6szcC5BI6t70yVDCjuo6LmuYHNTuI
|
|
|
83
84
|
mlrun/datastore/__init__.py,sha256=ca-9rcmxMimZKq3EHetpptZQ5udkf4O0sm37D7NWaXE,4128
|
|
84
85
|
mlrun/datastore/alibaba_oss.py,sha256=k-OHVe08HjMewlkpsT657CbOiVFAfSq9_EqhCE-k86s,4940
|
|
85
86
|
mlrun/datastore/azure_blob.py,sha256=SzAcHYSXkm8Zpopz2Ea-rWVClH0URocUazcNK04S9W0,12776
|
|
86
|
-
mlrun/datastore/base.py,sha256=
|
|
87
|
+
mlrun/datastore/base.py,sha256=5WYsdmE_Nog2mflRfI5bOP9X5qW39xzM0TdVZXxhaHM,26308
|
|
87
88
|
mlrun/datastore/datastore.py,sha256=frUYYP4i8ZmnY8GNXSgN_3x_exRgRPfxrCtAGEUifEU,9478
|
|
88
89
|
mlrun/datastore/datastore_profile.py,sha256=ZQyxwTTPLawfVeZObScGqoK89iqDcr358kuCtaMH_vM,23714
|
|
89
90
|
mlrun/datastore/dbfs_store.py,sha256=QkDRzwFnvm7CgEg4NuGxes6tBgKDyhX0CiBUvK8c9pk,6568
|
|
@@ -92,7 +93,7 @@ mlrun/datastore/google_cloud_storage.py,sha256=MnToY6irdhBZ8Wcapqnr1Yq2724LAh2uP
|
|
|
92
93
|
mlrun/datastore/hdfs.py,sha256=NhxvPojQQDEm0xzB6RcvnD4uLZOxfHHKYWV4gwzG7D4,1928
|
|
93
94
|
mlrun/datastore/inmem.py,sha256=IsM83nn-3CqmGdLzim7i9ZmJwG6ZGhBZGN6_hszWZnE,2951
|
|
94
95
|
mlrun/datastore/redis.py,sha256=QeNMkSz3zQXiXZhFUZcEtViqqbUysGJditbqe5M-J48,5682
|
|
95
|
-
mlrun/datastore/s3.py,sha256=
|
|
96
|
+
mlrun/datastore/s3.py,sha256=GjJnQLrigCqU9_ukRWv1pKhxfUtrMGFBUp6fmpPXUCY,9224
|
|
96
97
|
mlrun/datastore/snowflake_utils.py,sha256=Wohvnlmq8j1d98RCaknll-iWdZZpSlCrKhUOEy0_-CA,1483
|
|
97
98
|
mlrun/datastore/sources.py,sha256=ypRaFyQHlzB_24tAw3VBvnig075rdv2ybjTIR4WQwHc,49414
|
|
98
99
|
mlrun/datastore/spark_udf.py,sha256=NnnB3DZxZb-rqpRy7b-NC7QWXuuqFn3XkBDc86tU4mQ,1498
|
|
@@ -107,10 +108,10 @@ mlrun/datastore/wasbfs/__init__.py,sha256=s5Ul-0kAhYqFjKDR2X0O2vDGDbLQQduElb32Ev
|
|
|
107
108
|
mlrun/datastore/wasbfs/fs.py,sha256=ge8NK__5vTcFT-krI155_8RDUywQw4SIRX6BWATXy9Q,6299
|
|
108
109
|
mlrun/db/__init__.py,sha256=WqJ4x8lqJ7ZoKbhEyFqkYADd9P6E3citckx9e9ZLcIU,1163
|
|
109
110
|
mlrun/db/auth_utils.py,sha256=hpg8D2r82oN0BWabuWN04BTNZ7jYMAF242YSUpK7LFM,5211
|
|
110
|
-
mlrun/db/base.py,sha256=
|
|
111
|
+
mlrun/db/base.py,sha256=jVM_M5_K0EyOSEwxQokGTM6dKKsMcy5LnFGDtVpKkgc,30678
|
|
111
112
|
mlrun/db/factory.py,sha256=yP2vVmveUE7LYTCHbS6lQIxP9rW--zdISWuPd_I3d_4,2111
|
|
112
|
-
mlrun/db/httpdb.py,sha256=
|
|
113
|
-
mlrun/db/nopdb.py,sha256=
|
|
113
|
+
mlrun/db/httpdb.py,sha256=TGb-sQCC-UGbqbeX2k7kPQFTBzuUT4emBx6Zak24Ra4,231374
|
|
114
|
+
mlrun/db/nopdb.py,sha256=dtyUqnleBN7i59xfgjMB4e-aGM_Oj6ONOIzMKxG3UlM,27113
|
|
114
115
|
mlrun/feature_store/__init__.py,sha256=AVnY2AFUNc2dKxLLUMx2K3Wo1eGviv0brDcYlDnmtf4,1506
|
|
115
116
|
mlrun/feature_store/api.py,sha256=qkojZpzqGAn3r9ww0ynBRKOs8ji8URaK4DSYD4SE-CE,50395
|
|
116
117
|
mlrun/feature_store/common.py,sha256=Z7USI-d1fo0iwBMsqMBtJflJfyuiV3BLoDXQPSAoBAs,12826
|
|
@@ -217,23 +218,23 @@ mlrun/launcher/local.py,sha256=775HY-8S9LFUX5ubGXrLO0N1lVh8bn-DHFmNYuNqQPA,11451
|
|
|
217
218
|
mlrun/launcher/remote.py,sha256=rLJW4UAnUT5iUb4BsGBOAV3K4R29a0X4lFtRkVKlyYU,7709
|
|
218
219
|
mlrun/model_monitoring/__init__.py,sha256=ELy7njEtZnz09Dc6PGZSFFEGtnwI15bJNWM3Pj4_YIs,753
|
|
219
220
|
mlrun/model_monitoring/api.py,sha256=nH5aEUkmUEJF0CurrWJxmxVv1tQed2yzCLhQByG1L00,28561
|
|
220
|
-
mlrun/model_monitoring/controller.py,sha256=
|
|
221
|
+
mlrun/model_monitoring/controller.py,sha256=vflE-BW5RW7g3upVnWjbi0O5oQOr6eRkmvo2FDeQEV4,28849
|
|
221
222
|
mlrun/model_monitoring/features_drift_table.py,sha256=c6GpKtpOJbuT1u5uMWDL_S-6N4YPOmlktWMqPme3KFY,25308
|
|
222
223
|
mlrun/model_monitoring/helpers.py,sha256=nJhR7pQGzDGQDjGybV-pUyo4Eyt4OAeqqZ1aSEgs2lI,18328
|
|
223
|
-
mlrun/model_monitoring/stream_processing.py,sha256=
|
|
224
|
+
mlrun/model_monitoring/stream_processing.py,sha256=s68kJUXrH9By-h6YBndLLEWJyyLupQEM1cFBW4qRap8,35039
|
|
224
225
|
mlrun/model_monitoring/tracking_policy.py,sha256=PBIGrUYWrwcE5gwXupBIVzOb0QRRwPJsgQm_yLGQxB4,5595
|
|
225
226
|
mlrun/model_monitoring/writer.py,sha256=vbL7bqTyNu8q4bNcebX72sUMybVDAoTWg-CXq4fov3Y,8429
|
|
226
227
|
mlrun/model_monitoring/applications/__init__.py,sha256=QYvzgCutFdAkzqKPD3mvkX_3c1X4tzd-kW8ojUOE9ic,889
|
|
227
|
-
mlrun/model_monitoring/applications/_application_steps.py,sha256=
|
|
228
|
-
mlrun/model_monitoring/applications/base.py,sha256=
|
|
229
|
-
mlrun/model_monitoring/applications/context.py,sha256=
|
|
228
|
+
mlrun/model_monitoring/applications/_application_steps.py,sha256=T_WUbQJyGGKQ4ZK5_635wuqDWYqaRe7xXxbo5LwrRz8,7293
|
|
229
|
+
mlrun/model_monitoring/applications/base.py,sha256=BoeL4XiWHG9pqGB0eRqm8xkKaDZ3UYZj7g_zXaTGLqw,19873
|
|
230
|
+
mlrun/model_monitoring/applications/context.py,sha256=892IMOHU_0RwCliRxKHB0A6obARe1YAKlhL2xK2oo1c,15056
|
|
230
231
|
mlrun/model_monitoring/applications/evidently_base.py,sha256=hRjXuXf6xf8sbjGt9yYfGDUGnvS5rV3W7tkJroF3QJA,5098
|
|
231
232
|
mlrun/model_monitoring/applications/histogram_data_drift.py,sha256=G26_4gQfcwDZe3S6SIZ4Uc_qyrHAJ6lDTFOQGkbfQR8,14455
|
|
232
233
|
mlrun/model_monitoring/applications/results.py,sha256=oh1z9oacWWP4azVXm_Fx7j8uXSfdkB9T4mtGwyPBveE,5748
|
|
233
234
|
mlrun/model_monitoring/db/__init__.py,sha256=r47xPGZpIfMuv8J3PQCZTSqVPMhUta4sSJCZFKcS7FM,644
|
|
234
|
-
mlrun/model_monitoring/db/_schedules.py,sha256=
|
|
235
|
+
mlrun/model_monitoring/db/_schedules.py,sha256=AKyCJBAt0opNE3K3pg2TjCoD_afk1LKw5TY88rLQ2VA,6097
|
|
235
236
|
mlrun/model_monitoring/db/_stats.py,sha256=VVMWLMqG3Us3ozBkLaokJF22Ewv8WKmVE1-OvS_g9vA,6943
|
|
236
|
-
mlrun/model_monitoring/db/tsdb/__init__.py,sha256=
|
|
237
|
+
mlrun/model_monitoring/db/tsdb/__init__.py,sha256=vyyERKOG1jTPtiIDBrRbffodtFcD_FnUPaBHikHNYzU,4512
|
|
237
238
|
mlrun/model_monitoring/db/tsdb/base.py,sha256=JjLBzZXE4ZxtBmihVXjUYZ2HKmgqX03ZhUynXp4948o,25372
|
|
238
239
|
mlrun/model_monitoring/db/tsdb/helpers.py,sha256=0oUXc4aUkYtP2SGP6jTb3uPPKImIUsVsrb9otX9a7O4,1189
|
|
239
240
|
mlrun/model_monitoring/db/tsdb/tdengine/__init__.py,sha256=vgBdsKaXUURKqIf3M0y4sRatmSVA4CQiJs7J5dcVBkQ,620
|
|
@@ -267,17 +268,17 @@ mlrun/platforms/iguazio.py,sha256=6VBTq8eQ3mzT96tzjYhAtcMQ2VjF4x8LpIPW5DAcX2Q,13
|
|
|
267
268
|
mlrun/projects/__init__.py,sha256=0Krf0WIKfnZa71WthYOg0SoaTodGg3sV_hK3f_OlTPI,1220
|
|
268
269
|
mlrun/projects/operations.py,sha256=VXUlMrouFTls-I-bMhdN5pPfQ34TR7bFQ-NUSWNvl84,20029
|
|
269
270
|
mlrun/projects/pipelines.py,sha256=3UmjPKKAKKttdAOFnv_3vF0YLU1LHKQqUO2xp0K5yng,47915
|
|
270
|
-
mlrun/projects/project.py,sha256=
|
|
271
|
+
mlrun/projects/project.py,sha256=fInyjyl_v4XeTsYQxnzmHNApWOgD5rKWvsgf4Vo1FAc,236088
|
|
271
272
|
mlrun/runtimes/__init__.py,sha256=J9Sy2HiyMlztNv6VUurMzF5H2XzttNil8nRsWDsqLyg,8923
|
|
272
|
-
mlrun/runtimes/base.py,sha256=
|
|
273
|
+
mlrun/runtimes/base.py,sha256=aAEGZKPkcFs30UzURS7al3xYEDDARpJQ8kFhtBKUhik,37845
|
|
273
274
|
mlrun/runtimes/daskjob.py,sha256=JwuGvOiPsxEDHHMMUS4Oie4hLlYYIZwihAl6DjroTY0,19521
|
|
274
275
|
mlrun/runtimes/funcdoc.py,sha256=zRFHrJsV8rhDLJwoUhcfZ7Cs0j-tQ76DxwUqdXV_Wyc,9810
|
|
275
276
|
mlrun/runtimes/function_reference.py,sha256=iWKRe4r2GTc5S8FOIASYUNLwwne8NqIui51PFr8Q4mg,4918
|
|
276
|
-
mlrun/runtimes/generators.py,sha256=
|
|
277
|
+
mlrun/runtimes/generators.py,sha256=X8NDlCEPveDDPOHtOGcSpbl3pAVM3DP7fuPj5xVhxEY,7290
|
|
277
278
|
mlrun/runtimes/kubejob.py,sha256=gJnlAJ0RJw65yeiIPuLEjxJkDYfbpRgS3lyWkDDFXTk,8797
|
|
278
279
|
mlrun/runtimes/local.py,sha256=yedo3R1c46cB1mX7aOz8zORXswQPvX86U-_fYxXoqTY,22717
|
|
279
280
|
mlrun/runtimes/mounts.py,sha256=pGQlnsNTUxAhFMWLS_53E784z-IH9a6oQjKjSp1gbJE,18733
|
|
280
|
-
mlrun/runtimes/pod.py,sha256=
|
|
281
|
+
mlrun/runtimes/pod.py,sha256=VsxviESdIW9eMM4XUnpIQk8OlRiCEUbZpI68Mmwy5Ro,67708
|
|
281
282
|
mlrun/runtimes/remotesparkjob.py,sha256=dod99nqz3GdRfmnBoQKfwFCXTetfuCScd2pKH3HJyoY,7394
|
|
282
283
|
mlrun/runtimes/utils.py,sha256=3_Vu_OHlhi8f0vh_w9ii2eTKgS5dh6RVi1HwX9oDKuU,15675
|
|
283
284
|
mlrun/runtimes/databricks_job/__init__.py,sha256=kXGBqhLN0rlAx0kTXhozGzFsIdSqW0uTSKMmsLgq_is,569
|
|
@@ -289,9 +290,9 @@ mlrun/runtimes/mpijob/abstract.py,sha256=JGMjcJ4dvpJbctF6psU9UvYyNCutMxTMgBQeTlz
|
|
|
289
290
|
mlrun/runtimes/mpijob/v1.py,sha256=1XQZC7AIMGX_AQCbApcwpH8I7y39-v0v2O35MvxjXoo,3213
|
|
290
291
|
mlrun/runtimes/nuclio/__init__.py,sha256=gx1kizzKv8pGT5TNloN1js1hdbxqDw3rM90sLVYVffY,794
|
|
291
292
|
mlrun/runtimes/nuclio/api_gateway.py,sha256=vH9ClKVP4Mb24rvA67xPuAvAhX-gAv6vVtjVxyplhdc,26969
|
|
292
|
-
mlrun/runtimes/nuclio/function.py,sha256=
|
|
293
|
+
mlrun/runtimes/nuclio/function.py,sha256=lwUzQRVwsqGOq5XrkGCcoCSRryNGh7THZKuVv2nGtnY,54062
|
|
293
294
|
mlrun/runtimes/nuclio/nuclio.py,sha256=sLK8KdGO1LbftlL3HqPZlFOFTAAuxJACZCVl1c0Ha6E,2942
|
|
294
|
-
mlrun/runtimes/nuclio/serving.py,sha256=
|
|
295
|
+
mlrun/runtimes/nuclio/serving.py,sha256=SfvRcujt4EYYWwpNSJgozGhbn85OOSmpIrQNSOJYPCs,32222
|
|
295
296
|
mlrun/runtimes/nuclio/application/__init__.py,sha256=rRs5vasy_G9IyoTpYIjYDafGoL6ifFBKgBtsXn31Atw,614
|
|
296
297
|
mlrun/runtimes/nuclio/application/application.py,sha256=HlEq4A6hbFqr3Ba3TL4m7nbmfMYI06Zb_NAKGjzkEFU,29242
|
|
297
298
|
mlrun/runtimes/nuclio/application/reverse_proxy.go,sha256=JIIYae6bXzCLf3jXuu49KWPQYoXr_FDQ2Rbo1OWKAd0,3150
|
|
@@ -300,13 +301,13 @@ mlrun/runtimes/sparkjob/spark3job.py,sha256=E777WdlSe7Yx2kpg1bK0zZokn93bOQiUbtvt
|
|
|
300
301
|
mlrun/serving/__init__.py,sha256=FhOlOCnBC5HFXOHzSDe4NHBs6mNUDP_Qqy6WMNsCwws,1307
|
|
301
302
|
mlrun/serving/merger.py,sha256=qtPJacx94Tsz_-8L3J_-aS2NEsTdechZkQzJmyHjmig,6195
|
|
302
303
|
mlrun/serving/remote.py,sha256=gxJkj_J3j-sZcVUbUzbAmJafP6t6y4NVFsu0kWmYngA,18818
|
|
303
|
-
mlrun/serving/routers.py,sha256=
|
|
304
|
-
mlrun/serving/server.py,sha256=
|
|
304
|
+
mlrun/serving/routers.py,sha256=t8b1XDw6AgZ8wyR9Ei0GNWPyL82tXG5GhXEoTXjnKXw,52980
|
|
305
|
+
mlrun/serving/server.py,sha256=dt_3tvzO1akIou3RNnrFCAOm_dI3hPMabAfjx9M6glo,23236
|
|
305
306
|
mlrun/serving/serving_wrapper.py,sha256=R670-S6PX_d5ER6jiHtRvacuPyFzQH0mEf2K0sBIIOM,836
|
|
306
|
-
mlrun/serving/states.py,sha256=
|
|
307
|
+
mlrun/serving/states.py,sha256=Ud2-xCuvArBD1EFJRKVrVx-LqyhutjGwSkXSEDA5Zzk,70214
|
|
307
308
|
mlrun/serving/utils.py,sha256=k2EIYDWHUGkE-IBI6T0UNT32fw-KySsccIJM_LObI00,4171
|
|
308
309
|
mlrun/serving/v1_serving.py,sha256=c6J_MtpE-Tqu00-6r4eJOCO6rUasHDal9W2eBIcrl50,11853
|
|
309
|
-
mlrun/serving/v2_serving.py,sha256=
|
|
310
|
+
mlrun/serving/v2_serving.py,sha256=8cjpAjFdbx0j0OJZqh7vsY241Z7fLosnMg8EyiBXk54,24508
|
|
310
311
|
mlrun/track/__init__.py,sha256=yVXbT52fXvGKRlc_ByHqIVt7-9L3DRE634RSeQwgXtU,665
|
|
311
312
|
mlrun/track/tracker.py,sha256=CyTU6Qd3_5GGEJ_hpocOj71wvV65EuFYUjaYEUKAL6Q,3575
|
|
312
313
|
mlrun/track/tracker_manager.py,sha256=IYBl99I62IC6VCCmG1yt6JoHNOQXa53C4DURJ2sWgio,5726
|
|
@@ -337,11 +338,11 @@ mlrun/utils/notifications/notification/mail.py,sha256=ZyJ3eqd8simxffQmXzqd3bgbAq
|
|
|
337
338
|
mlrun/utils/notifications/notification/slack.py,sha256=eQvmctTh6wIG5xVOesLLV9S1-UUCu5UEQ9JIJOor3ts,7183
|
|
338
339
|
mlrun/utils/notifications/notification/webhook.py,sha256=NeyIMSBojjjTJaUHmPbxMByp34GxYkl1-16NqzU27fU,4943
|
|
339
340
|
mlrun/utils/version/__init__.py,sha256=7kkrB7hEZ3cLXoWj1kPoDwo4MaswsI2JVOBpbKgPAgc,614
|
|
340
|
-
mlrun/utils/version/version.json,sha256
|
|
341
|
+
mlrun/utils/version/version.json,sha256=Ji9mJURUAgizR3XVtuLztq59YxLSrO_4TjKs1IjyHOc,89
|
|
341
342
|
mlrun/utils/version/version.py,sha256=eEW0tqIAkU9Xifxv8Z9_qsYnNhn3YH7NRAfM-pPLt1g,1878
|
|
342
|
-
mlrun-1.8.
|
|
343
|
-
mlrun-1.8.
|
|
344
|
-
mlrun-1.8.
|
|
345
|
-
mlrun-1.8.
|
|
346
|
-
mlrun-1.8.
|
|
347
|
-
mlrun-1.8.
|
|
343
|
+
mlrun-1.8.0rc29.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
344
|
+
mlrun-1.8.0rc29.dist-info/METADATA,sha256=llmy1QFHh3_MfsgBdZan5HUFF2A_pQnRjq7Wy3j0NrU,25989
|
|
345
|
+
mlrun-1.8.0rc29.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
346
|
+
mlrun-1.8.0rc29.dist-info/entry_points.txt,sha256=1Owd16eAclD5pfRCoJpYC2ZJSyGNTtUr0nCELMioMmU,46
|
|
347
|
+
mlrun-1.8.0rc29.dist-info/top_level.txt,sha256=NObLzw3maSF9wVrgSeYBv-fgnHkAJ1kEkh12DLdd5KM,6
|
|
348
|
+
mlrun-1.8.0rc29.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|