O Vector assist é uma extensão do Cloud SQL para PostgreSQL que simplifica a implementação e a gestão das suas cargas de trabalho de vetores do Cloud SQL. Fornece uma estrutura SQL declarativa que ajuda a configurar capacidades de pesquisa vetorial prontas para produção, como a geração de incorporações, a otimização de consultas e a criação de índices. Esta estrutura reduz a complexidade das cargas de trabalho vetoriais através do seguinte:
- Simplificar a declaração de intenção: os requisitos (como tabela, coluna de texto ou objetivo de recordação) são declarados através de funções SQL.
- Automatizar práticas recomendadas: gera comandos SQL otimizados, também conhecidos como recomendações, para configurar a sua carga de trabalho vetorial usando a especificação vetorial definida e um algoritmo de ajuste automático otimizado que calcula a configuração ideal do índice.
- Oferecer transparência e controlo: fornece explicações claras para cada recomendação quando automatiza tarefas que lhe permitem rever, modificar e aplicar recomendações ao seu ritmo.
- Ativar a criação rápida de protótipos: permite implementar rapidamente uma configuração de pesquisa vetorial bem ajustada, reduzindo o tempo desde o conceito até à produção.
- Foco na facilidade de utilização: simplifica a complexidade da pesquisa semântica, colmatando a lacuna entre os requisitos empresariais e de engenharia.
Com a assistência vetorial, pode criar aplicações completas com funcionalidades de pesquisa semântica com uma configuração simplificada.
Como funciona a assistência vetorial
A utilização da ajuda vetorial requer que defina as suas especificações vetoriais. A estrutura usa estas especificações de vetores, também conhecidas como especificação de vetores, para gerar os passos necessários para criar um índice de vetores. O Vector assist produz os passos necessários para implementar a sua carga de trabalho vetorial como recomendações. Sempre que modificar a especificação do vetor, a ajuda vetorial volta a gerar as recomendações.
Depois de gerar o índice vetorial através destes passos recomendados, pode usar a ajuda vetorial para gerar consultas de pesquisa otimizadas.
Especificação de assistência vetorial
A configuração da especificação do índice de vetores, ou especificação de vetores, é o primeiro passo para usar a assistência vetorial. Uma especificação de vetor é um objeto no qual define a intenção e os requisitos da sua carga de trabalho de vetor. Inclui todas as informações necessárias, incluindo:
- As tabelas e as colunas relevantes (texto ou vetor)
- Incorporação de preferências do modelo (se usar a geração de incorporações)
- Tipo de índice preferido, como
HNSWouIVFFlat. - Segmentar a capacidade de memorização para consultas de pesquisa
- Limitações de memória ou outras restrições de desempenho
Define a especificação do vetor através da função
vector_assist.define_spec
e pode modificá-la em qualquer altura. O sistema atribui a cada especificação um ID exclusivo e armazena-o numa tabela denominada vector_assist.vector_specs.
O Vector assist deduz as entradas de especificação e um algoritmo de ajuste automático otimizado que calcula a configuração do índice ideal. Embora a assistência vetorial use estes valores para simplificar o processo de desenvolvimento, pode personalizá-los para corresponder às suas preferências.
Recomendações de assistência vetorial
Depois de definir a especificação vetorial, a assistência vetorial processa a sua entrada e gera recomendações. Estas recomendações são uma lista ordenada de passos úteis, normalmente comandos SQL, que tem de executar para implementar a sua carga de trabalho vetorial de acordo com as suas especificações. Cada recomendação inclui:
- A consulta SQL a executar.
- Uma explicação detalhada do que a consulta faz e por que motivo é recomendada.
- Informações sobre potenciais compromissos ou custos, como o tamanho estimado do índice ou o tempo de compilação.
O Vector ajuda a armazenar recomendações numa tabela denominada vector_assist.recommendation, e pode revê-las, modificá-las e aplicá-las individualmente ou no seu conjunto.
Sempre que modifica a especificação vetorial para a sua carga de trabalho, a assistência vetorial volta a gerar as recomendações para agir em conformidade com as especificações atualizadas.
Limitações
Quando usar a assistência vetorial com as suas instâncias do Cloud SQL para PostgreSQL, considere as seguintes limitações:
- A assistência vetorial só é compatível com as versões 12 e posteriores do PostgreSQL.
- Embora o Vector Assist suporte todas as versões
pgvector, recomendamos que use a versão mais recente para um desempenho e um suporte de funcionalidades ideais. Para mais informações, consulte opgvectorregisto de alterações. - Se a sua instância usar a extensão
google_ml_integrationpara gerar incorporações, as respetivas restrições também se aplicam quando usa a assistência vetorial. Para mais informações, consulte a vista geral da gestão de pontos finais de modelos. - A assistência vetorial só suporta os tipos de índice
HNSWeIVFFlat. - A assistência vetorial só suporta modelos de incorporação de texto para gerar automaticamente incorporações e usa o
text_column_namecomo parâmetro de entrada. Se a sua carga de trabalho de vetores exigir um modelo de incorporação multimodal, use a extensãogoogle_ml_integrationou outra extensão para gerar manualmente estas incorporações antes de usar a assistência vetorial para ativar a pesquisa semântica nestas incorporações.