Como a Milvus transformou o sistema de desduplicação de vídeo do BIGO para otimizar o rendimento e a experiência do utilizador

<200ms
tempo de resposta de pesquisa com uma elevada taxa de recuperação
>700 milhões
indexação e gestão de vectores de incorporação
Aumento significativo
débito de consulta sem comprometer o desempenho
Milvus has done an extraordinary job in revolutionizing Likee's video deduplication system, which significantly fueled the growth of BIGO's short-video business.
Xinyang Guo
Sobre o BIGO
A BIGO Technology (BIGO) é uma empresa tecnológica em rápida expansão sediada em Singapura, com mais de 30 escritórios e seis centros de I&D em todo o mundo. Alimentada por tecnologias de Inteligência Artificial, a BIGO oferece produtos e serviços baseados em vídeo, como o Bigo Live para transmissão em direto e o Likee para partilha de vídeos curtos, tendo-se tornado extremamente popular com mais de 400 milhões de utilizadores em 150 países.
Desafios: Remoção de grandes quantidades de vídeos duplicados
A Likee é uma plataforma global incrível que permite aos utilizadores expressarem-se e partilharem os seus momentos através de vídeos curtos. No entanto, com dezenas de milhões de utilizadores a gerar vídeos diariamente, o Likee enfrenta um desafio significativo para melhorar a experiência do utilizador e recomendar conteúdos de alta qualidade. Um dos maiores desafios que o Likee tem de ultrapassar é a enorme quantidade de vídeos duplicados carregados na plataforma.
Para resolver este problema, o Likee precisa de uma solução que detecte e remova os vídeos duplicados de forma rápida e eficiente. Este processo é complicado e exige uma compreensão abrangente das caraterísticas distintas de cada vídeo e a capacidade de os comparar e contrastar rapidamente.
Anteriormente, o Likee utilizava o Faiss, uma biblioteca para pesquisa de semelhanças e agrupamento de vectores densos. No entanto, o Faiss tinha dificuldade em gerir grandes quantidades de vectores e tinha uma resposta de consulta lenta e uma taxa de transferência de consulta limitada. Assim, a equipa do Likee precisava urgentemente de uma solução mais eficiente para a pesquisa e deteção de semelhanças.
Solução: Capacitando a pesquisa de similaridade de vídeo com Milvus
O Milvus é um banco de dados vetorial de código aberto criado para armazenar, indexar e consultar vetores de incorporação, com pesquisa de similaridade extremamente rápida. Com o Milvus, a equipa de engenharia da Likee criou um sistema de deduplicação mais eficiente para efetuar pesquisas em menos de 200 ms, mantendo uma elevada taxa de recuperação. A Likee também beneficiou da escalabilidade do Milvus, o que resultou num melhor rendimento das consultas vectoriais e numa maior eficiência de trabalho.
Como o Likee identifica vídeos duplicados
O sistema de deduplicação do Likee corta cada vídeo recém-carregado em 15-20 quadros e converte cada um deles em um vetor de caraterísticas. Depois, o sistema procura os k vectores mais semelhantes de uma base de dados que armazena mais de 700 milhões de vectores correspondentes a todos os vídeos existentes. Em seguida, o sistema determina que fitas são duplicadas e precisam de ser removidas.
O diagrama abaixo ilustra a estrutura do sistema de deduplicação do Likee. Primeiro, os novos vídeos são armazenados no Kafka, um sistema de armazenamento de dados, e consumidos pelos consumidores do Kafka. De seguida, o sistema utiliza modelos de aprendizagem profunda para converter os vídeos em embeddings e enviá-los para o auditor de semelhanças. Antes de serem carregados para outras pesquisas, os embeddings são indexados pelo Milvus e armazenados no Ceph. Por fim, o sistema armazena os IDs de vídeo que correspondem a esses embeddings no TiDB ou no Pika, duas bases de dados relacionais.
A arquitetura do sistema de deduplicação do Likee
Como é que o Milvus potencia a pesquisa por semelhança do Likee
O diagrama abaixo ilustra as etapas envolvidas num procedimento de pesquisa por similaridade.
- Para realizar uma pesquisa de similaridade de vídeo, o Milvus primeiro realiza uma pesquisa em lote para recuperar os 100 principais vetores semelhantes a cada vetor de caraterística extraído de um novo vídeo. Cada vetor semelhante é associado ao seu ID de vídeo correspondente.
- Em seguida, o Milvus remove os vídeos duplicados comparando os IDs dos vídeos e recuperando os vectores de caraterísticas dos restantes vídeos a partir do TiDB ou do Pika.
- Por fim, o Milvus calcula e pontua a semelhança entre os vectores de caraterísticas recuperados e os do vídeo consultado. O ID do vídeo com a pontuação mais elevada é devolvido como resultado.
Como o Milvus ajuda a pesquisa de similaridade do Likee
Resultados: Melhoria do rendimento da consulta com uma resposta de pesquisa mais rápida
O Milvus, um motor de pesquisa vetorial de elevado desempenho, desempenhou um papel vital no sistema de desduplicação de vídeo da Likee, melhorando significativamente a experiência do utilizador e o crescimento do negócio de vídeos curtos da BIGO. Utilizando o Milvus, a Likee pode concluir uma pesquisa em menos de 200 ms, garantindo uma elevada taxa de recuperação. O Milvus é também horizontalmente escalável, permitindo à Likee aumentar significativamente o rendimento das consultas vectoriais, melhorando a eficiência do sistema sem comprometer o desempenho.
Para além da deduplicação de vídeo, a Bigo tem planos para utilizar a Milvus para outros fins relacionados com vídeo, como a análise de sentimentos, o reconhecimento de objectos e a recomendação personalizada de vídeos. A BIGO e a Milvus estão entusiasmadas com a expansão da sua cooperação nestas áreas e noutras.
We plan to expand the use of Milvus in different fields like content moderation and restriction and customized video services. BIGO and Milvus working together will benefit both businesses and I look forward to Milvus and its community to keep growing and prosper.
Xinyang Guo