O que é AlloyDB e Vertex AI Agent Builder?
Antes de mergulharmos no processo de construção, é importante entender o que são o AlloyDB e o Vertex AI Agent Builder e como eles se complementam.
O AlloyDB
é um serviço de banco de dados da Google Cloud Platform, baseado no PostgreSQL, otimizado para cargas de trabalho analíticas e transacionais. Ele oferece desempenho superior, escalabilidade e Alta disponibilidade, tornando-o ideal para armazenar e gerenciar grandes volumes de dados de comércio eletrônico.
O Vertex AI Agent Builder é uma ferramenta do Google Cloud que permite criar agentes de IA personalizados. Ele facilita a construção de interfaces conversacionais que podem interagir com os usuários, responder a perguntas e fornecer recomendações.
Ao combinar o poder de armazenamento e análise do AlloyDB com a capacidade de interação do Vertex AI Agent Builder, é possível criar um assistente de compras inteligente que realmente entende as necessidades dos usuários e oferece soluções personalizadas.
Passos para Criar o Assistente de Compras Inteligente – Parte 1
Nesta primeira parte do nosso guia, vamos nos concentrar na configuração do AlloyDB e na preparação dos dados para o nosso assistente de compras.
Passo 1: Criar uma instância AlloyDB e carregar o conjunto de dados de e-commerce
O primeiro passo é criar uma instância AlloyDB na Google Cloud Platform. Para isso, você precisará de uma conta no Google Cloud e um projeto configurado. Se você ainda não tem, pode seguir este tutorial para configurar seu projeto e ganhar $300 em créditos gratuitos
.
Com o projeto configurado, acesse o console do Google Cloud e procure por AlloyDB. Clique em “Criar cluster” e siga as instruções para configurar sua instância.
- Dê um nome ao seu cluster, como “shopping-cluster”.
- Defina uma senha forte para o usuário “postgres”.
- Escolha a versão do PostgreSQL (recomendamos a versão mais recente).
- Selecione a região mais próxima de você (ex: us-central1).
- Mantenha as configurações de rede como padrão.
Após criar o cluster, você precisará carregar um conjunto de dados de e-commerce para o AlloyDB. Este conjunto de dados pode conter informações sobre produtos, categorias, clientes e avaliações.
Passo 2: Habilitar as extensões pgvector e modelos de IA generativa no AlloyDB
Para aproveitar ao máximo o poder do AlloyDB, é necessário habilitar as extensões pgvector e os modelos de IA generativa. Estas extensões permitem realizar buscas de similaridade vetorial e gerar embeddings a partir de texto. Para habilitar estas extensões, você precisará acessar o AlloyDB Studio e executar alguns comandos SQL:
CREATE EXTENSION IF NOT EXISTS google_ml_integration CASCADE;
CREATE EXTENSION IF NOT EXISTS vector;
Passo 3: Gerar Embeddings a partir das descrições de produtos
Com as extensões habilitadas, você pode gerar embeddings a partir das descrições de produtos. Os embeddings são representações vetoriais de texto que capturam o significado semântico das palavras. Isso permite realizar buscas de similaridade mais precisas e relevantes. Para gerar os embeddings, você precisará usar um modelo de IA generativa, como o text-embedding-004 do Vertex AI.
No AlloyDB Studio, execute o seguinte comando SQL para criar os embeddings:
UPDATE apparels
SET embedding = embedding(text-embedding-004,
pdt_desc)
WHERE pdt_done IS TRUE;
Este comando irá atualizar a tabela "apparels" com os embeddings gerados a partir das descrições de produtos na coluna "pdt_desc".
Passo 4: Realizar busca de similaridade de cosseno em tempo real
Com os embeddings gerados, você pode realizar buscas de similaridade de cosseno em tempo real. Isso permite encontrar produtos que são semanticamente similares ao texto de busca do usuário. Para realizar a busca, você precisará usar a função "vector_cosine_distance" do pgvector. No AlloyDB Studio, execute o seguinte comando SQL para realizar a busca:
CREATE TABLE xyz AS
SELECT
pdt_desc AS Aliterature,
pdt_desc AS content,
1 - (embedding <=> pgvector.text \
I want womens tops ,pink casual only pure cotton\
) AS AS_USERTEXT
FROM apparels
ORDER BY
embedding <#> textembedding_001('I want womens tops ,pink casual only pure cotton')::vector
LIMIT 5;
Este comando SQL irá buscar os 5 produtos mais similares ao texto de busca "I want womens tops, pink casual only pure cotton".
Passo 5: Implantar a solução em Cloud Run Functions serverless
Para tornar nosso assistente de compras inteligente acessível via web, precisamos implantá-lo em um ambiente serverless. Uma ótima opção para isso é o Google Cloud Run Functions. Para implantar a solução, você precisará criar uma função no Cloud Run Functions e configurar um gatilho HTTP.
- Acesse o console do Google Cloud e procure por Cloud Run Functions.
- Clique em “Criar função” e siga as instruções para configurar sua função.
- Defina um nome para sua função, como “retail-engine”.
- Selecione a região mais próxima de você (ex: us-central1).
- Permita invocações não autenticadas para que a função seja acessível via web.
- Selecione o tempo limite para 180 segundos, assim como a linguagem Java 17.
Com a função criada e o gatilho HTTP configurado, você pode implantar o código do seu assistente de compras inteligente no Cloud Run Functions.