Dataset Version Management

We have already seen previously in the documentation how to create a Dataset Version from a selection of Data in the Datalake.

But for many different reasons, you might be willing to modify a DatasetVersion. In order to ensure traceability and avoid losing the history of your work, it is highly recommended to leverage the Picsellia Dataset versioning system, detailed here, by forking a new DatasetVersion from the to-be-modified one rather than editing it in place.

Picsellia embeds features that let you fork an entire DatasetVersion, copy a subset of its Asset to another DatasetVersion, lock it against further modification, or transfer it to another Dataset.

1. Fork a DatasetVersion

First, access the DatasetVersion you want to fork.

Once in it, you can fork the entire DatasetVersion or only a subset of it: leverage the Asset selection features to select the Asset that need to be embedded in the new DatasetVersion.

Once the Asset are selected, click on Dataset > Create New Dataset Version.

Select Assets and create a new DatasetVersion

A modal opens to personalize the fork. You can give a name and description to the new DatasetVersion, and check any combination of the following options:

  • Copy labels: automatically configures the new DatasetVersion with the same Labelmap as the initial one — including each Label's LabelGroup membership and Attribute configuration, not just their name.

  • Copy labels and annotations: does the above, and also copies the Annotation (including Attribute values) of the selected Asset onto their copy in the new DatasetVersion.

  • Copy tags: copies the AssetTag of the selected Asset and attaches them to their copy in the new DatasetVersion.

    DatasetVersion fork modal

To finalize the fork, click on Create.

📈

Once the fork is launched, its completion can be tracked from the Jobs panel.

2. Copy Asset to an existing DatasetVersion

If you want to copy Asset from a DatasetVersion to another, already existing one of the same Dataset — rather than forking a brand new DatasetVersion — you can leverage the Copy to an existing dataset version button.

Select the Asset to copy, and click on Dataset > Copy to an existing dataset version.

Copy selected Asset to another DatasetVersion

A modal opens, letting you pick the target DatasetVersion among the other versions of the current Dataset (filterable by Shape type, or by name).

Configuration of copying Assets to another DatasetVersion

Unlike forking, this does not create a new DatasetVersion: the selected Asset are added to the target DatasetVersion, using its existing Labelmap. You can additionally check:

  • Copy annotations: also copies the Annotation of the selected Asset onto their copy in the target DatasetVersion.
  • Copy tags: also copies the AssetTag of the selected Asset and attaches them to their copy in the target DatasetVersion.

Finally, click on Copy to perform the copy.

📘

Copying into a DatasetVersion that is not configured yet

If the target DatasetVersion has no Version Type set, it is configured with the Version Type of the source. If it has no Label at all, the Label of the source are copied over along with the Asset.

❗️

If you check Copy annotations and the target DatasetVersion already has its own Labelmap, the copy will fail for any Asset whose Annotation uses a Label that doesn't exist in it. Make sure the target's Labelmap already contains every Label you rely on before copying.

3. Lock a DatasetVersion

Rather than forking a new DatasetVersion to preserve the current one untouched, you can instead lock the DatasetVersion itself, directly from its Settings > General tab, in the Danger zone.

Lock a DatasetVersion

Clicking on Lock immediately (no confirmation step) makes the DatasetVersion read-only: its Asset, Annotation, Label, and general information can no longer be edited, added, or deleted, and a Locked badge is displayed next to its name across the platform (Assets overview, DatasetVersions overview…).

Locked badge

For Computer Vision teams, this is what turns the versioning system's reproducibility promise — a Training or Evaluation always points to a specific, immutable DatasetVersion — into an enforced guarantee rather than a convention relying on discipline: once a DatasetVersion has been used to produce a Model, locking it protects against anyone (including yourself) accidentally editing it afterward, so you can always trust that it still matches exactly what was used.

A locked DatasetVersion can be unlocked at any time from the same Danger zone by clicking on Unlock, restoring the ability to edit it.

📘

A locked DatasetVersion can still be forked

Locking only prevents modifying the DatasetVersion in place. You can still fork it or copy its Asset elsewhere, as described above, to keep working from a fresh, editable DatasetVersion.

4. Transfer a DatasetVersion

A DatasetVersion can be moved from its current Dataset to another one of the same Organization. This is useful, for instance, to reorganize DatasetVersion that were created under the wrong Dataset, or to consolidate DatasetVersion coming from different Dataset without having to fork or re-upload any Asset.

From the DatasetVersion Settings > General tab, in the Danger zone, click on Transfer.

Transfer DatasetVersion under another Dataset

A modal opens, letting you:

  • Search and select the destination Dataset among the ones you have the rights to create a DatasetVersion on.
  • Choose the Worker settings to apply to the members of the current Dataset who don't have access to the destination one: either Remove users without access (they lose access to this DatasetVersion), or Add users (they are added as Worker of the destination Dataset, keeping their access).

Select the destination Dataset

Click on Transfer to finalize the move. The DatasetVersion then appears under its new Dataset, keeping all its Asset, Annotation, and Label.

🚧

Transferring a DatasetVersion changes its parent Dataset

Access rights are managed at the Dataset level, as detailed here. Once transferred, the DatasetVersion follows the access rules of its new Dataset.


Did this page help you?