Understanding VSS Deployment Profiles: dev-profile-base, dev-profile-search, dev-profile-alerts, and dev-profile-lvs

The Video Search & Summarization (VSS) blueprint provides four modular Docker-Compose profiles—dev-profile-base, dev-profile-search, dev-profile-alerts, and dev-profile-lvs—that package distinct AI capabilities ranging from basic video understanding to live summarization and incident detection.

The NVIDIA AI Blueprint for Video Search and Summarization accelerates development by providing pre-configured VSS deployment profiles tailored to specific computer vision workflows. These profiles are self-contained Docker-Compose stacks that wire together NVIDIA NIM microservices, video analytics APIs, and supporting tools. Each profile lives in the deployments/developer-workflow/ directory of the NVIDIA-AI-Blueprints/video-search-and-summarization repository and operates as a distinct developer workflow.

What Are VSS Deployment Profiles?

VSS deployment profiles are modular, shareable Docker-Compose configurations that instantiate specific subsets of the Video Search & Summarization architecture. All four profiles share common base layers—DeepStream, the video-stream-tool (VST), and NIM inference engines—to minimize Docker footprint, but each activates different microservices and agent capabilities through profile-specific environment variables and YAML configurations.

The Four VSS Deployment Profiles Explained

dev-profile-base

The dev-profile-base profile provides general video-understanding and report generation capabilities, serving as the default "hello-world" stack for the blueprint.

  • Core Services: vss-agent, video-analytics-api, vst (video-stream-tool), and optional vss-search-analytics
  • Primary Use Case: Basic video ingestion, metadata extraction, and summary report generation without specialized downstream consumers
  • Key Files:

The dev-profile-search profile enables an end-to-end search-and-RAG (Retrieval-Augmented Generation) workflow, allowing developers to ingest video, generate embeddings, and query content using natural language.

  • Core Services: Base stack plus vss-search-service (RAG backend) and vss-search-analytics (2-Dimensional search UI)
  • Primary Use Case: Semantic search across video libraries with thumbnail-rich result interfaces
  • Key Files:

dev-profile-alerts

The dev-profile-alerts profile specializes in incident analysis and automated alert generation for scenarios such as traffic violations or safety compliance monitoring.

dev-profile-lvs

The dev-profile-lvs (Live Video Summarization) profile delivers real-time inference capabilities with streaming visualization for continuous video streams.

  • Core Services: Base stack plus vss-lvs-service (live summarization micro-service) and vss-lvs-ui (Kibana dashboard)
  • Primary Use Case: Near real-time video summarization with streaming dashboards for operational monitoring
  • Key Files:

How the Profiles Are Wired Together

The orchestration of VSS deployment profiles relies on Docker Compose's include directive and environment variable injection.

Top-Level Composition: The deployments/developer-workflow/compose.yml file aggregates all four profiles via path-based includes:


# deployments/developer-workflow/compose.yml

services:
  # Shared infrastructure definitions

includes:
  - path: ./dev-profile-base/compose.yml
  - path: ./dev-profile-search/compose.yml
  - path: ./dev-profile-alerts/compose.yml
  - path: ./dev-profile-lvs/compose.yml

Environment Variable Injection: Each profile exports VSS_AGENT_CONFIG_FILE and other critical paths through its dedicated .env file. When you source a profile's environment, Docker Compose receives the variables required to mount the correct agent configuration and model directories.

Agent Configuration: The vss-agent/configs/config.yml file serves as the single source of truth for pipeline orchestration. It defines video source ingestion endpoints, inference model loading (NIM, DeepStream), and downstream tool behavior (e.g., video-report-gen). Profile differentiation occurs through YAML section toggling—enabling search embeddings, alert verifiers, or LVS modules based on the mounted configuration.

Deploying and Switching Between Profiles

Starting a Specific Profile

To launch a particular VSS deployment profile, source its environment file before executing Docker Compose:


# From repository root - activate search profile

source deployments/developer-workflow/dev-profile-search/.env

# Launch only the services defined in dev-profile-search and shared base

docker compose -f deployments/developer-workflow/compose.yml up -d

