O Que É um Banco de Dados Vetorial? Armazenar e Buscar Embeddings Explicado
Um banco de dados vetorial é um armazenamento construído para indexar e buscar vetores de embedding de alta dimensão por similaridade, impulsionando busca semântica e geração aumentada por recuperação.
A IA moderna representa texto, imagens e outros dados como embeddings - longas listas de números que capturam significado. Para encontrar itens semelhantes, você busca esses vetores por proximidade, e não por correspondência exata. Um banco de dados vetorial é feito exatamente para isso: busca rápida de similaridade sobre milhões de embeddings.
O que é um banco de dados vetorial
Um banco de dados vetorial armazena vetores de embedding e permite que você consulte os mais próximos de um vetor dado. Em vez de casar palavras-chave, ele encontra itens cujo significado é mais próximo. Exemplos incluem Pinecone, Weaviate, Qdrant, Milvus e pgvector para PostgreSQL.
Como funciona a busca de similaridade
Comparar uma consulta com cada vetor armazenado é lento demais em escala, então bancos de dados vetoriais usam índices de vizinho mais próximo aproximado (ANN) como HNSW. Eles trocam uma pequena quantidade de precisão por uma velocidade enorme, retornando os vetores mais próximos em milissegundos entre milhões de entradas.
O que eles impulsionam
Bancos de dados vetoriais sustentam busca semântica, recomendação, deduplicação e geração aumentada por recuperação (RAG), na qual um LLM recupera documentos relevantes por similaridade de embedding antes de responder. Eles são uma peça central das pilhas modernas de aplicações de IA.
Bancos de dados vetoriais no CI
Código que faz embedding de dados e consulta o banco de dados é testado no CI contra um armazenamento vetorial local ou efêmero pré-carregado com vetores de amostra.
steps:
- run: docker compose up -d qdrant # ephemeral vector DB
- run: pytest tests/retrieval # seed vectors, assert top-kNota da Latchkey
Gerar embeddings para pré-carregar um índice de teste pode ser acelerado por GPU e lento. Na Latchkey, rode testes pesados em embeddings em runners com GPU ou maiores, faça cache do modelo de embedding e dos vetores de amostra entre execuções, e faça auto-retry dos pulls transitórios da imagem do armazenamento vetorial ou dos pesos do modelo.
Principais conclusões
- Um banco de dados vetorial indexa e busca embeddings de alta dimensão por similaridade em vez de correspondência exata.
- Índices de vizinho mais próximo aproximado como HNSW tornam a busca de similaridade rápida em escala.
- Bancos de dados vetoriais impulsionam busca semântica e RAG, e são testados no CI contra um armazenamento efêmero pré-carregado.