Generated banner for Tao Run Dinov3 Ssl Deft
Generated logo for Tao Run Dinov3 Ssl Deft

Tao Run Dinov3 Ssl Deft

NVIDIAOfficialCreated by NVIDIA Corporation

  • Skill
  • Workflow
  • Data and AI
  • Apache-2.0
  • Medium risk

From the author

Run iterative DINOv3 SSL DEFT data selection and retraining from an unlabeled pool, using GRIT or multi-task weakness and fixed-encoder retrieval. Use for active-learning-style DINOv3 mining, not plain pretraining/fine-tuning (tao-train-dinov3) or AOI/PAS DEFT.
— the description by NVIDIA Corporation

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

This skill provides a command-line interface for managing iterative DINOv3 SSL DEFT (Data-Efficient Fine-Tuning) workflows. It enables active-learning-style data mining from an unlabeled pool using GRIT or multi-task weakness scoring. The workflow relies on fixed-encoder retrieval and requires a specific Data Services container environment to handle data selection, retrieval, and retraining loops.

What it does

  • Initializes and validates DINOv3 mining recipes.
  • Manages iterative data selection and retraining rounds.
  • Supports GRIT scoring for target ranking.
  • Integrates with fixed-encoder embedding preparation.
  • Provides lifecycle commands for planning, running, and monitoring jobs.
  • Generates reports and tracks state across training rounds.

When to use it

  • When performing active-learning-style data mining for DINOv3 models.
  • When you need to select and retrain on data from an unlabeled pool.
  • When utilizing GRIT or multi-task weakness scoring strategies.
  • When working within an environment that supports the required Data Services container.

Advantages

  • Automates the iterative loop for data selection and model retraining.
  • Ensures consistency through immutable configuration and data contracts.
  • Provides structured monitoring and reporting for mining stages.
  • Decouples training logic from the orchestration controller.

Usage examples

“Initialize a new DINOv3 mining recipe using the grit-score strategy.”
Generates a run.yaml configuration file ready for path and resource customization.
“Validate the configuration for a DINOv3 DEFT workflow.”
Checks the configuration against the workflow schema and verifies container readiness.
“Start the mining workflow using the configured run directory.”
Executes the iterative selection and training rounds as defined in the plan.
“Check the status of an ongoing mining run.”
Returns the current progress, stage, and round information for the specified run directory.

Install

  1. Download the skill as a ZIP:

    https://autogineer.com/agent-skills/nvidia/tao-run-dinov3-ssl-deft/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip tao-run-dinov3-ssl-deft.zip -d .agents/skills

Documentation by NVIDIA Corporation

DINOv3 SSL DEFT

The DS-packaged Python controller owns the loop and durable state. This skill prepares and approves its inputs; it does not implement orchestration.

Instructions

  1. Resolve the DINOv3 model using the model resolver. Choose grit-score for unlabeled target ranking; its scorer is built in. Offer multi-task-round-robin only when the user already has a score adapter that meets the task scoring contract: DS ships no multi-task scorer, and validate rejects the recipe's placeholder. Read architecture.md for the scientific meaning, task weighting, and stopping policy.

  2. Read tao-container-integration.md. Check release readiness before offering a launch: the resolved images.tao_toolkit.data_services image must be a release build whose installed packages contain the reviewed DEFT modules and pass packaged validation. An older DS build is not sufficient. The placeholder rejection (step 1), the cohort checks and the canceled-run exit code 143 need a DS build that contains tao-data-services#59: the first DS 7.3.0 RC after rc-90. DS rc-90 and older accept the placeholder at validate, fail in round 1 with Missing configured inputs: [... 'score_implementation_0'], and exit 0 after a cancel. The release/7.3.0 cherry-pick of this skill must bump images.tao_toolkit.data_services in versions.yaml to that RC. The executable profile is one allocated DS container; no external runner ships with this application. For release QA, the repository script scripts/deft_container_handoff.py runs each repository's regression tests (--suite source) and the shipped package checks (--suite packaged) inside the approved images; the packaged suite also rejects a DS image that predates #59. Run it from clean checkouts of the release SHAs; the default --base-ref origin/main diffs each release from its merge base. It is a QA tool, not a launcher.

  3. Follow the selected platform's launch gate. For Docker, use the concrete allocation, preflight, and docker exec lifecycle in the integration reference. Inside that runtime, follow the preparation sequence in adapter-contracts.md: produce source/target embeddings with the same fixed encoder, register the source store with its payload contract, and write the target contract. No additional host/model package installation is needed. Generate a packaged recipe with init, fill paths/resources, then run validate <config>, preflight <config> --gpu in the launch runtime, and plan <config>. Read adapter-contracts.md when declaring a held-out benchmark (isolation), or configuring custom scoring/evaluation, indexed retrieval, or resource policies.

  4. Inspect the plan and present the approval contract below. Read references/skill_info.yaml:path_contract as the input-mount checklist: every applicable path must be visible in the allocated container, and output.run_dir must match the platform's durable results directory. Skill Bank resolves image keys on the host; DS accepts explicit image references only and never reads this repository at runtime.

  5. After approval, execute run <config> inside the allocated container. Monitor to a terminal result using the commands below. Do not modify controller state or locks manually.

