Datensatzstruktur
Jedes Release verwendet dieselbe Verzeichnisstruktur und dieselben Dateinamen — ein Loader, der für einen Datensatz geschrieben wurde, funktioniert auch für den nächsten.
Verzeichnisstruktur
electrical-assembly-1.3.0/
├── manifest.json # dataset, version, counts, file map
├── LICENCE.md # terms this release is delivered under
├── CHANGELOG.md # what changed since 1.2.0
├── checksums.txt # sha256 per file
├── episodes/
│ ├── episodes.parquet # one row per episode
│ └── annotations.parquet # one row per subtask span
├── video/
│ └── ep_000123/
│ ├── head.mp4
│ └── chest.mp4
├── calibration/
│ └── ep_000123.json # intrinsics and mount geometry
├── provenance/
│ └── provenance.parquet # one row per episode
└── splits/
├── train.txt
└── eval.txtmanifest.json
Das Manifest ist der Einstiegspunkt. Lesen Sie es zuerst — es benennt die Schemaversion, die Ihr Loader unterstützen muss, und verweist für jede logische Tabelle auf einen Pfad.
{
"dataset_id": "electrical-assembly",
"version": "1.3.0",
"schema_version": "2.1",
"released_at": "2026-05-14",
"episode_count": 1420,
"accepted_hours": 56.4,
"environments": ["workshop"],
"sensors": ["gopro-head", "chest-cam"],
"licence": {"tier": "commercial", "file": "LICENCE.md"},
"files": {
"episodes": "episodes/episodes.parquet",
"annotations": "episodes/annotations.parquet",
"provenance": "provenance/provenance.parquet",
"splits": {"train": "splits/train.txt", "eval": "splits/eval.txt"}
},
"checksums": {"algorithm": "sha256", "file": "checksums.txt"}
}episodes.parquet
Eine Zeile je Episode. Eine Episode ist ein vollständiger Versuch der spezifizierten Aufgabe, mit expliziten Start- und Endbedingungen.
| Begriff | Bedeutung |
|---|---|
| episode_id | stabile Zeichenkette, eindeutig innerhalb des Datensatzes. |
| task | Aufgabenkennung aus dem Aufgabenvokabular des Datensatzes. |
| environment | workshop, construction-site, residential oder industrial. |
| duration_s | Episodenlänge in Sekunden. |
| outcome | success, failure oder recovery. |
| contributor | pseudonyme Kennung, über Episoden hinweg stabil. |
| streams | für diese Episode verfügbare Sensorströme. |
annotations.parquet
Eine Zeile je Teilaufgaben-Abschnitt, über episode_id mit den Episoden verknüpft. Abschnitte sind innerhalb einer Episode zusammenhängend und überschneidungsfrei.
| Begriff | Bedeutung |
|---|---|
| episode_id, span_index | Verknüpfungsschlüssel und Reihenfolge innerhalb der Episode. |
| label | Teilaufgabenlabel aus dem veröffentlichten Vokabular. |
| start_s, end_s | frame-genaue Grenzen in Sekunden. |
| tool, object | referenzierte Entitäten, können null sein. |
| result | Ergebnis eines verify-Abschnitts, kann null sein. |
Splits
Die vorgeschlagenen Trainings- und Evaluierungssplits trennen Mitwirkende und Einsatzorte, damit die Evaluierung keine auswendig gelernten Szenen misst. Sie sind ein Vorschlag, keine Vorgabe — die Episodenliste können Sie beliebig neu aufteilen.