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

> Explore VSS deployment profiles like dev-profile-base, dev-profile-search, dev-profile-alerts, and dev-profile-lvs. Package distinct AI capabilities from basic video understanding to live summarization and incident detection.

- Repository: [NVIDIA AI Blueprints/video-search-and-summarization](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization)
- Tags: architecture
- Published: 2026-05-15

---

**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**:
  - Environment variables: `deployments/developer-workflow/dev-profile-base/.env`
  - Agent configuration: [`deployments/developer-workflow/dev-profile-base/vss-agent/configs/config.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-base/vss-agent/configs/config.yml)

### dev-profile-search

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**:
  - Environment variables: `deployments/developer-workflow/dev-profile-search/.env`
  - Agent configuration: [`deployments/developer-workflow/dev-profile-search/vss-agent/configs/config.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-search/vss-agent/configs/config.yml)
  - Analytics config: `deployments/developer-workflow/dev-profile-search/video-analytics-2d-app/vss-search-analytics-$STREAM_TYPE-config.json`

### 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.

- **Core Services**: Base stack plus `vss-video-analytics-api` and `vlm-as-verifier` (Vision-Language Model alert verifier)
- **Primary Use Case**: Real-time incident detection with alert payload generation for downstream consumers
- **Key Files**:
  - Environment variables: `deployments/developer-workflow/dev-profile-alerts/.env`
  - Agent configuration: [`deployments/developer-workflow/dev-profile-alerts/vss-agent/configs/config.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-alerts/vss-agent/configs/config.yml)
  - Alert model config: [`deployments/developer-workflow/dev-profile-alerts/vlm-as-verifier/configs/alert_type_config.json`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-alerts/vlm-as-verifier/configs/alert_type_config.json)

### 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**:
  - Environment variables: `deployments/developer-workflow/dev-profile-lvs/.env`
  - Agent configuration: [`deployments/developer-workflow/dev-profile-lvs/vss-agent/configs/config.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-lvs/vss-agent/configs/config.yml)
  - LVS service configs: `deployments/developer-workflow/dev-profile-lvs/vss-lvs-service/configs/*.yml`

## 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`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/compose.yml) file aggregates all four profiles via path-based includes:

```yaml

# 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`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/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:

```bash

# 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:

```bash

# 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:

```bash
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:

```bash

# 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`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/compose.yml) | Top-level Docker-Compose including all four profile definitions |
| **Base Profile** | [`deployments/developer-workflow/dev-profile-base/compose.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-base/compose.yml) | Service graph for general video understanding |
| **Search Profile** | [`deployments/developer-workflow/dev-profile-search/compose.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-search/compose.yml) | RAG and search-analytics service definitions |
| **Alerts Profile** | [`deployments/developer-workflow/dev-profile-alerts/compose.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/deployments/developer-workflow/dev-profile-alerts/compose.yml) | Incident detection and verifier service wiring |
| **LVS Profile** | [`deployments/developer-workflow/dev-profile-lvs/compose.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/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`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/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`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/compose.yml), eliminating container rebuild overhead.
- Configuration management centers on `VSS_AGENT_CONFIG_FILE` variables pointing to [`vss-agent/configs/config.yml`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/vss-agent/configs/config.yml) within each profile directory.

## Frequently Asked Questions

### What is the difference between dev-profile-base and dev-profile-search?

**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`](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/main/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.