mlrun 1.8.0rc33__py3-none-any.whl → 1.8.0rc35__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/common/schemas/auth.py +2 -0
- mlrun/config.py +6 -1
- mlrun/db/base.py +7 -1
- mlrun/db/httpdb.py +4 -25
- mlrun/db/nopdb.py +7 -1
- mlrun/model_monitoring/api.py +1 -1
- mlrun/model_monitoring/applications/base.py +23 -2
- mlrun/model_monitoring/applications/evidently/base.py +1 -1
- mlrun/projects/project.py +5 -0
- mlrun/runtimes/databricks_job/databricks_runtime.py +2 -2
- mlrun/utils/async_http.py +2 -1
- mlrun/utils/helpers.py +15 -2
- mlrun/utils/version/version.json +2 -2
- {mlrun-1.8.0rc33.dist-info → mlrun-1.8.0rc35.dist-info}/METADATA +5 -5
- {mlrun-1.8.0rc33.dist-info → mlrun-1.8.0rc35.dist-info}/RECORD +19 -19
- {mlrun-1.8.0rc33.dist-info → mlrun-1.8.0rc35.dist-info}/LICENSE +0 -0
- {mlrun-1.8.0rc33.dist-info → mlrun-1.8.0rc35.dist-info}/WHEEL +0 -0
- {mlrun-1.8.0rc33.dist-info → mlrun-1.8.0rc35.dist-info}/entry_points.txt +0 -0
- {mlrun-1.8.0rc33.dist-info → mlrun-1.8.0rc35.dist-info}/top_level.txt +0 -0
mlrun/common/schemas/auth.py
CHANGED
|
@@ -114,6 +114,8 @@ class AuthorizationVerificationInput(pydantic.v1.BaseModel):
|
|
|
114
114
|
|
|
115
115
|
|
|
116
116
|
class AuthInfo(pydantic.v1.BaseModel):
|
|
117
|
+
# Keep request headers for inter-service communication
|
|
118
|
+
request_headers: typing.Optional[dict[str, str]] = None
|
|
117
119
|
# Basic + Iguazio auth
|
|
118
120
|
username: typing.Optional[str] = None
|
|
119
121
|
# Basic auth
|
mlrun/config.py
CHANGED
|
@@ -811,11 +811,16 @@ default_config = {
|
|
|
811
811
|
"mode": "enabled",
|
|
812
812
|
# maximum number of alerts we allow to be configured.
|
|
813
813
|
# user will get an error when exceeding this
|
|
814
|
-
"max_allowed":
|
|
814
|
+
"max_allowed": 20000,
|
|
815
815
|
# maximum allowed value for count in criteria field inside AlertConfig
|
|
816
816
|
"max_criteria_count": 100,
|
|
817
817
|
# interval for periodic events generation job
|
|
818
818
|
"events_generation_interval": 30, # seconds
|
|
819
|
+
# number of alerts to delete in each chunk
|
|
820
|
+
"chunk_size_during_project_deletion": 100,
|
|
821
|
+
# maximum allowed alert config cache size in alert's CRUD
|
|
822
|
+
# for the best performance, it is recommended to set this value to the maximum number of alerts
|
|
823
|
+
"max_allowed_cache_size": 20000,
|
|
819
824
|
},
|
|
820
825
|
"auth_with_client_id": {
|
|
821
826
|
"enabled": False,
|
mlrun/db/base.py
CHANGED
|
@@ -149,7 +149,13 @@ class RunDBInterface(ABC):
|
|
|
149
149
|
|
|
150
150
|
@abstractmethod
|
|
151
151
|
def store_artifact(
|
|
152
|
-
self,
|
|
152
|
+
self,
|
|
153
|
+
key,
|
|
154
|
+
artifact,
|
|
155
|
+
iter=None,
|
|
156
|
+
tag="",
|
|
157
|
+
project="",
|
|
158
|
+
tree=None,
|
|
153
159
|
):
|
|
154
160
|
pass
|
|
155
161
|
|
mlrun/db/httpdb.py
CHANGED
|
@@ -899,7 +899,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
899
899
|
] = None, # Backward compatibility
|
|
900
900
|
states: typing.Optional[list[mlrun.common.runtimes.constants.RunStates]] = None,
|
|
901
901
|
sort: bool = True,
|
|
902
|
-
last: int = 0,
|
|
903
902
|
iter: bool = False,
|
|
904
903
|
start_time_from: Optional[datetime] = None,
|
|
905
904
|
start_time_to: Optional[datetime] = None,
|
|
@@ -946,7 +945,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
946
945
|
:param states: List only runs whose state is one of the provided states.
|
|
947
946
|
:param sort: Whether to sort the result according to their start time. Otherwise, results will be
|
|
948
947
|
returned by their internal order in the DB (order will not be guaranteed).
|
|
949
|
-
:param last: Deprecated - currently not used (will be removed in 1.8.0).
|
|
950
948
|
:param iter: If ``True`` return runs from all iterations. Otherwise, return only runs whose ``iter`` is 0.
|
|
951
949
|
:param start_time_from: Filter by run start time in ``[start_time_from, start_time_to]``.
|
|
952
950
|
:param start_time_to: Filter by run start time in ``[start_time_from, start_time_to]``.
|
|
@@ -974,7 +972,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
974
972
|
state=state,
|
|
975
973
|
states=states,
|
|
976
974
|
sort=sort,
|
|
977
|
-
last=last,
|
|
978
975
|
iter=iter,
|
|
979
976
|
start_time_from=start_time_from,
|
|
980
977
|
start_time_to=start_time_to,
|
|
@@ -1035,6 +1032,7 @@ class HTTPRunDB(RunDBInterface):
|
|
|
1035
1032
|
|
|
1036
1033
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
1037
1034
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
1035
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
1038
1036
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
1039
1037
|
for the first request.
|
|
1040
1038
|
|
|
@@ -1093,8 +1091,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
1093
1091
|
self,
|
|
1094
1092
|
key,
|
|
1095
1093
|
artifact,
|
|
1096
|
-
# TODO: deprecated, remove in 1.8.0
|
|
1097
|
-
uid=None,
|
|
1098
1094
|
iter=None,
|
|
1099
1095
|
tag=None,
|
|
1100
1096
|
project="",
|
|
@@ -1104,8 +1100,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
1104
1100
|
|
|
1105
1101
|
:param key: Identifying key of the artifact.
|
|
1106
1102
|
:param artifact: The :py:class:`~mlrun.artifacts.Artifact` to store.
|
|
1107
|
-
:param uid: A unique ID for this specific version of the artifact
|
|
1108
|
-
(deprecated, artifact uid is generated in the backend use `tree` instead)
|
|
1109
1103
|
:param iter: The task iteration which generated this artifact. If ``iter`` is not ``None`` the iteration will
|
|
1110
1104
|
be added to the key provided to generate a unique key for the artifact of the specific iteration.
|
|
1111
1105
|
:param tag: Tag of the artifact.
|
|
@@ -1113,15 +1107,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
1113
1107
|
:param tree: The tree (producer id) which generated this artifact.
|
|
1114
1108
|
:returns: The stored artifact dictionary.
|
|
1115
1109
|
"""
|
|
1116
|
-
if uid:
|
|
1117
|
-
warnings.warn(
|
|
1118
|
-
"'uid' is deprecated in 1.6.0 and will be removed in 1.8.0, use 'tree' instead.",
|
|
1119
|
-
# TODO: Remove this in 1.8.0
|
|
1120
|
-
FutureWarning,
|
|
1121
|
-
)
|
|
1122
|
-
|
|
1123
|
-
# we do this because previously the 'uid' name was used for the 'tree' parameter
|
|
1124
|
-
tree = tree or uid
|
|
1125
1110
|
project = project or mlrun.mlconf.default_project
|
|
1126
1111
|
endpoint_path = f"projects/{project}/artifacts/{key}"
|
|
1127
1112
|
|
|
@@ -1370,6 +1355,7 @@ class HTTPRunDB(RunDBInterface):
|
|
|
1370
1355
|
|
|
1371
1356
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
1372
1357
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
1358
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
1373
1359
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
1374
1360
|
for the first request.
|
|
1375
1361
|
|
|
@@ -1599,6 +1585,7 @@ class HTTPRunDB(RunDBInterface):
|
|
|
1599
1585
|
|
|
1600
1586
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
1601
1587
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
1588
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
1602
1589
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
1603
1590
|
for the first request.
|
|
1604
1591
|
|
|
@@ -4985,6 +4972,7 @@ class HTTPRunDB(RunDBInterface):
|
|
|
4985
4972
|
|
|
4986
4973
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
4987
4974
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
4975
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
4988
4976
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
4989
4977
|
for the first request.
|
|
4990
4978
|
|
|
@@ -5198,7 +5186,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
5198
5186
|
] = None, # Backward compatibility
|
|
5199
5187
|
states: typing.Optional[list[mlrun.common.runtimes.constants.RunStates]] = None,
|
|
5200
5188
|
sort: bool = True,
|
|
5201
|
-
last: int = 0,
|
|
5202
5189
|
iter: bool = False,
|
|
5203
5190
|
start_time_from: Optional[datetime] = None,
|
|
5204
5191
|
start_time_to: Optional[datetime] = None,
|
|
@@ -5230,13 +5217,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
5230
5217
|
"using the `with_notifications` flag."
|
|
5231
5218
|
)
|
|
5232
5219
|
|
|
5233
|
-
if last:
|
|
5234
|
-
# TODO: Remove this in 1.8.0
|
|
5235
|
-
warnings.warn(
|
|
5236
|
-
"'last' is deprecated and will be removed in 1.8.0.",
|
|
5237
|
-
FutureWarning,
|
|
5238
|
-
)
|
|
5239
|
-
|
|
5240
5220
|
if state:
|
|
5241
5221
|
# TODO: Remove this in 1.9.0
|
|
5242
5222
|
warnings.warn(
|
|
@@ -5252,7 +5232,6 @@ class HTTPRunDB(RunDBInterface):
|
|
|
5252
5232
|
and not labels
|
|
5253
5233
|
and not state
|
|
5254
5234
|
and not states
|
|
5255
|
-
and not last
|
|
5256
5235
|
and not start_time_from
|
|
5257
5236
|
and not start_time_to
|
|
5258
5237
|
and not last_update_time_from
|
mlrun/db/nopdb.py
CHANGED
|
@@ -175,7 +175,13 @@ class NopDB(RunDBInterface):
|
|
|
175
175
|
pass
|
|
176
176
|
|
|
177
177
|
def store_artifact(
|
|
178
|
-
self,
|
|
178
|
+
self,
|
|
179
|
+
key,
|
|
180
|
+
artifact,
|
|
181
|
+
iter=None,
|
|
182
|
+
tag="",
|
|
183
|
+
project="",
|
|
184
|
+
tree=None,
|
|
179
185
|
):
|
|
180
186
|
pass
|
|
181
187
|
|
mlrun/model_monitoring/api.py
CHANGED
|
@@ -107,7 +107,7 @@ def get_or_create_model_endpoint(
|
|
|
107
107
|
sample_set_statistics=sample_set_statistics,
|
|
108
108
|
)
|
|
109
109
|
|
|
110
|
-
except mlrun.errors.MLRunNotFoundError:
|
|
110
|
+
except (mlrun.errors.MLRunNotFoundError, mlrun.errors.MLRunInvalidArgumentError):
|
|
111
111
|
# Create a new model endpoint with the provided details
|
|
112
112
|
pass
|
|
113
113
|
if not model_endpoint:
|
|
@@ -90,6 +90,25 @@ class ModelMonitoringApplicationBase(MonitoringApplicationToDict, ABC):
|
|
|
90
90
|
results = results if isinstance(results, list) else [results]
|
|
91
91
|
return results, monitoring_context
|
|
92
92
|
|
|
93
|
+
@staticmethod
|
|
94
|
+
def _flatten_data_result(
|
|
95
|
+
result: Union[
|
|
96
|
+
list[mm_results._ModelMonitoringApplicationDataRes],
|
|
97
|
+
mm_results._ModelMonitoringApplicationDataRes,
|
|
98
|
+
],
|
|
99
|
+
) -> Union[list[dict], dict]:
|
|
100
|
+
"""Flatten result/metric objects to dictionaries"""
|
|
101
|
+
if isinstance(result, mm_results._ModelMonitoringApplicationDataRes):
|
|
102
|
+
return result.to_dict()
|
|
103
|
+
if isinstance(result, list):
|
|
104
|
+
return [
|
|
105
|
+
element.to_dict()
|
|
106
|
+
if isinstance(element, mm_results._ModelMonitoringApplicationDataRes)
|
|
107
|
+
else element
|
|
108
|
+
for element in result
|
|
109
|
+
]
|
|
110
|
+
return result
|
|
111
|
+
|
|
93
112
|
def _handler(
|
|
94
113
|
self,
|
|
95
114
|
context: "mlrun.MLClientCtx",
|
|
@@ -142,9 +161,10 @@ class ModelMonitoringApplicationBase(MonitoringApplicationToDict, ABC):
|
|
|
142
161
|
if window_start and window_end
|
|
143
162
|
else f"{endpoint_name}-{endpoint_id}"
|
|
144
163
|
)
|
|
145
|
-
|
|
164
|
+
|
|
165
|
+
context.log_result(result_key, self._flatten_data_result(result))
|
|
146
166
|
else:
|
|
147
|
-
return call_do_tracking()
|
|
167
|
+
return self._flatten_data_result(call_do_tracking())
|
|
148
168
|
|
|
149
169
|
@staticmethod
|
|
150
170
|
def _handle_endpoints_type_evaluate(
|
|
@@ -181,6 +201,7 @@ class ModelMonitoringApplicationBase(MonitoringApplicationToDict, ABC):
|
|
|
181
201
|
missing_endpoint=missing,
|
|
182
202
|
endpoints=list_endpoints_result,
|
|
183
203
|
)
|
|
204
|
+
endpoints = list_endpoints_result
|
|
184
205
|
else:
|
|
185
206
|
raise mlrun.errors.MLRunNotFoundError(
|
|
186
207
|
f"Did not find any model_endpoint named ' {endpoints}'"
|
|
@@ -23,7 +23,7 @@ import mlrun.model_monitoring.applications.base as mm_base
|
|
|
23
23
|
import mlrun.model_monitoring.applications.context as mm_context
|
|
24
24
|
from mlrun.errors import MLRunIncompatibleVersionError
|
|
25
25
|
|
|
26
|
-
SUPPORTED_EVIDENTLY_VERSION = semver.Version.parse("0.
|
|
26
|
+
SUPPORTED_EVIDENTLY_VERSION = semver.Version.parse("0.6.0")
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
def _check_evidently_version(*, cur: semver.Version, ref: semver.Version) -> None:
|
mlrun/projects/project.py
CHANGED
|
@@ -4396,6 +4396,7 @@ class MlrunProject(ModelObj):
|
|
|
4396
4396
|
|
|
4397
4397
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
4398
4398
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
4399
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
4399
4400
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
4400
4401
|
for the first request.
|
|
4401
4402
|
|
|
@@ -4515,6 +4516,7 @@ class MlrunProject(ModelObj):
|
|
|
4515
4516
|
|
|
4516
4517
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
4517
4518
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
4519
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
4518
4520
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
4519
4521
|
for the first request.
|
|
4520
4522
|
|
|
@@ -4615,6 +4617,7 @@ class MlrunProject(ModelObj):
|
|
|
4615
4617
|
|
|
4616
4618
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
4617
4619
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
4620
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
4618
4621
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
4619
4622
|
for the first request.
|
|
4620
4623
|
|
|
@@ -4806,6 +4809,7 @@ class MlrunProject(ModelObj):
|
|
|
4806
4809
|
|
|
4807
4810
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
4808
4811
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
4812
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
4809
4813
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
4810
4814
|
for the first request.
|
|
4811
4815
|
|
|
@@ -5187,6 +5191,7 @@ class MlrunProject(ModelObj):
|
|
|
5187
5191
|
|
|
5188
5192
|
:param page: The page number to retrieve. If not provided, the next page will be retrieved.
|
|
5189
5193
|
:param page_size: The number of items per page to retrieve. Up to `page_size` responses are expected.
|
|
5194
|
+
Defaults to `mlrun.mlconf.httpdb.pagination.default_page_size` if not provided.
|
|
5190
5195
|
:param page_token: A pagination token used to retrieve the next page of results. Should not be provided
|
|
5191
5196
|
for the first request.
|
|
5192
5197
|
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
|
-
|
|
14
|
+
import typing
|
|
15
15
|
from ast import FunctionDef, parse, unparse
|
|
16
16
|
from base64 import b64decode
|
|
17
17
|
from typing import Callable, Optional, Union
|
|
@@ -139,7 +139,7 @@ class DatabricksRuntime(kubejob.KubejobRuntime):
|
|
|
139
139
|
)
|
|
140
140
|
|
|
141
141
|
def _get_modified_user_code(self, original_handler: str, log_artifacts_code: str):
|
|
142
|
-
encoded_code = (
|
|
142
|
+
encoded_code: typing.Optional[str] = (
|
|
143
143
|
self.spec.build.functionSourceCode if hasattr(self.spec, "build") else None
|
|
144
144
|
)
|
|
145
145
|
if not encoded_code:
|
mlrun/utils/async_http.py
CHANGED
|
@@ -111,6 +111,7 @@ class ExponentialRetryOverride(ExponentialRetry):
|
|
|
111
111
|
# aiohttp exceptions that can be raised during connection establishment
|
|
112
112
|
aiohttp.ClientConnectionError,
|
|
113
113
|
aiohttp.ServerDisconnectedError,
|
|
114
|
+
asyncio.exceptions.TimeoutError,
|
|
114
115
|
]
|
|
115
116
|
|
|
116
117
|
def __init__(
|
|
@@ -303,7 +304,7 @@ class _CustomRequestContext(_RequestContext):
|
|
|
303
304
|
if isinstance(exc.os_error, exc_type):
|
|
304
305
|
return
|
|
305
306
|
if exc.__cause__:
|
|
306
|
-
# If the cause exception is
|
|
307
|
+
# If the cause exception is retryable, return, otherwise, raise the original exception
|
|
307
308
|
try:
|
|
308
309
|
self.verify_exception_type(exc.__cause__)
|
|
309
310
|
except Exception:
|
mlrun/utils/helpers.py
CHANGED
|
@@ -1425,6 +1425,17 @@ def to_non_empty_values_dict(input_dict: dict) -> dict:
|
|
|
1425
1425
|
return {key: value for key, value in input_dict.items() if value}
|
|
1426
1426
|
|
|
1427
1427
|
|
|
1428
|
+
def get_enriched_gpu_limits(function_limits: dict) -> dict[str, int]:
|
|
1429
|
+
"""
|
|
1430
|
+
Creates new limits containing the GPU-related limits from the function's limits,
|
|
1431
|
+
mapping each to zero. This is used for pods like Kaniko and Argo pods, which inherit
|
|
1432
|
+
GPU-related selectors but do not require GPU resources. By setting these
|
|
1433
|
+
limits to zero, the pods receive the necessary tolerations from the cloud provider for scheduling,
|
|
1434
|
+
without actually consuming GPU resources.
|
|
1435
|
+
"""
|
|
1436
|
+
return {resource: 0 for resource in function_limits if "/gpu" in resource.lower()}
|
|
1437
|
+
|
|
1438
|
+
|
|
1428
1439
|
def str_to_timestamp(time_str: str, now_time: Timestamp = None):
|
|
1429
1440
|
"""convert fixed/relative time string to Pandas Timestamp
|
|
1430
1441
|
|
|
@@ -2146,10 +2157,12 @@ def as_dict(data: typing.Union[dict, str]) -> dict:
|
|
|
2146
2157
|
|
|
2147
2158
|
|
|
2148
2159
|
def encode_user_code(
|
|
2149
|
-
user_code: str, max_len_warning: typing.Optional[int] = None
|
|
2160
|
+
user_code: typing.Union[str, bytes], max_len_warning: typing.Optional[int] = None
|
|
2150
2161
|
) -> str:
|
|
2151
2162
|
max_len_warning = max_len_warning or config.function.spec.source_code_max_bytes
|
|
2152
|
-
|
|
2163
|
+
if isinstance(user_code, str):
|
|
2164
|
+
user_code = user_code.encode("utf-8")
|
|
2165
|
+
encoded = base64.b64encode(user_code).decode("utf-8")
|
|
2153
2166
|
if len(encoded) > max_len_warning:
|
|
2154
2167
|
logger.warning(
|
|
2155
2168
|
f"User code exceeds the maximum allowed size of {max_len_warning} bytes for non remote source. "
|
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.0rc35
|
|
4
4
|
Summary: Tracking and config of machine learning runs
|
|
5
5
|
Home-page: https://github.com/mlrun/mlrun
|
|
6
6
|
Author: Yaron Haviv
|
|
@@ -51,8 +51,8 @@ Requires-Dist: setuptools>=75.2
|
|
|
51
51
|
Requires-Dist: deprecated~=1.2
|
|
52
52
|
Requires-Dist: jinja2>=3.1.3,~=3.1
|
|
53
53
|
Requires-Dist: orjson<4,>=3.9.15
|
|
54
|
-
Requires-Dist: mlrun-pipelines-kfp-common~=0.3.
|
|
55
|
-
Requires-Dist: mlrun-pipelines-kfp-v1-8~=0.3.
|
|
54
|
+
Requires-Dist: mlrun-pipelines-kfp-common~=0.3.12
|
|
55
|
+
Requires-Dist: mlrun-pipelines-kfp-v1-8~=0.3.8; python_version < "3.11"
|
|
56
56
|
Requires-Dist: docstring_parser~=0.16
|
|
57
57
|
Requires-Dist: aiosmtplib~=3.0
|
|
58
58
|
Provides-Extra: s3
|
|
@@ -119,7 +119,7 @@ Requires-Dist: timelength~=1.1; extra == "api"
|
|
|
119
119
|
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
|
-
Requires-Dist: mlrun-pipelines-kfp-v1-8[kfp]~=0.3.
|
|
122
|
+
Requires-Dist: mlrun-pipelines-kfp-v1-8[kfp]~=0.3.8; python_version < "3.11" and extra == "api"
|
|
123
123
|
Requires-Dist: grpcio~=1.70.0; extra == "api"
|
|
124
124
|
Provides-Extra: all
|
|
125
125
|
Requires-Dist: adlfs==2023.9.0; extra == "all"
|
|
@@ -215,7 +215,7 @@ Requires-Dist: igz-mgmt~=0.4.1; extra == "complete-api"
|
|
|
215
215
|
Requires-Dist: kafka-python~=2.0; extra == "complete-api"
|
|
216
216
|
Requires-Dist: memray~=1.12; sys_platform != "win32" and extra == "complete-api"
|
|
217
217
|
Requires-Dist: mlflow~=2.16; extra == "complete-api"
|
|
218
|
-
Requires-Dist: mlrun-pipelines-kfp-v1-8[kfp]~=0.3.
|
|
218
|
+
Requires-Dist: mlrun-pipelines-kfp-v1-8[kfp]~=0.3.8; python_version < "3.11" and extra == "complete-api"
|
|
219
219
|
Requires-Dist: msrest~=0.6.21; extra == "complete-api"
|
|
220
220
|
Requires-Dist: objgraph~=3.6; extra == "complete-api"
|
|
221
221
|
Requires-Dist: oss2==2.18.1; extra == "complete-api"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
mlrun/__init__.py,sha256=Cqm9U9eCEdLpMejhU2BEhubu0mHL71igJJIwYa738EA,7450
|
|
2
2
|
mlrun/__main__.py,sha256=xYWflUbfSRpo8F4uzrHhBN1dcaBUADmfoK5Q-iqEBeQ,46181
|
|
3
|
-
mlrun/config.py,sha256=
|
|
3
|
+
mlrun/config.py,sha256=w3RCAJUINuiqTqFTkswK-L4Jg33WXyWUicVYbV44ApI,71390
|
|
4
4
|
mlrun/errors.py,sha256=LkcbXTLANGdsgo2CRX2pdbyNmt--lMsjGv0XZMgP-Nc,8222
|
|
5
5
|
mlrun/execution.py,sha256=FUktsD3puSFjc3LZJU35b-OmFBrBPBNntViCLQVuwnk,50008
|
|
6
6
|
mlrun/features.py,sha256=ReBaNGsBYXqcbgI012n-SO_j6oHIbk_Vpv0CGPXbUmo,15842
|
|
@@ -43,7 +43,7 @@ mlrun/common/schemas/__init__.py,sha256=QuMQClP_LvEcUCKp0v2nmA_xUizm644SWvlIdZaP
|
|
|
43
43
|
mlrun/common/schemas/alert.py,sha256=tRsjHEQTjCb-83GS0mprsu5junvqL4aQjWN2Rt_yAaM,10183
|
|
44
44
|
mlrun/common/schemas/api_gateway.py,sha256=3a0QxECLmoDkD5IiOKtXJL-uiWB26Hg55WMA3nULYuI,7127
|
|
45
45
|
mlrun/common/schemas/artifact.py,sha256=f0NPsoZmA-WD9RtN-dcKFW6KuV0PPQB25A2psF7LbP8,4013
|
|
46
|
-
mlrun/common/schemas/auth.py,sha256=
|
|
46
|
+
mlrun/common/schemas/auth.py,sha256=qYOCDbK-k7GTjwLseqGoxwcR-rdIbG2k7ct29M0sPUI,6880
|
|
47
47
|
mlrun/common/schemas/background_task.py,sha256=ofWRAQGGEkXEu79Dbw7tT_5GPolR09Lc3Ebg2r0fT24,1728
|
|
48
48
|
mlrun/common/schemas/client_spec.py,sha256=1RV2vx3PhXfk456b0qcU9R7dz4cisHsRD-HgjKeBdg0,2797
|
|
49
49
|
mlrun/common/schemas/clusterization_spec.py,sha256=LAWOL6V3E5hAt8tKmnP3DOJcKG1FQqp8Z-x8szPkf1I,894
|
|
@@ -108,10 +108,10 @@ mlrun/datastore/wasbfs/__init__.py,sha256=s5Ul-0kAhYqFjKDR2X0O2vDGDbLQQduElb32Ev
|
|
|
108
108
|
mlrun/datastore/wasbfs/fs.py,sha256=ge8NK__5vTcFT-krI155_8RDUywQw4SIRX6BWATXy9Q,6299
|
|
109
109
|
mlrun/db/__init__.py,sha256=WqJ4x8lqJ7ZoKbhEyFqkYADd9P6E3citckx9e9ZLcIU,1163
|
|
110
110
|
mlrun/db/auth_utils.py,sha256=hpg8D2r82oN0BWabuWN04BTNZ7jYMAF242YSUpK7LFM,5211
|
|
111
|
-
mlrun/db/base.py,sha256=
|
|
111
|
+
mlrun/db/base.py,sha256=ax9d2J3mLMZKGomiPHQKfIEB25ZkZXjwtmUfPxUMpz4,30736
|
|
112
112
|
mlrun/db/factory.py,sha256=yP2vVmveUE7LYTCHbS6lQIxP9rW--zdISWuPd_I3d_4,2111
|
|
113
|
-
mlrun/db/httpdb.py,sha256=
|
|
114
|
-
mlrun/db/nopdb.py,sha256=
|
|
113
|
+
mlrun/db/httpdb.py,sha256=mY9IxwFsUPnzzbSBiIm2USGHJ-TKWvoMySy94weYH3k,229743
|
|
114
|
+
mlrun/db/nopdb.py,sha256=LUz6psaNY-X8isKWsnxUbnTq9vOz2REOUF8BbRl2PTQ,27171
|
|
115
115
|
mlrun/feature_store/__init__.py,sha256=AVnY2AFUNc2dKxLLUMx2K3Wo1eGviv0brDcYlDnmtf4,1506
|
|
116
116
|
mlrun/feature_store/api.py,sha256=qkojZpzqGAn3r9ww0ynBRKOs8ji8URaK4DSYD4SE-CE,50395
|
|
117
117
|
mlrun/feature_store/common.py,sha256=Z7USI-d1fo0iwBMsqMBtJflJfyuiV3BLoDXQPSAoBAs,12826
|
|
@@ -217,7 +217,7 @@ mlrun/launcher/factory.py,sha256=RW7mfzEFi8fR0M-4W1JQg1iq3_muUU6OTqT_3l4Ubrk,233
|
|
|
217
217
|
mlrun/launcher/local.py,sha256=775HY-8S9LFUX5ubGXrLO0N1lVh8bn-DHFmNYuNqQPA,11451
|
|
218
218
|
mlrun/launcher/remote.py,sha256=rLJW4UAnUT5iUb4BsGBOAV3K4R29a0X4lFtRkVKlyYU,7709
|
|
219
219
|
mlrun/model_monitoring/__init__.py,sha256=ELy7njEtZnz09Dc6PGZSFFEGtnwI15bJNWM3Pj4_YIs,753
|
|
220
|
-
mlrun/model_monitoring/api.py,sha256=
|
|
220
|
+
mlrun/model_monitoring/api.py,sha256=50QqeQaWafJcItE4HzcD82lt2CKw-p1BTCXbc9JDN1k,28550
|
|
221
221
|
mlrun/model_monitoring/controller.py,sha256=j6hqNYKhrw37PJZBcW4BgjsCpG7PtVMvFTpnZO95QVQ,29078
|
|
222
222
|
mlrun/model_monitoring/features_drift_table.py,sha256=c6GpKtpOJbuT1u5uMWDL_S-6N4YPOmlktWMqPme3KFY,25308
|
|
223
223
|
mlrun/model_monitoring/helpers.py,sha256=fx2mCQkDu_PgO9LT7ykJ3qcZ7BwELaPqCt_MejqeVxo,22450
|
|
@@ -226,12 +226,12 @@ mlrun/model_monitoring/tracking_policy.py,sha256=PBIGrUYWrwcE5gwXupBIVzOb0QRRwPJ
|
|
|
226
226
|
mlrun/model_monitoring/writer.py,sha256=vbL7bqTyNu8q4bNcebX72sUMybVDAoTWg-CXq4fov3Y,8429
|
|
227
227
|
mlrun/model_monitoring/applications/__init__.py,sha256=xDBxkBjl-whHSG_4t1mLkxiypLH-fzn8TmAW9Mjo2uI,759
|
|
228
228
|
mlrun/model_monitoring/applications/_application_steps.py,sha256=97taCEkfGx-QO-gD9uKnRF1PDIxQhY7sjPg85GxgIpA,6628
|
|
229
|
-
mlrun/model_monitoring/applications/base.py,sha256=
|
|
229
|
+
mlrun/model_monitoring/applications/base.py,sha256=7XL12idItWkoE3CJ_48F6cwVx5pJH3bgfG92hb8LcN8,24872
|
|
230
230
|
mlrun/model_monitoring/applications/context.py,sha256=xqbKS61iXE6jBekyW8zjo_E3lxe2D8VepuXG_BA5y2k,14931
|
|
231
231
|
mlrun/model_monitoring/applications/histogram_data_drift.py,sha256=G26_4gQfcwDZe3S6SIZ4Uc_qyrHAJ6lDTFOQGkbfQR8,14455
|
|
232
232
|
mlrun/model_monitoring/applications/results.py,sha256=_qmj6TWT0SR2bi7gUyRKBU418eGgGoLW2_hTJ7S-ock,5782
|
|
233
233
|
mlrun/model_monitoring/applications/evidently/__init__.py,sha256=-DqdPnBSrjZhFvKOu_Ie3MiFvlur9sPTZpZ1u0_1AE8,690
|
|
234
|
-
mlrun/model_monitoring/applications/evidently/base.py,sha256=
|
|
234
|
+
mlrun/model_monitoring/applications/evidently/base.py,sha256=C8402vQJH7jmY-i49DnYjy6p6dETWex4Tdi8ylFLecA,5097
|
|
235
235
|
mlrun/model_monitoring/db/__init__.py,sha256=r47xPGZpIfMuv8J3PQCZTSqVPMhUta4sSJCZFKcS7FM,644
|
|
236
236
|
mlrun/model_monitoring/db/_schedules.py,sha256=AKyCJBAt0opNE3K3pg2TjCoD_afk1LKw5TY88rLQ2VA,6097
|
|
237
237
|
mlrun/model_monitoring/db/_stats.py,sha256=VVMWLMqG3Us3ozBkLaokJF22Ewv8WKmVE1-OvS_g9vA,6943
|
|
@@ -269,7 +269,7 @@ mlrun/platforms/iguazio.py,sha256=6VBTq8eQ3mzT96tzjYhAtcMQ2VjF4x8LpIPW5DAcX2Q,13
|
|
|
269
269
|
mlrun/projects/__init__.py,sha256=0Krf0WIKfnZa71WthYOg0SoaTodGg3sV_hK3f_OlTPI,1220
|
|
270
270
|
mlrun/projects/operations.py,sha256=VXUlMrouFTls-I-bMhdN5pPfQ34TR7bFQ-NUSWNvl84,20029
|
|
271
271
|
mlrun/projects/pipelines.py,sha256=QH2nEhaJxhafJdT0AXPzpDhTniyHtc0Cg74Spdz6Oeg,48255
|
|
272
|
-
mlrun/projects/project.py,sha256=
|
|
272
|
+
mlrun/projects/project.py,sha256=ox7ey4sIyEDJl1-vfaFBzZ8DQq2b2tpeEiIhAWyOwTc,234966
|
|
273
273
|
mlrun/runtimes/__init__.py,sha256=J9Sy2HiyMlztNv6VUurMzF5H2XzttNil8nRsWDsqLyg,8923
|
|
274
274
|
mlrun/runtimes/base.py,sha256=K5-zfFrE_HR6AaHWs2figaOTr7eosw3-4bELkYzpRk4,37789
|
|
275
275
|
mlrun/runtimes/daskjob.py,sha256=JwuGvOiPsxEDHHMMUS4Oie4hLlYYIZwihAl6DjroTY0,19521
|
|
@@ -284,7 +284,7 @@ mlrun/runtimes/remotesparkjob.py,sha256=dod99nqz3GdRfmnBoQKfwFCXTetfuCScd2pKH3HJ
|
|
|
284
284
|
mlrun/runtimes/utils.py,sha256=3_Vu_OHlhi8f0vh_w9ii2eTKgS5dh6RVi1HwX9oDKuU,15675
|
|
285
285
|
mlrun/runtimes/databricks_job/__init__.py,sha256=kXGBqhLN0rlAx0kTXhozGzFsIdSqW0uTSKMmsLgq_is,569
|
|
286
286
|
mlrun/runtimes/databricks_job/databricks_cancel_task.py,sha256=sIqIg5DQAf4j0wCPA-G0GoxY6vacRddxCy5KDUZszek,2245
|
|
287
|
-
mlrun/runtimes/databricks_job/databricks_runtime.py,sha256=
|
|
287
|
+
mlrun/runtimes/databricks_job/databricks_runtime.py,sha256=WBq8Q0RIYwLkyshU7btYrB59wotzK_6xixHqZ-oz0PY,12851
|
|
288
288
|
mlrun/runtimes/databricks_job/databricks_wrapper.py,sha256=oJzym54jD957yzxRXiSYpituSV8JV_XJh90YTKIwapY,8684
|
|
289
289
|
mlrun/runtimes/mpijob/__init__.py,sha256=6sUPQRFwigi4mqjDVZmRE-qgaLw2ILY5NbneVUuMKto,947
|
|
290
290
|
mlrun/runtimes/mpijob/abstract.py,sha256=JGMjcJ4dvpJbctF6psU9UvYyNCutMxTMgBQeTlzpkro,9249
|
|
@@ -315,12 +315,12 @@ mlrun/track/tracker_manager.py,sha256=IYBl99I62IC6VCCmG1yt6JoHNOQXa53C4DURJ2sWgi
|
|
|
315
315
|
mlrun/track/trackers/__init__.py,sha256=9xft8YjJnblwqt8f05htmOt_eDzVBVQN07RfY_SYLCs,569
|
|
316
316
|
mlrun/track/trackers/mlflow_tracker.py,sha256=8JnCelnjqqW2L8wjh4fCvEL8r5wYIOzboz3UZj0CyyY,23547
|
|
317
317
|
mlrun/utils/__init__.py,sha256=g2pbT3loDw0GWELOC_rBq1NojSMCFnWrD-TYcDgAZiI,826
|
|
318
|
-
mlrun/utils/async_http.py,sha256=
|
|
318
|
+
mlrun/utils/async_http.py,sha256=OyVc8YlRZbjPENbto1W7kYurlk83Yc9ci0MlMO321zU,12237
|
|
319
319
|
mlrun/utils/azure_vault.py,sha256=IEFizrDGDbAaoWwDr1WoA88S_EZ0T--vjYtY-i0cvYQ,3450
|
|
320
320
|
mlrun/utils/clones.py,sha256=y3zC9QS7z5mLuvyQ6vFd6sJnikbgtDwrBvieQq0sovY,7359
|
|
321
321
|
mlrun/utils/condition_evaluator.py,sha256=-nGfRmZzivn01rHTroiGY4rqEv8T1irMyhzxEei-sKc,1897
|
|
322
322
|
mlrun/utils/db.py,sha256=blQgkWMfFH9lcN4sgJQcPQgEETz2Dl_zwbVA0SslpFg,2186
|
|
323
|
-
mlrun/utils/helpers.py,sha256=
|
|
323
|
+
mlrun/utils/helpers.py,sha256=nKK_5bvrk5rtmgMUWCNCgv_s7VGWeyuCin6B5XDuq14,73940
|
|
324
324
|
mlrun/utils/http.py,sha256=t6FrXQstZm9xVVjxqIGiLzrwZNCR4CSienSOuVgNIcI,8706
|
|
325
325
|
mlrun/utils/logger.py,sha256=RG0m1rx6gfkJ-2C1r_p41MMpPiaDYqaYM2lYHDlNZEU,14767
|
|
326
326
|
mlrun/utils/regex.py,sha256=jbR7IiOp6OO0mg9Fl_cVZCpWb9fL9nTPONCUxCDNWXg,5201
|
|
@@ -339,11 +339,11 @@ mlrun/utils/notifications/notification/mail.py,sha256=ZyJ3eqd8simxffQmXzqd3bgbAq
|
|
|
339
339
|
mlrun/utils/notifications/notification/slack.py,sha256=eQvmctTh6wIG5xVOesLLV9S1-UUCu5UEQ9JIJOor3ts,7183
|
|
340
340
|
mlrun/utils/notifications/notification/webhook.py,sha256=NeyIMSBojjjTJaUHmPbxMByp34GxYkl1-16NqzU27fU,4943
|
|
341
341
|
mlrun/utils/version/__init__.py,sha256=7kkrB7hEZ3cLXoWj1kPoDwo4MaswsI2JVOBpbKgPAgc,614
|
|
342
|
-
mlrun/utils/version/version.json,sha256=
|
|
342
|
+
mlrun/utils/version/version.json,sha256=fTXvMCOFPnwWkvjbkdV-GKnWlgjwVYT4B-biO9D6dRs,89
|
|
343
343
|
mlrun/utils/version/version.py,sha256=eEW0tqIAkU9Xifxv8Z9_qsYnNhn3YH7NRAfM-pPLt1g,1878
|
|
344
|
-
mlrun-1.8.
|
|
345
|
-
mlrun-1.8.
|
|
346
|
-
mlrun-1.8.
|
|
347
|
-
mlrun-1.8.
|
|
348
|
-
mlrun-1.8.
|
|
349
|
-
mlrun-1.8.
|
|
344
|
+
mlrun-1.8.0rc35.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
345
|
+
mlrun-1.8.0rc35.dist-info/METADATA,sha256=dfxit0GGLGyW9aKew_CiVd7HFbrwkyaHXPruw833wjQ,25986
|
|
346
|
+
mlrun-1.8.0rc35.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
347
|
+
mlrun-1.8.0rc35.dist-info/entry_points.txt,sha256=1Owd16eAclD5pfRCoJpYC2ZJSyGNTtUr0nCELMioMmU,46
|
|
348
|
+
mlrun-1.8.0rc35.dist-info/top_level.txt,sha256=NObLzw3maSF9wVrgSeYBv-fgnHkAJ1kEkh12DLdd5KM,6
|
|
349
|
+
mlrun-1.8.0rc35.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|