Skip to content

Commit 6d889e1

Browse files
authored
Merge pull request #44 from neptune-ai/fixes
Fixes
2 parents 36ecba0 + 74ca05d commit 6d889e1

File tree

5 files changed

+16
-3
lines changed

5 files changed

+16
-3
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
### Changes
44
- Updated MLflow exporter to work with the current neptune.ai API ([#40](https://github.com/neptune-ai/neptune-mlflow/pull/40))
5+
- Misc Fixes: ([#44](https://github.com/neptune-ai/neptune-mlflow/pull/44))
6+
- Stop capturing hardware metrics
7+
- Map MLflow `run_name` to `sys/name` in Neptune `Run`
58

69
### Fixes
710
- Fix to support Python 3.7 and 3.8 ([#43](https://github.com/neptune-ai/neptune-mlflow/pull/43))

src/neptune_mlflow_exporter/impl/components/exporter.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ def export_run_info(neptune_run: NeptuneRun, mlflow_run: MlflowRun) -> None:
5353
info["end_time"] = datetime.fromtimestamp(mlflow_run.info.end_time / 1e3)
5454

5555
neptune_run["run_info"] = info
56+
neptune_run["sys/name"] = info["run_name"]
5657

5758
def export_run_data(self, neptune_run: NeptuneRun, mlflow_run: MlflowRun) -> None:
5859
data_dict = mlflow_run.data.to_dictionary()

src/neptune_mlflow_exporter/impl/components/fetcher.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@
1616

1717
__all__ = ["Fetcher"]
1818

19-
from typing import MutableMapping
2019
from dataclasses import dataclass
2120
from typing import (
2221
List,
22+
MutableMapping,
2323
Set,
2424
)
2525

src/neptune_mlflow_exporter/impl/orchestrator.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,10 @@ def run(self) -> None:
4848
click.echo(f"Loading mlflow_run '{mlflow_run.info.run_name}'")
4949

5050
with NeptuneRun(
51-
project=self.config.project_name, api_token=self.config.api_token, custom_run_id=mlflow_run.info.run_id
51+
project=self.config.project_name,
52+
api_token=self.config.api_token,
53+
custom_run_id=mlflow_run.info.run_id,
54+
capture_hardware_metrics=False,
5255
) as neptune_run:
5356
try:
5457
experiment = fetched_data.mlflow_experiments[mlflow_run.info.experiment_id]

tests/e2e/test_neptune_mlflow.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,9 @@ def test_e2e(dataset, model, neptune_exporter_e2e):
5858
neptune_exporter_e2e.run()
5959

6060
# check logged project metadata
61-
experiment = mlflow.get_experiment_by_name("E2E neptune experiment")
61+
experiment = mlflow.get_experiment_by_name(MLFLOW_EXPERIMENT_NAME)
62+
mlflow_runs = mlflow.search_runs(experiment_names=[MLFLOW_EXPERIMENT_NAME])
63+
run_name = mlflow_runs["tags.mlflow.runName"][0]
6264

6365
# check logged run metadata
6466
neptune_run = neptune.init_run(custom_run_id=run_id)
@@ -72,6 +74,10 @@ def test_e2e(dataset, model, neptune_exporter_e2e):
7274
# run info
7375
assert neptune_run["run_info/lifecycle_stage"].fetch() == "active"
7476
assert neptune_run.exists("run_info/status")
77+
assert neptune_run["run_info/run_name"].fetch() == run_name
78+
# Currently, client overwrites `sys/name` when run is re-opened
79+
# with `custom_run_id`.
80+
# assert neptune_run["sys/name"].fetch() == run_name
7581

7682
# run data
7783
assert set(MLFLOW_RUN_TAGS.items()).issubset(set(neptune_run["run_data/tags"].fetch().items()))

0 commit comments

Comments
 (0)