Buscando além das palavras-chave tradicionais
A busca em repositórios de vídeo costuma depender de etiquetagem manual ou palavras-chave predefinidas. A AWS apresenta uma alternativa que vai além: uma arquitetura escalável para busca multimodal em vídeos, capaz de processar consultas em linguagem natural e encontrar conteúdo relevante não apenas pelas tags, mas pela compreensão semântica do que realmente acontece no vídeo.
A solução integra os modelos Amazon Nova com o Amazon OpenSearch Service, gerando embeddings que capturam informações visuais e de áudio simultaneamente. O resultado é um sistema que entende o contexto do conteúdo videográfico de forma muito mais rica que abordagens tradicionais.
Processando escala em volume real
Para demonstrar a viabilidade dessa abordagem, a AWS processou 792.270 vídeos de dois conjuntos de dados públicos: Multimedia Commons (787.479 vídeos com média de 37 segundos) e MEVA (4.791 vídeos com média de 5 minutos). No total, foram processadas 8.480 horas de conteúdo em 41 horas de computação.
Os custos ficaram em torno de R$ 27 mil no primeiro ano (utilizando OpenSearch sob demanda) ou R$ 23 mil com instâncias reservadas. A ingestão única custou aproximadamente R$ 18 mil, enquanto a assinatura anual do OpenSearch ficou entre R$ 5,5 mil e R$ 9,2 mil, dependendo do modelo de pagamento escolhido.
Arquitetura em duas camadas: ingestão e busca
A solução é organizada em dois fluxos de trabalho principais que trabalham em conjunto.
O pipeline de ingestão de vídeos
O processamento utiliza quatro instâncias Amazon EC2 do tipo c7i.48xlarge, cada uma executando 600 trabalhadores paralelos para processar aproximadamente 19.400 vídeos por hora. A API assíncrona de embeddings multimodais permite que o sistema segmente vídeos em trechos de 15 segundos (otimizados para capturar mudanças de cena) e gere embeddings de 1.024 dimensões.
A escolha por embeddings de 1.024 dimensões em vez de 3.072 dimensões resultou em economia de três vezes no armazenamento, com impacto mínimo na precisão. O processamento responde pela maior parte do custo: aproximadamente R$ 17 mil dos R$ 18 mil da ingestão.
Além dos embeddings, o sistema utiliza Amazon Nova Pro (ou Amazon Nova 2 Lite para melhor custo-benefício) para gerar entre 10 e 15 etiquetas descritivas por vídeo a partir de uma taxonomia predefinida, facilitando buscas por palavras-chave complementares.

Armazenamento em índices especializados
Os embeddings são indexados em um índice k-NN do OpenSearch para buscas semânticas vetoriais, enquanto as etiquetas de metadados ficam em um índice de texto separado para correspondências por palavras-chave. Essa arquitetura dual permite otimizar cada tipo de busca independentemente.
Três formas de buscar: texto, vídeo e híbrida
A arquitetura suporta três modos de consulta distintos, cada um atendendo a casos de uso diferentes.
Busca por texto em vídeos
O usuário digita uma consulta em linguagem natural. O sistema converte essa consulta em um embedding utilizando a API síncrona do Amazon Nova Multimodal Embeddings e realiza uma busca de similaridade vetorial (k-NN) contra todos os segmentos indexados. Uma consulta como “pessoa caminhando na praia ao pôr do sol” encontra segmentos de vídeo com significado semelhante, não necessariamente com essas palavras exatas.
Busca vídeo a vídeo
A busca por similaridade também funciona ao contrário: seleciona-se um segmento de um vídeo já indexado e encontram-se segmentos similares de toda a biblioteca. Não há necessidade de invocar o modelo novamente — o embedding já existe no OpenSearch.
Busca híbrida
A abordagem mais robusta combina os dois métodos: busca vetorial por similaridade (70% do peso) com busca textual por palavras-chave (30% do peso). Segmentos que aparecem em ambas as consultas recebem uma pontuação combinada, entregando resultados mais precisos quando a qualidade das etiquetas é elevada.

