Questa pagina mostra come installare AlloyDB Omni e integrare AlloyDB AI al suo interno.
AlloyDB AI è una suite di funzionalità incluse in AlloyDB Omni che ti consente di creare applicazioni aziendali di IA generativa. Per ulteriori informazioni sulla funzionalità di ML di AlloyDB, consulta Creare applicazioni di AI generativa.
AlloyDB Omni con AlloyDB AI ti consente di eseguire query sui modelli ML remoti per lavorare con le previsioni online e gli incorporamenti di testo generati dai modelli ML. AlloyDB Omni con AlloyDB AI può anche elaborare gli embedding vettoriali da altri contenuti, ad esempio un'immagine, se utilizzi l'interfaccia google_ml.predict_row
e esegui la traduzione autonomamente nella query.
A seconda di dove vuoi installare AlloyDB Omni con AlloyDB AI, seleziona una delle seguenti opzioni:
Configurare l'istanza AlloyDB Omni per eseguire query sui modelli remoti
Per configurare AlloyDB Omni in modo che esegua query sui modelli remote:
Crea un account di servizio con Google Cloud.
Crea una chiave dell'account di servizio in formato JSON e scaricala.
Memorizza la chiave in una posizione permanente sul file system. Rimane in questa posizione per tutta la durata del server AlloyDB Omni.
Prendi nota della posizione nel file system, ti servirà per il passaggio successivo.
Aggiungi le autorizzazioni IAM (Identity and Access Management) di Vertex AI all'account di servizio e al progetto appropriati.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_ID" \ --role="roles/aiplatform.user"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del tuo Google Cloud progetto.SERVICE_ACCOUNT_ID
: l'ID dell'account di servizio creato nel passaggio precedente. È incluso il suffisso@PROJECT_ID.iam.gserviceaccount.com
completo, ad esempiomy-service@my-project.iam.gserviceaccount.com
.
Installa AlloyDB Omni con AlloyDB AI
Per installare AlloyDB Omni e integrare AlloyDB AI:
Assicurati di aver completato tutti i passaggi elencati in Configurare AlloyDB Omni per eseguire query sui modelli basati su cloud.
Crea una copia locale del file di configurazione AlloyDB Omni predefinito:
docker run -i --rm google/alloydbomni:15.5.4 cat /usr/share/postgresql/postgresql.conf.sample > my-postgres.conf
Modifica la copia del file di configurazione per aggiungere le direttive per l'integrazione dell'IA di AlloyDB:
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
Modifica le autorizzazioni del file system dei file di configurazione e della chiave:
sudo chmod +r my-postgres.conf
sudo chmod +r KEY_PATH
Sostituisci
KEY_PATH
con il percorso del file della chiave privata dell'account di servizio nel file system host. Si tratta della chiave che hai creato e scaricato in precedenza in questa procedura.Installa i file di configurazione e della chiave montati sul contenitore:
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'
Sostituisci quanto segue:
CONTAINER_NAME
: il nome da assegnare a questo nuovo contenitore del metodo di installazione semplificato di AlloyDB Omni nel registry dei contenitori della macchina host, ad esempiomy-omni-1
.NEW_PASSWORD
: la password assegnata all'utentepostgres
del nuovo contenitore dopo la sua creazione.HOST_PORT
: la porta TCP sulla macchina host su cui il contenitore deve pubblicare la propria porta 5432. Per utilizzare anche la porta predefinita di PostgreSQL sulla macchina host, specifica5432
.FULL_KEY_PATH
: il percorso completo del file system del file della chiave privata dell'account di servizio sul sistema host.
Verificare AlloyDB Omni con l'installazione di AlloyDB AI
Per verificare che l'installazione sia andata a buon fine e che utilizzi la previsione del modello, inserisci quanto segue:
CREATE EXTENSION google_ml_integration CASCADE;
SELECT array_dims(embedding( 'textembedding-gecko@001', 'AlloyDB AI')::real[]);
array_dims
L'output è simile al seguente:
[1:768]
(1 row)
Nella query precedente, la chiamata embedding()
genera incorporamenti per il testo di input AlloyDB AI
.
array_dims
restituisce le dimensioni dell'array restituito da embedding()
.
Poiché il modello textembedding-gecko
preregistrato restituisce un output con 768 dimensioni, l'output è [768]
.
Passaggi successivi
- Eseguire ed eseguire il collegamento ad AlloyDB Omni
- Gestire AlloyDB Omni
- Creare applicazioni di IA generativa utilizzando AlloyDB AI
- Registrare e chiamare modelli di IA remota