NVIDIA TAO DAFT: Dataset Annotation Format Toolkit
A toolkit for vision-language dataset formats — JSON-schema specs plus CLI/Python tools to validate and convert between them.
Overview
VLM dataset workflows have a contract-drift problem. Annotation pipelines emit data in one shape, training pipelines expect another, and the glue between them is ad-hoc adapter code that silently goes stale. Field renames, new optional values, schema-vs-data mismatches — these surface as training-time bugs rather than at the producer / consumer boundary where they belong.
What DAFT is:
- Schemas for vision-language dataset shapes — both annotation (what producers emit) and training (what consumers expect).
- A CLI + validator so anyone holding a dataset can check it against its schema before handing it off.
- Converters between annotation and training shapes — explicit, deterministic, with optional flags for media handling.
- A reference Python adapter that plugs one of the training shapes into cosmos-rl SFT.
New formats, validators, converters, and adapters are welcome; the same registration pattern that wires the built-ins works for your own extensions.
Value, by audience:
| For… | DAFT gives you… |
|---|---|
| Producers (annotation pipelines, human annotators) | Target one of these schemas and your output is consumable by any downstream tool that speaks the same schema. |
| Consumers (training pipelines, researchers) | Validate your input dataset before launching a training run. If it passes, your loader contract holds. |
Quick start
# Install (direct from git)
pip install git+https://gitlab-master.nvidia.com/nvidia-tao-toolkit/experimental/nvidia-tao-daft.git
# Install (from wheel)
pip install nvidia-tao-daft
# Verify
tao-daft --help
For runnable examples, see examples/ and the
CLI reference.
Documentation
| Area | What's there | Link |
|---|---|---|
| Formats | Format registry, per-format specs (metropolis-v3.0, cosmos-reason-v1.0, tao-vl-reason-v1.0), versioning policy | formats |
| CLI | tao-daft validate / convert reference |
cli |
| Validators | Validation engine | validators |
| Converters | Conversion pairs and pair-specific options | converters |
| Datasets | Training-loop adapters (cosmos-rl) | datasets |
| Examples | Working datasets per format | examples |
Repository structure
nvidia-tao-daft/
├── examples/datasets/ # Working datasets, one subdir per format
│
├── tests/ # Test suite (schemas, validators, converters, CLI, doc consistency)
│
└── src/nvidia_tao_daft/
├── cli/ # tao-daft entry point (validate, convert)
├── formats/ # Format specifications + JSON schemas
├── validators/ # Validation engine
├── converters/ # Format converters (pairs/)
└── datasets/ # Training-loop adapters
Requirements
Python 3.10 – 3.13. Runtime dependencies: jsonschema, pydantic.
Dev dependencies: see pyproject.toml.
Contributing
See CONTRIBUTING.md for the DCO sign-off requirement.
License
Metadata
Release files for nvidia-tao-daft 7.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| nvidia_tao_daft-7.0.0-py3-none-any.whl | Python 3 | none | any | Details for nvidia_tao_daft-7.0.0-py3-none-any.whl |
Release files / nvidia_tao_daft-7.0.0-py3-none-any.whl
| Download URL | nvidia_tao_daft-7.0.0-py3-none-any.whl |
|---|---|
| Size | 202.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7fbac0a1d3ff398df3a846f0791ba7fc127f8bcd089964d1a445ad985c1766c1
|
|
BLAKE2b-256 checksum How to use checksums |
99409c94550b0a3d5017b9f312c1227a211c34263ebab9a2333a60734c7a42e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Security for nvidia-tao-daft 7.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.