Skip to content
Back to skills

Data Structures And Io

ASecurity

"Design, validate, and troubleshoot MMEngine datasets, transforms,

  • 247 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
devopsdebuggingapibackend

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill data-structures-and-io --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Data Structures And Io?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Data Structures And Io
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-data-structures-and-io/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-data-structures-and-io)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: data-structures-and-io
description: "Design, validate, and troubleshoot MMEngine datasets, transforms,
  samplers, collate functions, data elements, and backend-agnostic file IO."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# MMEngine Data Structures and IO

Use this sub-skill when work mentions `BaseDataset`, `load_data_list`, `full_init`, `Compose`, data pipelines, `DefaultSampler`, `pseudo_collate`, `default_collate`, `BaseDataElement`, `InstanceData`, `PixelData`, `LabelData`, `mmengine.fileio`, `backend_args`, or legacy `FileClient` behavior.

## Read Order

1. `references/dataset-and-transform-workflows.md` — Build and validate dataset annotations, `BaseDataset` subclasses, transform pipelines, samplers, and collate choices.
2. `references/data-elements-and-fileio.md` — Use data element containers and backend-agnostic file IO helpers safely.
3. `references/troubleshooting.md` — Diagnose common dataset, transform, collate, data element, and file backend failures.
4. `scripts/data_contract_smoke.py` — Run a tiny local smoke check for a `BaseDataset` subclass, `InstanceData` constraints, and JSON/text/bytes file IO.

## Scope Boundaries

- Owns `mmengine.dataset`, `mmengine.structures`, `mmengine.fileio`, dataset metadata, lazy/full initialization, serialization, samplers/collation, and backend-agnostic path helpers.
- Route runner config placement for `train_dataloader`, `val_dataloader`, and `test_dataloader` to `../runner-and-training/SKILL.md`.
- Route `BaseModel`, data preprocessor, evaluator, metric, and inference expectations for samples to `../models-metrics-and-inference/SKILL.md`.
- Route registry and config syntax fundamentals for registering datasets/transforms/functions to `../configuration-and-registry/SKILL.md`.

## Fast Workflow

1. Define the sample contract first: raw annotation fields, `metainfo`, transformed data dict keys, data sample objects, and collated batch shape/type.
2. Validate the dataset independently with `len(dataset)`, `dataset.metainfo`, `dataset.get_data_info(0)`, and `dataset[0]` before wiring it into a runner.
3. Choose `pseudo_collate` when downstream code expects lists of per-sample tensors/data elements; choose `default_collate` only when stackable tensor/number/array shapes are consistent.
4. Use `backend_args` and unified `mmengine.fileio` helpers for IO; treat `FileClient` and `file_client_args` as legacy compatibility only.
5. Use the bundled smoke script as a package/API sanity check before debugging larger project-specific data code.

Files in this skill

  • SKILL.md2.5 KB
  • references/data-elements-and-fileio.md7.7 KB
  • references/dataset-and-transform-workflows.md7.8 KB
  • references/troubleshooting.md8.3 KB
  • scripts/data_contract_smoke.py5.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.