hydraflow 0.4.1__py3-none-any.whl → 0.4.3__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- hydraflow/context.py +1 -0
- hydraflow/mlflow.py +1 -0
- hydraflow/param.py +4 -4
- hydraflow/run_collection.py +26 -0
- hydraflow/utils.py +1 -0
- {hydraflow-0.4.1.dist-info → hydraflow-0.4.3.dist-info}/METADATA +1 -1
- hydraflow-0.4.3.dist-info/RECORD +16 -0
- hydraflow-0.4.1.dist-info/RECORD +0 -16
- {hydraflow-0.4.1.dist-info → hydraflow-0.4.3.dist-info}/WHEEL +0 -0
- {hydraflow-0.4.1.dist-info → hydraflow-0.4.3.dist-info}/licenses/LICENSE +0 -0
hydraflow/context.py
CHANGED
@@ -10,6 +10,7 @@ from pathlib import Path
|
|
10
10
|
from typing import TYPE_CHECKING
|
11
11
|
|
12
12
|
import mlflow
|
13
|
+
import mlflow.artifacts
|
13
14
|
from hydra.core.hydra_config import HydraConfig
|
14
15
|
from watchdog.events import FileModifiedEvent, PatternMatchingEventHandler
|
15
16
|
from watchdog.observers import Observer
|
hydraflow/mlflow.py
CHANGED
@@ -21,6 +21,7 @@ from typing import TYPE_CHECKING
|
|
21
21
|
|
22
22
|
import joblib
|
23
23
|
import mlflow
|
24
|
+
import mlflow.artifacts
|
24
25
|
from hydra.core.hydra_config import HydraConfig
|
25
26
|
from mlflow.entities import ViewType
|
26
27
|
from mlflow.tracking.fluent import SEARCH_MAX_RESULTS_PANDAS, _get_experiment_id
|
hydraflow/param.py
CHANGED
@@ -30,7 +30,7 @@ def match(param: str, value: Any) -> bool:
|
|
30
30
|
False otherwise.
|
31
31
|
|
32
32
|
"""
|
33
|
-
if value in [None, True, False]:
|
33
|
+
if any(value is x for x in [None, True, False]):
|
34
34
|
return param == str(value)
|
35
35
|
|
36
36
|
if isinstance(value, list) and (m := _match_list(param, value)) is not None:
|
@@ -39,12 +39,12 @@ def match(param: str, value: Any) -> bool:
|
|
39
39
|
if isinstance(value, tuple) and (m := _match_tuple(param, value)) is not None:
|
40
40
|
return m
|
41
41
|
|
42
|
+
if isinstance(value, int | float):
|
43
|
+
return float(param) == value
|
44
|
+
|
42
45
|
if isinstance(value, str):
|
43
46
|
return param == value
|
44
47
|
|
45
|
-
if isinstance(value, int | float):
|
46
|
-
return type(value)(param) == value
|
47
|
-
|
48
48
|
return param == str(value)
|
49
49
|
|
50
50
|
|
hydraflow/run_collection.py
CHANGED
@@ -98,6 +98,32 @@ class RunCollection:
|
|
98
98
|
def __bool__(self) -> bool:
|
99
99
|
return bool(self._runs)
|
100
100
|
|
101
|
+
def __add__(self, other: RunCollection) -> RunCollection:
|
102
|
+
"""Add another `RunCollection` to this one.
|
103
|
+
|
104
|
+
Args:
|
105
|
+
other (RunCollection): The `RunCollection` to add.
|
106
|
+
|
107
|
+
Returns:
|
108
|
+
A new `RunCollection` instance with the runs from both collections.
|
109
|
+
|
110
|
+
"""
|
111
|
+
return self.__class__(self._runs + other._runs)
|
112
|
+
|
113
|
+
def __sub__(self, other: RunCollection) -> RunCollection:
|
114
|
+
"""Subtract another `RunCollection` from this one.
|
115
|
+
|
116
|
+
Args:
|
117
|
+
other (RunCollection): The `RunCollection` to subtract.
|
118
|
+
|
119
|
+
Returns:
|
120
|
+
A new `RunCollection` instance with the runs that are in this collection
|
121
|
+
but not in the other.
|
122
|
+
|
123
|
+
"""
|
124
|
+
runs = [run for run in self._runs if run not in other._runs] # noqa: SLF001
|
125
|
+
return self.__class__(runs)
|
126
|
+
|
101
127
|
@classmethod
|
102
128
|
def from_list(cls, runs: list[Run]) -> RunCollection:
|
103
129
|
"""Create a `RunCollection` instance from a list of MLflow `Run` instances."""
|
hydraflow/utils.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: hydraflow
|
3
|
-
Version: 0.4.
|
3
|
+
Version: 0.4.3
|
4
4
|
Summary: Hydraflow integrates Hydra and MLflow to manage and track machine learning experiments.
|
5
5
|
Project-URL: Documentation, https://github.com/daizutabi/hydraflow
|
6
6
|
Project-URL: Source, https://github.com/daizutabi/hydraflow
|
@@ -0,0 +1,16 @@
|
|
1
|
+
hydraflow/__init__.py,sha256=VbrHKs2Cg93QJ8K9WHYxkXmzOpb8o9ugiwV-mXDT0JE,908
|
2
|
+
hydraflow/asyncio.py,sha256=-i1C8KAmNDImrjHnk92Csaa1mpjdK8Vp4ZVaQV-l94s,6634
|
3
|
+
hydraflow/config.py,sha256=MNX9da5bPVDcjnpji7Cm9ndK6ura92pt361m4PRh6_E,4326
|
4
|
+
hydraflow/context.py,sha256=a6bHmiY16hZ1wvzVzoa7eGDBFjz0GX0iuZNG0EW0wkE,8764
|
5
|
+
hydraflow/mlflow.py,sha256=kWVK_Xw2hkRnTg33jSP3VW13UZF6_hBGhN52mPmLgvk,8753
|
6
|
+
hydraflow/param.py,sha256=c5sc6NwD6DKwZzVwprXzZD5FSi6qRgSHkc6TXBKQEdg,4502
|
7
|
+
hydraflow/progress.py,sha256=zvKX1HCN8_xDOsgYOEcLLhkhdPdep-U8vHrc0XZ-6SQ,6163
|
8
|
+
hydraflow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
|
+
hydraflow/run_collection.py,sha256=eBNGwtvkRKpOEqcwDUS1tkIFuxY_PVi6SEzzd1PwG5s,26774
|
10
|
+
hydraflow/run_data.py,sha256=qeFX1iRvNAorXA9QQIjzr0o2_82TI44eZKp7llKG8GI,1549
|
11
|
+
hydraflow/run_info.py,sha256=sMXOo20ClaRIommMEzuAbO_OrcXx7M1Yt4FMV7spxz0,998
|
12
|
+
hydraflow/utils.py,sha256=Xq78F2iOkgi9JnCYfX1reQw_Y9K6o8oNYBDEwrf18cI,3552
|
13
|
+
hydraflow-0.4.3.dist-info/METADATA,sha256=iOjFgOUa78jjthbjZzJ7bMLXLMjrrbztqYTDYueTZ2Y,3840
|
14
|
+
hydraflow-0.4.3.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
|
15
|
+
hydraflow-0.4.3.dist-info/licenses/LICENSE,sha256=IGdDrBPqz1O0v_UwCW-NJlbX9Hy9b3uJ11t28y2srmY,1062
|
16
|
+
hydraflow-0.4.3.dist-info/RECORD,,
|
hydraflow-0.4.1.dist-info/RECORD
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
hydraflow/__init__.py,sha256=VbrHKs2Cg93QJ8K9WHYxkXmzOpb8o9ugiwV-mXDT0JE,908
|
2
|
-
hydraflow/asyncio.py,sha256=-i1C8KAmNDImrjHnk92Csaa1mpjdK8Vp4ZVaQV-l94s,6634
|
3
|
-
hydraflow/config.py,sha256=MNX9da5bPVDcjnpji7Cm9ndK6ura92pt361m4PRh6_E,4326
|
4
|
-
hydraflow/context.py,sha256=p1UYHvSCPrp10cBn9TUI9mXMv0h_I0Eou24Wp1rZZ0k,8740
|
5
|
-
hydraflow/mlflow.py,sha256=JELqXFCJ9MsEJaQWT5dyleTFk8BHL7cQwW_gzhkPoIg,8729
|
6
|
-
hydraflow/param.py,sha256=rR-BeXSnclOH8U_54xEcY0HPIFIQxBy9lQmone1u8VY,4492
|
7
|
-
hydraflow/progress.py,sha256=zvKX1HCN8_xDOsgYOEcLLhkhdPdep-U8vHrc0XZ-6SQ,6163
|
8
|
-
hydraflow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
|
-
hydraflow/run_collection.py,sha256=zO7OARn0QOGeK3FQH8GnuuDKCnYFqn1fbsKnOuGCa9M,25938
|
10
|
-
hydraflow/run_data.py,sha256=qeFX1iRvNAorXA9QQIjzr0o2_82TI44eZKp7llKG8GI,1549
|
11
|
-
hydraflow/run_info.py,sha256=sMXOo20ClaRIommMEzuAbO_OrcXx7M1Yt4FMV7spxz0,998
|
12
|
-
hydraflow/utils.py,sha256=gNI0Ln2VBHfMBzNB9SNxJfjCLf14irYt0EBeeMXMeyk,3528
|
13
|
-
hydraflow-0.4.1.dist-info/METADATA,sha256=vkcwItX5TpHozDwACeA1683B93u1NOVhU8y5IO4eraM,3840
|
14
|
-
hydraflow-0.4.1.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
|
15
|
-
hydraflow-0.4.1.dist-info/licenses/LICENSE,sha256=IGdDrBPqz1O0v_UwCW-NJlbX9Hy9b3uJ11t28y2srmY,1062
|
16
|
-
hydraflow-0.4.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|