Panduan Pengenal Tag

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

  1. Lakukan pelatihan yang disesuaikan untuk model deteksi tag menggunakan fitur Vertex AI/AutoML Vision Object Detection.
  2. Lakukan pelatihan model penguraian entitas tag menggunakan fitur Vertex AI/AutoML Vision Object Detection dengan mesin OCR yang disesuaikan.
  3. Buat Endpoint dengan konfigurasi Tag Recognition yang diinginkan.
  4. 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.

gambar tag yang dikenali

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.