hydraflow 0.4.5__py3-none-any.whl → 0.4.6__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.
- hydraflow/__init__.py +2 -0
- hydraflow/utils.py +16 -6
- {hydraflow-0.4.5.dist-info → hydraflow-0.4.6.dist-info}/METADATA +3 -2
- {hydraflow-0.4.5.dist-info → hydraflow-0.4.6.dist-info}/RECORD +6 -6
- {hydraflow-0.4.5.dist-info → hydraflow-0.4.6.dist-info}/WHEEL +1 -1
- {hydraflow-0.4.5.dist-info → hydraflow-0.4.6.dist-info}/licenses/LICENSE +0 -0
hydraflow/__init__.py
CHANGED
@@ -11,6 +11,7 @@ from .utils import (
|
|
11
11
|
get_overrides,
|
12
12
|
load_config,
|
13
13
|
load_overrides,
|
14
|
+
remove_run,
|
14
15
|
)
|
15
16
|
|
16
17
|
__all__ = [
|
@@ -26,6 +27,7 @@ __all__ = [
|
|
26
27
|
"log_run",
|
27
28
|
"multi_tasks_progress",
|
28
29
|
"parallel_progress",
|
30
|
+
"remove_run",
|
29
31
|
"search_runs",
|
30
32
|
"select_config",
|
31
33
|
"select_overrides",
|
hydraflow/utils.py
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
from __future__ import annotations
|
4
4
|
|
5
|
+
import shutil
|
5
6
|
from pathlib import Path
|
6
7
|
from typing import TYPE_CHECKING
|
7
8
|
|
@@ -9,11 +10,10 @@ import mlflow
|
|
9
10
|
import mlflow.artifacts
|
10
11
|
from hydra.core.hydra_config import HydraConfig
|
11
12
|
from mlflow.entities import Run
|
12
|
-
from mlflow.tracking import artifact_utils
|
13
13
|
from omegaconf import DictConfig, OmegaConf
|
14
14
|
|
15
15
|
if TYPE_CHECKING:
|
16
|
-
from
|
16
|
+
from collections.abc import Iterable
|
17
17
|
|
18
18
|
|
19
19
|
def get_artifact_dir(run: Run | None = None) -> Path:
|
@@ -28,10 +28,10 @@ def get_artifact_dir(run: Run | None = None) -> Path:
|
|
28
28
|
The local path to the directory where the artifacts are downloaded.
|
29
29
|
|
30
30
|
"""
|
31
|
-
if run is None
|
32
|
-
|
33
|
-
|
34
|
-
|
31
|
+
uri = mlflow.get_artifact_uri() if run is None else run.info.artifact_uri
|
32
|
+
|
33
|
+
if not (isinstance(uri, str) and uri.startswith("file://")):
|
34
|
+
raise NotImplementedError
|
35
35
|
|
36
36
|
return Path(mlflow.artifacts.download_artifacts(uri))
|
37
37
|
|
@@ -112,3 +112,13 @@ def load_overrides(run: Run) -> list[str]:
|
|
112
112
|
"""
|
113
113
|
path = get_artifact_dir(run) / ".hydra/overrides.yaml"
|
114
114
|
return [str(x) for x in OmegaConf.load(path)]
|
115
|
+
|
116
|
+
|
117
|
+
def remove_run(run: Run | Iterable[Run]) -> None:
|
118
|
+
"""Remove the given run from the MLflow tracking server."""
|
119
|
+
if not isinstance(run, Run):
|
120
|
+
for r in run:
|
121
|
+
remove_run(r)
|
122
|
+
return
|
123
|
+
|
124
|
+
shutil.rmtree(get_artifact_dir(run).parent)
|
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.4
|
2
2
|
Name: hydraflow
|
3
|
-
Version: 0.4.
|
3
|
+
Version: 0.4.6
|
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
|
@@ -27,6 +27,7 @@ License: MIT License
|
|
27
27
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
28
28
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
29
29
|
SOFTWARE.
|
30
|
+
License-File: LICENSE
|
30
31
|
Classifier: Development Status :: 4 - Beta
|
31
32
|
Classifier: License :: OSI Approved :: MIT License
|
32
33
|
Classifier: Programming Language :: Python
|
@@ -1,4 +1,4 @@
|
|
1
|
-
hydraflow/__init__.py,sha256=
|
1
|
+
hydraflow/__init__.py,sha256=4wUu8HR__oM0lTUiIqxO7iP6ubLSfKI6y7_P9_RuYtA,942
|
2
2
|
hydraflow/asyncio.py,sha256=-i1C8KAmNDImrjHnk92Csaa1mpjdK8Vp4ZVaQV-l94s,6634
|
3
3
|
hydraflow/config.py,sha256=MNX9da5bPVDcjnpji7Cm9ndK6ura92pt361m4PRh6_E,4326
|
4
4
|
hydraflow/context.py,sha256=kz5SvjvjN7Z_2WjHYpO9SWwDfsPT_UeZcsm8pDymhjs,8836
|
@@ -9,8 +9,8 @@ hydraflow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
9
|
hydraflow/run_collection.py,sha256=eBNGwtvkRKpOEqcwDUS1tkIFuxY_PVi6SEzzd1PwG5s,26774
|
10
10
|
hydraflow/run_data.py,sha256=qeFX1iRvNAorXA9QQIjzr0o2_82TI44eZKp7llKG8GI,1549
|
11
11
|
hydraflow/run_info.py,sha256=sMXOo20ClaRIommMEzuAbO_OrcXx7M1Yt4FMV7spxz0,998
|
12
|
-
hydraflow/utils.py,sha256=
|
13
|
-
hydraflow-0.4.
|
14
|
-
hydraflow-0.4.
|
15
|
-
hydraflow-0.4.
|
16
|
-
hydraflow-0.4.
|
12
|
+
hydraflow/utils.py,sha256=jbNrbtIfMqxE4LrdTNd1g7sF68XgAvydGqW5iAZ6n-c,3834
|
13
|
+
hydraflow-0.4.6.dist-info/METADATA,sha256=s3eXM1oDcJVWj930b3c_9iKATXLoYZMMDmA9THkCdu8,5149
|
14
|
+
hydraflow-0.4.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
15
|
+
hydraflow-0.4.6.dist-info/licenses/LICENSE,sha256=IGdDrBPqz1O0v_UwCW-NJlbX9Hy9b3uJ11t28y2srmY,1062
|
16
|
+
hydraflow-0.4.6.dist-info/RECORD,,
|
File without changes
|