agentleFS
open-edge-platformopen-edge-platform/training_extensions/skills/getitune/getitune-preparing-datasets/SKILL.md

getitune-preparing-datasets

Skill1.4k starsChanged 17 days agoApache-2.0View on GitHub

Prepare and point datasets at the getitune library (the Geti training library) for training, testing, and prediction. Use when a user asks which dataset formats are supported, how the `data=` argument of `create_engine(...)` / `--data_root` works, why format auto-detection fails, how to lay out COCO/YOLO/Pascal VOC/Datumaro-native data, how to use a zip archive, or how to pass an Ultralytics YOLO `data.yaml`. Covers Datumaro-based auto-detection and per-task data expectations.

2 other projects use a version of this.

Adopted by

Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data

Week of Sep 13: 0 new projectsWeek of Sep 20: 0 new projectsWeek of Sep 27: 0 new projectsWeek of Oct 4: 0 new projectsWeek of Oct 11: 0 new projectsWeek of Oct 18: 0 new projectsWeek of Oct 25: 0 new projectsWeek of Nov 1: 0 new projects
Sep 2026Oct 2026Nov 2026
New projects taking a version of this file each week, over the 8 weeks our latest run read: only 0 in all, so this is a hint, not a trend.

Most recently taken up by

Who's talking about open-edge-platform/training_extensions

The biggest 5 of 50 mentions linking to the repository that our crawl found. Each line is their own headline.

See all 50

Talked about on GitHub (50 times).

On GitHub · 50

45 more on GitHub

The file

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 0 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    When you pass a filesystem path to data= (Python API) or --data_root (CLI), getitune uses Datumaro to

    line 8
  2. Very specific:

    Run everything from libraries/getitune/.

    line 13
  3. Very specific:

    If you train an Ultralytics YOLO model, pass the Ultralytics data.yaml file directly as data= (or --data_root).

    line 56

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Preparing datasets for getitune

When you pass a filesystem path to data= (Python API) or --data_root (CLI), getitune uses Datumaro to auto-detect the dataset format — you point at the dataset root and the same call works regardless of the underlying format.

Run everything from libraries/getitune/.

Supported formats and how they are detected

FormatDetected by
COCOan annotations/ directory with COCO JSON files
YOLOa data.yaml file (Ultralytics layout)
Pascal VOCJPEGImages/, Annotations/, ImageSets/ directories
Datumaro (native)metadata.json + data.parquet at the root
  • Zip archives are accepted too; Datumaro extracts them on import.
  • Point data= at the dataset root — the directory that directly contains the marker files/folders above, not a parent of it.

Workflow

from getitune.engine import create_engine

# Same call for any supported format — just point at the root
engine = create_engine(
    model="src/getitune/recipe/detection/yolox_s.yaml",
    data="/path/to/dataset_root",
)
engine.train()
  1. Lay the dataset out as one supported format and confirm the marker files/folders sit at the root you will pass.
    • Done when: the root matches exactly one row in the table above.
  2. Match the dataset to the task. A detection dataset needs bounding-box annotations; segmentation needs masks; classification needs per-image labels. Task and labels must agree with the model you choose in the getitune-training-a-model skill.
    • Done when: create_engine(...) builds a datamodule without a feature/label mismatch error.
  3. Smoke-test loading with a tiny run (engine.train(max_epochs=1)) before a full run.
    • Done when: one train + one validation batch load without shape errors.

Ultralytics YOLO datasets

If you train an Ultralytics YOLO model, pass the Ultralytics data.yaml file directly as data= (or --data_root). Ultralytics support requires an install from source with the ultralytics extra (it is not in the PyPI package).

Debugging auto-detection

  • Wrong/failed format detection: the root probably has extra nesting or a missing marker. Verify the exact marker files (annotations/ for COCO, data.yaml for YOLO, the three VOC dirs, metadata.json + data.parquet for native) are directly under the path you pass.
  • Feature/label mismatch during training: the dataset's annotation type does not match the task — cross-check with getitune-training-a-model and pass an explicit task=.
  • Backend dataset conversion: the Geti application converts Geti-internal datasets to/from COCO/VOC via application/backend/app/datumaro_converter/; that is a separate, app-side path from library data= usage.

Related skills

  • getitune-training-a-model — consumes the prepared dataset via data=.
  • getitune-discovering-models — pick a model that matches the dataset's task.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.