Generated banner for Tao Finetune Anomalygennext
Generated logo for Tao Finetune Anomalygennext

Tao Finetune Anomalygennext

NVIDIAOfficialCreated by NVIDIA Corporation

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

From the author

Validate a user AnomalyGenNext dataset and recipe, freeze its validation set, and prepare a canonical texture fine-tuning recipe. Use when AnomalyGenNext task weights do not yet exist. Do not use for ordinary defect generation.
— the description by NVIDIA Corporation

AutoGineer summary

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

This skill provides a structured workflow for fine-tuning AnomalyGenNext models on custom datasets. It ensures data integrity by validating dataset structures, image formats, and binary masks before training. The process includes converting base checkpoints to the required DCP format, generating a canonical training recipe, and executing the fine-tuning process within the specified AnomalyGenNext 1.1 container environment.

What it does

  • Validates user datasets, including defect specifications and image/mask pairings.
  • Converts Cosmos3-Nano checkpoints into the required DCP format.
  • Generates a canonical fine-tuning recipe from user templates.
  • Enforces strict validation of binary masks and image file extensions.
  • Executes LoRA fine-tuning using the AnomalyGenNext 1.1 runtime.
  • Verifies training success through iteration-zero and scored checkpoint validation.

When to use it

  • When you need to fine-tune an AnomalyGenNext model on a custom texture and defect dataset.
  • When AnomalyGenNext task weights do not yet exist for your specific use case.
  • When you need to ensure your dataset and recipe meet the strict input requirements of the AnomalyGenNext 1.1 container.
  • When you need to convert a Hugging Face format checkpoint for use in the AnomalyGenNext training pipeline.

Advantages

  • Ensures compatibility with the AnomalyGenNext 1.1 runtime through automated validation.
  • Prevents training failures by checking mask and image validity before GPU resources are consumed.
  • Standardizes the training process with canonical recipes and verified checkpoint layouts.
  • Provides a clear path for model acceptance based on objective performance metrics.

Usage examples

“Prepare a fine-tuning recipe for my new texture dataset located at /data/my_dataset.”
The agent runs the recipe preparation script, validates the dataset structure and masks, and outputs a canonical recipe file ready for training.
“Convert my Hugging Face Cosmos3-Nano checkpoint for use with AnomalyGenNext.”
The agent executes the conversion script to transform the checkpoint into the required DCP format, ensuring it is ready for the fine-tuning workflow.
“Train an AnomalyGenNext model using my validated canonical recipe.”
The agent launches the training workflow, mounts the necessary checkpoints and data, and monitors the process until a successful handoff is achieved.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/nvidia/tao-finetune-anomalygennext/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip tao-finetune-anomalygennext.zip -d .agents/skills

Documentation by NVIDIA Corporation

Fine-tune AnomalyGenNext

This leaf prepares a user-owned dataset and optional recipe for task-specific AnomalyGenNext LoRA training. The pinned image is declared in references/skill_info.yaml; do not replace it with the older 1.0 release. Read references/input-contract.md when validating a dataset or adapting a recipe, and references/container-runtime.md before submission.

Inputs

DATASET/
  defect_spec.jsonl
  TEXTURE/
    clean_image/*
    anomaly_image/DEFECT/*
    mask/DEFECT/*
VALIDATION/testcase.jsonl

Also supply a DCP-format Cosmos3-Nano base checkpoint directory containing checkpoint.json, model/.metadata, and at least one model/*.distcp shard, Wan2.2_VAE.pth, and a complete checkpoint root containing the required Qwen tokenizer model assets under hf/ plus facebook/dinov2-large/ for validation. The hf/ directory name is part of the upstream image's fixed checkpoint layout. The validation JSONL must contain image_filename, mask_filename, and anomaly_type; each trained TEXTURE+DEFECT needs at least three rows. A separately stored defect spec is accepted with --defect-spec.

If the official Cosmos3-Nano checkpoint is not already staged in DCP format, run the converter shipped in the pinned AnomalyGenNext image and write its output to a mounted, persistent directory:

python -m cosmos_framework.scripts.convert_model_to_dcp \
  -o /models/Cosmos3-Nano-dcp \
  --checkpoint-path Cosmos3-Nano

The registered Cosmos3-Nano name resolves the official checkpoint. To convert an already-staged Hugging Face checkpoint instead, replace it with that directory's absolute container path. Use the converter output as --base-checkpoint; preparation verifies checkpoint.json, model/.metadata, and the generated model/*.distcp shards before GPU work.

Dataset and validation images and masks must use .jpg, .jpeg, or .png, matching the extensions supported by the AnomalyGenNext 1.1 runtime loader. Every mask pixel must be binary 0 or 255; palette or grayscale masks with intermediate values are rejected before training. Each mask must contain both values, so empty/all-zero and full/all-255 masks are also rejected.

An optional user recipe.yaml is a template. Custom training settings remain, while dataset, checkpoint, validation, type order, and iteration-zero validation are replaced by validated identities. Without a template, the packaged recipe uses the established 5000-step defaults.

Prepare

After the common launch review, run the prepare_recipe action:

scripts/prepare_finetune_recipe.py \
  --dataset-root /data/my_dataset \
  --validation-testcase /data/validation/testcase.jsonl \
  --base-checkpoint /models/Cosmos3-Nano \
  --vae-path /models/Wan2.2_VAE.pth \
  --checkpoint-root /models/anomalygen-checkpoints \
  --dataset-name my_dataset \
  --recipe-template /data/recipe.yaml \
  --output /results/canonical_recipe.yaml

The action freezes absolute validation paths, validates the DCP base-checkpoint shape, rejects image extensions the runtime cannot decode, validates anomaly/mask pairing and binary masks, checks type agreement with defect_spec.jsonl, refuses output reuse, and emits a recipe plus metadata. validation_iter must be a multiple of save_iter; max_iter must reach a post-baseline validation.

Train and accept

Invoke tao-launch-workflow, review the platform, image, mounts, GPU shape, runtime, and exact recipe, then submit the train action. Bind the entire checkpoint root read-only at the fixed container path declared in skill_info.yaml; the upstream trainer resolves the Qwen tokenizer model assets at checkpoints/hf and DINOv2 at checkpoints/facebook/dinov2-large beneath its image repository. Mounting only the DINOv2 directory or setting HF_HOME does not satisfy that contract.

scripts/finetune_anomalygennext.sh \
  --recipe /results/canonical_recipe.yaml \
  --results-dir /new/training_results \
  --checkpoint-root /workspace/paidf-anomalygen/checkpoints \
  --num-gpus 1

The wrapper uses the upstream trainer already inside the pinned container. It refuses existing publication outputs and, unless --resume is explicit, an existing runtime directory. Accept success only when training_handoff.json is COMPLETE: iteration zero and a later scored checkpoint must exist, best_checkpoint.txt must select the maximum Average.nn_score, and the score must improve strictly. The handoff hashes the copied adapter and recipe.

Read references/nn-score-contract.md before changing metric or acceptance settings. A 1000-step run is the smallest quality smoke; shorter runs prove wiring only.

Files

references/container-runtime.md

Container runtime

Read this before submitting AnomalyGenNext fine-tuning.

The action uses the public image declared by skill_info.yaml:

nvcr.io/nvidia/paidf-anomalygen:1.1.0

Use the source tree and Python environment baked into that image at /workspace/paidf-anomalygen. Do not overlay a host checkout or virtualenv. Mount or stage the dataset, canonical recipe, validation JSONL, Cosmos3-Nano checkpoint, VAE, complete checkpoint root, and durable results directory. The Cosmos3-Nano checkpoint must retain its DCP layout: checkpoint.json, model/.metadata, and at least one model/*.distcp shard.

When the official checkpoint is available only in its Hugging Face layout, convert it inside this pinned image, with /models mounted to persistent writable storage:

python -m cosmos_framework.scripts.convert_model_to_dcp \
  -o /models/Cosmos3-Nano-dcp \
  --checkpoint-path Cosmos3-Nano

The converter runs on CPU, resolves the registered official model, and writes the DCP checkpoint under the output directory. --checkpoint-path may instead name an absolute, container-visible Hugging Face checkpoint directory. Write the converted checkpoint to persistent mounted storage; recipe preparation and training both require that directory as the base_checkpoint input.

The upstream trainer resolves the required Qwen tokenizer model assets and DINOv2 from the image repository's own checkpoint tree. Expose the complete selected tree read-only at:

/workspace/paidf-anomalygen/checkpoints

It must contain the Qwen/Qwen3-VL-8B-Instruct assets under hf/ plus facebook/dinov2-large/config.json and either facebook/dinov2-large/model.safetensors or facebook/dinov2-large/pytorch_model.bin. The hf/ name is fixed by the upstream image. Separate Qwen or DINOv2 mounts are insufficient because the upstream paths are fixed.

The selected platform owns image import, execution storage, temporary runtime storage, GPU allocation, and result publication. Keep credentials out of recipes, commands, logs, and job records. Preserve only the canonical recipe, selected adapter, validation metrics, status, training curves, and training_handoff.json declared by the action.

A 1000-step run is the minimum quality smoke because it includes iteration-zero and later validation. Shorter runs demonstrate wiring only.

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

The author says: Requires the AnomalyGenNext 1.1 container, Pillow, and its model checkpoints.

Security

What our scanner noticed· Medium risk

  • Large base64-encoded blobs
  • Scripts that your agent may run

This skill includes scripts that your agent may run. Read them before you use it.

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-finetune-anomalygennext · 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-finetune-anomalygennext.zip