A IA do AlloyDB é uma extensão avançada do AlloyDB para PostgreSQL, projetada para integrar o processamento de vetores de alta performance diretamente no banco de dados relacional de nível empresarial. Ela permite que os desenvolvedores criem aplicativos sofisticados e inteligentes que entendam o significado semântico dos dados em formatos estruturados e não estruturados. Ao unificar os recursos de SQL com a tecnologia de pesquisa vetorial de ponta, a IA do AlloyDB oferece uma plataforma única e pronta para IA para gerenciamento de dados e fluxos de trabalho de geração aumentada por recuperação (RAG), eliminando a necessidade de implantar e gerenciar um banco de dados vetorial separado.
Arquitetura e performance principais
O AlloyDB usa a extensão pgvector do PostgreSQL para a funcionalidade de vetor. Ele oferece suporte ao índice HNSW popular, bem como ao índice Scalable Nearest Neighbors (ScaNN), um algoritmo de pesquisa vetorial de última geração derivado de anos de pesquisa da Pesquisa Google. Essa integração profunda ao ambiente do PostgreSQL permite operações de alta velocidade compatíveis com pgvector e consultas semânticas avançadas.
Performance do índice ScaNN
O índice ScaNN oferece vantagens de velocidade substanciais em relação ao índice HNSW (Hierarchical Navigable Small Worlds) padrão do PostgreSQL, fornecendo operações vetoriais rápidas necessárias para cargas de trabalho exigentes de IA:
| Operação | Ganho de performance (em comparação com o índice HNSW padrão do PostgreSQL) | Recursos |
|---|---|---|
| Criação de índice | Até 10 vezes mais rápido | Criação de índice paralelo |
| Consultas de pesquisa vetorial | Até 4 vezes mais rápido | Manutenção automática de índice |
| Consultas de pesquisa vetorial filtradas | Até 10 vezes mais rápido | Observabilidade de nível empresarial |
Filtragem adaptativa e otimização de consultas
O índice ScaNN está totalmente integrado ao planejador de consultas do PostgreSQL para garantir a performance ideal para consultas híbridas que envolvem similaridade vetorial e filtros de metadados estruturados padrão.
- Filtragem adaptativa:esse mecanismo garante a performance ideal quando filtros, junções e índices de vetores são usados simultaneamente. Ele funciona observando as estatísticas de execução de consultas no ambiente de execução, aprendendo a seletividade dos filtros e ajustando de forma adaptativa o plano de execução para determinar a ordem mais eficiente de aplicação de filtros e pesquisa vetorial.
- Filtragem inline:específica para o algoritmo ScaNN, a filtragem inline é uma estratégia de otimização que executa a pesquisa vetorial e a avaliação de filtros de metadados em conjunto. Ela aproveita índices secundários do PostgreSQL (como árvores B, GIN ou GiST) para criar uma lista curta (bitmap) de linhas que atendem aos critérios de filtro. A verificação vetorial subsequente só calcula distâncias para vetores contidos nesse conjunto pré-filtrado, reduzindo drasticamente a sobrecarga computacional, especialmente quando os filtros são moderadamente seletivos.
Integração perfeita com a plataforma de agentes do Gemini Enterprise
A IA do AlloyDB foi projetada para integração integrada com o ecossistema da Agent Platform, permitindo a transformação e o enriquecimento de dados diretamente no banco de dados usando SQL.
Geração automatizada de embeddings
A plataforma oferece suporte à geração automatizada de embeddings usando a extensão google_ml_integration. Esse recurso permite que dados operacionais (texto, imagens e vídeo) sejam convertidos em embeddings vetoriais usando modelos da Agent Platform, como text-embedding-005.
- Registro de modelo:os modelos da Agent Platform (embedding e generativo) são registrados no banco de dados usando o procedimento
google_ml.create_model. - Colunas virtuais:os embeddings podem ser gerados e mantidos automaticamente em uma coluna gerada usando a função
embedding(), garantindo que os dados vetoriais permaneçam sincronizados com os dados da coluna de origem:
ALTER TABLE my_table
ADD COLUMN embedding vector(768)
GENERATED ALWAYS AS (embedding('text-embedding-005', source_column)) STORED;
Consulta e enriquecimento de IA generativa
Com os embeddings vetoriais armazenados, os desenvolvedores podem realizar pesquisas semânticas sofisticadas usando o operador de similaridade vetorial (<=>) no SQL padrão. Além disso, os resultados dessas pesquisas podem ser transmitidos diretamente para modelos de IA generativa, como gemini-2.0-flash-001, usando funções como google_ml.generate_content para enriquecimento de consultas com base em RAG e geração de saída fácil de usar.