Each run has a unique string identifier within your workspace composed of a project key and a high water counter. For example, 3rd run in project Sandbox with a project key 'SAND' will have an identifier 'SAND-3'. You can access the id of your run programmatically:
import neptune.new as neptunerun = neptune.init(project='my_workspace/sandbox')run_id = run['sys/id'].fetch()
The runs identifier can be later used if want to resume this run or connect to it from multiple processes.
Runs editable name. Can be set either during initialization through the
name parameter of .init() or later updated directly from the code:
import neptune.new as neptunerun = neptune.init(project='my_workspace/sandbox')run['sys/name'] = 'Testing new approach'
Runs name does not need to be unique and capture the essence of the run in a one-sentence summary.
Runs editable description. Can be set either during initialization through the
description parameter of .init() or later updated directly from the code:
import neptune.new as neptunerun = neptune.init(project='my_workspace/sandbox')run['sys/description'] = 'Detailed description of the run'
You can also edit the description through Neptune UI. From run details view or directly in runs table, if the description is added as a column. Description could be useful as a longer description of the run or as free-form notes thanks to its editability from multiple places.
Total running time of the run in seconds. This number will take into accounts all resumes of the run etc.
Name of the user that created the run. Neptune's username of the user is used.
The creation date of the run. The date includes time and information about the time zone.
The date of the last modification of the run. The date includes time and information about the time zone.
The run can be in two states - Inactive or Active. Active means that at least one process is connected to the run. This may be a process logging training metrics or monitoring performance or this may be a process that's fetching metadata to perform further analysis. Once there has been no activity in the last 20 seconds (typically after the script ended or you invoked
.stop()) the run automatically transitions to an Inactive state.
As any run can be paused and resumed multiple times Neptune does not know when it is a success. An Inactive state can mean that the run did not start, the training/monitoring was paused or it did in fact finish training with a success. If you want to more efficiently filter you runs you can set a custom status for each run e.g.
run['info/state'] = 'Success' or
run['info/state'] = 'Queued' so that it matches your workflow.
The Failed field represents whether the run failed. You can set it manually to mark a run as failed (or reset it to
False in case of resuming a failed run).
In addition, Neptune monitors your run and if there is a crash it will automatically set Failed status to
True. You can override this behavior by setting
fail_on_exception parameter in
False. In both cases, the traceback is captured and appended to
'monitoring/traceback'. If you provided a custom monitoring namespace in
.init() the path will be
If you performed a Remote Abort the Failed status will also be set to