Skip to navigation

Set asset tag

Overview

Writes one key/value tag onto every asset in a dataset. Asset tags are read all over the platform but, outside the Supervisely integration, nothing writes them — this node fills that gap so a tag can be produced inside an ordinary OvalBee flow.

Three nodes consume what it writes:

  • Evaluate object detection splits its report into a section per tag value, so one evaluation shows the metrics of each slice side by side.
  • Filter images matches images on a tag.
  • Embedding Map clusters inside each tag value and reports the rare subtypes of each group.

The usual shape is marking where data came from — an evaluation set built up from several deliveries, tagged by delivery, so a later report says which batch the model does worst on.

Random sample Set asset tag Copy Predict DEIM Evaluate object detection

How it works

1

Lists every asset of the dataset and skips the ones already carrying this exact key and value, so a re-run costs almost nothing.

2

Merges the tag into each remaining asset’s existing tags and writes it back, one asset at a time.

3

Returns the same dataset, so the next step can chain off this one.

Inputs

Dataset
datasetRequired

Dataset whose assets are tagged. Key: DATASET.

Tag name
stringRequired

Tag key, for example test_batch. An existing value under this key is overwritten. Key: TAG_NAME.

Tag value
stringRequired

Value written under the tag name, for example core or batch-1. Key: TAG_VALUE.

Outputs

Dataset
dataset

The same dataset, so later steps can chain off this one. Key: DATASET.

Tagged assets
string

How many assets were written on this run. Assets that already carried the value are skipped. Shown on the node as a badge. Key: TAGGED_ASSETS.

JSON config

Machine-readable node interface for automation and advanced usage.

{
"name": "Set asset tag",
"description": "Write one image-level tag onto every asset of a dataset. Asset tags are what Evaluate object detection splits its report by, what Filter images matches on, and what Embedding Map groups by - but nothing outside the Supervisely integration writes them.",
"category": "Assets",
"namespace": "ovalbee",
"templateKey": "asset_ops/set_asset_tag",
"version": "v1",
"inputs": [
{
"key": "DATASET",
"label": "Dataset",
"type": "dataset",
"description": "Dataset whose assets are tagged.",
"required": true,
"default": null,
"visibleWhen": null
},
{
"key": "TAG_NAME",
"label": "Tag name",
"type": "string",
"description": "Tag key, for example test_batch. An existing value under this key is overwritten.",
"required": true,
"default": null,
"visibleWhen": null
},
{
"key": "TAG_VALUE",
"label": "Tag value",
"type": "string",
"description": "Value written under the tag name, for example core or batch-1.",
"required": true,
"default": null,
"visibleWhen": null
}
],
"outputs": [
{
"key": "DATASET",
"label": "Dataset",
"type": "dataset",
"description": "The same dataset, so later steps can chain off this one.",
"artifact": false,
"badge": false,
"badgeOpens": null,
"hidden": false
},
{
"key": "TAGGED_ASSETS",
"label": "Tagged assets",
"type": "string",
"description": "How many assets were written on this run. Assets that already carried the value are skipped.",
"artifact": false,
"badge": true,
"badgeOpens": null,
"hidden": false
}
]
}