AlloyDB AI adalah serangkaian fitur yang disertakan dengan AlloyDB Omni yang memungkinkan Anda membangun aplikasi AI generatif perusahaan. Untuk mengetahui informasi selengkapnya tentang fungsi AI/ML AlloyDB, lihat Membangun aplikasi AI generatif.
AlloyDB Omni dengan AlloyDB AI memungkinkan Anda membuat kueri model ML jarak jauh untuk bekerja dengan prediksi online dan penyematan teks yang dihasilkan dari model ML. AlloyDB Omni dengan AlloyDB AI juga dapat memproses penyematan vektor dari konten lain seperti gambar, misalnya, jika Anda menggunakan antarmuka google_ml.predict_row
dan melakukan terjemahan sendiri dalam kueri.
Mengonfigurasi instance AlloyDB Omni untuk membuat kueri model jarak jauh
AlloyDB Omni dapat membuat kueri model ML jarak jauh menggunakan ekstensi
google_ml_integration
.
Jika ingin membuat kueri model Vertex AI, Anda harus mengonfigurasi akun layanan AlloyDB Omni dengan Vertex AI sebelum menginstal AlloyDB Omni.
Untuk mengonfigurasi AlloyDB Omni agar dapat membuat kueri model jarak jauh, ikuti langkah-langkah berikut:
Buat akun layanan dengan Google Cloud.
Buat kunci akun layanan dalam format JSON, lalu download. Catat kunci akun layanan karena Anda akan menggunakannya nanti dalam prosedur ini.
Salin kunci akun layanan yang Anda buat ke
KEY_PATH
. Jalur kunci harus berupa jalur di host Anda yang dapat diakses dan dimiliki oleh pengguna yang akan menjalankan penampung AlloyDB Omni Anda.Aktifkan Vertex AI API di Google Cloud project Anda.
gcloud services enable aiplatform.googleapis.com
Tambahkan izin Identity and Access Management (IAM) Vertex AI ke project dan akun layanan yang sesuai.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_ID" \ --role="roles/aiplatform.user"
Ganti kode berikut:
PROJECT_ID
: ID Google Cloud project Anda.SERVICE_ACCOUNT_ID
: ID akun layanan yang Anda buat di langkah pertama. Hal ini mencakup sufiks@PROJECT_ID.
lengkap. Contohnya,my-service@my-project.
.
Mengonfigurasi AlloyDB AI untuk AlloyDB Omni
Untuk menginstal AlloyDB Omni dan mengintegrasikan AlloyDB AI, selesaikan langkah-langkah berikut sebagai pengguna root:
Selesaikan semua langkah yang tercantum di Mengonfigurasi AlloyDB Omni untuk membuat kueri model berbasis cloud.
Jika ada container yang sudah ada dengan nama yang sama, hentikan dan hapus container tersebut.
Docker
docker stop CONTAINER_NAME
docker rm CONTAINER_NAME
Docker
docker stop CONTAINER_NAME
docker rm CONTAINER_NAME
Podman
podman stop CONTAINER_NAME
podman rm CONTAINER_NAME
Podman
podman stop CONTAINER_NAME
podman rm CONTAINER_NAME
Ganti kode berikut:
CONTAINER_NAME
: Nama untuk menetapkan container AlloyDB Omni di registry container mesin host Anda. Contoh,my-omni-1
.
Mulai container AlloyDB Omni baru yang memasang kunci ke dalam container.
Docker
docker run -d --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ -v DATA_DIR:/var/lib/postgresql/data \ -v "KEY_PATH":/etc/postgresql/private-key.json \ -p HOST_PORT:5432 \ --restart=always \ google/alloydbomni:latest
Docker
docker run -d --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ -v DATA_DIR:/var/lib/postgresql/data \ -v "KEY_PATH":/etc/postgresql/private-key.json \ -p HOST_PORT:5432 \ --restart=always \ google/alloydbomni:latest
Podman
podman run -d --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ -v DATA_DIR:/var/lib/postgresql/data \ -v "KEY_PATH":/etc/postgresql/private-key.json \ -p HOST_PORT:5432 \ --restart=always \ docker.io/google/alloydbomni:latest
Podman
podman run -d --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ -v DATA_DIR:/var/lib/postgresql/data \ -v "KEY_PATH":/etc/postgresql/private-key.json \ -p HOST_PORT:5432 \ --restart=always \ docker.io/google/alloydbomni:latest
Ganti variabel berikut:
CONTAINER_NAME
: Nama untuk menetapkan container AlloyDB Omni di registry container mesin host Anda. Contoh,my-omni-1
.NEW_PASSWORD
: Sandi yang ditetapkan untuk penggunapostgres
penampung baru setelah pembuatannya. Perhatikan bahwaNEW_PASSWORD
hanya akan menyetel sandi baru jikaDATA_DIR
adalah lokasi baru.DATA_DIR
: Jalur direktori host tempat data Anda disimpan.KEY_PATH
: Jalur untuk file kunci akun layanan Anda.HOST_PORT
: Port TCP di mesin host yang harus digunakan container untuk memublikasikan portnya sendiri5432
. Untuk menggunakan port default PostgreSQL di mesin host juga, tentukan5432
.
Buat file kunci dapat dibaca oleh pengguna
postgres
di dalam penampung AlloyDB Omni.Docker
docker exec CONTAINER_NAME chown postgres /etc/postgresql/private-key.json
docker exec CONTAINER_NAME chmod 600 /etc/postgresql/private-key.json
Docker
docker exec CONTAINER_NAME chown postgres /etc/postgresql/private-key.json
docker exec CONTAINER_NAME chmod 600 /etc/postgresql/private-key.json
Podman
podman exec CONTAINER_NAME chown postgres /etc/postgresql/private-key.json
podman exec CONTAINER_NAME chmod 600 /etc/postgresql/private-key.json
Podman
podman exec CONTAINER_NAME chown postgres /etc/postgresql/private-key.json
podman exec CONTAINER_NAME chmod 600 /etc/postgresql/private-key.json
Ganti variabel berikut:
CONTAINER_NAME
: Nama untuk menetapkan container AlloyDB Omni di registry container mesin host Anda. Contoh,my-omni-1
.KEY_PATH
: Jalur host untuk file kunci akun layanan Anda.
Perbarui AlloyDB Omni dengan menambahkan opsi konfigurasi berikut.
Docker
docker exec CONTAINER_NAME sh -c "cat << EOF >> /var/lib/postgresql/data/postgresql.conf omni_enable_ml_agent_process = 'on' omni_google_cloud_private_key_file_path = '/etc/postgresql/private-key.json' EOF"
Docker
docker exec CONTAINER_NAME sh -c "cat << EOF >> /var/lib/postgresql/data/postgresql.conf omni_enable_ml_agent_process = 'on' omni_google_cloud_private_key_file_path = '/etc/postgresql/private-key.json' EOF"
Podman
podman exec CONTAINER_NAME sh -c "cat << EOF >> /var/lib/postgresql/data/postgresql.conf omni_enable_ml_agent_process = 'on' omni_google_cloud_private_key_file_path = '/etc/postgresql/private-key.json' EOF"
Podman
podman exec CONTAINER_NAME sh -c "cat << EOF >> /var/lib/postgresql/data/postgresql.conf omni_enable_ml_agent_process = 'on' omni_google_cloud_private_key_file_path = '/etc/postgresql/private-key.json' EOF"
Ganti variabel berikut:
CONTAINER_NAME
: Nama untuk menetapkan container AlloyDB Omni di registry container mesin host Anda. Contoh,my-omni-1
.
Mulai ulang container AlloyDB Omni.
Docker
docker restart CONTAINER_NAME
Docker
docker restart CONTAINER_NAME
Podman
podman restart CONTAINER_NAME
Podman
podman restart CONTAINER_NAME
Ganti variabel berikut:
CONTAINER_NAME
: Nama untuk menetapkan container AlloyDB Omni di registry container mesin host Anda. Contoh,my-omni-1
.
Menghubungkan menggunakan psql
yang di-container
Untuk terhubung ke server database AlloyDB Omni menggunakan salinan psql
yang di-container-kan, jalankan perintah berikut:
Docker
docker exec -it CONTAINER_NAME psql -U postgres
Docker
docker exec -it CONTAINER_NAME psql -U postgres
Podman
podman exec -it CONTAINER_NAME psql -U postgres
Podman
podman exec -it CONTAINER_NAME psql -U postgres
Ganti variabel berikut:
CONTAINER_NAME
: Nama untuk menetapkan container AlloyDB Omni di registry container mesin host Anda. Contoh,my-omni-1
.
Memverifikasi penginstalan AlloyDB Omni dengan AlloyDB AI
Untuk memverifikasi bahwa penginstalan Anda berhasil dan menggunakan prediksi model, masukkan perintah berikut:
CREATE EXTENSION IF NOT EXISTS google_ml_integration CASCADE;
SELECT array_dims(embedding('text-embedding-005', 'AlloyDB AI')::real[]);
Outputnya terlihat mirip dengan yang berikut ini:
array_dims
------------
[1:768]
(1 row)
Dalam kueri sebelumnya, panggilan embedding()
menghasilkan embedding untuk teks input AlloyDB AI
.
array_dims
menampilkan dimensi array yang ditampilkan oleh embedding()
.
Karena model text-embedding-005
menampilkan output dengan 768 dimensi, outputnya adalah [768]
.
Langkah berikutnya
- Menjalankan dan menghubungkan ke AlloyDB Omni
- Mengelola AlloyDB Omni
- Membangun aplikasi AI generatif menggunakan AlloyDB AI
- Mendaftarkan dan memanggil model AI jarak jauh