Men-deploy dan mengelola endpoint indeks di jaringan VPC

Men-deploy indeks ke endpoint mencakup tiga tugas berikut:

  1. Buat IndexEndpoint jika perlu, atau gunakan kembali IndexEndpoint yang sudah ada.
  2. Dapatkan ID IndexEndpoint.
  3. Deploy indeks ke IndexEndpoint.

Membuat IndexEndpoint dalam jaringan VPC Anda

Jika Anda men-deploy Index ke IndexEndpoint yang sudah ada, Anda dapat melewati langkah ini.

Sebelum menggunakan indeks untuk menayangkan kueri pencocokan vektor online, Anda harus men-deploy Index ke IndexEndpoint dalam jaringan Peering Jaringan VPC. Langkah pertama adalah membuat IndexEndpoint. Anda dapat men-deploy lebih dari satu indeks ke IndexEndpoint yang memiliki jaringan VPC yang sama.

gcloud

Contoh berikut menggunakan perintah gcloud ai index-endpoints create.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • INDEX_ENDPOINT_NAME: Nama tampilan endpoint indeks.
  • VPC_NETWORK_NAME: Nama jaringan Google Compute Engine yang harus di-peering oleh endpoint indeks.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud ai index-endpoints create \
    --display-name=INDEX_ENDPOINT_NAME \
    --network=VPC_NETWORK_NAME \
    --region=LOCATION \
    --project=PROJECT_ID

Windows (PowerShell)

gcloud ai index-endpoints create `
    --display-name=INDEX_ENDPOINT_NAME `
    --network=VPC_NETWORK_NAME `
    --region=LOCATION `
    --project=PROJECT_ID

Windows (cmd.exe)

gcloud ai index-endpoints create ^
    --display-name=INDEX_ENDPOINT_NAME ^
    --network=VPC_NETWORK_NAME ^
    --region=LOCATION ^
    --project=PROJECT_ID

Anda akan melihat respons seperti berikut:

The Google Cloud CLI tool might take a few minutes to create the IndexEndpoint.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • INDEX_ENDPOINT_NAME: Nama tampilan endpoint indeks.
  • VPC_NETWORK_NAME: Nama jaringan Google Compute Engine yang harus di-peering oleh endpoint indeks.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.

Metode HTTP dan URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints

Meminta isi JSON:

{
  "display_name": "INDEX_ENDPOINT_NAME",
  "network": "VPC_NETWORK_NAME"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateIndexEndpointOperationMetadata",
    "genericMetadata": {
      "createTime": "2022-01-13T04:09:56.641107Z",
      "updateTime": "2022-01-13T04:09:56.641107Z"
    }
  }
}

Anda dapat melakukan polling untuk status operasi hingga respons menyertakan "done": true.

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.

def vector_search_create_index_endpoint_vpc(
    project: str, location: str, display_name: str, network: str
) -> aiplatform.MatchingEngineIndexEndpoint:
    """Create a vector search index endpoint within a VPC network.

    Args:
        project (str): Required. Project ID
        location (str): Required. The region name
        display_name (str): Required. The index endpoint display name
        network(str): Required. The VPC network name, in the format of
            projects/{project number}/global/networks/{network name}.

    Returns:
        aiplatform.MatchingEngineIndexEndpoint - The created index endpoint.
    """
    # Initialize the Vertex AI client
    aiplatform.init(project=project, location=location)

    # Create Index Endpoint
    index_endpoint = aiplatform.MatchingEngineIndexEndpoint.create(
        display_name=display_name,
        network=network,
        description="Matching Engine VPC Index Endpoint",
    )

    return index_endpoint

Konsol

