Quantização vetorial: pesquisa de escala e aplicativos de IA generativa
Update 12/12/2024: The upcoming vector quantization capabilities mentioned at the end of this blog post are now available in public preview:
Support for ingestion and indexing of binary (int1) quantized vectors: gives developers the flexibility to choose and ingest the type of quantized vectors that best fits their requirements.
Automatic quantization and rescoring: provides a native mechanism for scalar quantization and binary quantization with rescoring, making it easier for developers to implement vector quantization entirely within Atlas Vector Search.
View the documentation to get started.
Estamos muito satisfeitos em anunciar um conjunto robusto de recursos de quantização vetorial no MongoDB Atlas Vector Search. Esses recursos reduzirão o tamanho dos vetores e, ao mesmo tempo, preservarão o desempenho, permitindo que os desenvolvedores criem aplicativos avançados de pesquisa semântica e IA generativa com mais escala - e a um custo menor. Além disso, diferentemente dos bancos de dados vetoriais relacionais ou de nicho, o modelo de documento flexível do MongoDB, associado a vetores quantizados, permite maior agilidade para testar e implementar diferentes modelos de incorporação de forma rápida e fácil.
O suporte à ingestão de vetores escalares quantizados já está disponível de forma geral e será seguido por várias novas versões nas próximas semanas. Continue lendo para saber como funciona a quantização de vetores e visite nossa documentação para começar!
Os desafios dos aplicativos vetoriais de grande escala
Embora o uso de vetores tenha aberto uma série de novas possibilidades, como resumo de conteúdo e análise de sentimentos, chatbots de linguagem natural e geração de imagens, o desbloqueio de insights em dados não estruturados pode exigir o armazenamento e a pesquisa em bilhões de vetores, o que pode se tornar inviável rapidamente.
Os vetores são, na verdade, matrizes de números de ponto flutuante que representam informações não estruturadas de uma forma que os computadores possam entender (variando de algumas centenas a bilhões de matrizes) e, à medida que o número de vetores aumenta, também aumenta o tamanho do índice necessário para pesquisá-los. Como resultado, os aplicativos baseados em vetores em grande escala que usam vetores de fidelidade total geralmente têm altos custos de processamento e tempos de consulta lentos, o que prejudica sua escalabilidade e desempenho.
Quantização vetorial para redução de custos, escalabilidade e desempenho
A quantização de vetores, uma técnica que comprime vetores e, ao mesmo tempo, preserva sua similaridade semântica, oferece uma solução para esse desafio. Considere converter uma imagem totalmente digitalizada em escala de cinza para reduzir o espaço de armazenamento em um computador. Isso envolve a simplificação das informações de cores de cada pixel, agrupando cores semelhantes em canais de cores primárias ou "compartimentos de quantização," e, em seguida, representando cada pixel com um único valor de seu compartimento. Os valores binned são então usados para criar uma nova imagem em escala de cinza com tamanho menor, mas mantendo a maioria dos detalhes originais, conforme mostrado na Figura 1.
A quantização de vetores funciona de forma semelhante, diminuindo os vetores de fidelidade total em menos bits para reduzir significativamente os custos de memória e armazenamento sem comprometer os detalhes importantes. Manter esse equilíbrio é fundamental, pois os aplicativos de pesquisa e AI precisam fornecer insights relevantes para serem úteis.
Dois métodos eficazes de quantização são o escalar (conversão de um ponto flutuante em um número inteiro) e o binário (conversão de um ponto flutuante em um único bit de 0 ou 1). Os recursos de quantização atuais e futuros capacitarão os desenvolvedores a maximizar o potencial do Atlas Vector Search.
O benefício de maior impacto da quantização vetorial é o aumento da escalabilidade e da redução de custos por meio da redução de recursos de computação e do processamento eficiente de vetores. E quando combinada com o Search Nodes - a infraestrutura dedicada do MongoDB para escalabilidade independente por meio do isolamento da carga de trabalho e da infraestrutura otimizada para memória para pesquisa semântica e cargas de trabalho de IA generativas - a quantização vetorial pode reduzir ainda mais os custos e melhorar o desempenho, mesmo no volume e na escala mais altos, para desbloquear mais casos de uso.
"A Cohere está satisfeita por ser um dos primeiros parceiros a apoiar a ingestão de vetores quantizados no MongoDB Atlas", disse Nils Reimer, VP de Search da AI da Cohere. “Modelos de incorporação, como o Cohere Embed v3, ajudam as empresas a ver resultados de pesquisa mais precisos com base em suas próprias fontes de dados. Estamos ansiosos para fornecer a nossos clientes em comum aplicativos precisos e econômicos para suas necessidades.”
Em nossos testes, em comparação com os vetores de fidelidade total, os vetores do tipo BSON - o formato de serialização binária semelhante ao JSON do MongoDB para armazenamento eficiente de documentos - reduziram o tamanho do armazenamento em 66% (de 41 GB para 14 GB). E, conforme mostrado nas Figuras 2 e 3, os testes ilustram uma redução significativa de memória (73% a 96% menos) e melhorias de latência usando vetores quantizados, em que a quantização escalar preserva o desempenho de recuperação e o desempenho de recuperação da quantização binária é mantido com a restauração - um processo de avaliação de um pequeno subconjunto das saídas quantizadas em relação a vetores de fidelidade total para melhorar a precisão dos resultados da pesquisa.
Além disso, graças à vantagem de custo reduzido, a quantização vetorial facilita casos de uso de vetores múltiplos mais avançados que teriam sido muito computacionalmente taxativos ou proibitivos em termos de custo para serem implementados. Por exemplo, a quantização vetorial pode ajudar os usuários a:
-
Fazer testes A/B facilmente com diferentes modelos de incorporação usando vários vetores produzidos a partir do mesmo campo de origem durante a criação de protótipos. O modelo de documento do MongoDB, juntamente com vetores quantizados, permite maior agilidade a custos mais baixos. O esquema flexível de documento permite que os desenvolvedores implementem e comparem rapidamente os resultados dos modelos incorporados sem a necessidade de reconstruir o índice ou provisionar um modelo de dados totalmente novo ou um conjunto de infraestruturas.
-
Melhorar ainda mais a relevância dos resultados de pesquisa ou do contexto para modelos de linguagem grandes (LLMs) incorporando vetores de várias fontes de relevância, como diferentes campos de origem (descrições de produtos, imagens de produtos etc.) incorporados no mesmo modelo ou em modelos diferentes.
Como começar e o que vem a seguir
Agora, com suporte para a ingestão de vetores quantizados escalares, os desenvolvedores podem importar e trabalhar com vetores quantizados de seus fornecedores de modelos de incorporação de escolha (como Cohere, Nomic, Jina, Mixedbread e outros) — diretamente no Atlas Vector Search. Leia a documentação e o tutorial para começar.
E, nas próximas semanas, recursos adicionais de quantização de vetores equiparão os desenvolvedores com um conjunto abrangente de ferramentas para criar e otimizar aplicativos com vetores quantizados:
O suporte à ingestão de vetores binários quantizados permitirá reduzir ainda mais o espaço de armazenamento, possibilitando maior economia de custos e oferecendo aos desenvolvedores a flexibilidade de escolher o tipo de vetor quantizado que melhor se adapta às suas necessidades.
A quantização e a repontuação automáticas fornecerão recursos nativos para quantização escalar, bem como para quantização binária com repontuação no Atlas Vector Search, facilitando para os desenvolvedores aproveitar ao máximo a quantização vetorial dentro da plataforma.
Com suporte para vetores quantizados no MongoDB Atlas Vector Search, você pode construir pesquisa semântica escalável e de alto desempenho e aplicativos de IA generativa com flexibilidade e relação custo-eficiência. Confira estes recursos para começar a documentação e o tutorial.
Acesse nosso guia de início rápido para começar a usar o Atlas Vector Search hoje mesmo.