Поделиться через


Try Azure AI Video Indexer enabled by Arc

Azure AI Video Indexer enabled by Arc is an Azure Arc extension enabled service that runs video and audio analysis, and generative AI on edge devices. The solution is designed to run on Azure Arc enabled Kubernetes and supports many video formats, and assumes that one Video Indexer resource is mapped to one extension. It can transcribe spoken content in more than 35 source languages and supports translation to English. For a full list of supported languages, see Supported languages per scenario.

This article walks you through the steps required to enable Video Indexer as an Arc extension in your current infrastructure.

Prerequisites

Important

To successfully deploy the Azure AI Video Indexer extension, it's mandatory that your Azure subscription ID is approved in advance. You must first sign up using the form at Application for gated services.

To use the Video Indexer extension, you need to have an externally facing endpoint, which can be either a DNS name or an IP address. The endpoint should be set as a secure transfer protocol (https:\\) and is used as the extension API endpoint. It also gets used by the Video Indexer web portal to communicate with the extension. We recommend that you use an ingress control to manage the endpoint.

Note

If the endpoint isn't publicly accessible, you can perform actions on the extension from the web portal only from the local network.

Minimum hardware requirements for this quickstart

This quickstart is designed to allow you to see the extension in action. Smaller resource sizes are suggested for you to work with in a test environment. For this quickstart, the minimum hardware requirements are:

  • CPU: 16 cores
  • Memory: 16 GB

The CPU in the nodes should support AVX2. Most newer CPUs support the extension, but it might not be supported in some older virtualization environments.

To view minimum hardware requirements in a production environment, see the Minimum hardware requirements in the overview article.

Minimum software requirements

Component Минимальные требования
Операционная система Ubuntu 22.04 LTS or any Linux Compatible OS
Kubernetes 1,29
Azure CLI 2.64.0

Parameter definitions

Here's a table of the parameters used to configure the extension.

Parameter  Description
release-namespace The Kubernetes namespace that the extension is installed into
cluster-name The Kubernetes Azure Arc instance name
resource-group The Kubernetes Azure Arc resource group name
version Video Indexer Extension version, leave empty for latest
videoIndexer.accountId Video Indexer account ID
videoIndexer.endpointUri URL containing a DNS name or IP address to be used as the extension external endpoint
ViAi.gpu.enabled Enable GPU usage for summarization
ViAi.gpu.tolerations.key Maps the nodes where summarization runs with GPU. Convention is to set to nvidia.com/gpu
ViAi.gpu.nodeSelector.workload Identifies the node selected for summarization. Задайте значение summarization.

Prepare for deployment

During the deployment, the script asks for environment specific values. Have these values ready so you can copy and paste them when the script asks for them.

Question Value Details
What is the Video Indexer account ID during deployment? GUID Your Video Indexer account ID
What is the Azure subscription ID during deployment? GUID Идентификатор подписки Azure
What is the name of the Video Indexer resource group during deployment? string The resource group name of your Video Indexer account
What is the name of the Video Indexer account during deployment? string Your Video Indexer account name

Deploy with the Azure portal

  1. In the Azure portal, navigate to your Azure Arc-connected cluster.
  2. From the menu, select Extensions>+ Add>Azure AI Video Indexer Arc Extension.
  3. Select Create. The Create an AI Video Indexer extension screen appears.
  4. Configure the extension in Instance details:
    1. Select the subscription and resource group for your extension.
    2. Select the region and connected k8 cluster.
    3. Enter a name for your extension.
    4. Select the Azure AI Video Indexer Account that the extension connects to.
    5. Enter the cluster endpoint, either an IP address or DNS name to use as the API endpoint.
    6. Provide the storage class you want to use for the extension that's supported by your Kubernetes distribution. For example, if you're using AKS, you could use azurefile-cli. For more information about predefined storage classes supported by AKS, see Storage Classes in AKS. If you're using other Kubernetes distributions, see your Kubernetes distribution documentation for predefined storage classes supported or the way you can provide your own.
    7. Select a generative AI model to apply AI capabilities such as textual summarization on VI enabled by Arc. For more information, see Generative AI with Azure AI Video Indexer (VI).
  5. Выберите Просмотр и создание, а затем нажмите кнопку Создать.

Manual deployment

Use the sample deployment script to manually deploy the extension. Before you get started, consider Storage class.

Storage class - Video Indexer extension requires that a storage volume must be available on the Kubernetes cluster. The storage class needs to support ReadWriteMany. It's important to note that the indexing process is IO intensive, so the IOPS (input/output operations per second) of the storage volume has a significant effect on the duration of the process.

Important

If you're using a language model, you must label a node or a node pool with workload:summarization. The label is a key-value pair, the key is workload, and the value is summarization. The machine labeled with this label must have at least 32 CPUs (for production), and we strongly recommend that they're Intel CPUs (as opposed to AMD).

Tip

Read the How to connect your cluster to Azure Arc article for a complete walkthrough of the process.

Optional configuration

The extension default settings are set to handle the common workloads, for specific cases, the following parameters can be used to configure the resource allocation:

Parameter Default Description
videoIndexer.webapi.resources.requests.cpu 0.5 The request number of cores for the web API pod
videoIndexer.webapi.resources.requests.mem 4Gi The request memory capacity for the web API pod
videoIndexer.webapi.resources.limits.cpu 1 The limits number of cores for the web API pod
videoIndexer.webapi.resources.limits.mem 6Gi The limits memory capacity for the web API pod
storage.storageClass "" The storage class to be used
storage.useExternalPvc false Determines whether an external PVC is used. When true, the VideoIndexer PVC isn't installed.
scaling.ai.maxReplicaCount 20 Sets the AI workload max pod scale (not including summarization)

Дальнейшие действия

Review the Azure AI Video Indexer enabled by Arc samples.