Approval contract

Populate these six items from preflight and the plan, not from assumptions:

  • Loop: chosen strategy, maximum rounds, stops, evaluation scope and patience. For multi-task-round-robin, the user's score adapter command and its implementation_files.

  • Data: immutable target/source versions, verified row/shard counts, parent history, storage capacity and mount locations. For any held-out benchmark, the identity sidecar and its declared columns, even with evaluation disabled, and preflight's contracts.benchmark_isolation (at least 1; otherwise stop) (held-out benchmark isolation).

  • Sampling: fixed target budget, resolved integer task quotas, neighbors, radius/floor and duplicate thresholds; index, audit, probes/depth for ANN.

  • Training: passes, resolution, resources/update floor and immutable original checkpoint. Every candidate starts from that checkpoint, never its predecessor. Check the per-round update budget against LR warm-up and last-layer freeze; follow short-round schedule sizing.

  • Cache/output: read-only images/embeddings, any platform cache, node-local TAO_LOCAL_SCRATCH, cumulative locator manifests, checkpoint retention, and durable results directory.

  • Monitoring: cadence, stage/round updates, retry/failure handling and final reason.

Do not request launch approval while any of these items is unknown.

Lifecycle and monitoring

All commands below follow python -m nvidia_tao_ds.mining.dinov3.workflow inside the same allocated DS runtime:

  • preflight [<config>] [--gpu] (with the config, also checks the allocation)

  • init --recipe grit-score --output run.yaml (or multi-task-round-robin, which needs the user's score adapter; see step 1)

  • validate <config>, plan <config>, run <config>, resume <config>

  • status <run_dir> [--config <config>]

  • logs <run_dir> <client_job_id> [--cursor <cursor>] [--config <config>]

  • cancel <run_dir> [--config <config>]

  • report <run_dir> [--config <config>]

  • adopt-training <continuation_config> only for an explicitly approved continuation into a new run directory.

Read the job ID from status before requesting logs. Resume takes the config path, not the run directory. Cancellation is terminal for that run: run and resume then exit with code 143, not 0. Use an explicit new-run continuation when appropriate.

Keep monitoring attached until the workflow is terminal. Use the user's cadence, otherwise about five minutes for short stages and 20–30 minutes for long search/training stages. Report stage/round transitions, mining yield, metrics, retries, failures, and the final stop reason. Submission is not success. If the container has exited, use the integration reference's read-only inspection recipe rather than attempting docker exec against it.

  • tao-train-dinov3: ordinary DINOv3 training without a mining loop.

  • tao-launch-workflow, tao-run-on-docker, tao-data-io: launch and storage.

  • tao-run-deft-aoi, tao-run-deft-pas: different supervised DEFT workflows.

Files

evals/evals.json

[
  {
    "id": "tao-run-dinov3-ssl-deft-benchmark-isolation",
    "question": "My held-out benchmark has copies in the unlabeled source pool under different sample IDs. I am not enabling evaluation yet. Can I safely mine and train? Explain the required inputs and failure behavior without running commands.",
    "expected_skill": "tao-run-dinov3-ssl-deft",
    "expected_script": null,
    "ground_truth": "Require a benchmark_acquisition_units sidecar with sample_id, acquisition units and content_sha256 (also carried by targets, source and inherited manifests), which an image with the DS fix enforces independent of evaluation by excluding matches and failing closed, without detecting undeclared near-duplicates.",
    "expected_behavior": [
      "Does not rely on sample ID inequality to prove disjointness",
      "Requires the benchmark identity sidecar even with evaluation disabled",
      "Requires acquisition-unit and content-hash metadata for the claimed protection",
      "Explains fail-closed handling of missing identities and contaminated parent history",
      "Distinguishes data isolation checks from training-quality evaluation",
      "Does not run commands"
    ]
  },
  {
    "id": "tao-run-dinov3-ssl-deft-layered-interface",
    "question": "Use the DINOv3 SSL DEFT workflow with my unlabeled AOI targets. Explain the user interfaces and the two shipped strategies without running anything.",
    "expected_skill": "tao-run-dinov3-ssl-deft",
    "expected_script": null,
    "ground_truth": "Select tao-run-dinov3-ssl-deft, describe the conversational skill, YAML/CLI, and bare Python layers, and identify GRIT-score and multi-task round-robin as the two strategies over one concrete controller. GRIT-score has a built-in scorer; multi-task round-robin needs the user's own score adapter because DS ships none.",
    "expected_behavior": [
      "Identifies tao-run-dinov3-ssl-deft",
      "Describes conversational, config/CLI, and Python interfaces",
      "States that all interfaces call one concrete controller",
      "Names grit_score and multi_task_round_robin",
      "States that multi_task_round_robin needs a user-supplied score adapter",
      "Does not claim GRIT is calibrated uncertainty",
      "Does not run commands"
    ]
  },
  {
    "id": "tao-run-dinov3-ssl-deft-traceability",
    "question": "How does a DINOv3 SSL DEFT run resume and how do I trace a selected image? Read only the skill documentation and do not run commands.",
    "expected_skill": "tao-run-dinov3-ssl-deft",
    "expected_script": null,
    "ground_truth": "The concrete controller resumes from locked state.json and append-only events.jsonl, validates immutable artifact outputs, preserves selection provenance in Parquet manifests, and never relies on agent memory or hand-edited state.",
    "expected_behavior": [
      "Treats disk-backed controller state as authoritative",
      "Mentions append-only events and immutable manifests",
      "Does not instruct the agent to edit state.json",
      "Does not run commands"
    ]
  },
  {
    "id": "tao-run-dinov3-ssl-deft-approval-monitoring",
    "question": "Explain a proposed weighted multi-task DINOv3 DEFT run using only documentation. Do not execute commands or call tools. Segmentation should receive twice the preference. Tell me exactly what data is materialized and cached, how sampling and stopping work, and then monitor it to completion after approval.",
    "expected_skill": "tao-run-dinov3-ssl-deft",
    "expected_script": null,
    "ground_truth": "The approval contract keeps targets_per_round fixed, resolves positive task_weights into integer quotas, describes the full loop and cumulative locator-only training manifest, distinguishes read-only data/embedding caches from per-run artifacts, states rounds/resources/stops, and remains attached after launch until terminal state. Before approval it confirms the user's own score adapter command and its implementation_files, because DS ships no multi-task scorer.",
    "expected_behavior": [
      "Keeps a fixed targets_per_round budget while giving segmentation weight 2",
      "Confirms the user's score adapter command and implementation_files before approval",
      "Shows resolved integer task quotas before approval",
      "Explains cumulative deduplicated locator-only training manifests",
      "States source images and embeddings are reused read-only without image copies or symlinks",
      "States sampling radius, neighbor count, rounds, resources, and stop conditions",
      "Does not launch before approval",
      "After approval, monitors stage and round transitions through terminal state"
    ]
  }
]

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Declares allowed tools, Needs Python, Needs Node.js

The author says: Requires the selected platform's native launcher and a TAO Data Services image containing the DINOv3 SSL DEFT modules; no host TAO or Python data-stack installation.

Security

What our scanner noticed· Medium risk

  • Large base64-encoded blobs

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
NVIDIA Corporation
Publisher
NVIDIA (Official)
Source
NVIDIA/skills · skills/tao-run-dinov3-ssl-deft · commit fce3cca
Licence
Apache License 2.0 (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE-APACHE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by NVIDIA Corporation or NVIDIA.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download tao-run-dinov3-ssl-deft.zip