Gunakan petunjuk ini untuk membuat endpoint indeks.

  1. Di bagian Vertex AI pada Konsol Google Cloud, buka bagian Deploy dan Gunakan. Pilih Cari Vektor

    Buka Cari Vektor

  2. Daftar indeks aktif Anda akan ditampilkan.
  3. Di bagian atas halaman, pilih tab Endpoint indeks. Endpoint indeks Anda akan ditampilkan.
  4. Klik Buat endpoint indeks baru. Panel Buat endpoint indeks baru akan terbuka.
  5. Masukkan nama tampilan untuk endpoint indeks.
  6. Di kolom Region, pilih region dari drop-down.
  7. Di kolom Akses, pilih Standar.
  8. Masukkan detail jaringan VPC yang di-peering. Masukkan nama lengkap jaringan Compute Engine tempat tugas akan di-peering. Formatnya harus projects/{project_num}/global/networks/{network_id}
  9. Klik Buat.

Men-deploy indeks

gcloud

Contoh ini menggunakan perintah gcloud ai index-endpoints deploy-index.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • DEPLOYED_INDEX_ENDPOINT_NAME: Nama tampilan endpoint indeks yang di-deploy.
  • INDEX_ID: ID indeks.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID \
    --deployed-index-id=DEPLOYED_INDEX_ID \
    --display-name=DEPLOYED_INDEX_ENDPOINT_NAME \
    --index=INDEX_ID \
    --region=LOCATION \
    --project=PROJECT_ID

Windows (PowerShell)

gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID `
    --deployed-index-id=DEPLOYED_INDEX_ID `
    --display-name=DEPLOYED_INDEX_ENDPOINT_NAME `
    --index=INDEX_ID `
    --region=LOCATION `
    --project=PROJECT_ID

Windows (cmd.exe)

gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID ^
    --deployed-index-id=DEPLOYED_INDEX_ID ^
    --display-name=DEPLOYED_INDEX_ENDPOINT_NAME ^
    --index=INDEX_ID ^
    --region=LOCATION ^
    --project=PROJECT_ID

Anda akan melihat respons seperti berikut:

The Google Cloud CLI tool might take a few minutes to create the IndexEndpoint.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • DEPLOYED_INDEX_ENDPOINT_NAME: Nama tampilan endpoint indeks yang di-deploy.
  • INDEX_ID: ID indeks.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.

Metode HTTP dan URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID:deployIndex

Meminta isi JSON:

{
 "deployedIndex": {
   "id": "DEPLOYED_INDEX_ID",
   "index": "projects/PROJECT_ID/locations/LOCATION/indexes/INDEX_ID",
   "displayName": "DEPLOYED_INDEX_ENDPOINT_NAME"
 }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
 "name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID",
 "metadata": {
   "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeployIndexOperationMetadata",
   "genericMetadata": {
     "createTime": "2022-10-19T17:53:16.502088Z",
     "updateTime": "2022-10-19T17:53:16.502088Z"
   },
   "deployedIndexId": "DEPLOYED_INDEX_ID"
 }
}

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.

def vector_search_deploy_index(
    project: str,
    location: str,
    index_name: str,
    index_endpoint_name: str,
    deployed_index_id: str,
) -> None:
    """Deploy a vector search index to a vector search index endpoint.

    Args:
        project (str): Required. Project ID
        location (str): Required. The region name
        index_name (str): Required. The index to update. A fully-qualified index
          resource name or a index ID.  Example:
          "projects/123/locations/us-central1/indexes/my_index_id" or
          "my_index_id".
        index_endpoint_name (str): Required. Index endpoint to deploy the index
          to.
        deployed_index_id (str): Required. The user specified ID of the
          DeployedIndex.
    """
    # Initialize the Vertex AI client
    aiplatform.init(project=project, location=location)

    # Create the index instance from an existing index
    index = aiplatform.MatchingEngineIndex(index_name=index_name)

    # Create the index endpoint instance from an existing endpoint.
    index_endpoint = aiplatform.MatchingEngineIndexEndpoint(
        index_endpoint_name=index_endpoint_name
    )

    # Deploy Index to Endpoint
    index_endpoint = index_endpoint.deploy_index(
        index=index, deployed_index_id=deployed_index_id
    )

    print(index_endpoint.deployed_indexes)

Konsol

Gunakan petunjuk ini untuk men-deploy indeks ke endpoint.

  1. Di bagian Vertex AI pada Konsol Google Cloud, buka bagian Deploy dan Gunakan. Pilih Cari Vektor

    Buka Cari Vektor

  2. Daftar indeks aktif Anda akan ditampilkan.
  3. Pilih nama indeks yang ingin Anda deploy. Halaman detail indeks akan terbuka.
  4. Dari halaman detail indeks, klik Deploy ke endpoint. Panel deployment indeks akan terbuka.
  5. Masukkan nama tampilan - nama ini berfungsi sebagai ID dan tidak dapat diperbarui.
  6. Dari drop-down Endpoint, pilih endpoint tempat Anda ingin men-deploy indeks ini. Catatan: Endpoint tidak tersedia jika indeks sudah di-deploy ke endpoint tersebut.
  7. Opsional: Di kolom Jenis mesin, pilih memori standar atau memori tinggi.
  8. Opsional. Pilih Aktifkan penskalaan otomatis untuk mengubah ukuran jumlah node secara otomatis berdasarkan permintaan workload Anda. Jumlah default replika adalah 2 jika penskalaan otomatis dinonaktifkan.
  9. Klik Deploy untuk men-deploy indeks ke endpoint. Catatan: Perlu waktu sekitar 30 menit untuk di-deploy.

Mengaktifkan penskalaan otomatis

Vector Search mendukung penskalaan otomatis, yang dapat secara otomatis mengubah ukuran jumlah node berdasarkan permintaan workload Anda. Saat permintaan tinggi, node ditambahkan ke node pool, yang tidak akan melebihi ukuran maksimum yang Anda tetapkan. Jika permintaan rendah, node pool akan diskalakan kembali ke ukuran minimum yang Anda tentukan. Anda dapat memeriksa node aktual yang digunakan dan perubahannya dengan memantau replika saat ini.

Untuk mengaktifkan penskalaan otomatis, tentukan maxReplicaCount dan minReplicaCount saat men-deploy indeks Anda:

gcloud

Contoh berikut menggunakan perintah gcloud ai index-endpoints deploy-index.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • DEPLOYED_INDEX_NAME: Nama tampilan indeks yang di-deploy.
  • INDEX_ID: ID indeks.
  • MIN_REPLICA_COUNT: Jumlah minimum replika mesin tempat indeks yang di-deploy akan selalu di-deploy. Jika ditentukan, nilai harus sama dengan atau lebih besar dari 1.
  • MAX_REPLICA_COUNT: Jumlah maksimum replika mesin tempat indeks yang di-deploy dapat di-deploy.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID \
    --deployed-index-id=DEPLOYED_INDEX_ID \
    --display-name=DEPLOYED_INDEX_NAME \
    --index=INDEX_ID \
    --min-replica-count=MIN_REPLICA_COUNT \
    --max-replica-count=MAX_REPLICA_COUNT \
    --region=LOCATION \
    --project=PROJECT_ID

Windows (PowerShell)

gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID `
    --deployed-index-id=DEPLOYED_INDEX_ID `
    --display-name=DEPLOYED_INDEX_NAME `
    --index=INDEX_ID `
    --min-replica-count=MIN_REPLICA_COUNT `
    --max-replica-count=MAX_REPLICA_COUNT `
    --region=LOCATION `
    --project=PROJECT_ID

Windows (cmd.exe)

gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID ^
    --deployed-index-id=DEPLOYED_INDEX_ID ^
    --display-name=DEPLOYED_INDEX_NAME ^
    --index=INDEX_ID ^
    --min-replica-count=MIN_REPLICA_COUNT ^
    --max-replica-count=MAX_REPLICA_COUNT ^
    --region=LOCATION ^
    --project=PROJECT_ID

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • DEPLOYED_INDEX_NAME: Nama tampilan indeks yang di-deploy.
  • INDEX_ID: ID indeks.
  • MIN_REPLICA_COUNT: Jumlah minimum replika mesin tempat indeks yang di-deploy akan selalu di-deploy. Jika ditentukan, nilai harus sama dengan atau lebih besar dari 1.
  • MAX_REPLICA_COUNT: Jumlah maksimum replika mesin tempat indeks yang di-deploy dapat di-deploy.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.

Metode HTTP dan URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID:deployIndex

Meminta isi JSON:

{
 "deployedIndex": {
   "id": "DEPLOYED_INDEX_ID",
   "index": "projects/PROJECT_NUMBER/locations/LOCATION/indexes/INDEX_ID",
   "displayName": "DEPLOYED_INDEX_NAME",
   "automaticResources": {
     "minReplicaCount": MIN_REPLICA_COUNT,
     "maxReplicaCount": MAX_REPLICA_COUNT
   }
 }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
 "name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID",
 "metadata": {
   "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeployIndexOperationMetadata",
   "genericMetadata": {
     "createTime": "2023-10-19T17:53:16.502088Z",
     "updateTime": "2023-10-19T17:53:16.502088Z"
   },
   "deployedIndexId": "DEPLOYED_INDEX_ID"
 }
}

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.

def vector_search_deploy_autoscaling_index(
    project: str,
    location: str,
    index_name: str,
    index_endpoint_name: str,
    deployed_index_id: str,
    min_replica_count: int,
    max_replica_count: int,
) -> None:
    """Deploy a vector search index to a vector search index endpoint.

    Args:
        project (str): Required. Project ID
        location (str): Required. The region name
        index_name (str): Required. The index to update. A fully-qualified index
          resource name or a index ID.  Example:
          "projects/123/locations/us-central1/indexes/my_index_id" or
          "my_index_id".
        index_endpoint_name (str): Required. Index endpoint to deploy the index
          to.
        deployed_index_id (str): Required. The user specified ID of the
          DeployedIndex.
        min_replica_count (int): Required. The minimum number of replicas to
          deploy.
        max_replica_count (int): Required. The maximum number of replicas to
          deploy.
    """
    # Initialize the Vertex AI client
    aiplatform.init(project=project, location=location)

    # Create the index instance from an existing index
    index = aiplatform.MatchingEngineIndex(index_name=index_name)

    # Create the index endpoint instance from an existing endpoint.
    index_endpoint = aiplatform.MatchingEngineIndexEndpoint(
        index_endpoint_name=index_endpoint_name
    )

    # Deploy Index to Endpoint. Specifying min and max replica counts will
    # enable autoscaling.
    index_endpoint.deploy_index(
        index=index,
        deployed_index_id=deployed_index_id,
        min_replica_count=min_replica_count,
        max_replica_count=max_replica_count,
    )

Konsol

Anda hanya dapat mengaktifkan penskalaan otomatis dari konsol selama deployment indeks.

  1. Di bagian Vertex AI pada Konsol Google Cloud, buka bagian Deploy dan Gunakan. Pilih Cari Vektor

    Buka Cari Vektor

  2. Daftar indeks aktif Anda akan ditampilkan.
  3. Pilih nama indeks yang ingin Anda deploy. Halaman detail indeks akan terbuka.
  4. Dari halaman detail indeks, klik Deploy ke endpoint. Panel deployment indeks akan terbuka.
  5. Masukkan nama tampilan - nama ini berfungsi sebagai ID dan tidak dapat diperbarui.
  6. Dari drop-down Endpoint, pilih endpoint tempat Anda ingin men-deploy indeks ini. Catatan: Endpoint tidak tersedia jika indeks sudah di-deploy ke endpoint tersebut.
  7. Opsional: Di kolom Jenis mesin, pilih memori standar atau memori tinggi.
  8. Opsional. Pilih Aktifkan penskalaan otomatis untuk mengubah ukuran jumlah node secara otomatis berdasarkan permintaan workload Anda. Jumlah default replika adalah 2 jika penskalaan otomatis dinonaktifkan.
  • Jika minReplicaCount dan maxReplicaCount tidak ditetapkan, keduanya akan ditetapkan ke 2 secara default.
  • Jika hanya maxReplicaCount yang ditetapkan, minReplicaCount akan ditetapkan ke 2 secara default.
  • Jika hanya minReplicaCount yang ditetapkan, maxReplicaCount akan ditetapkan sama dengan minReplicaCount.

Mengubah DeployedIndex

Anda dapat menggunakan MutateDeployedIndex API untuk memperbarui resource deployment (misalnya, minReplicaCount dan maxReplicaCount) dari indeks yang sudah di-deploy.

  • Pengguna tidak diizinkan untuk mengubah machineType setelah indeks di-deploy.
  • Jika maxReplicaCount tidak ditentukan dalam permintaan, DeployedIndex akan tetap menggunakan maxReplicaCount yang ada.

gcloud

Contoh berikut menggunakan perintah gcloud ai index-endpoints mutate-deployed-index.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • MIN_REPLICA_COUNT: Jumlah minimum replika mesin tempat indeks yang di-deploy akan selalu di-deploy. Jika ditentukan, nilai harus sama dengan atau lebih besar dari 1.
  • MAX_REPLICA_COUNT: Jumlah maksimum replika mesin tempat indeks yang di-deploy dapat di-deploy.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud ai index-endpoints mutate-deployed-index INDEX_ENDPOINT_ID \
    --deployed-index-id=DEPLOYED_INDEX_ID \
    --min-replica-count=MIN_REPLICA_COUNT \
    --max-replica-count=MAX_REPLICA_COUNT \
    --region=LOCATION \
    --project=PROJECT_ID

Windows (PowerShell)

gcloud ai index-endpoints mutate-deployed-index INDEX_ENDPOINT_ID `
    --deployed-index-id=DEPLOYED_INDEX_ID `
    --min-replica-count=MIN_REPLICA_COUNT `
    --max-replica-count=MAX_REPLICA_COUNT `
    --region=LOCATION `
    --project=PROJECT_ID

Windows (cmd.exe)

gcloud ai index-endpoints mutate-deployed-index INDEX_ENDPOINT_ID ^
    --deployed-index-id=DEPLOYED_INDEX_ID ^
    --min-replica-count=MIN_REPLICA_COUNT ^
    --max-replica-count=MAX_REPLICA_COUNT ^
    --region=LOCATION ^
    --project=PROJECT_ID

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • MIN_REPLICA_COUNT: Jumlah minimum replika mesin tempat indeks yang di-deploy akan selalu di-deploy. Jika ditentukan, nilai harus sama dengan atau lebih besar dari 1.
  • MAX_REPLICA_COUNT: Jumlah maksimum replika mesin tempat indeks yang di-deploy dapat di-deploy.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.

Metode HTTP dan URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID:mutateDeployedIndex

Meminta isi JSON:

{
  "deployedIndex": {
    "id": "DEPLOYED_INDEX_ID",
    "index": "projects/PROJECT_ID/locations/LOCATION/indexes/INDEX_ID",
    "displayName": "DEPLOYED_INDEX_NAME",
    "min_replica_count": "MIN_REPLICA_COUNT",
    "max_replica_count": "MAX_REPLICA_COUNT"
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
"name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID",
"metadata": {
  "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeployIndexOperationMetadata",
  "genericMetadata": {
    "createTime": "2020-10-19T17:53:16.502088Z",
    "updateTime": "2020-10-19T17:53:16.502088Z"
  },
  "deployedIndexId": "DEPLOYED_INDEX_ID"
}
}

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.

def vector_search_mutate_deployed_index(
    project: str,
    location: str,
    index_endpoint_name: str,
    deployed_index_id: str,
    min_replica_count: int,
    max_replica_count: int,
) -> None:
    """Mutate the deployment resources of an already deployed index.

    Args:
        project (str): Required. Project ID
        location (str): Required. The region name
        index_endpoint_name (str): Required. Index endpoint to run the query
          against.
        deployed_index_id (str): Required. The ID of the DeployedIndex to run
          the queries against.
        min_replica_count (int): Required. The minimum number of replicas to
          deploy.
        max_replica_count (int): Required. The maximum number of replicas to
          deploy.
    """
    # Initialize the Vertex AI client
    aiplatform.init(project=project, location=location)

    # Create the index endpoint instance from an existing endpoint
    index_endpoint = aiplatform.MatchingEngineIndexEndpoint(
        index_endpoint_name=index_endpoint_name
    )

    # Mutate the deployed index
    index_endpoint.mutate_deployed_index(
        deployed_index_id=deployed_index_id,
        min_replica_count=min_replica_count,
        max_replica_count=max_replica_count,
    )

Setelan deployment yang memengaruhi performa

Setelan deployment berikut dapat memengaruhi latensi, ketersediaan, dan biaya saat menggunakan Vector Search. Panduan ini berlaku untuk sebagian besar kasus. Namun, selalu bereksperimen dengan konfigurasi untuk memastikan konfigurasi tersebut berfungsi untuk kasus penggunaan Anda.

Setelan Dampak performa
Jenis mesin

Pemilihan hardware memiliki interaksi langsung dengan ukuran shard yang dipilih. Bergantung pada pilihan shard yang Anda tentukan pada waktu pembuatan indeks, setiap jenis mesin menawarkan kompromi antara performa dan biaya.

Lihat halaman harga untuk menentukan hardware yang tersedia dan harganya. Secara umum, performa meningkat dalam urutan berikut:

  • E2 standard
  • E2 highmem
  • N1 standard
  • N2D standard
Jumlah replika minimum

minReplicaCount mencadangkan kapasitas minimum untuk ketersediaan dan latensi guna memastikan sistem tidak mengalami masalah cold start saat traffic diskalakan dengan cepat dari level rendah.

Jika Anda memiliki beban kerja yang turun ke level rendah, lalu meningkat dengan cepat ke level yang lebih tinggi, pertimbangkan untuk menetapkan minReplicaCount ke angka yang dapat mengakomodasi lonjakan traffic awal.

Jumlah replika maksimum maxReplicaCount terutama memungkinkan Anda mengontrol biaya penggunaan. Anda dapat memilih untuk mencegah peningkatan biaya di luar nilai minimum tertentu, dengan konsekuensi mengizinkan peningkatan latensi dan mengurangi ketersediaan.

Mencantumkan IndexEndpoints

Untuk mencantumkan resource IndexEndpoint dan melihat informasi instance DeployedIndex yang terkait, jalankan kode berikut:

gcloud

Contoh berikut menggunakan perintah gcloud ai index-endpoints list.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud ai index-endpoints list \
    --region=LOCATION \
    --project=PROJECT_ID

Windows (PowerShell)

gcloud ai index-endpoints list `
    --region=LOCATION `
    --project=PROJECT_ID

Windows (cmd.exe)

gcloud ai index-endpoints list ^
    --region=LOCATION ^
    --project=PROJECT_ID

REST

Sebelum menggunakan data permintaan mana pun, lakukan penggantian berikut:

  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.

Metode HTTP dan URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
 "indexEndpoints": [
   {
     "name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID",
     "displayName": "INDEX_ENDPOINT_DISPLAY_NAME",
     "deployedIndexes": [
       {
         "id": "DEPLOYED_INDEX_ID",
         "index": "projects/PROJECT_NUMBER/locations/LOCATION/indexes/INDEX_ID",
         "displayName": "DEPLOYED_INDEX_DISPLAY_NAME",
         "createTime": "2021-06-04T02:23:40.178286Z",
         "privateEndpoints": {
           "matchGrpcAddress": "GRPC_ADDRESS"
         },
         "indexSyncTime": "2022-01-13T04:22:00.151916Z",
         "automaticResources": {
           "minReplicaCount": 2,
           "maxReplicaCount": 10
         }
       }
     ],
     "etag": "AMEw9yP367UitPkLo-khZ1OQvqIK8Q0vLAzZVF7QjdZ5O3l7Zow-mzBo2l6xmiuuMljV",
     "createTime": "2021-03-17T04:47:28.460373Z",
     "updateTime": "2021-06-04T02:23:40.930513Z",
     "network": "VPC_NETWORK_NAME"
   }
 ]
}

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.

def vector_search_list_index_endpoint(
    project: str, location: str
) -> List[aiplatform.MatchingEngineIndexEndpoint]:
    """List vector search index endpoints.

    Args:
        project (str): Required. Project ID
        location (str): Required. The region name

    Returns:
        List of aiplatform.MatchingEngineIndexEndpoint
    """
    # Initialize the Vertex AI client
    aiplatform.init(project=project, location=location)

    # List Index Endpoints
    return aiplatform.MatchingEngineIndexEndpoint.list()

Konsol

Gunakan petunjuk ini untuk melihat daftar endpoint indeks Anda.

  1. Di bagian Vertex AI pada Konsol Google Cloud, buka bagian Deploy dan Gunakan. Pilih Cari Vektor

    Buka Vector Search

  2. Di bagian atas halaman, pilih tab Endpoint indeks.
  3. Semua endpoint indeks yang ada akan ditampilkan.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi untuk IndexEndpoint.

Membatalkan deployment indeks

Untuk membatalkan deployment indeks, jalankan kode berikut:

gcloud

Contoh berikut menggunakan perintah gcloud ai index-endpoints undeploy-index.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud ai index-endpoints undeploy-index INDEX_ENDPOINT_ID \
    --deployed-index-id=DEPLOYED_INDEX_ID \
    --region=LOCATION \
    --project=PROJECT_ID

Windows (PowerShell)

gcloud ai index-endpoints undeploy-index INDEX_ENDPOINT_ID `
    --deployed-index-id=DEPLOYED_INDEX_ID `
    --region=LOCATION `
    --project=PROJECT_ID

Windows (cmd.exe)

gcloud ai index-endpoints undeploy-index INDEX_ENDPOINT_ID ^
    --deployed-index-id=DEPLOYED_INDEX_ID ^
    --region=LOCATION ^
    --project=PROJECT_ID

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.

Metode HTTP dan URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID:undeployIndex

Meminta isi JSON:

{
 "deployed_index_id": "DEPLOYED_INDEX_ID"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
 "name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID",
 "metadata": {
   "@type": "type.googleapis.com/google.cloud.aiplatform.v1.UndeployIndexOperationMetadata",
   "genericMetadata": {
     "createTime": "2022-01-13T04:09:56.641107Z",
     "updateTime": "2022-01-13T04:09:56.641107Z"
   }
 }
}

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.

def vector_search_undeploy_index(
    project: str,
    location: str,
    index_endpoint_name: str,
    deployed_index_id: str,
) -> None:
    """Mutate the deployment resources of an already deployed index.

    Args:
        project (str): Required. Project ID
        location (str): Required. The region name
        index_endpoint_name (str): Required. Index endpoint to run the query
          against.
        deployed_index_id (str): Required. The ID of the DeployedIndex to run
          the queries against.
    """
    # Initialize the Vertex AI client
    aiplatform.init(project=project, location=location)

    # Create the index endpoint instance from an existing endpoint
    index_endpoint = aiplatform.MatchingEngineIndexEndpoint(
        index_endpoint_name=index_endpoint_name
    )

    # Undeploy the index
    index_endpoint.undeploy_index(
        deployed_index_id=deployed_index_id,
    )

Konsol

Gunakan petunjuk ini untuk membatalkan deployment indeks.

  1. Di bagian Vertex AI pada Konsol Google Cloud, buka bagian Deploy dan Gunakan. Pilih Cari Vektor

    Buka Cari Vektor

  2. Daftar indeks aktif Anda akan ditampilkan.
  3. Pilih indeks yang ingin Anda batalkan deployment-nya. Halaman detail indeks akan terbuka.
  4. Di bagian Indeks yang di-deploy, tentukan endpoint indeks yang ingin dibatalkan deployment-nya.
  5. Klik menu opsi  yang berada di baris yang sama dengan endpoint indeks, lalu pilih Batalkan deployment.
  6. Layar konfirmasi akan terbuka. Klik Batalkan deployment. Catatan: Diperlukan waktu hingga 30 menit untuk membatalkan deployment.

Menghapus IndexEndpoint

Sebelum menghapus IndexEndpoint, Anda harus membatalkan deployment semua indeks yang di-deploy ke endpoint.

gcloud

Contoh berikut menggunakan perintah gcloud ai index-endpoints delete.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud ai index-endpoints delete INDEX_ENDPOINT_ID \
    --region=LOCATION \
    --project=PROJECT_ID

Windows (PowerShell)

gcloud ai index-endpoints delete INDEX_ENDPOINT_ID `
    --region=LOCATION `
    --project=PROJECT_ID

Windows (cmd.exe)

gcloud ai index-endpoints delete INDEX_ENDPOINT_ID ^
    --region=LOCATION ^
    --project=PROJECT_ID

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • INDEX_ENDPOINT_ID: ID endpoint indeks.
  • LOCATION: Region tempat Anda menggunakan Vertex AI.
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.

Metode HTTP dan URL:

DELETE https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
 "name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID",
 "metadata": {
   "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeleteOperationMetadata",
   "genericMetadata": {
     "createTime": "2022-01-13T04:36:19.142203Z",
     "updateTime": "2022-01-13T04:36:19.142203Z"
   }
 },
 "done": true,
 "response": {
   "@type": "type.googleapis.com/google.protobuf.Empty"
 }
}

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.

def vector_search_delete_index_endpoint(
    project: str, location: str, index_endpoint_name: str, force: bool = False
) -> None:
    """Delete a vector search index endpoint.

    Args:
        project (str): Required. Project ID
        location (str): Required. The region name
        index_endpoint_name (str): Required. Index endpoint to run the query
          against.
        force (bool): Required. If true, undeploy any deployed indexes on this
          endpoint before deletion.
    """
    # Initialize the Vertex AI client
    aiplatform.init(project=project, location=location)

    # Create the index endpoint instance from an existing endpoint
    index_endpoint = aiplatform.MatchingEngineIndexEndpoint(
        index_endpoint_name=index_endpoint_name
    )

    # Delete the index endpoint
    index_endpoint.delete(force=force)

Konsol

Gunakan petunjuk ini untuk menghapus endpoint indeks.

  1. Di bagian Vertex AI pada Konsol Google Cloud, buka bagian Deploy dan Gunakan. Pilih Cari Vektor

    Buka Cari Vektor

  2. Di bagian atas halaman, pilih tab Endpoint indeks.
  3. Semua endpoint indeks yang ada akan ditampilkan.
  4. Klik menu opsi  yang berada di baris yang sama dengan endpoint indeks yang ingin Anda hapus, lalu pilih Hapus.
  5. Layar konfirmasi akan terbuka. Klik Hapus. Endpoint indeks Anda sekarang dihapus.