Setelah membuat Vision Warehouse, menambahkannya ke aplikasi, dan men-deploy aplikasi, Anda dapat menelusuri data yang disimpan di streaming video warehouse.
Menelusuri metadata video streaming
Untuk menelusuri data (assets
) di warehouse (corpus
), isi
SearchAssetsRequest
dengan konten yang ingin Anda temukan. Konten
ini hadir dalam beberapa format berbeda:
criteria
- Konten teks, angka, atau tanggal yang diberikan oleh pengguna.facet_selections
- Konten teks yang ditampilkan oleh server, dan dipilih oleh pengguna.content_time_ranges
- Rentang tanggal yang harus dicakup oleh semua konten yang ditampilkan.
Dalam contoh berikut, pertimbangkan Gudang yang berisi rekaman kamera keamanan dari berbagai jenis toko di seluruh negeri. Untuk mengambil semua aset untuk tahun 2018 atau 2020 yang diberi tag dengan anotasi "state": "California"
, atau anotasi "state":"Pennsylvania"
, kirim permintaan berikut:
REST
Untuk menelusuri aset, kirim permintaan POST menggunakan metode projects.locations.corpora.searchAssets.
Dalam isi contoh ini, kolomcriteria
menggunakan nilai textArray
untuk memberikan
dua txt_values
: "California" dan "Pennsylvania". Anda juga dapat memberikan kriteria penelusuran untuk jenis data lainnya. Anda hanya dapat menentukan satu jenis kriteria penelusuran dalam setiap permintaan.
Opsi kriteria penelusuran tambahan
Rentang bilangan bulat (inklusif)
"int_range_array" : { "int_ranges": { "start": "5", "end": "10" } "int_ranges": { "start": "20", "end": "30" } }
Rentang float (inklusif)
"float_range_array" : { "float_ranges": { "start": "2.6", "end": "14.3" } "float_ranges": { "start": "205.3", "end": "205.8" } }
Geolokasi (koordinat dan radius)
"geo_location_array": { "circle_areas": { "latitude": "37.4221", "longitude": "122.0841", "radius_meter": "500" }, "circle_areas": { "latitude": "12.46523", "longitude": "-95.2146", "radius_meter": "100" } }
Booleans
"bool_value" : { "value": "true" }
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:searchAssets
Isi JSON permintaan:
{ "page_size": "2", "content_time_ranges": { "date_time_ranges": { "start": { "year":"2018", "month":"1", "day":"1", }, "end": { "year":"2019", "month":"1", "day":"1", } }, "date_time_ranges": { "start": { "year":"2020", "month":"1", "day":"1", }, "end": { "year":"2021", "month":"1", "day":"1", } } }, "criteria": { "field": "state", "text_array": { "txt_values": "California", "txt_values": "Pennsylvania" } } }
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:searchAssets"
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:searchAssets" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Untuk mengambil halaman hasil berikutnya, teruskan parameter permintaan asli
yang ditambahkan dengan next_page_token
yang ditampilkan.
Array facet_results
menampilkan konten yang cocok dengan kueri asli.
Respons di atas menunjukkan bahwa salah satu kamera keamanan ditempatkan di toko peralatan olahraga, sedangkan kamera lainnya ditempatkan di toko bahan makanan.
Untuk membatasi kueri ini agar hanya menampilkan rekaman video toko bahan makanan, teruskan kembali permintaan yang sama dengan pemilihan faset.
Isi JSON permintaan dengan pemilihan aspek:
{ "page_size": "2", "content_time_ranges": { "date_time_ranges": { "start": { "year":"2018", "month":"1", "day":"1", }, "end": { "year":"2018", "month":"12", "day":"31", } }, "date_time_ranges": { "start": { "year":"2020", "month":"1", "day":"1", }, "end": { "year":"2020", "month":"12", "day":"31", } } }, "criteria": { "field": "state", "text_array": { "txt_values": "California", "txt_values": "Pennsylvania" } }, "facet_selections": { "facetId": "state", "displayName": "State", "buckets": { "value": { "stringValue": "California" } }, "buckets": { "value": { "stringValue": "Pennsylvania" } }, "bucketType": "FACET_BUCKET_TYPE_VALUE" }, "facet_selections": { "facetId": "store-type", "displayName": "StoreType", "buckets": { "value": { "stringValue": "Sporting Goods" } }, "buckets": { "value": { "stringValue": "Grocery" }, "selected": "true" }, "bucketType": "FACET_BUCKET_TYPE_VALUE" } }
Karena aspek Grocery dipilih, setiap respons akan berisi anotasi "store-type":"Grocery"
.
Menampilkan metadata aset klip saat melakukan penelusuran
Vertex AI Vision API juga memungkinkan pengguna menentukan metadata klip tambahan yang akan ditampilkan
dengan hasil penelusuran, menggunakan result_annotation_keys
.
REST
Dalam contoh ini, kunci anotasi yang diberikan pengguna
"camera-location"
ditentukan dalam isi permintaan, dan
nilai kunci ("Sunnyvale"
) diberikan dalam respons.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:searchAssets
Isi JSON permintaan:
{ "page_size": "2", "criteria": { "field": "state", "text_array": { "txt_values": "California", "txt_values": "Pennsylvania" } }, "result_annotation_keys": "camera-location" }
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:searchAssets"
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:searchAssets" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Menggunakan kriteria untuk menampilkan metadata aset dalam penelusuran
Anda dapat menentukan dalam kriteria penelusuran apakah akan menampilkan anotasi yang cocok untuk setiap item hasil penelusuran. Fitur ini didukung untuk
jenis skema data terbatas: INTEGER
, FLOAT
, BOOLEAN
, STRING
(khusus EXACT_SEARCH
), dan anotasi harus berada di tingkat partisi.
Asumsikan Anda membuat skema data berikut dalam korpus warehouse:
{ "key": "image-classification", "schema_details": { "type":"STRING", "granularity":"GRANULARITY_PARTITION_LEVEL", "search_strategy": { "search_strategy_type":"EXACT_SEARCH" } } }
Beberapa anotasi untuk "image-classification"
diserap ke dalam korpus menggunakan
penyerapan video streaming atau permintaan CreateAnnotation
.
Setelah anotasi dimasukkan, Anda dapat menelusuri
"image-classification"
dan mendapatkan hasil video serta anotasi yang sesuai:
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:searchAssets
Isi JSON permintaan:
{ "page_size": "5", "facet_selections": { "facet_id": "image-classification", "fetch_matched_annotations": "true", "bucket_type": "FACET_BUCKET_TYPE_VALUE", "buckets": { "value": { "string_value": "cat" }, "selected" : "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 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:searchAssets"
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:searchAssets" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Menggunakan penelusuran global untuk menampilkan metadata aset dalam penelusuran
Penelusuran global menyediakan tempat bagi pengguna untuk memasukkan kueri penelusuran, bukan menentukan kriteria satu per satu. Anda dapat menelusuri kriteria jenis string yang ditetapkan agar dapat ditelusuri dalam skema datanya. Hasil yang cocok akan diambil dan ditampilkan kepada Anda.
Untuk menggunakan fitur ini, tetapkan kolom search_query
di SearchAssetsRequest
:
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:searchAssets
Isi JSON permintaan:
{ "page_size": "2", "search_query': "Pennsylvania" }
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:searchAssets"
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:searchAssets" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Menerapkan spesifikasi pengurutan untuk mengurutkan metadata aset yang dikembalikan dalam penelusuran
Anda dapat menggunakan fitur pengurutan untuk mengurutkan hasil penelusuran berdasarkan
annotation
yang diberikan pengguna. Hal ini dapat berguna untuk mengurutkan hasil dengan jenis skema data yang dapat diurutkan, seperti jenis string dan numerik.
Untuk menggunakan fitur ini, tentukan schema_key_sorting_strategy
, yang memerlukan minimal kunci skema data dan urutan menaik/menurun:
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:searchAssets
Isi JSON permintaan:
{ "page_size": "2", "schemaKeySortingStrategy": { "options": { "data_schema_key": "stream-display-name", "sort_decreasing": 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 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:searchAssets"
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:searchAssets" | Select-Object -Expand Content
Anda akan menerima kode status yang menandakan proses berhasil (2xx), dan sebuah respons kosong.
Membuat konfigurasi penelusuran
Vision Warehouse memungkinkan pengguna menyesuaikan pengalaman penelusuran mereka melalui konfigurasi penelusuran. Konfigurasi Penelusuran menggunakan data video, seperti anotasi yang diberikan pengguna dan insight yang dihasilkan oleh model pemahaman video, untuk memberikan opsi penelusuran tambahan kepada pengguna. Google Cloud Misalnya, jika Anda ingin menargetkan klip dengan kendaraan berwarna tertentu dari data video mobil di gudang data, Anda dapat menggunakan konfigurasi penelusuran tertentu untuk kueri Anda.
Anda dapat menggunakan SearchConfig
untuk menetapkan opsi konfigurasi
yang lebih terperinci.
Contoh berikut menunjukkan cara membuat resource
SearchConfig
.
Panduan umum
Untuk semua kasus penggunaan, permintaan Anda harus memenuhi kondisi berikut agar dapat dieksekusi dengan berhasil:
Request.search_configuration.name
tidak boleh sudah ada.- Array
mapped_fields
tidak boleh kosong, dan harus dipetakan ke kunci anotasi yang diberikan pengguna yang ada. - Semua
mapped_fields
harus memiliki jenis yang sama. - Semua
mapped_fields
harus memiliki konfigurasi pencocokan persis/pintar yang sama. - Semua
mapped_fields
harus memiliki perincian yang sama.
Ada beberapa kasus penggunaan untuk membuat SearchConfig
, masing-masing dengan pedoman berbeda yang harus Anda ikuti.
Membuat konfigurasi penelusuran dengan kriteria penelusuran kustom
Bagian ini menjelaskan cara memetakan operator kustom ke satu atau beberapa kunci anotasi yang diberikan pengguna. Dalam hal ini, Anda harus memenuhi panduan umum saat membuat permintaan.
REST
Anda harus menentukan ID SearchConfig
baru di akhir
URL permintaan, bukan sebagai kolom dalam permintaan.
Kunci anotasi yang diberikan pengguna dalam contoh ini adalah "player"
, "coach"
, dan
"cheerleader"
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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.
- SEARCHCONFIG: Nama target
SearchConfig
Anda. SearchConfig
dalam contoh ini adalahperson
.
Metode HTTP dan URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=person
Isi JSON permintaan:
{ "search_criteria_property": { "mapped_fields": "player", "mapped_fields": "coach", "mapped_fields": "cheerleader", } }
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/searchConfigs?search_config_id=person"
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/searchConfigs?search_config_id=person" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs/person", "searchCriteriaProperty": { "mappedFields": [ "player", "coach", "cheerleader" ] } }
Membuat konfigurasi penelusuran dengan pemetaan aspek 1:1
Untuk membuat aspek untuk satu kunci anotasi yang diberikan pengguna, Anda harus memastikan bahwa
Request.search_configuration.facet_property.mapped_fields
berisi satu
elemen. Nilai elemen ini harus berupa nama kunci anotasi yang diberikan pengguna.
Contoh berikut menunjukkan cara membuat pemetaan aspek untuk kunci anotasi "Location"
yang diberikan pengguna.
REST
Anda harus menentukan ID SearchConfig
baru di akhir
URL permintaan, bukan sebagai kolom dalam permintaan.
Dalam contoh ini, permintaan berhasil karena search_config_id
(Location
)
dalam URL permintaan merujuk ke kunci anotasi yang diberikan pengguna yang sudah ada, and
mapped_fields
berisi tepat satu elemen dengan nilai yang sama dengan
search_config_id
(Location
).
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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.
- SEARCHCONFIG: Nama target
SearchConfig
Anda. SearchConfig
dalam contoh ini adalahLocation
.
Metode HTTP dan URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=Location
Isi JSON permintaan:
{ "facet_property": { "mapped_fields": "Location", "display_name": "Location", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_VALUE" } }
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/searchConfigs?search_config_id=Location"
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/searchConfigs?search_config_id=Location" | Select-Object -Expand Content
Permintaan berikut gagal karena tidak memenuhi persyaratan yang diperlukan.
Permintaan yang gagal
Permintaan gagal 1:
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=Location \ -d "{ "facet_property": { "mapped_fields": "City", /* City is not equal to search_config_id. */ "display_name": "City", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_VALUE" } }"
Permintaan gagal 2:
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=City \ -d "{ "facet_property": { "mapped_fields": "City", /* City doesn't map to an existing user-given annotation key. */ "display_name": "City", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_VALUE" } }"
Permintaan gagal 3:
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=Location \ -d "{ "facet_property": { "mapped_fields": "Location", "mapped_fields": "City", /* mapped_fields contains more than 1 element. */ "display_name": "Location", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_VALUE" } }"
Membuat konfigurasi penelusuran dengan pemetaan aspek kustom 1:1 atau lebih
Klien yang ingin membuat pemetaan antara nilai faset kustom dan satu atau beberapa kunci anotasi yang diberikan pengguna harus memastikan bahwa:
Request.search_configuration
harus berisiSearchCriteriaProperty
sehinggaRequest.search_configuration.search_criteria_property.mapped_fields
berisi elemen yang sama denganRequest.search_configuration.facet_property.mapped_fields
.
REST
Anda harus menentukan ID SearchConfig
baru di akhir
URL permintaan, bukan sebagai kolom dalam permintaan.
Contoh berikut menunjukkan cara membuat pemetaan aspek untuk
kunci anotasi yang diberikan pengguna "City"
dan "State"
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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.
- SEARCHCONFIG: Nama target
SearchConfig
Anda. SearchConfig
dalam contoh ini adalahLocation
.
Metode HTTP dan URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=Location
Isi JSON permintaan:
{ "search_criteria_property": { "mapped_fields": "City", "mapped_fields": "State", "mapped_fields": "Province", } "facet_property": { "mapped_fields": "City", "mapped_fields": "State", "display_name": "Province", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_VALUE" } }
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/searchConfigs?search_config_id=Location"
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/searchConfigs?search_config_id=Location" | Select-Object -Expand Content
Permintaan berikut gagal karena tidak memenuhi persyaratan yang diperlukan.
Permintaan yang gagal
Permintaan gagal 1:
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=Location \ -d "{ "facet_property": { /* Request is missing a SearchCriteriaProperty object.*/ "mapped_fields": "City", "mapped_fields": "State", "display_name": "Location", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_VALUE" } }"
Permintaan gagal 2:
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=Location \ -d "{ "search_criteria_property": { "mapped_fields": "City", "mapped_fields": "State", } "facet_property": { "mapped_fields": "City", "mapped_fields": "State", "mapped_fields": "Province", /* Province is missing from search_criteria_property. */ "display_name": "Location", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_VALUE" } }"
Membuat konfigurasi penelusuran dengan faset berbasis rentang
Faset rentang serupa dengan faset normal, tetapi setiap bucket faset mencakup rentang berkelanjutan. Konfigurasi tambahan
(range_facet_config
) memberikan informasi sistem tentang
rentang bucket facet ini.
Faset rentang tersedia untuk:
- Bilangan bulat
- Tanggal
Ada tiga jenis aspek rentang:
- Rentang tetap - Setiap bucket memiliki ukuran yang sama.
- Rentang kustom - Ukuran bucket yang dapat diprogram. Misalnya, logaritmik.
- Rentang tanggal - Perincian bucket tetap
DAY
,MONTH
, danYEAR
. Hal ini hanya berlaku untuk aspek rentang tanggal.
Kondisi yang sama berlaku seperti aspek tunggal, dengan beberapa validasi tambahan terkait spesifikasi rentang.
Spesifikasi bucket rentang tetap
Contoh berikut membuat spesifikasi aspek rentang tetap untuk kolom
inventory-count
, dan menghasilkan bucket:
[-inf, 0), [0, 10), [10, 20), [20, 30), [30, inf]
.
REST
Anda harus menentukan ID SearchConfig
baru di akhir
URL permintaan, bukan sebagai kolom dalam permintaan.
Permintaan ini menggunakan FixedRangeBucketSpec
untuk membuat beberapa bucket dengan perincian yang sama.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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.
- SEARCHCONFIG: Nama target
SearchConfig
Anda. SearchConfig
dalam contoh ini adalahinventory-count
.
Metode HTTP dan URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=inventory-count
Isi JSON permintaan:
{ "facet_property": { "mapped_fields": "inventory-count", "display_name": "Inventory Count", "result_size": "5", "bucket_type":"FACET_BUCKET_TYPE_FIXED_RANGE", "fixed_range_bucket_spec": { "bucket_start": { "integer_value": 0 }, "bucket_granularity": { "integer_value": 10 }, "bucket_count": 5 } } }
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/searchConfigs?search_config_id=inventory-count"
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/searchConfigs?search_config_id=inventory-count" | Select-Object -Expand Content
Spesifikasi bucket rentang kustom
Contoh berikut membuat spesifikasi aspek rentang tetap untuk kolom
video-views
, dan menghasilkan bucket:
[inf, 0), [0, 10), [10, 100), [100, 1000), [1000, 10000), [10000, inf)
.
REST
Anda harus menentukan ID SearchConfig
baru di akhir
URL permintaan, bukan sebagai kolom dalam permintaan.
Permintaan ini menggunakan CustomRangeBucketSpec
untuk menentukan cara nilai dikelompokkan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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.
- SEARCHCONFIG: Nama target
SearchConfig
Anda. SearchConfig
dalam contoh ini adalahvideo-views
.
Metode HTTP dan URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=video-views
Isi JSON permintaan:
{ "facet_property": { "mapped_fields": "video-views", "display_name": "Video Views", "result_size": "6", "bucket_type":"FACET_BUCKET_TYPE_CUSTOM_RANGE", "custom_range_bucket_spec": { "endpoints": { "integer_value": 0 }, "endpoints": { "integer_value": 10 }, "endpoints": { "integer_value": 100 }, "endpoints": { "integer_value": 1000 }, "endpoints": { "integer_value": 10000 } } } }
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/searchConfigs?search_config_id=video-views"
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/searchConfigs?search_config_id=video-views" | Select-Object -Expand Content
Spesifikasi bucket rentang tanggal / waktu
Contoh berikut membuat spesifikasi rentang tanggal untuk kolom film-date
dengan
perincian DAY
.
REST
Anda harus menentukan ID SearchConfig
baru di akhir
URL permintaan, bukan sebagai kolom dalam permintaan.
Permintaan ini menggunakan DateTimeBucketSpec
untuk menentukan cara nilai tanggal dikelompokkan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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.
- SEARCHCONFIG: Nama target
SearchConfig
Anda. SearchConfig
dalam contoh ini adalahfilm-date
.
Metode HTTP dan URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs?search_config_id=film-date
Isi JSON permintaan:
{ "facet_property": { "mapped_fields": "film-date", "display_name": "Film Date", "result_size": "5", "bucket_type": "FACET_BUCKET_TYPE_DATETIME", "datetime_bucket_spec": { "granularity": "DAY" } } }
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/searchConfigs?search_config_id=film-date"
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/searchConfigs?search_config_id=film-date" | Select-Object -Expand Content
Menggunakan pilihan faset untuk melakukan penelusuran
Setelah membuat bucket aspek ini, Anda dapat menggunakannya untuk menelusuri gudang.
REST
Permintaan ini menggunakan objek facetSelections
untuk menentukan grup bucket aspek.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-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:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:searchAssets
Isi JSON permintaan:
{ "page_size": "10", "facet_selections": { "facet_id": "inventory-count", "buckets": { "range": { "end" : { "integer_value": 0 } } }, "buckets": { "range": { "start" : { "integer_value": 20 }, "end" : { "integer_value": 30 } } } }, "facet_selections": { "facet_id": "video-views", "buckets": { "range": { "start" : { "integer_value": 100 }, "end" : { "integer_value": 1000 } } } }, "facet_selections": { "facet_id": "film-date", "buckets": { "range": { "start" : { "datetime_value": { "year": 2022, "month": 9, "day": 10 } }, "end" : { "datetime_value": { "year": 2022, "month": 9, "day": 11 } } } } } }
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:searchAssets"
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:searchAssets" | Select-Object -Expand Content
Memperbarui konfigurasi penelusuran
Untuk memperbarui SearchConfig
saat ini, permintaan Anda harus memenuhi persyaratan berikut:
Request.searchConfig.name
harus sudah ada.- Permintaan harus berisi setidaknya satu
searchCriteriaProperty
ataufacetProperty
yang tidak kosong. - Array
mappedFields
tidak boleh kosong, dan harus dipetakan ke kunci anotasi yang diberikan pengguna yang sudah ada. - Semua
mappedFields
harus memiliki jenis yang sama. - Semua
mappedFields
harus memiliki perincian yang sama. - Semua
mappedFields
harus memiliki opsi pencocokan semantikSearchConfig
yang sama.
REST & CMD LINE
Contoh kode berikut mengupdate resource konfigurasi penelusuran gudang menggunakan metode
projects.locations.corpora.searchConfigs.patch
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- REGIONALIZED_ENDPOINT: Endpoint dapat menyertakan awalan yang cocok dengan
LOCATION_ID
sepertieurope-west4-
. Lihat informasi selengkapnya tentang endpoint yang diregionalkan. - PROJECT: Project ID atau nomor project Anda. Google Cloud
- LOCATION_ID: Region tempat Anda menggunakan
Vertex AI Vision. Misalnya:
us-central1
,europe-west4
. Lihat wilayah yang tersedia. - CORPUS_ID: ID korpus target Anda.
- SEARCHCONFIG_ID: ID
SearchConfig
target Anda. "mappedFields"
: Satu atau beberapa kunci anotasi yang diberikan pengguna.
Metode HTTP dan URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs/SEARCHCONFIG_ID
Isi JSON permintaan:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs/SEARCHCONFIG_ID1", "searchCriteriaProperty": { "mappedFields": "dataschema2" } }
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/searchConfigs/SEARCHCONFIG_ID"
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/searchConfigs/SEARCHCONFIG_ID" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/searchConfigs/SEARCHCONFIG_ID1", "searchCriteriaProperty": { "mappedFields": [ "dataschema2" ] } }