event-video-generation-workflow

Run the PAIDF Event Video Generation Airflow DAG on Kubernetes for anomaly video synthesis and auto-labeling.

3.2k|370|Updated Feb 25, 2026
One-click install
npx skills add https://github.com/NVIDIA/skills --skill event-video-generation-workflow
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: event-video-generation-workflow
Source: https://github.com/NVIDIA/skills/tree/main/skills/paidf-orchestration-event-video-generation-workflow
Command: npx skills add https://github.com/NVIDIA/skills --skill event-video-generation-workflow

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires boto3, and includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve?

Generating synthetic anomaly videos (falls, fights, theft, fire) for safety and surveillance AI training requires orchestrating a complex multi-stage pipeline: Cosmos3 image-to-video generation, auto-labeling, and anomaly dataset assembly on Kubernetes. This Skill guides an agent through the entire PAIDF Orchestration Event Video Generation DAG lifecycle without manual Airflow or kubectl expertise.

Core Features & Use Cases

  • End-to-End DAG Orchestration: Prepares seed-image inputs, renders validated payloads, triggers the event_video_generation_dag_k8s DAG via the Airflow API, and monitors runs to completion.
  • Readiness Preflight: Verifies controller pods, Airflow API health, pool slots, and GPU capacity (3 GPUs minimum for external mode, 7 for internal mode) before triggering.
  • Payload Validation & Results Analysis: Bundled scripts render/validate EventVideoGenerationDagPayloadConfig-compatible JSON, upload seed images to S3, and summarize the generated anomaly dataset.
  • Use Case: A robotics engineer needs 30 synthetic person-falling videos in a warehouse setting. The agent uploads seed images, renders an external-mode payload with a weighted anomaly distribution, triggers the DAG, monitors the run, and summarizes the resulting labeled dataset.

Quick Start

Ask your agent to run event video generation on your seed images at an S3 path with your VLM, LLM, and image2video endpoint URLs on Kubernetes.

Frequently Asked Questions about event-video-generation-workflow

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run the event video generation DAG on Kubernetes?

Provide an S3 input path of seed images, an output directory, and a service mode (external or internal). The agent runs readiness checks on controller pods, pools, and GPUs, renders a validated payload, triggers the event_video_generation_dag_k8s DAG via the Airflow API, and monitors the run to completion.

How many GPUs does event video generation need on Kubernetes?

External mode needs at least three allocatable GPUs for the detection, captioning, and visual QA task pods. Internal mode needs at least seven: the three task-pod GPUs plus one per VLM/LLM replica and two per image2video replica.

What is the difference between external and internal service mode?

External mode uses your own HTTPS endpoint URLs for the VLM, LLM, and image2video inference services. Internal mode deploys all three services in-cluster via the DAG's service lifecycle, requiring more GPUs but no external endpoints.

Can I run only video generation without auto-labeling?

No. The checked-in DAG is a single end-to-end pipeline with no generation-only or labeling-only variant. The closest alternative is to run the full pipeline and use the intermediate cosmos/ outputs containing the generated videos.

Why did my event video generation run use default settings instead of my payload?

The trigger body must wrap the payload under conf.payload, not at the top level of conf. A body of {"conf": {...payload fields...}} is silently ignored and the DAG runs with placeholder defaults. Always trigger as {"conf": {"payload": {...}}}.

What anomaly types can the variable distribution control?

The variable_distribution.variables object must contain exactly two keys: anomaly_type and env_type. Supported anomaly values include person_falling, person_climbing, person_running, person_fighting, smoking_or_vaping, fire_or_smoke, and stealing_or_shoplifting, each with a non-negative sampling weight.