> This page is for version 3.3.0 (default).
> For other versions, use one of these documentation indexes:
> - 3.3.0 (default): https://docs.nvidia.com/vss/3.3.0/llms.txt
> - Dev: https://docs.nvidia.com/vss/dev/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/vss/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/vss/_mcp/server.

# Helm Deployment

This guide covers deploying VSS **developer profiles** on Kubernetes using Helm. It is an
alternative to the Docker Compose method used in [Quickstart](/getting-started/quickstart) and the [agent-workflows](/vision-agent/agent-workflows)
guides.

Install steps, values files, GPU sizing, ingress setup, and troubleshooting for each profile are
documented in the chart **README.md** under
`deploy/helm/developer-profiles/` in the
[video-search-and-summarization](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/tree/v3.3.0/deploy/helm/developer-profiles)
GitHub repository.

## Available developer profiles

* `base`
* `alerts`
* `search`
* `lvs`

## Prerequisites

* A Kubernetes cluster (version **1.34** or greater) you can reach with **kubectl**
* **Helm 3.7+**
* [NVIDIA GPU Operator](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/latest/getting-started.html) on the cluster
* [NVIDIA NIM Operator](https://docs.nvidia.com/nim-operator/latest/install.html) when deploying in-cluster LLM and VLM models
* **StorageClass** - for PVC provisioning
* **NGC API key** — for image pull and NIM model access

GPU requirements depend on the profile and values you choose (for example, in-cluster NIMs vs
remote LLM/VLM endpoints). See the **GPU requirements** section in the chart README for the
profile you are deploying.

### Steps to deploy a profile

1. Clone the blueprint repository:

   ```bash
   git clone https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization.git
   cd video-search-and-summarization
   git checkout "v3.3.0"
   git lfs install
   git lfs pull
   ```

> **Note**
>
> The Helm charts in this checkout use documentation reference
> `v3.3.0`. Keep that aligned with the image tags selected
> for the documentation build.

2. Change into the Helm developer-profiles directory:

   ```bash
   cd ./deploy/helm/developer-profiles
   ```

3. Open the chart **README.md** for the profile you are deploying and follow the installation
   and uninstall instructions there:

| Workflow                   | Developer Profile | Chart documentation                                                                                                                                                  |
| -------------------------- | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Q\&A and Report Generation | `base`            | [dev-profile-base](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/v3.3.0/deploy/helm/developer-profiles/dev-profile-base/README.md)     |
| Alerts                     | `alerts`          | [dev-profile-alerts](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/v3.3.0/deploy/helm/developer-profiles/dev-profile-alerts/README.md) |
| Search                     | `search`          | [dev-profile-search](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/v3.3.0/deploy/helm/developer-profiles/dev-profile-search/README.md) |
| Video Summarization        | `lvs`             | [dev-profile-lvs](https://github.com/NVIDIA-AI-Blueprints/video-search-and-summarization/blob/v3.3.0/deploy/helm/developer-profiles/dev-profile-lvs/README.md)       |

> **Note**
>
> After `helm upgrade --install`, wait until **all** pods in the release namespace are in
> **Running** state and show **Ready** (for example, `kubectl get pods -n <NAMESPACE>`)
> before opening the UI or sending requests. Image pulls, persistent volume binding, and
> in-cluster NIM model download and warm-up add startup time. For some profiles, bringing
> every pod to Ready can take **20–25 minutes** depending on cluster resources and network
> speed.