Model Tag Recognizer membantu Anda memecahkan masalah utama dalam memahami rak retail, yaitu mengenali dan mengurai tag (misalnya, tag harga atau tag label lainnya) sesuai dengan skema ekstraksi entitas pasangan nilai kunci yang ditentukan pengguna.
Model ini dapat berfungsi sebagai elemen dasar AI utama untuk menganalisis dan menafsirkan data gambar produk di toko retail. Misalnya, Anda dapat menggunakan model ini pada gambar rak yang diambil oleh kamera lokal atau perangkat seluler.
Kasus penggunaan Pengenal Tag dan Pengenal Produk
Model Product Recognizer dan Tag Recognizer dapat berfungsi sebagai elemen penyusun AI utama untuk menganalisis dan menafsirkan data gambar di sekitar data gambar produk dan tag, yang mungkin telah Anda ambil dari toko retail.
Model Pengenal produk dan Pengenal tag menggabungkan beberapa kemampuan pemodelan dan data AI inti Google untuk membantu retailer dan/atau partner teknis memecahkan masalah utama dalam memahami data gambar produk dan label harga, termasuk:
- Mengenali, sehingga memahami produk apa yang ada dalam gambar.
- Mengenali dan mengurai tag (misalnya, tag harga, atau tag label teks lainnya) sesuai dengan skema ekstraksi entitas key-value pair yang ditentukan pengguna.
Secara khusus, beberapa model AI Google yang berbeda disertakan untuk mendukung pemecahan masalah kasus penggunaan ini, seperti
- Model penyematan visual thumbnail produk, yang mengubah gambar thumbnail produk menjadi representasi ruang fitur numerik.
- Model OCR Google, yang mengekstrak semua teks yang terlihat dalam gambar.
- Model ekstraksi entitas Google (yang dapat Anda sesuaikan), yang mengubah teks mentah menjadi entitas bernama pasangan nilai kunci yang ditentukan pengguna.
Selain model AI Google ini, pengenal produk juga memanfaatkan database besar informasi produk Google. Data produk dalam database Produk ini mencakup identitas GTIN / UPC produk, merek produk, judul, dan deskripsi lintas bahasa, logo produk, serta gambar dengan berbagai variasi kemasan. Model embedding visual thumbnail produk dengan database Produk yang disebutkan sebelumnya memungkinkan model Pengenal produk dapat mengenali banyak produk secara langsung.
Dua fitur AI utama adalah model Product Recognizer dan Tag Recognizer.
Fungsi Pengenal Tag
Model ini mengenali semua string teks dalam tag, lalu mencoba mengurai teks ke dalam skema ekstraksi entity key-value pair yang ditentukan pengguna, seperti deskripsi item produk atau nilai harga. Model ini mencakup model AI Google berikut yang memiliki kemampuan berbeda:
- Teknologi OCR Google, yang mengekstrak semua teks yang terlihat dalam gambar.
Model ekstraksi entity Google yang mengubah teks mentah menjadi entity bernama pasangan nilai kunci yang ditentukan pengguna. Sesuaikan model ini menggunakan Vertex AI. Misalnya, jika Anda hanya memperhatikan deskripsi item produk, nilai harga produk, atau harga promo, tetapi tidak yang lain, pengguna dapat menentukan skema penguraian tag sebagai berikut:
key: item_description value: string key: regular_price value: number key: sale_price value: number
Skema Penguraian Tag
Dengan pelatihan model ekstraksi entity yang disesuaikan, kotak item tag yang terdeteksi kemudian akan dikenali dan diuraikan sesuai dengan skema yang ditentukan pengguna, misalnya sebagai berikut:
item_description: COLLECTION 18PC GFT BX
regular_price: 1099
sale_price: 999
Contoh Objek JSON Output
{
"imageUri": "gs://test_bucket/test_image.jpg",
"tagRecognitionAnnotations": [
{
"entities": [
{
"confidence": 0.99646133,
"mentionText": "NISSIN TOP RAMEN\n\nBOW CHICKEN\n\n",
"region": {
"xMax": 0.4618055,
"xMin": 0.042725038,
"yMax": 0.45387268,
"yMin": 0.18415153
},
"type":"description"
},
{
"confidence": 0.95828205,
"mentionText": "$3.90\n",
"region": {
"xMax": 0.24819264,
"xMin": 0.04185935,
"yMax": 0.96134734,
"yMin": 0.80382305
},
"type":"unit_price"
},
{
"confidence": 0.60659707,
"mentionText": "$14.99\n",
"region": {
"xMax": 0.9754113,
"xMin": 0.3654699,
"yMax": 0.92825794,
"yMin": 0.40368474
},
"type":"price"
}
]
}
]
}Penyiapan lingkungan
Bagian ini menjelaskan cara berinteraksi dengan Store Vision AI RESTful API.
API_ENDPOINT=visionai.googleapis.com
PROJECT_ID=your project ID
Semua metode create memerlukan penentuan
nama/ID resource yang akan dibuat secara eksplisit. Anda dapat menggunakan ID string yang bermakna, misalnya, "product-ABC" atau ID yang dibuat secara acak, misalnya,
UUID.
Untuk memberikan akses editor peran kepada seseorang agar dapat menggunakan Store Vision API, jalankan perintah pengikatan IAM berikut:
gcloud projects add-iam-policy-binding PROJECT_ID --member='user:USER_ACCOUNT' --role='roles/visionai.editor'
Untuk memberikan akses editor ke akun layanan, gunakan perintah di bawah:
gcloud projects add-iam-policy-binding PROJECT_ID --member='serviceAccount:SERVICE_ACCOUNT' --role='roles/visionai.editor'
Pelajari lebih lanjut pengikatan IAM.
Perjalanan pengguna Tag Recognizer
- Lakukan pelatihan yang disesuaikan untuk model deteksi tag menggunakan fitur Vertex AI/AutoML Vision Object Detection.
- Lakukan pelatihan model penguraian entitas tag menggunakan fitur Vertex AI/AutoML Vision Object Detection dengan mesin OCR yang disesuaikan.
- Buat Endpoint dengan konfigurasi Tag Recognition yang diinginkan.
- Lakukan BatchAnalyze dengan fitur TagRecognition. Di backend, sistem akan mengidentifikasi tag dari setiap gambar input, menganalisis teks pada setiap tag yang terdeteksi untuk menghasilkan output parsing terstruktur. T ## Pelatihan model Deteksi Tag & Penguraian Entitas
Anda dapat melatih model Deteksi Tag yang disesuaikan menggunakan fitur pelatihan model Deteksi Objek gambar produk Vertex AI / AutoML Vision yang sudah ada. Meskipun fitur pelatihan model Deteksi Objek Vertex AI / AutoML Vision memberikan pengalaman pelatihan model yang dikelola sepenuhnya, Anda tetap bertanggung jawab untuk menyiapkan set data gambar yang diambil sampelnya dengan baik dan memiliki anotasi kotak pembatas objek yang diberi label sepenuhnya sebagai set data pelatihan untuk dimasukkan ke dalam konsol pelatihan model. Google Cloud menyediakan Layanan Pelabelan Data Vertex AI untuk memungkinkan Anda membuat tugas pelabelan data. Ikuti link tugas pelabelan data Vertex AI berikut untuk mengetahui detailnya: /vertex-ai/docs/datasets/data-labeling-job. Berikan petunjuk pelabelan data yang jelas kepada pemberi rating manual agar mereka tahu cara memberi label pada kotak pembatas deteksi tag dalam gambar sebagai persiapan set data pelatihan.
Untuk melatih model Tag Entity Parsing, Anda perlu menyiapkan kumpulan data pelatihan, dengan gambar dan anotasi terkaitnya.
- Gambar adalah gambar tag yang sudah dipangkas.
- Di setiap gambar, Anda perlu menentukan dan memberikan kolom entitas utama (seperti kolom product_title, price, unit_price) yang ingin dideteksi dan dikenali/diuraikan, serta lokasi koordinat kotak pembatas gambar terkait dalam tampilan gambar yang dipangkas ini.
- Untuk mendukung pengenalan / penguraian yang benar, kami juga mewajibkan Anda memberikan sintaksis ekspresi reguler untuk mengkarakterisasi setiap kolom. Hal ini diperlukan untuk membantu rutinitas pelatihan dan inferensi algoritma penguraian tag.

