Instalar o AlloyDB Omni com o AlloyDB AI

Selecione uma versão da documentação:

Nesta página, mostramos como instalar o AlloyDB Omni e integrar o AlloyDB AI nele.

O AlloyDB AI é um pacote de recursos incluídos no AlloyDB Omni que permitem criar aplicativos empresariais de IA generativa. Para mais informações sobre a funcionalidade de ML do AlloyDB, consulte Criar aplicativos de IA generativa.

Com o AlloyDB Omni e o AlloyDB AI, é possível consultar modelos remotos de ML para trabalhar com previsões on-line e embeddings de texto gerados por modelos de ML. O AlloyDB Omni com a IA do AlloyDB também pode processar embeddings de vetores de outros conteúdos, como uma imagem, por exemplo, se você usar a interface google_ml.predict_row e fizer a tradução por conta própria na consulta.

Com base em onde você quer instalar o AlloyDB Omni com o AlloyDB AI, selecione uma das seguintes opções:

Configurar a instância do AlloyDB Omni para consultar modelos remotos

Para configurar o AlloyDB Omni para consultar modelos remotos, siga estas etapas:

  1. Crie uma conta de serviço com Google Cloud.

  2. Crie uma chave de conta de serviço no formato JSON e faça o download dela.

  3. Armazene a chave em um local permanente no seu sistema de arquivos. Ele fica nesse local durante toda a vida útil do servidor do AlloyDB Omni.

    Anote o local no sistema de arquivos, porque você vai precisar dele na próxima etapa.

  4. Adicione permissões do Identity and Access Management (IAM) da Vertex AI ao projeto e à conta de serviço adequados.

       gcloud projects add-iam-policy-binding PROJECT_ID \
           --member="serviceAccount:SERVICE_ACCOUNT_ID" \
           --role="roles/aiplatform.user"

    Substitua:

    • PROJECT_ID: o ID do seu projeto Google Cloud .

    • SERVICE_ACCOUNT_ID: o ID da conta de serviço que você criou na etapa anterior. Isso inclui o sufixo completo @PROJECT_ID.iam.gserviceaccount.com. Por exemplo, my-service@my-project.iam.gserviceaccount.com.

Instalar o AlloyDB Omni com a IA do AlloyDB

Para instalar o AlloyDB Omni e integrar a IA do AlloyDB, siga estas etapas:

  1. Verifique se você concluiu todas as etapas listadas em Configurar o AlloyDB Omni para consultar modelos baseados na nuvem.

  2. Faça uma cópia local do arquivo de configuração padrão do AlloyDB Omni:

       docker run -i --rm google/alloydbomni:15.5.4 cat /usr/share/postgresql/postgresql.conf.sample > my-postgres.conf
  3. Edite a cópia do arquivo de configuração para adicionar diretivas de integração do AlloyDB AI:

       echo "omni_enable_ml_agent_process = 'on'" >> my-postgres.conf
       echo "omni_google_cloud_private_key_file_path = '/etc/postgresql/private-key.json'" >> my-postgres.conf
  4. Ajuste as permissões do sistema de arquivos dos arquivos de chave e de configuração:

       sudo chmod +r my-postgres.conf
       sudo chmod +r KEY_PATH

    Substitua KEY_PATH pelo caminho para o arquivo de chave privada da conta de serviço no sistema de arquivos do host. Essa é a chave que você criou e baixou anteriormente neste procedimento.

  5. Instale a chave e os arquivos de configuração montados no contêiner:

       docker run --name CONTAINER_NAME -e POSTGRES_PASSWORD=NEW_PASSWORD -p HOST_PORT:5432 -v "$PWD/my-postgres.conf":/etc/postgresql/postgresql.conf -v "FULL_KEY_PATH":/etc/postgresql/private-key.json -d google/alloydbomni:15.5.4 -c 'config_file=/etc/postgresql/postgresql.conf'

    Substitua:

    • CONTAINER_NAME: o nome a ser atribuído ao novo contêiner do método de instalação simplificado do AlloyDB Omni no registro de contêineres da máquina host. Por exemplo, my-omni-1.

    • NEW_PASSWORD: a senha atribuída ao usuário postgres do novo contêiner após a criação.

    • HOST_PORT: a porta TCP na máquina host em que o contêiner vai publicar a própria porta 5432. Para usar a porta padrão do PostgreSQL na máquina host também, especifique 5432.

    • FULL_KEY_PATH: o caminho completo do sistema de arquivos para o arquivo de chave privada da conta de serviço no sistema host.

Verificar a instalação do AlloyDB Omni com a IA do AlloyDB

Para verificar se a instalação foi bem-sucedida e usa a previsão do modelo, digite o seguinte:

   CREATE EXTENSION google_ml_integration CASCADE;

   SELECT array_dims(embedding( 'textembedding-gecko@001', 'AlloyDB AI')::real[]);
   array_dims

A saída será assim:

    [1:768]
    (1 row)

Na consulta anterior, a chamada embedding() gera embeddings para o texto de entrada AlloyDB AI. array_dims retorna as dimensões da matriz retornada por embedding(). Como o modelo textembedding-gecko pré-registrado retorna uma saída com 768 dimensões, a saída é [768].

A seguir