Performance em escala de produção
Depois de indexar mais de 792 mil vídeos, o sistema foi testado em relação à velocidade de resposta:
- Busca semântica k-NN: ~76 ms (utilizando algoritmo HNSW com complexidade logarítmica)
- Busca textual BM25: ~30 ms
- Busca híbrida: ~106 ms
O armazenamento total necessário foi de 29,8 GB — 28,8 GB para o índice vetorial e 1 GB para o índice de texto. Todas as três modalidades de busca mantêm latências abaixo de 200 ms mesmo em escala de centenas de milhares de vídeos, atendendo aos requisitos típicos de aplicações interativas.
Implementando a solução na prática
Pré-requisitos
Para começar, é necessário ter acesso a uma conta AWS com Amazon Bedrock na região us-east-1, Python 3.9 ou superior, AWS CLI configurada, um domínio do OpenSearch Service com instâncias r6g.large ou maiores, um bucket Amazon S3 para armazenar vídeos e embeddings, e permissões apropriadas de Controle de Acesso à Identidade (IAM).
Configurando permissões
O primeiro passo é criar uma função IAM com permissões para invocar modelos do Amazon Bedrock, escrever em índices do OpenSearch e ler/escrever objetos no S3. A política deve permitir as ações específicas de invocação de modelos Nova, operações no OpenSearch e acesso aos buckets de vídeos e embeddings.
Criando índices no OpenSearch
É necessário criar dois índices do OpenSearch Service: um para embeddings vetoriais (k-NN) e outro para metadados de texto. O primeiro deve habilitar a funcionalidade k-NN com dimensão de 1.024 e usar o algoritmo HNSW com similitude de cosseno. O segundo segue a estrutura padrão de índice de texto com dois campos: identificador do vídeo, índice do segmento, e etiquetas.
Processando vídeos com Nova
A API assíncrona do Amazon Bedrock processa vídeos e gera embeddings. O sistema segmenta vídeos em trechos de 15 segundos, combina informações visuais e de áudio, e retorna os embeddings via S3. Como há um limite de 30 trabalhos simultâneos por conta, a implementação inclui uma fila de trabalhos com polling — submeter jobs até o limite, aguardar conclusão e submeter novos conforme slots ficam disponíveis.
Gerando etiquetas com Nova Pro
Após gerar embeddings, o sistema utiliza Nova Pro (ou Nova Lite para melhor custo-benefício) para extrair etiquetas descritivas de uma taxonomia predefinida. Isso enriquece a capacidade de busca por palavras-chave e melhora significativamente os resultados da busca híbrida.
Indexando dados no OpenSearch
Os embeddings e etiquetas são carregados no OpenSearch usando indexação em massa para eficiência. Cada segmento de vídeo gera uma entrada no índice vetorial com sua dimensão de 1.024 componentes, e outra entrada no índice de texto com suas etiquetas associadas.
Executando buscas
Após a ingestão, o sistema está pronto para receber consultas. Para buscas por texto em vídeos, o sistema converte a consulta em embedding usando a API síncrona do Amazon Nova e realiza uma busca de similaridade no índice k-NN. Para buscas vídeo a vídeo, recupera-se o embedding de um segmento de referência e realiza-se a mesma busca de similaridade. Buscas híbridas combinam os dois métodos, agregando pontuações ponderadas de ambos os índices.
Escalando para produção
Conforme o volume de vídeos cresce, recomenda-se utilizar AWS Batch para processar lotes de vídeos em paralelo em múltiplas instâncias, particionando o dataset entre diferentes trabalhadores. O monitoramento da saúde do cluster OpenSearch Service é importante para escalar nós de dados conforme o índice cresce. A arquitetura de dois índices escala bem porque buscas vetoriais e textuais podem ser otimizadas independentemente.
Os pesos da busca híbrida (70% vetor, 30% texto) podem ser ajustados conforme o caso de uso. Se as etiquetas forem de alta qualidade, aumentar o peso textual para 50% pode melhorar resultados para consultas específicas.
Considerações de custo e desempenho
O tempo de processamento de um vídeo depende de sua duração. Um vídeo de 45 segundos leva aproximadamente 70 segundos para ser totalmente processado pela API assíncrona. Escolher embeddings de 1.024 dimensões em vez de 3.072 reduz custos de armazenamento em três vezes com mínimo impacto em precisão.
A cobrança pelos embeddings ocorre por segundo de vídeo processado (R$ 0,00056 por segundo no modo de lote), então a duração total do vídeo é o fator determinante, não a dimensão dos embeddings. A API assíncrona é significativamente mais econômica que processar vídeos quadro a quadro.
Para o OpenSearch Service, instâncias r6g oferecem melhor relação preço-desempenho que gerações anteriores, e é possível implementar estratificação de dados para mover conteúdo frio para S3 e economizar ainda mais.
Limpeza de recursos
Ao finalizar os testes, para evitar cobranças contínuas, é importante deletar o domínio do OpenSearch Service, limpar e remover os buckets S3 usados para vídeos e embeddings, e remover qualquer função IAM criada especificamente para a solução. Cobranças pelo Amazon Bedrock baseiam-se em uso real, portanto nenhuma limpeza adicional é necessária para os modelos.
Abrindo caminhos para novos casos de uso
A solução apresentada oferece uma base sólida para buscas inteligentes em repositórios de vídeo em escala. A combinação de processamento multimodal com índices vetoriais mantém custos gerenciáveis mesmo com centenas de milhares de vídeos, enquanto entrega experiências de busca muito superiores aos métodos tradicionais.
Para aprofundar nos detalhes técnicos, consulte a documentação de Amazon Nova Multimodal Embeddings e Busca Híbrida com Amazon OpenSearch Service.
Fonte
Multimodal embeddings at scale: AI data lake for media and entertainment workloads (https://aws.amazon.com/blogs/machine-learning/multimodal-embeddings-at-scale-ai-data-lake-for-media-and-entertainment-workloads/)
Leave a Reply