Contoh Pelatihan Penguraian Entity Tag
Misalnya, dengan contoh pelatihan penguraian entitas tag sebelumnya, Anda dapat memberikan satu baris info anotasi dalam file CSV anotasi data pelatihan sebagai berikut:
"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"
Dari contoh sebelumnya:
- Kolom "product_title" memiliki koordinat gambar kotak yang sesuai "(x0, y0, x1, y1)" dan batasan ekspresi reguler untuk kolom ini adalah tidak ada "".
- Kolom "harga" memiliki koordinat gambar kotak yang sesuai "(x0, y0, x1, y1)" dan batasan ekspresi reguler untuk kolom ini adalah "\$\d+\.\d{2}", yang menunjukkan bahwa kita ingin mengenali dan mengurai kolom ini dengan tanda $ di awal entri teks, dan beberapa digit angka sebelum "." dan dua digit setelah ".".
- Kolom "unit_price" memiliki sintaksis anotasi yang sama dengan kolom "price", misalnya, koordinat gambar kotak "(x0, y0, x1, y1)" dan batasan ekspresi reguler untuk kolom ini adalah "\$\d+\.\d{2}", yang menunjukkan bahwa kita ingin mengenali dan mengurai kolom ini dengan tanda $ di awal entri teks, dan beberapa digit angka sebelum "." dan dua digit setelah ".".
Oleh karena itu, data pelatihan model deteksi entitas / parsing tag harga yang tepat akan memiliki kumpulan gambar tag harga, dengan anotasi dalam file CSV dengan setiap entri baris CSV seperti entri dalam contoh sebelumnya.
"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"
"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"
"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"
[...]
Anda dapat melatih model Tag Entity Parsing yang disesuaikan menggunakan fitur pelatihan model Deteksi Objek Gambar produk Vertex AI /AutoML Vision yang sudah ada, serta penyesuaian mesin OCR Google.
Perlu diperhatikan bahwa meskipun, mulai Juli 2022, pelatihan dan deployment model Deteksi Tag dan Penguraian Entitas Tag yang disesuaikan ke BatchAnalyze API Store Vision AI belum sepenuhnya didukung sebagai pengalaman konsol terintegrasi, Anda tetap dapat memanfaatkan pelatihan model Deteksi Tag dan Penguraian Entitas Tag yang disesuaikan ini (menggunakan fitur Deteksi Objek Vertex AI Vision) dan menayangkannya di BatchAnalyze API Store Vision AI dengan melakukan beberapa langkah mandiri manual.
Penggunaan API - inferensi analisis batch
Membuat Endpoint
- ENDPOINT_ID=ID endpoint Anda
- TAG_DETECTOR=Nama model deteksi tag Anda
- TAG_PARSER=Nama model penguraian tag Anda
curl -sS -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailEndpoints?retail_endpoint_id=ENDPOINT_ID \
-d '{
"tagRecognitionConfig": {
"tag_detection_model": "TAG_DETECTOR_NAME",
"tag_parsing_model": "TAG_PARSER_NAME"
}
}'
- INPUT_FILE_URI=URI Cloud Storage dari file input Anda, setiap baris dalam file input hanyalah URI Cloud Storage dari gambar yang akan diproses, misalnya, gs://my-bucket/my-image.jpg
- OUTPUT_URI_PREFIX=Awalan URI Cloud Storage untuk file hasil output, misalnya, gs://my-bucket/my-output-dir
curl -sS -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailEndpoints/ENDPOINT_ID:batchAnalyze
-d '{
"gcsSource": {
"uris": ["INPUT_FILE_URI"]
},
"features": [
{
"type": "TYPE_TAG_RECOGNITION",
}
],
"outputGcsDestination": {
"outputUriPrefix": "OUTPUT_URI_PREFIX"
}
}'
"features": [
{
"type": "TYPE_TAG_RECOGNITION",
"tagRecognitionConfig": {
"tag_detection_model": "'TAG_DETECTOR_NAME'",
"tag_parsing_model": "TAG_PARSER_NAME"
}
}
],
Ada juga kolom lainnya yang dapat Anda tetapkan dan konfigurasi di
tagRecognitionConfig, yang merupakan objek RetailTagRecognitionConfig. Lihat deskripsi resource di referensi API untuk mengetahui detail selengkapnya.
Referensi API
Resource: projects.locations.retailCatalogs
Representasi JSON
{
"name": string,
"displayName": string,
"createTime": string,
"updateTime": string,
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
}
Kolom
nama |
String |
Hanya output. Nama resource RetailCatalog |
|---|---|---|
displayName |
String |
Opsional. Nama tampilan RetailCatalog. |
createTime |
string (format Timestamp) |
Hanya output. Stempel waktu saat RetailCatalog ini dibuat. |
updateTime |
string (format Timestamp) |
Hanya output. Stempel waktu update. |
resourceState |
enum |
Hanya output. Status RetailCatalog. |
label |
map (key: string, value: string) |
Label dengan metadata yang ditentukan pengguna untuk mengatur RetailCatalog Anda. Kunci dan nilai label tidak boleh lebih dari 64 karakter (titik kode Unicode), hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung. Karakter internasional diperbolehkan. Lihat https://goo.gl/xmQnxf untuk mengetahui informasi dan contoh label selengkapnya. Objek yang berisi daftar pasangan "key": value pair. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
Metode: projects.locations.retailCatalogs.create
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs
Parameter lokasi
| parent | string | Wajib. ID induk. |
Isi permintaan
Isi permintaan memuat instance RetailCatalog.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailCatalog yang baru dibuat.
Metode: projects.locations.retailCatalogs.get
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}
Parameter lokasi
| nama | string | Wajib. ID RetailCatalog. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailCatalog.
Metode: projects.locations.retailCatalogs.list
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs
Parameter lokasi
| parent | string | Wajib. ID induk. |
Parameter kueri
| filter | string | Opsional. Ekspresi untuk memfilter hasil permintaan. |
|---|---|---|
| pageToken | string | Opsional. Token yang mengidentifikasi halaman hasil yang harus ditampilkan server. |
| pageSize | integer | Opsional. Ukuran halaman yang diminta. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai. |
| orderBy | string | Opsional. Daftar kolom yang dipisahkan koma untuk diurutkan dalam urutan menaik. Gunakan "desc" setelah nama kolom untuk menurun. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons memuat data dengan struktur berikut: Representasi JSON
{
"retailCatalogs": [
{
object (RetailCatalog)
}
],
"nextPageToken": string
}
Metode: projects.locations.retailCatalogs.delete
Permintaan HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}
Parameter lokasi
| nama | string | Wajib. ID RetailCatalog. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Metode: projects.locations.retailCatalogs.importRetailProducts
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}:importRetailProducts
Parameter lokasi
| nama | string | Wajib. Nama resource RetailCatalog. |
Isi permintaan
Representasi JSON
{
"gcsSource": { object(GcsSource) },
"format": enum(Format)
}
Kolom
| gcsSource | objek | Wajib. Lokasi Cloud Storage untuk konten input.
Beberapa lokasi input dapat diberikan. Konten semua lokasi input
akan diimpor dalam satu batch. Ekstensi file yang didukung: 1.
File JSONL. Setiap baris adalah format JSON RetailProductIoFormat. 2. File TXT. Setiap baris adalah GTIN Produk yang akan diimpor. |
| format | enum | Wajib. Format file impor. |
Memformat nilai ENUM
| FORMAT_UNSPECIFIED | Tidak boleh digunakan. |
|---|---|
| FORMAT_TXT | Format TXT. |
| FORMAT_JSONL | Format JSONL. |
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Resource: projects.locations.retailProducts
Representasi JSON
{
"name": string,
"gtins": [string],
"normalizedGtins": [string],
"thirdPartyIds": [ { object(ThirdPartyId) }],
"locale": string,
"brand": string,
"title": string,
"productUri": string,
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Kolom
nama |
String |
Hanya output. Nama resource RetailProductImage |
|---|---|---|
displayName |
String |
Opsional. Nama tampilan RetailProductImage. |
sourceType |
enum |
Opsional. Jenis sumber |
gcsUri |
string |
Opsional. Lokasi Cloud Storage RetailProductImage. Kolom ini harus ditetapkan kecuali jika gambar disediakan oleh Google, misalnya, jika jenis sumber adalah SOURCE_TYPE_GOOGLE. |
resourceState |
enum |
Hanya output. Status RetailProductImage. |
label |
map (key: string, value: string) |
Label dengan metadata yang ditentukan pengguna untuk mengatur RetailProductImage Anda. Kunci dan nilai label tidak boleh lebih dari 64 karakter (titik kode Unicode), hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung. Karakter internasional diperbolehkan. Lihat https://goo.gl/xmQnxf untuk mengetahui informasi dan contoh label selengkapnya. Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (format Timestamp) |
Hanya output. Stempel Waktu pembuatan. |
updateTime |
string (format Timestamp) |
Hanya output. Stempel waktu update. |
RetailThirdPartyId Presentasi JSON
{
"id": string,
"owner": string
}
Kolom
| id | string | ID pihak ketiga yang digunakan oleh retailer atau produsen (misalnya, SKU atau MPN). |
| owner | string | Entitas yang 'memiliki' ID pihak ketiga, misalnya, produsen atau retailer yang menjual produk ini. |
Metode: projects.locations.retailCatalogs.retailProducts.create
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts
Parameter lokasi
| parent | string | Wajib. ID induk. |
Isi permintaan
Isi permintaan memuat instance RetailProduct.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailProduct yang baru dibuat.
Metode: projects.locations.retailCatalogs.retailProducts.get
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*
Parameter lokasi
| nama | string | Wajib. ID RetailProduct. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailProduct.
Metode: projects.locations.retailCatalogs.retailProducts.list
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts
Parameter lokasi
| parent | string | Wajib. ID induk. |
Parameter kueri
| filter | string | Opsional. Ekspresi untuk memfilter hasil permintaan. |
|---|---|---|
| pageToken | string | Opsional. Token yang mengidentifikasi halaman hasil yang harus ditampilkan server. |
| pageSize | integer | Opsional. Ukuran halaman yang diminta. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai. |
| orderBy | string | Opsional. Daftar kolom yang dipisahkan koma untuk diurutkan dalam urutan menaik. Gunakan "desc" setelah nama kolom untuk menurun. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons memuat data dengan struktur berikut: Representasi JSON
{
"retailProducts": [
{
object (RetailProducts)
}
],
"nextPageToken": string
}
Metode: projects.locations.retailCatalogs.retailProducts.delete
Permintaan HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*
Parameter lokasi
| nama | string | Wajib. ID RetailProduct. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan kosong.
Resource: projects.locations.retailProductImages
Representasi JSON
{
"name": string,
"displayName": string,
"sourceType": enum(SourceType),
"gcsUri": string,
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Kolom
nama |
String |
Hanya output. Nama resource RetailProductImage |
|---|---|---|
displayName |
String |
Opsional. Nama tampilan RetailProductImage. |
sourceType |
enum |
Opsional. Jenis sumber |
gcsUri |
string |
Opsional. Lokasi Cloud Storage RetailProductImage. Kolom ini harus ditetapkan kecuali jika gambar disediakan oleh Google, misalnya, jika jenis sumber adalah SOURCE_TYPE_GOOGLE. |
resourceState |
enum |
Hanya output. Status RetailProductImage. |
label |
map (key: string, value: string) |
Label dengan metadata yang ditentukan pengguna untuk mengatur RetailProductImage Anda. Kunci dan nilai label tidak boleh lebih dari 64 karakter (titik kode Unicode), hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung. Karakter internasional diperbolehkan. Lihat https://goo.gl/xmQnxf untuk mengetahui informasi dan contoh label selengkapnya. Objek yang berisi daftar pasangan "key": value pair. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (format Timestamp) |
Hanya output. Stempel Waktu pembuatan. |
updateTime |
string (format Timestamp) |
Hanya output. Stempel waktu update. |
Nilai ENUM SourceType
| SOURCE_TYPE_UNSPECIFIED | Sumber data tidak diketahui. Tidak boleh digunakan. |
|---|---|
| SOURCE_TYPE_FIXED_CAMERA | Gambar diambil dari kamera tetap. |
| SOURCE_TYPE_HAND_HELD_CAMERA | Gambar diambil dari kamera genggam. |
| SOURCE_TYPE_CRAWLED | Gambar di-crawl dari web. |
| SOURCE_TYPE_SYSTEM_GENERATED | Gambar dipangkas dari gambar asli dengan pelabelan manusia. |
Metode: projects.locations.retailCatalogs.retailProducts.retailProductImages.create
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages
Parameter lokasi
| parent | string | Wajib. ID induk. |
Isi permintaan
Isi permintaan memuat instance RetailProductImage.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailProductImage yang baru dibuat.
Metode: projects.locations.retailCatalogs.retailProducts.retailProductImages.get
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*
Parameter lokasi
| nama | string | Wajib. ID RetailProductImage. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailProductImage.
Metode: projects.locations.retailCatalogs.retailProducts.retailProductImages.list
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages
Parameter lokasi
| parent | string | Wajib. ID induk. |
Parameter kueri
| filter | string | Opsional. Ekspresi untuk memfilter hasil permintaan. |
|---|---|---|
| pageToken | string | Opsional. Token yang mengidentifikasi halaman hasil yang harus ditampilkan server. |
| pageSize | integer | Opsional. Ukuran halaman yang diminta. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai. |
| orderBy | string | Opsional. Daftar kolom yang dipisahkan koma untuk diurutkan dalam urutan menaik. Gunakan "desc" setelah nama kolom untuk menurun. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons memuat data dengan struktur berikut:
Representasi JSON
{
"retailProductImages": [
{
object (RetailProductImages)
}
],
"nextPageToken": string
}
Metode: projects.locations.retailCatalogs.retailProducts.retailProductImages.delete
Permintaan HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*
Parameter lokasi
| nama | string | Wajib. ID RetailProductImage. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan kosong.
Resource: projects.locations.retailCatalogs.retailProductSets
Representasi JSON
{
"name": string,
"displayName": string,
"retailProductIds": [string],
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Kolom
nama |
String |
Hanya output. Nama resource RetailProductSet |
|---|---|---|
displayName |
String |
Opsional. Nama tampilan RetailProductSet. |
retailProductIds [] |
String |
Hanya output. ID resource produk yang termasuk dalam RetailProductSet ini. Produk dalam RetailProductSet harus berada dalam katalog yang sama. |
resourceState |
enum |
Hanya output. Status RetailProductSet. |
label |
map (key: string, value: string) |
Label dengan metadata yang ditentukan pengguna untuk mengatur RetailProductSet Anda. Kunci dan nilai label tidak boleh lebih dari 64 karakter (titik kode Unicode), hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung. Karakter internasional diperbolehkan. Lihat https://goo.gl/xmQnxf untuk mengetahui informasi dan contoh label selengkapnya. Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (format Timestamp) |
Hanya output. Stempel Waktu pembuatan. |
updateTime |
string (format Timestamp) |
Hanya output. Stempel waktu update. |
Metode: projects.locations.retailCatalogs.retailProductSets.create
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets
Parameter lokasi
| parent | string | Wajib. ID induk. |
Isi permintaan
Isi permintaan berisi instance RetailProductSet.
Isi respons
Jika berhasil, isi respons berisi instance RetailProductSet yang baru dibuat.
Metode: projects.locations.retailCatalogs.retailProductSets.get
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*
Parameter lokasi
| nama | string | Wajib. ID RetailProductSet. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons berisi instance RetailProductSet.
Metode: projects.locations.retailCatalogs.retailProductSets.list
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets
Parameter lokasi
| parent | string | Wajib. ID induk. |
Parameter kueri
| filter | string | Opsional. Ekspresi untuk memfilter hasil permintaan. |
|---|---|---|
| pageToken | string | Opsional. Token yang mengidentifikasi halaman hasil yang harus ditampilkan server. |
| pageSize | integer | Opsional. Ukuran halaman yang diminta. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai. |
| orderBy | string | Opsional. Daftar kolom yang dipisahkan koma untuk diurutkan dalam urutan menaik. Gunakan "desc" setelah nama kolom untuk menurun. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons memuat data dengan struktur berikut:
Representasi JSON
{
"retailProductSets": [
{
object (RetailProductSets)
}
],
"nextPageToken": string
}
Metode: projects.locations.retailCatalogs.retailProductSets.delete
Permintaan HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*
Parameter lokasi
| nama | string | Wajib. ID RetailProductSet. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan kosong.
Metode: projects.locations.retailCatalogs.retailProductSets.add
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:remove
Parameter lokasi
| nama | string | Wajib. Nama resource RetailProductSet. |
Isi permintaan
Representasi JSON
{
"productIds": [string],
"productFilter": string
}
Kolom
productIds[ ] |
string |
ID resource RetailProduct yang akan ditambahkan. Semua produk tersebut harus termasuk dalam RetailCatalog yang sama dengan RetailProductSet tujuan yang ditentukan. Hingga 200 ID RetailProduct dapat ditentukan dalam satu permintaan. Tidak dapat digunakan bersama dengan productFilter. |
|---|---|---|
productFilter |
string |
Filter standar yang akan diterapkan ke semua RetailProduct di RetailCatalog induk, memilih item yang memenuhi kondisi filter dan menambahkannya ke RetailProductSet. Tidak dapat digunakan bersama dengan product_ids. Filter yang didukung: https://google.aip.dev/160 |
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Metode: projects.locations.retailCatalogs.retailProductSets.remove
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:add
Parameter lokasi
| nama | string | Wajib. Nama resource RetailProductSet. |
Isi permintaan
Representasi JSON
{
"productIds": [string],
"productFilter": string
}
Kolom
productIds[ ] |
string |
ID resource RetailProduct yang akan dihapus. Jika RetailProducts yang ditentukan bukan milik RetailProductSet ini, RetailProducts tersebut akan diabaikan. Hingga 200 ID RetailProduct dapat ditentukan dalam satu permintaan. Tidak dapat digunakan bersama dengan products_filter. |
|---|---|---|
productFilter |
string |
Filter standar yang akan diterapkan ke semua RetailProduct dalam RetailProductSet yang ditentukan, pilih item yang memenuhi kondisi filter, lalu hapus item tersebut dari RetailProductSet. Tidak dapat digunakan bersama dengan product_ids. Filter yang didukung:https://google.aip.dev/160 |
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Resource: projects.locations.retailCatalogs.retailProductRecognitionIndexes
Representasi JSON
{
"name": string,
"displayName": string,
"description": string,
"retailProductSet": [string],
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Kolom
nama |
String |
Hanya output. Nama resource RetailProductRecognitionIndex. |
|---|---|---|
displayName |
String |
Opsional. Nama tampilan RetailProductRecognitionIndex. |
deskripsi |
String |
Opsional. Deskripsi RetailProductRecognitionIndex. |
retailProductSet[] |
string |
Opsional. Nama resource RetailProductSet yang akan digunakan untuk membuat resource ini. Jika disetel, RetailProductRecognitionIndex hanya akan berisi produk dalam RetailProductSet tertentu. Jika tidak disetel, semua produk dalam katalog induk akan digunakan. |
resourceState |
enum |
Hanya output. Status RetailProductRecognitionIndex. |
label |
map (key: string, value: string) |
Label dengan metadata yang ditentukan pengguna untuk mengatur RetailProductRecognitionIndex Anda. Kunci dan nilai label tidak boleh lebih dari 64 karakter (titik kode Unicode), hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung. Karakter internasional diperbolehkan. Lihat https://goo.gl/xmQnxf untuk mengetahui informasi dan contoh label selengkapnya. Objek yang berisi daftar pasangan "key": value pair. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (format Timestamp) |
Hanya output. Stempel Waktu pembuatan. |
updateTime |
string (format Timestamp) |
Hanya output. Stempel waktu update. |
Metode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.create
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes
Parameter lokasi
| parent | string | Wajib. ID induk. |
Isi permintaan
Isi permintaan memuat instance RetailProductRecognitionIndex.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailProductRecognitionIndex yang baru dibuat.
Metode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.get
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*
Parameter lokasi
| nama | string | Wajib. ID RetailProductRecognitionIndex. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan berisi instance
RetailProductRecognitionIndex.
Metode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.list
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes
Parameter lokasi
| parent | string | Wajib. ID induk. |
Parameter kueri
| filter | string | Opsional. Ekspresi untuk memfilter hasil permintaan. |
|---|---|---|
| pageToken | string | Opsional. Token yang mengidentifikasi halaman hasil yang harus ditampilkan server. |
| pageSize | integer | Opsional. Ukuran halaman yang diminta. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai. |
| orderBy | string | Opsional. Daftar kolom yang dipisahkan koma untuk diurutkan dalam urutan menaik. Gunakan "desc" setelah nama kolom untuk menurun. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons memuat data dengan struktur berikut:
Representasi JSON
{
"retailProductRecognitionIndexes": [
{
object (RetailProductRecognitionIndex)
}
],
"nextPageToken": string
}
Metode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.delete
Permintaan HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*
Parameter lokasi
| nama | string | Wajib. ID ProductRecognitionIndex. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Resource: projects.locations.retailEndpoints
Representasi JSON
{
"name": string,
"displayName": string,
"description": string,
"deployedProductRecognitionIndex": string,
"resourceState": enum(RetailResourceState),
"productRecognitionConfig": { object(RetailProductRecognitionConfig) },
"tagRecognitionConfig": { object(RetailTagRecognitionConfig) },
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Kolom
nama |
String |
Hanya output. Nama resource RetailEndpoint. |
|---|---|---|
displayName |
String |
Opsional. Nama tampilan RetailEndpoint. |
deskripsi |
String |
Opsional. Deskripsi RetailEndpoint. |
deployedProductRecognitionIndex |
String |
Hanya output. Nama resource ProductRecognitionIndex yang di-deploy ke RetailEndpoint ini. |
productRecognitionConfig |
Objek
|
Opsional. Konfigurasi untuk pengenalan produk. |
tagRecognitionConfig |
Objek
|
Opsional. Konfigurasi untuk pengenalan tag. |
resourceState |
enum |
Hanya output. Status RetailProductRecognitionIndex. |
label |
map (key: string, value: string) |
Label dengan metadata yang ditentukan pengguna untuk mengatur RetailProductRecognitionIndex Anda. Kunci dan nilai label tidak boleh lebih dari 64 karakter (titik kode Unicode), hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung. Karakter internasional diperbolehkan. Lihat https://goo.gl/xmQnxf untuk mengetahui informasi dan contoh label selengkapnya. Objek yang berisi daftar pasangan "key": value pair. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (format Timestamp) |
Hanya output. Stempel Waktu pembuatan. |
updateTime |
string (format Timestamp) |
Hanya output. Stempel waktu update. |
RetailProductRecognitionConfig
Representasi JSON
{
"productDetectionModel": string,
"detectionConfidenceThreshold": float,
"recognitionConfidenceThreshold": float,
"additionalConfig": { object }
}
Kolom
|
| productDetectionModel | string | Wajib. Model yang akan digunakan untuk mendeteksi produk dalam gambar input. Nilai yang didukung: "builtin/stable" (default) atau nama resource model Vertex AI. |
|---|---|---|
| detectionConfidenceThreshold | float | Opsional. Nilai minimum keyakinan untuk memfilter hasil deteksi. Jika tidak disetel, nilai default sistem akan digunakan. |
| recognitionConfidenceThreshold | float | Opsional. Ambang batas keyakinan untuk memfilter hasil pengenalan. Jika tidak disetel, nilai default sistem akan digunakan. |
| additionalConfig | object (format Struct) | Opsional. Konfigurasi tambahan untuk pengenalan produk. |
RetailTagRecognitionConfig
Representasi JSON
{
"tagDetectionModel": string,
"tagParsingModel": string,
"detectionConfidenceThreshold": float,
"parsingConfidenceThreshold": float,
"additionalConfig": { object }
}
Kolom
| tagDetectionModel | string | Wajib. Model yang akan digunakan untuk mendeteksi tag dalam gambar input. Nilai yang didukung: Resource model Vertex AI. |
|---|---|---|
| tagParsingModel | string | Wajib. Model untuk mengurai teks pada tag yang terdeteksi. Nilai yang didukung: Resource model Vertex AI. |
| detectionConfidenceThreshold | float | Opsional. Nilai minimum keyakinan untuk memfilter hasil deteksi. Jika tidak disetel, nilai default sistem akan digunakan. |
| parsingConfidenceThreshold | float | Opsional. Ambang batas keyakinan untuk memfilter hasil parsing teks. Jika tidak disetel, nilai default sistem akan digunakan. |
| additionalConfig | object (format Struct) | Opsional. Konfigurasi tambahan untuk pengenalan tag. |
Metode: projects.locations.retailEndpoints.create
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints
Parameter lokasi
| parent | string | Wajib. ID induk. |
Isi permintaan
Isi permintaan memuat instance RetailEndpoint.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailEndpoint yang baru dibuat.
Metode: projects.locations.retailEndpoints.get
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*}
Parameter lokasi
| nama | string | Wajib. ID RetailEndpoint. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan memuat instance RetailEndpoint.
Metode: projects.locations.retailEndpoints.list
Permintaan HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints
Parameter lokasi
| parent | string | Wajib. ID induk. |
Parameter kueri
| filter | string | Opsional. Ekspresi untuk memfilter hasil permintaan. |
|---|---|---|
| pageToken | string | Opsional. Token yang mengidentifikasi halaman hasil yang harus ditampilkan server. |
| pageSize | integer | Opsional. Ukuran halaman yang diminta. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai. |
| orderBy | string | Opsional. Daftar kolom yang dipisahkan koma untuk diurutkan dalam urutan menaik. Gunakan "desc" setelah nama kolom untuk menurun. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons memuat data dengan struktur berikut:
Representasi JSON
{
"retailEndpoints": [
{
object (RetailEndpoint)
}
],
"nextPageToken": string
}
Metode: projects.locations.retailEndpoints.delete
Permintaan HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*
Parameter lokasi
| nama | string | Wajib. ID RetailEndpoint. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan kosong.
Metode: projects.locations.retailEndpoints.deployRetailProductRecognitionIndex
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:deployRetailProductRecognitionIndex
Parameter lokasi
| retailEndpoint | string | Wajib. Nama resource RetailEndpoint
resource tempat
RetailProductRecognitionIndex di-deploy. |
Isi permintaan
Representasi JSON
{
"retailProductRecognitionIndex": string,
}
Kolom
| retailProductRecognitionIndex | string | Wajib. Nama resource
RetailProductRecognitionIndex
yang akan di-deploy. |
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Metode: projects.locations.retailEndpoints.undeployRetailProductRecognitionIndex
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:undeployRetailProductRecognitionIndex
Parameter lokasi
| retailEndpoint | string | Wajib. Nama resource RetailEndpoint
resource yang akan dibatalkan deployment-nya. |
Isi permintaan
Isi permintaan harus kosong.
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Metode: projects.locations.retailEndpoints.batchAnalyze
Permintaan HTTP
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:batchAnalyze
Parameter lokasi
| retailEndpoint | string | Wajib. Nama resource RetailEndpoint
untuk menayangkan permintaan inferensi. |
Isi permintaan
Representasi JSON
{
"gcsSource": string,
"features": { object(Feature) },
// Union field output can be only one of the following:
"outputGcsDestination": string,
"corpus": string,
// End of list of possible types for union field output.
"bigqueryTable": string
}
Kolom
| gcsSource | string | Wajib. Lokasi Cloud Storage untuk konten input. Beberapa lokasi input dapat diberikan. Isi semua lokasi input akan diproses dalam satu batch. Konten yang didukung: File TXT, setiap baris adalah jalur lengkap ke gambar. Maksimum 50 ribu gambar dapat didukung dalam satu permintaan. |
|---|---|---|
| outputGcsDestination | string | Opsional. Lokasi Cloud Storage dari direktori tempat output akan ditulis. |
| corpus | string | Opsional. Nama resource korpus gudang gambar. Belum didukung. |
| bigqueryTable | string | Opsional. Nama resource tabel BigQuery untuk ekspor anotasi. Dalam format "projects/*/datasets/*/tables/*". Jika disetel, anotasi yang dihasilkan dari inferensi ML juga akan diekspor ke tabel BigQuery yang ditentukan. Belum didukung. |
| features[] | Objek | Wajib. Jenis inferensi ML yang akan dilakukan. |
Fitur
Representasi JSON
{
"type": enum(Type),
"productRecognitionConfig": object(RetailProductRecognitionConfig),
"tagRecognitionConfig": object(RetailTagRecognitionConfig)
}
Kolom
| jenis | enum | Wajib. Jenis Fitur. |
|---|---|---|
| productRecognitionConfig | objek | Opsional. Penggantian per permintaan untuk fitur pengenalan produk. Nilai ini hanya efektif jika jenis ditetapkan ke TYPE_PRODUCT_RECOGNITION. |
| tagRecognitionConfig | objek | Opsional. Penggantian per permintaan untuk fitur pengenalan tag. Hanya berlaku jika jenis ditetapkan ke TYPE_TAG_RECOGNITION. |
Isi respons
Jika berhasil, isi respons akan memuat instance Operation.
Jenis
GcsSource
Representasi JSON
{
"uris": [string]
}
Kolom
| uris[] | string | Wajib. Referensi ke jalur Cloud Storage. |
Jenis
Nilai ENUM
| TYPE_UNSPECIFIED | Nilai default. Tidak boleh digunakan. |
|---|---|
| TYPE_PRODUCT_RECOGNITION | Pengenalan Produk. Harus digunakan di
RetailEndpoint dengan
RetailProductRecognitionIndex yang di-deploy. |
| TYPE_TAG_RECOGNITION | Deteksi dan Penguraian Tag. Harus digunakan pada
RetailEndpoint dengan
RetailTagRecognitionConfig. |
RetailProductIoFormat
Representasi JSON
{
"retailProduct": { object(RetailProduct) },
"retailProductImages": [ { object(RetailProductImage) }]
}
Kolom
| retailProduct | objek | Wajib. RetailProduct yang akan diimpor |
|---|---|---|
| retailProductImages[ ] | objek | Opsional. RetailProductImages dari
RetailProduct yang diberikan untuk diimpor. |
RetailResourceState
Nilai ENUM
| RETAIL_RESOURCE_STATE_UNSPECIFIED | Nilai default. Tidak boleh digunakan. |
|---|---|
| RETAIL_RESOURCE_STATE_CREATING | Membuat Status. |
| RETAIL_RESOURCE_STATE_CREATED | Status Dibuat. |
| RETAIL_RESOURCE_STATE_UPDATING | Memperbarui Status. |
| RETAIL_RESOURCE_STATE_DELETED | Status Dihapus. |
| RETAIL_RESOURCE_STATE_ERROR | Error Negara Bagian. |