The source command exports VSS_AGENT_CONFIG_FILE, model paths, and data directories required by the compose stack.

Switching Profiles

To migrate between workflows without image rebuilds:


# Terminate current stack

docker compose -f deployments/developer-workflow/compose.yml down

# Activate alerts profile

source deployments/developer-workflow/dev-profile-alerts/.env
docker compose -f deployments/developer-workflow/compose.yml up -d

Running the Agent Manually

For debugging or development outside the containerized orchestration:

nat serve \
  --config_file $(pwd)/deployments/developer-workflow/dev-profile-base/vss-agent/configs/config.yml

The nat binary is the NVIDIA AI Toolkit CLI bundled in the repository.

Inspecting Effective Configuration

To verify which modules are active for a given profile:


# Substitute environment variables and parse the YAML

envsubst < deployments/developer-workflow/dev-profile-base/vss-agent/configs/config.yml | yq .

This displays the merged configuration after variable substitution, revealing enabled search, alerts, or LVS sections.

Key Configuration Files

Category File Path Purpose
Profile Aggregation deployments/developer-workflow/compose.yml Top-level Docker-Compose including all four profile definitions
Base Profile deployments/developer-workflow/dev-profile-base/compose.yml Service graph for general video understanding
Search Profile deployments/developer-workflow/dev-profile-search/compose.yml RAG and search-analytics service definitions
Alerts Profile deployments/developer-workflow/dev-profile-alerts/compose.yml Incident detection and verifier service wiring
LVS Profile deployments/developer-workflow/dev-profile-lvs/compose.yml Live summarization and Kibana UI services
Alert Model Config dev-profile-alerts/vlm-as-verifier/configs/alert_type_config.json VLM prompt templates and alert classification rules
Search Analytics Config dev-profile-search/video-analytics-2d-app/vss-search-analytics-$STREAM_TYPE-config.json 2D UI rendering and embedding visualization parameters

Summary

  • VSS deployment profiles provide four specialized Docker-Compose stacks—dev-profile-base, dev-profile-search, dev-profile-alerts, and dev-profile-lvs—each optimized for distinct video AI workflows.
  • All profiles share base infrastructure (DeepStream, VST, NIM) but diverge in microservice activation through profile-specific .env files and agent YAML configurations.
  • Profile switching requires only sourcing the target environment file and restarting the top-level compose.yml, eliminating container rebuild overhead.
  • Configuration management centers on VSS_AGENT_CONFIG_FILE variables pointing to vss-agent/configs/config.yml within each profile directory.

Frequently Asked Questions

dev-profile-base provides fundamental video ingestion and report generation without persistent vector search capabilities, while dev-profile-search adds the vss-search-service for RAG operations and a 2-Dimensional analytics UI for querying video embeddings. The search profile mounts additional configuration files defining embedding models and vector database connections in dev-profile-search/video-analytics-2d-app/.

How do I switch between VSS deployment profiles without rebuilding containers?

Execute docker compose -f deployments/developer-workflow/compose.yml down to stop the current stack, then source deployments/developer-workflow/<profile-name>/.env to load the target profile's environment variables, and finally docker compose -f deployments/developer-workflow/compose.yml up -d. This workflow reuses existing image layers while remounting the correct agent configuration and service definitions.

Which profile should I use for real-time video analysis?

Use dev-profile-lvs (Live Video Summarization) for real-time workflows, as it includes the vss-lvs-service microservice and Kibana dashboard (vss-lvs-ui) designed for continuous stream processing and near real-time summarization. For incident detection rather than summarization, use dev-profile-alerts, which activates the vlm-as-verifier for immediate alert generation.

Where are the model configurations stored for each profile?

Each profile stores model configurations within its directory subtree under deployments/developer-workflow/. For example, the alerts profile stores VLM verifier settings at dev-profile-alerts/vlm-as-verifier/configs/alert_type_config.json, while the search profile maintains analytics configurations at dev-profile-search/video-analytics-2d-app/vss-search-analytics-$STREAM_TYPE-config.json. The agent locates these files via paths defined in the profile's .env file.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →