Official Shopify skill for theme development in Liquid — teaches an agent the modern theme architecture of sections, blocks and snippets, and validates generated templates and schemas.
NVIDIA DALI Dynamic ModeSkill
Summary
NVIDIA's official skill for DALI's imperative dynamic-mode API — write GPU data loading as ordinary Python, or migrate an existing pipeline-mode graph across.
Features
- Writes DALI data loading as imperative Python with no pipeline graph
- Blocks pipeline-mode APIs that silently misbehave in dynamic mode
- Covers the Tensor and Batch data model, slicing and zero-copy wrapping
- Handles PyTorch hand-off via .torch(), including pad=True for ragged batches
- Guides migration of existing pipeline-mode code to ndd
- Supports DLPack, __cuda_array_interface__ and __array__ interop
Install This Skill
Add this skill to your favorite AI agent in a few steps.
Skill Content
Usage Instructions
Learn how to use this skill with different AI agents.
Example Usage
"Migrate this @pipeline_def image-augmentation pipeline to DALI dynamic mode, keep the reader alive across epochs, and hand the batches to PyTorch without an extra copy."
Description
An official, NVIDIA-authored agent skill for nvidia.dali.experimental.dynamic (imported as ndd), the imperative API that lets DALI operators be called from normal Python control flow instead of being wired into a pipeline graph. The skill exists because the two modes look similar and are not interchangeable: pipeline-mode habits carried into dynamic mode produce code that fails in confusing ways.
The rules it enforces
- No pipeline-mode APIs.
Pipeline,@pipeline_def,pipe.build()andpipe.run()have no place in dynamic-mode code; the agent is told to write directnddcalls instead. - Readers are stateful. Create them once, reuse them across epochs, and pass
batch_sizetonext_epoch(...)rather than rebuilding. - Batch size is explicit. There is no pipeline-level batch size to inherit, so random operators need it passed in.
- Convention differences that bite.
device="gpu"replaces pipeline mode's"mixed";Batch.tensors[...]selects samples andBatch.slice[...]slices per sample. - Framework hand-off.
.torch()converts a tensor or batch to PyTorch, withpad=Truefor batches of variable shape.
The data model it covers
Tensor is a single sample supporting ndd.tensor(data) (copy) and ndd.as_tensor(data) (wrap without copying where possible), .cpu() / .gpu() moves, slicing, np.asarray on CPU, and the __dlpack__, __cuda_array_interface__ and __array__ protocols plus arithmetic operators. Batch is a collection of samples that tolerates variable shapes.
Who it is for
Teams writing or reviewing GPU data-loading and augmentation code, and anyone migrating an existing DALI pipeline to the imperative API. The skill deliberately stands down on pipeline-only tasks rather than volunteering advice that does not apply.
Requirements
NVIDIA DALI installed with dynamic mode importable as nvidia.dali.experimental.dynamic. GPU decode and GPU operators need a CUDA-capable DALI build and an available NVIDIA GPU and driver; the PyTorch conversion examples need PyTorch installed.
Installing it
Part of NVIDIA's agent-skills catalogue, mirrored daily from NVIDIA's product repositories. npx skills add nvidia/skills installs the set, or npx skills add nvidia/skills --skill dali-dynamic-mode --yes fetches just this one. Apache-2.0.
Related Skills
Shopify's official skill for writing Admin GraphQL queries and mutations — it searches the live API docs and validates every operation against the schema before handing you code.
Planning skill that interrogates your use case before any code is written, then recommends the right Twilio Conversations stack — ConversationRelay, Memory, Intelligence, Orchestrator, TaskRouter — and the implementation skills to follow.
Foundational fal.ai skill that drives the genmedia CLI across 1200+ hosted generative model endpoints — smart routing, schema inspection, async queues and agent-parseable JSON.