Run object
The Run object comes with three sets of methods: CRUD methods, generic run methods and (eventual) kind specific methods.
CRUD methods
Crud methods are used to interact with the entity object in the backend or locally.
save(): Save or update the entity into the backend.export(): Export the entity locally as yaml file.refresh(): Refresh (read) the entity from the backend.
save
Save or update the entity into the backend.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
update
|
bool
|
Flag to indicate update. |
False
|
Returns:
| Type | Description |
|---|---|
ContextEntity
|
Entity saved. |
export
Export object as a YAML file in the context folder.
Returns:
| Type | Description |
|---|---|
str
|
Exported filepath. |
refresh
Refresh object from backend.
Returns:
| Type | Description |
|---|---|
ContextEntity
|
Entity refreshed. |
Run methods
There are several generic run methods on the Run object.
run: Start the run.wait: Wait for the run to finish.stop: Stop the run.resume: Resume the run.logs: Get the logs for the run.log_metric: Log a metric in the run.log_metrics: Log multiple metrics in the run.
run
Run run.
Returns:
| Type | Description |
|---|---|
Run
|
Run object. |
wait
Wait for run to finish.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
log_info
|
bool
|
If True, log information. |
True
|
Returns:
| Type | Description |
|---|---|
Run
|
Run object. |
stop
Stop run.
resume
Resume run.
logs
Get run logs. If no logs are present, an empty list is returned. In case of local execution, logs are printed to console.
Returns:
| Type | Description |
|---|---|
list[Log]
|
List of run logs. |
log_metric
Log metric into entity status. A metric is named by a key and value (single number or list of numbers). The metric by default is put in a list or appended to an existing list. If single_value is True, the value will be a single number.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
str
|
Key of the metric. |
required |
value
|
MetricType
|
Value of the metric. |
required |
overwrite
|
bool
|
If True, overwrite existing metric. |
False
|
single_value
|
bool
|
If True, value is a single value. |
False
|
Examples:
Log a new value in a list
Append a new value in a list
Log a list of values and append them to existing metric:
Log a single value (not represented as list):
Log a list of values and overwrite existing metric:
log_metrics
Log metrics into entity status. If a metric is a list, it will be logged as a list. Otherwise, it will be logged as a single value.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
metrics
|
dict[str, MetricType]
|
Dict of metrics to log. |
required |
overwrite
|
bool
|
If True, overwrite existing metrics. |
False
|
Examples:
Log multiple metrics at once
Log metrics with lists and single values
Append to existing metrics (default behavior)
>>> entity.log_metrics(
... {
... "loss": 0.001,
... "accuracy": 0.96,
... }
... ) # Appends to existing
Overwrite existing metrics
>>> entity.log_metrics(
... {
... "loss": 0.0005,
... "accuracy": 0.98,
... },
... overwrite=True,
... )
See also
log_metric
Kind specific methods
Kind specific methods are used to express potential behaviors of different object kinds. See the kinds section for more information.