Informações gerais sobre a integração da Vertex AI com o Spanner

Esta página oferece uma visão geral da integração da Vertex AI com o Spanner. A integração da Vertex AI com o Spanner funciona com bancos de dados GoogleSQL e PostgreSQL.

A integração da Vertex AI com o Spanner ajuda a acessar modelos de ML de regressão e classificação hospedados na Vertex AI pela interface do GoogleSQL e do PostgreSQL. Isso ajuda a integrar perfeitamente a funcionalidade de veiculação de previsões de ML com operações gerais de acesso a dados do Spanner realizadas usando consultas DQL/DML.

Benefícios da integração da Vertex AI com o Spanner

Gerar previsões de ML usando a integração da Vertex AI com o Spanner oferece vários benefícios em comparação com a abordagem em que o acesso aos dados do Spanner e ao endpoint de previsão da Vertex AI são realizados separadamente:

  • Performance:
    • Melhor latência: a integração da Vertex AI com o Spanner que se comunica diretamente com o serviço da Vertex AI elimina viagens de ida e volta adicionais entre um nó de computação que executa um cliente do Spanner e o serviço da Vertex AI.
    • Melhor capacidade de processamento/paralelismo: a integração da Vertex AI com o Spanner é executada na infraestrutura distribuída de processamento de consultas do Spanner, que oferece suporte à execução de consultas altamente paralelizadas.
  • Experiência do usuário:
    • A capacidade de usar uma interface SQL única, simples, coerente e familiar para facilitar a transformação de dados e os cenários de serviço de ML no nível de escala do Spanner reduz a barreira de entrada do ML e permite uma experiência do usuário muito mais tranquila.
  • Custos:
    • A integração da Vertex AI com o Spanner usa a capacidade de computação do Spanner para mesclar os resultados de cálculos de ML e da execução de consulta SQL, o que elimina a necessidade de provisionar uma computação adicional (por exemplo, no Compute Engine ou no Google Kubernetes Engine) para isso.

Como funciona a integração da Vertex AI com o Spanner?

A integração da Vertex AI com o Spanner não hospeda modelos de ML, mas depende da infraestrutura de serviços da Vertex AI. Não é necessário treinar um modelo usando a Vertex AI para usá-lo com a integração da Vertex AI do Spanner, mas é necessário implantá-lo em um endpoint da Vertex AI.

Para treinar modelos com dados armazenados no Spanner, use o seguinte:

A integração da Vertex AI com o Spanner estende as seguintes funções para usar modelos de ML:

Como usar as funções de integração da Vertex AI com o Spanner

Um modelo na integração da Vertex AI com o Spanner pode ser usado para gerar previsões ou embeddings de texto no seu código SQL usando as funções ML.PREDICT. Estas são as funções:

GoogleSQL

É possível usar a seguinte função de previsão de ML para GoogleSQL:

ML.PREDICT

É necessário registrar o modelo usando a instrução DDL CREATE MODEL antes de usá-lo com a função ML.PREDICT.

Também é possível usar SAFE.ML.PREDICT para retornar null em vez de um erro nas previsões. Isso é útil ao executar consultas grandes em que algumas previsões com falha são toleráveis.

PostgreSQL

Você pode usar a seguinte função de previsão de ML para PostgreSQL:

spanner.ML_PREDICT_ROW

Para usar as funções, selecione um modelo no Model Garden da Vertex AI ou use um modelo implantado na Vertex AI.

Para mais informações sobre como implantar um modelo em um endpoint na Vertex AI, consulte Implantar um modelo em um endpoint.

Para mais informações sobre como usar essas funções para gerar uma previsão de ML, consulte Gerar previsões de ML usando SQL.

Para mais informações sobre como usar essas funções para gerar embeddings de texto, consulte Usar embeddings de texto.

Preços

Não há cobranças extras do Spanner quando você o usa com a integração da Vertex AI. No entanto, há outros custos potenciais associados a esse recurso:

  • Você paga as taxas padrão da previsão on-line da Vertex AI. O valor total depende do tipo de modelo usado. Alguns tipos de modelo têm uma taxa fixa por hora, dependendo do tipo de máquina e do número de nós usados. Alguns tipos de modelo têm taxas por chamada. Recomendamos que você implante o último em um projeto dedicado em que você definiu cotas de previsão explícitas.

  • Você paga as taxas padrão pela transferência de dados entre o Spanner e a Vertex AI. O valor total depende da região que hospeda o servidor que executa a consulta e da região que hospeda o endpoint chamado. Para minimizar os custos, implante os endpoints da Vertex AI na mesma região da sua instância do Spanner. Ao usar configurações de instância multirregionais ou vários endpoints da Vertex AI, implante os endpoints no mesmo continente.

SLA

Como a disponibilidade de previsão on-line da Vertex AI é menor, configure corretamente os modelos de ML do Spanner para manter a alta disponibilidade do Spanner ao usar a integração da Vertex AI com o Spanner:

  1. Os modelos de ML do Spanner precisam usar vários endpoints da Vertex AI no back-end para ativar o failover.
  2. Os endpoints da Vertex AI precisam estar em conformidade com o SLA da Vertex AI.
  3. Os endpoints da Vertex AI precisam provisionar capacidade suficiente para lidar com o tráfego de entrada.
  4. Os endpoints da Vertex AI precisam usar regiões separadas próximas ao banco de dados do Spanner para evitar interrupções regionais.
  5. Os endpoints da Vertex AI precisam usar projetos separados para evitar problemas com cotas de previsão por projeto.

O número de endpoints redundantes da Vertex AI depende do SLA e do número de linhas nas consultas do Spanner:

SLA do Spanner SLA da Vertex AI 1 linha 10 linhas 100 linhas 1.000 linhas
99,99% 99,9% 2 2 2 3
99,99% 99,5% 2 3 3 4
99,999% 99,9% 2 2 3 3
99,999% 99,5% 3 3 4 4

Os endpoints da Vertex AI não precisam hospedar exatamente o mesmo modelo. Recomendamos que você configure o modelo de ML do Spanner para ter um modelo principal, complexo e com uso intensivo de computação como primeiro endpoint. Os endpoints de failover subsequentes podem apontar para modelos simplificados que exigem menos computação, escalonam melhor e podem absorver picos de tráfego.

Limitações

  • A entrada e a saída do modelo precisam ser um objeto JSON.

Compliance

O Assured Workloads não oferece suporte à API Vertex AI Prediction. Ao ativar uma restrição de uso de recursos, a API Vertex AI e o recurso de integração da Vertex AI com o Spanner são desativados.

Além disso, recomendamos que você crie um perímetro do VPC Service Controls para garantir que seus bancos de dados de produção não possam se conectar aos endpoints da Vertex AI em projetos de não produção que talvez não tenham a configuração de compliance adequada.