Skip to content

Conversation

@suiyoubi
Copy link
Contributor

@suiyoubi suiyoubi commented Jan 2, 2026

Description

Usage

# Add snippet demonstrating usage

Checklist

  • I am familiar with the Contributing Guide.
  • New or Existing tests cover these changes.
  • The documentation is up to date with these changes.

@copy-pr-bot
Copy link

copy-pr-bot bot commented Jan 2, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Jan 2, 2026

Greptile Summary

This PR significantly expands the video tutorial documentation by adding comprehensive programmatic API usage examples. The changes transform a minimal CLI-focused tutorial into a complete guide that demonstrates how to build video curation pipelines using NeMo Curator's Python API directly.

Major additions:

  • Added 6 detailed code examples showing programmatic pipeline construction (basic splitting, scene-aware splitting, embeddings, filtering, captions, and complete pipeline)
  • Reorganized content with clearer sections: "Programmatic API Usage" and "Command Line Examples"
  • Added better explanations for embedding model options (Cosmos-Embed1 vs InternVideo2)
  • Improved formatting with tables and structured metadata documentation
  • Enhanced Quick Start section with more context

Issue found:

  • The Cosmos-Embed1 section (lines 363-365) is empty and needs content describing the model's features and 768-dimensional embedding output

Confidence Score: 3/5

  • Safe to merge once the empty Cosmos-Embed1 section is completed
  • Score reflects strong documentation improvements with comprehensive code examples and accurate API references verified against the codebase. The only blocking issue is the incomplete Cosmos-Embed1 section that needs content before merging. All code imports and usage patterns match the actual implementation.
  • The Cosmos-Embed1 section in tutorials/video/getting-started/README.md (lines 363-365) requires content before merge

Important Files Changed

Filename Overview
tutorials/video/getting-started/README.md Added comprehensive Python API examples and programmatic usage patterns; empty Cosmos-Embed1 section needs content

Sequence Diagram

sequenceDiagram
    participant User
    participant Pipeline
    participant VideoReader
    participant Extractor
    participant Transcoder
    participant FrameExtractor
    participant Filter
    participant Embedder
    participant Captioner
    participant Writer
    
    User->>Pipeline: Initialize pipeline
    User->>Pipeline: Add VideoReader stage
    Pipeline->>VideoReader: Read videos from directory
    VideoReader-->>Pipeline: Return video metadata
    
    User->>Pipeline: Add FixedStrideExtractor/TransNetV2
    Pipeline->>Extractor: Split videos into clips
    Extractor-->>Pipeline: Return clip segments
    
    User->>Pipeline: Add ClipTranscodingStage
    Pipeline->>Transcoder: Transcode clips
    Transcoder-->>Pipeline: Return encoded clips
    
    opt Frame Extraction for Embeddings/Filtering
        User->>Pipeline: Add ClipFrameExtractionStage
        Pipeline->>FrameExtractor: Extract frames from clips
        FrameExtractor-->>Pipeline: Return frame data
    end
    
    opt Quality Filtering
        User->>Pipeline: Add AestheticFilter/MotionFilter
        Pipeline->>Filter: Score and filter clips
        Filter-->>Pipeline: Return filtered clips
    end
    
    opt Embedding Generation
        User->>Pipeline: Add CosmosEmbed1/InternVideo2 stages
        Pipeline->>Embedder: Generate embeddings from frames
        Embedder-->>Pipeline: Return embeddings (768-dim or 512-dim)
    end
    
    opt Caption Generation
        User->>Pipeline: Add CaptionPreparation/Generation
        Pipeline->>Captioner: Generate captions for clips
        Captioner-->>Pipeline: Return captions
    end
    
    User->>Pipeline: Add ClipWriterStage
    Pipeline->>Writer: Write clips, metadata, embeddings
    Writer-->>Pipeline: Save to output directory
    
    User->>Pipeline: Execute with XennaExecutor
    Pipeline-->>User: Complete (results in OUTPUT_DIR)
Loading

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 file reviewed, 1 comment

Edit Code Review Agent Settings | Greptile

Comment on lines +363 to +365
### Cosmos-Embed1 (Recommended)


Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

syntax: Section header for Cosmos-Embed1 is empty/incomplete.

Suggested change
### Cosmos-Embed1 (Recommended)
### Cosmos-Embed1 (Recommended)
Cosmos-Embed1 provides high-quality video embeddings with 768 dimensions. It offers better performance than InternVideo2 for most use cases.

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 file reviewed, 1 comment

Edit Code Review Agent Settings | Greptile

Comment on lines +363 to +365
### Cosmos-Embed1 (Recommended)


Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

syntax: Empty section for Cosmos-Embed1. Add description of features, output dimensions (768-dim embeddings), or usage details.

Suggested change
### Cosmos-Embed1 (Recommended)
### Cosmos-Embed1 (Recommended)
Cosmos-Embed1 provides high-quality video embeddings with support for multiple resolution variants. It's the recommended choice for most video embedding tasks.
- Output: 768-dimensional embeddings
- Variants: `224p`, `336p`, `448p` (higher resolution = better quality, more memory)
- Best for: similarity search, clustering, and general video understanding tasks

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Signed-off-by: Lawrence Lane <[email protected]>
Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 file reviewed, 1 comment

Edit Code Review Agent Settings | Greptile

Comment on lines +363 to +365
### Cosmos-Embed1 (Recommended)


Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

syntax: Empty Cosmos-Embed1 section. Add content describing the model's features, capabilities, and embedding dimensions (768-dim).

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants