Mengelola indeks

Indeks Vision Warehouse (tersedia untuk vertical gambar dan video batch) adalah resource tingkat korpus yang merupakan representasi terkelola dari aset dan anotasi yang dianalisis. Indeks dapat dilihat sebagai set data vektor sematan dan batasan semantik yang merepresentasikan makna konten media. Indeks dapat di-deploy ke endpoint indeks untuk penelusuran.

Saat Anda membuat indeks di corpus, indeks akan menyertakan semua aset yang dianalisis dan semua anotasi yang ada dalam korpus. Untuk aset atau anotasi apa pun yang Anda tambahkan setelah membuat indeks, Anda perlu menganalisis korpus atau aset tersebut lagi dan memperbarui indeks untuk menyertakannya dalam indeks.

Membuat indeks gudang

REST

Untuk membuat resource indeks, kirim permintaan POST menggunakan metode projects.locations.corpora.indexes.create.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan LOCATION_ID seperti europe-west4-. Lihat informasi selengkapnya tentang endpoint yang diregionalkan.
  • PROJECT_NUMBER: Google Cloud Nomor project Anda.
  • LOCATION_ID: Region tempat Anda menggunakan Vertex AI Vision. Misalnya: us-central1, europe-west4. Lihat wilayah yang tersedia.
  • CORPUS_ID: ID korpus target Anda.
  • INDEX_ID: (Opsional) Nilai yang diberikan pengguna untuk ID indeks. Dalam permintaan ini, nilai ditambahkan ke URL permintaan dalam bentuk:
    • https://REGIONALIZED_ENDPOINT/v1/[...]/corpora/CORPUS_ID/indexes?index_id=INDEX_ID

Metode HTTP dan URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes

Isi JSON permintaan:

{
  "display_name": "DISPLAY_NAME",
  "description": "INDEX_DESCRIPTION",
}

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes"

PowerShell

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes" | Select-Object -Expand Content

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateIndexMetadata"
  }
}

Memperbarui indeks gudang

UpdateIndex API memungkinkan pembaruan kolom metadata indeks, seperti display_name dan description, serta konten indeks yang mendasarinya (assets dan annotations-nya).

Kolom update_mask dalam permintaan, yang juga dikenal sebagai mask kolom, digunakan untuk menentukan kolom yang akan diganti dalam resource Index dengan pembaruan. Kolom yang ditentukan dalam update_mask bersifat relatif terhadap resource, bukan permintaan lengkap. Kolom resource akan ditimpa jika ada di mask. Mask kolom kosong tidak diizinkan. Jika maskernya adalah "*", tindakan ini akan memicu update penuh indeks, dan juga pembangunan ulang seluruh data indeks.

REST

Untuk memperbarui resource indeks, kirim permintaan PATCH menggunakan metode projects.locations.corpora.indexes.patch.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan LOCATION_ID seperti europe-west4-. Lihat informasi selengkapnya tentang endpoint yang diregionalkan.
  • PROJECT_NUMBER: Google Cloud Nomor project Anda.
  • LOCATION_ID: Region tempat Anda menggunakan Vertex AI Vision. Misalnya: us-central1, europe-west4. Lihat wilayah yang tersedia.
  • CORPUS_ID: ID korpus target Anda.
  • INDEX_ID: ID indeks target Anda.
  • ?update_mask=fieldToUpdate: Daftar kolom yang tersedia yang ingin Anda terapkan update_mask. Tentukan nilai yang sesuai untuk kolom baru dalam isi permintaan. Nilai baru ini akan menggantikan nilai kolom yang ada. Anda dapat menentukan beberapa kolom sebagai nilai yang dipisahkan koma. Kolom yang tersedia:
    • Nama tampilan: ?update_mask=display_name
    • Deskripsi: ?update_mask=description
    • Perbarui data indeks pokok: ?update_mask=entire_corpus
    • Perbarui semua kolom: ?update_mask=*

Metode HTTP dan URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID?update_mask=display_name,entire_corpus

Isi JSON permintaan:

{
  "display_name": "DISPLAY_NAME",
  "entire_corpus": true
}

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID?update_mask=display_name,entire_corpus"

PowerShell

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID?update_mask=display_name,entire_corpus" | Select-Object -Expand Content

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.UpdateIndexMetadata"
  }
}

Pembaruan indeks streaming

API IndexAsset dan RemoveIndexAsset memungkinkan update streaming ke indeks. API ini hanya didukung di Vision Warehouse untuk video batch.

Mencantumkan indeks di warehouse

REST

Untuk mencantumkan indeks dalam korpus, kirim permintaan GET menggunakan metode projects.locations.corpora.indexes.list.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan LOCATION_ID seperti europe-west4-. Lihat informasi selengkapnya tentang endpoint yang diregionalkan.
  • PROJECT_NUMBER: Google Cloud Nomor project Anda.
  • LOCATION_ID: Region tempat Anda menggunakan Vertex AI Vision. Misalnya: us-central1, europe-west4. Lihat wilayah yang tersedia.
  • CORPUS_ID: ID korpus target Anda.

Metode HTTP dan URL:

GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes" | Select-Object -Expand Content

Anda akan melihat respons JSON seperti berikut:

{
  "indexes": [
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID_1",
      "display_name": "DISPLAY_NAME_1",
      "description": "DESCRIPTION_1",
      "entireCorpus": true,
      "state": "CREATED"
    },
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID_2",
      "display_name": "DISPLAY_NAME_2",
      "description": "DESCRIPTION_2",
      "entireCorpus": true,
      "state": "CREATED"
    }
  ]
}

Mendapatkan indeks

REST

Untuk mendapatkan detail tentang indeks, kirim permintaan GET menggunakan metode projects.locations.corpora.indexes.get.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan LOCATION_ID seperti europe-west4-. Lihat informasi selengkapnya tentang endpoint yang diregionalkan.
  • PROJECT_NUMBER: Google Cloud Nomor project Anda.
  • LOCATION_ID: Region tempat Anda menggunakan Vertex AI Vision. Misalnya: us-central1, europe-west4. Lihat wilayah yang tersedia.
  • CORPUS_ID: ID korpus target Anda.
  • INDEX_ID: ID indeks target Anda.

Metode HTTP dan URL:

GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID" | Select-Object -Expand Content

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID",
  "display_name": "DISPLAY_NAME",
  "description": "DESCRIPTION",
  "entireCorpus": true,
  "state": "CREATED"
}

Melihat aset dalam indeks

REST

Untuk mendapatkan detail tentang aset yang ada di bawah indeks, kirim permintaan GET menggunakan metode projects.locations.corpora.indexes.viewAssets.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan LOCATION_ID seperti europe-west4-. Lihat informasi selengkapnya tentang endpoint yang diregionalkan.
  • PROJECT_NUMBER: Google Cloud Nomor project Anda.
  • LOCATION_ID: Region tempat Anda menggunakan Vertex AI Vision. Misalnya: us-central1, europe-west4. Lihat wilayah yang tersedia.
  • CORPUS_ID: ID korpus target Anda.
  • INDEX_ID: ID indeks target Anda.
  • PAGE_SIZE: (Opsional) Jumlah hasil yang akan ditampilkan.
  • PAGE_TOKEN: (Opsional) nextPageToken yang diberikan oleh respons panggilan sebelumnya. Token ini dapat digunakan untuk mendapatkan halaman hasil berikutnya.

Metode HTTP dan URL:

GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN" | Select-Object -Expand Content

Anda akan melihat respons JSON seperti berikut:

{
  "indexedAssets": [
    {
      "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID",
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1"
    },
    {
      "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID",
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2"
    }
  ],
  "nextPageToken": "NEXT_PAGE_TOKEN"
}

Melihat aset yang diindeks dengan filter

Anda dapat memberikan daftar ID aset yang dipisahkan koma menggunakan kolom filter di metode projects.locations.corpora.indexes.viewAssets untuk memfilter semua aset dalam indeks dan hanya menampilkan aset yang diberikan.

REST

Untuk mencantumkan dan memfilter aset yang ada di bawah indeks, kirim permintaan GET menggunakan metode projects.locations.corpora.indexes.viewAssets.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan LOCATION_ID seperti europe-west4-. Lihat informasi selengkapnya tentang endpoint yang diregionalkan.
  • PROJECT_NUMBER: Google Cloud Nomor project Anda.
  • LOCATION_ID: Region tempat Anda menggunakan Vertex AI Vision. Misalnya: us-central1, europe-west4. Lihat wilayah yang tersedia.
  • CORPUS_ID: ID korpus target Anda.
  • INDEX_ID: ID indeks target Anda.
  • PAGE_SIZE: (Opsional) Jumlah hasil yang akan ditampilkan.
  • PAGE_TOKEN: (Opsional) nextPageToken yang diberikan oleh respons panggilan sebelumnya. Token ini dapat digunakan untuk mendapatkan halaman hasil berikutnya.
  • ASSET_ID_FILTER: (Opsional) Daftar ID aset yang dipisahkan koma yang ingin Anda filter dalam daftar yang ditampilkan. Contoh:
    • ?filter=ASSET_ID_1"
    • ?filter=ASSET_ID_1,ASSET_ID_2"

Metode HTTP dan URL:

GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN&filter=ASSET_ID_FILTER

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN&filter=ASSET_ID_FILTER"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN&filter=ASSET_ID_FILTER" | Select-Object -Expand Content

Anda akan melihat respons JSON seperti berikut:

{
  "indexedAssets": [
    {
      "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID",
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1"
    },
    {
      "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID",
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2"
    }
  ],
  "nextPageToken": "NEXT_PAGE_TOKEN"
}

Menghapus indeks

Indeks hanya dapat dihapus jika tidak di-deploy ke indexEndpoint. Ikuti panduan membatalkan deployment indeks sebelum menghapus indeks yang di-deploy.

REST

Untuk menghapus resource indeks, kirim permintaan DELETE menggunakan metode projects.locations.corpora.indexes.delete.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan LOCATION_ID seperti europe-west4-. Lihat informasi selengkapnya tentang endpoint yang diregionalkan.
  • PROJECT_NUMBER: Google Cloud Nomor project Anda.
  • LOCATION_ID: Region tempat Anda menggunakan Vertex AI Vision. Misalnya: us-central1, europe-west4. Lihat wilayah yang tersedia.
  • CORPUS_ID: ID korpus target Anda.
  • INDEX_ID: ID indeks target Anda.

Metode HTTP dan URL:

DELETE https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID" | Select-Object -Expand Content

Anda akan melihat respons JSON yang mirip seperti berikut:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID/operations/OPERATION_ID",
}