商品認識ツールのガイド

商品認識ツール モデルは、提供された画像に写っている商品を認識して理解するのに役立ちます。画像には、認識させたい商品アイテムが 1 つだけ含まれている必要があります。

このモデルは、小売店から取得した商品画像データを分析して解釈するための主要な AI 構成要素として機能します。

タグ認識ツールと商品認識ツールのユースケース

商品認識モデルとタグ認識モデルは、小売店からキャプチャした商品とタグの画像データに関する画像データを分析して解釈するための主要な AI 構成要素として機能します。

商品認識モデルとタグ認識モデルには、小売業者や技術パートナーが商品と値札の画像データを理解するうえで重要な問題を解決できるよう、Google の AI モデリングとデータ機能が組み込まれています。たとえば、次のような問題です。

  • 認識(画像内の商品が何かを理解する)。
  • ユーザー定義の Key-Value ペア エンティティ抽出スキーマに従って、タグ(価格タグやその他のテキスト ラベルタグなど)を認識して解析します。

特に、次のようなユースケースの問題解決をサポートするために、いくつかの差別化された Google AI モデルが含まれています。

  • 商品のサムネイル画像を数値特徴空間表現に変換する、商品のサムネイルのビジュアル エンベディング モデル。
  • Google OCR モデル。画像に表示されているすべてのテキストを抽出します。
  • Google エンティティ抽出モデル(カスタマイズ可能)。未加工のテキストを、ユーザー定義の Key-Value ペアの名前付きエンティティに変換します。

商品認識ツールは、これらの Google AI モデルに加えて、Google の大規模な商品情報データベースも活用しています。この商品データベースの商品データには、商品の GTIN / UPC ID、商品のブランド、商品名、言語横断的な説明、商品のロゴ、さまざまなパッケージのバリエーションを捉えた画像などが含まれます。前述の商品サムネイル ビジュアル エンベディング モデルを含む商品データベースにより、商品認識モデルは多くの商品をすぐに認識できます。

主な AI 機能は、商品認識モデルとタグ認識モデルです。

商品認識ツールの機能

このモデルは、国際取引商品番号(GTIN)レベルまたは共通商品コード(UPC)レベルで個々の商品の ID を認識します。商品認識ツールには、次のような差別化された Google AI モデルがいくつか含まれており、これらのユースケースの問題解決を支援します。

  • 商品画像から数値特徴空間表現に変換する商品ビジュアル エンベディング モデル。
  • Google の OCR テクノロジー。画像に表示されているすべてのテキストを抽出します。
  • 商品サムネイルのビジュアル エンベディング モデルと組み合わせて使用される Google 商品データベースにより、商品認識モデルは多くの商品をすぐに認識できます。

出力 JSON オブジェクトの例

{
  "imageUri": "gs://test_bucket/test_image.jpg",
  "productRecognitionAnnotations": [
    {
      "detectedText": "Bolthouse Farms Perfectly Protein Tea & Soy Beverage",
      "recognitionResults": [
        {
          "confidence": 0.9420832,
          "productMetadata": {
            "brand": "Bolthouse Farms",
            "gtins": [
              "00071464260804"
              ],
            "locale": "en-US",
            "title": "Bolthouse Farms Perfectly Protein Tea & Soy Beverage, Vanilla Chai Tea - 52 fl oz"
          },
        }
      ]
    }
  ]
}

API のコンセプト

商品カタログの構築、商品データセットの管理、インデックスの構築、商品認識サービスのデプロイに役立つ 6 つの API リソースが提供されています。次のように記述します。

API のコンセプト図

カタログ: 小売業者が提供するすべての商品のコンテナを表すルートリソース。

Product: 販売者が提供する商品を表します。ProductCatalog の子リソースです。

ProductImage: 1 つの商品のビューを表す画像。ProductImageProduct の子リソースです。

ProductSet: 同じ Catalog 内の商品を整理してグループ化するための、より細かい粒度のコンテナ。1 つの ProductSet には 1 つまたは複数の Product を含めることができますが、含まれている Product を「所有」するのではなく、それらへの「リンク」を維持します。

ProductRecognitionIndex: 商品認識アルゴリズムで使用される画像エンベディングのリストが含まれます。ProductRecognitionIndex は、Catalog 全体から作成することも、ProductSetCatalogProduct のサブセット)から作成することもできます。

エンドポイント: 商品認識またはタグ認識の推論を実行するために必要なすべての構成を含むプレースメント。商品認識の場合、ProductRecognitionIndex のデプロイが必要です。タグ認識では、タグ エンティティ解析モデルの指定が必要です。

環境のセットアップ

このセクションでは、Store Vision AI RESTful API を操作する方法について説明します。

API_ENDPOINT=visionai.googleapis.com
PROJECT_ID=your project ID

すべての create メソッドでは、作成するリソース名/ID を明示的に指定する必要があります。意味のある文字列識別子(「product-ABC」など)を使用することも、ランダムに生成された識別子(UUID など)を使用することもできます。

Store Vision API を使用する編集者権限をユーザーに付与するには、次の IAM バインディング コマンドを実行します。

gcloud projects add-iam-policy-binding PROJECT_ID --member='user:USER_ACCOUNT' --role='roles/visionai.editor'

サービス アカウントに編集者のアクセス権を付与するには、次のコマンドを使用します。

gcloud projects add-iam-policy-binding PROJECT_ID --member='serviceAccount:SERVICE_ACCOUNT' --role='roles/visionai.editor'

IAM バインディングの詳細を確認する。

商品認識ツールのユーザー ジャーニー

  1. カタログを作成します。
  2. Products と(必要に応じて)ProductImagesCatalog にインポートします。
  3. ProductProductImages を表示して変更し、必要に応じて ProductSet を作成して商品リストをより細かく分類します。
  4. Catalog 全体または ProductSet から Index を作成します。
  5. 必要な商品認識構成で Endpoint を作成し、Index をデプロイします。
  6. ProductRecognition 機能を使用して BatchAnalyze を実行します。バックエンドでは、システムは各入力画像から商品を特定し、視覚信号と OCR テキスト信号の両方を使用して、指定されたインデックスから上位 K 個の類似商品を検索します。

API リソース管理(カタログとインデックス セット)

カタログ

カタログの作成
  • CATALOG_ID=カタログ ID。
curl -sS -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{}' https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs?retail_catalog_id=CATALOG_ID

出力例

{
  "name": "projects/cloud-store-vision-test/locations/us-central1/operations/operation-1655157982362-5e15b7f95fa6f-d30364c6-dc3a3714",
  "done": false
}
完了するまでオペレーションをプルする
  • OPERATION_ID: 出力オペレーション(operation-1655157982362-5e15b7f95fa6f-d30364c6-dc3a3714 など)
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID

出力例

{
  "name": "projects/cloud-store-vision-test/locations/us-central1/operations/operation-1655157982362-5e15b7f95fa6f-d30364c6-dc3a3714",
  "done": true
}
ImportProduct

サポートされているインポート形式は次の 2 つです。

  • TXT: 各行はインポートする商品の gtin
  • JSONL: 各行は RetailProductIoFormat の JSON 形式です。例:
{"retailProduct":{"name":"00040094314034","gtins":["00040094314034"]},"retailProductImages":[{"name":"1","gcsUri":"gs://shelfchecking-integration-test-data/products-data/00040094314034/1.jpg"}]}
{"retailProduct": {"name":"00123", "thirdPartyIds": {"id": "test-id", "owner": "test-owner"}}}

RetailProductIoFormat の詳細については、API リファレンスをご覧ください。現在、ImportProduct オペレーションごとに最大 10,000 個の商品をインポートできます。

また、「retailProductImages」内の「name」は、親の「retailProduct」リソースのスコープ内で一意であればよいことにご注意ください。つまり、異なる「retailProduct」リソースに属している限り、同じ「name」を持つ「retailProductImages」が 2 つ存在してもかまいません。

  • IMPORT_FILE_URI=インポート ファイルの Cloud Storage URI(例: gs://mybucket/my_import_file.jsonl)
  • IMPORT_FORMAT=インポート ファイルの形式(FORMAT_JSONL または FORMAT_TXT)
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/retailCatalogs/CATALOG_ID:importRetailProducts \
  -d '{
    "gcs_source": {
      "uris": "IMPORT_FILE_URI"
    },
    "format": "IMPORT_FORMAT"
  }'
カタログの一覧表示
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs
GetCatalog
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID
DeleteCatalog
curl -sS -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID

プロダクト

GTIN を使用した CreateProduct

GTIN-8、GTIN-13、GTIN-14、UPC(GTIN-12 とも呼ばれます)形式がサポートされています。GTIN 形式について詳しくは、こちらをご覧ください。

  • PRODUCT_ID=商品 ID
  • GTIN=商品の GTIN(例: 50735854797459、00040094314034)
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/retailCatalogs/CATALOG_ID/retailProducts?retail_product_id=PRODUCT_ID \
  -d '{"gtins": "GTIN"}'
サードパーティ ID を使用して CreateProduct を実行する
  • PRODUCT_ID=商品 ID
  • THIRD_PARTY_ID=第三者 ID
  • OWNER=サードパーティ ID を所有するエンティティ
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/retailCatalogs/CATALOG_ID/retailProducts?retail_product_id=PRODUCT_ID \
-d '
  {
    "third_party_ids": {
      "id": "THIRD_PARTY_ID",
      "owner": "OWNER",
    }
  }'
ListProducts
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts
GetProducts
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID
DeleteProduct
curl -sS -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID

ProductImage

CreateProductImage
  • PRODUCT_IMAGE_ID=商品画像の ID
  • IMAGE_GCS_URI=イメージの Cloud Storage URI(例: gs://mybucket/my_img.jpg)
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/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID/retailProductImages?retail_product_image_id=PRODUCT_IMAGE_ID \
  -d '{
    "source_type": "SOURCE_TYPE_HAND_HELD_CAMERA",
    "gcs_uri": "IMAGE_GCS_URI"
  }'
ListProductImages
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID/retailProductImages
GetProductImages
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID/retailProductImages/PRODUCT_IMAGE_ID
DeleteProductImage
curl -sS -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID/retailProductImages/PRODUCT_IMAGE_ID

ProductSet

CreateProductSet
  • PRODUCT_SET_ID=商品セット ID
curl -sS -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{}' https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProductSets?retail_product_set_id=PRODUCT_SET_ID
ListProductSet
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProductSets
GetProductSet
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProductSets/PRODUCT_SET_ID
AddProductsToProductSet
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/retailCatalogs/CATALOG_ID/retailProductSets/PRODUCT_SET_ID:add \
  -d '{"product_ids": "PRODUCT_ID"}'
RemoveProductsFromProductSet
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/retailCatalogs/CATALOG_ID/retailProductSets/PRODUCT_SET_ID:remove \
  -d '{"product_ids": "PRODUCT_ID"}'
DeleteProductSet
curl -sS -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProductSets/PRODUCT_SET_ID

ProductRecognitionIndex

Create ProductRecognitionIndex

ProductRecognitionIndex を作成するには、Catalog から作成する方法と ProductSet から作成する方法の 2 つがあります。Catalog から作成する場合は、この Catalog に含まれるすべてのものが使用されます。ProductSet から作成する場合は、関連付けられた商品と商品画像のみが使用されます。

  • INDEX_ID=インデックス ID
  • COVERAGE_CSV_OUTPUT_DIRECTORY=<インデックス カバレッジ ファイルの書き込み先となるディレクトリの Cloud Storage のロケーション
# Create from Catalog
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/retailCatalogs/CATALOG_ID/retailProductRecognitionIndexes?retail_product_recognition_index_id=INDEX_ID
# Create from Catalog and output index coverage CSV file to a Cloud Storage directory.
# This API method is especially useful when you want to understand the
# actual number of images used to construct the index per imported GTIN, and
# the image can be sourced from the Google Product database, your own importing,
# and other means (such as with the Google Data Labeling service.
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/retailCatalogs/CATALOG_ID/retailProductRecognitionIndexes?retail_product_recognition_index_id=INDEX_ID&coverage_output.output_uri_prefix=COVERAGE_CSV_OUTPUT_DIRECTORY"
# Create from ProductSet, by adding the following to the previous Curl command
-d '{"retail_product_set": "projects/PROJECT_ID/locations/us-central1/retailCatalogs/'CATALOG_ID'/retailProductSets/PRODUCT_SET_ID"}'
ProductRecognitionIndex を取得する
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProductRecognitionIndexes/INDEX_ID
ProductRecognitionIndex を一覧表示する
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProductRecognitionIndexes
ProductRecognitionIndex を削除する
curl -sS -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProductRecognitionIndexes/INDEX_ID

エンドポイント

エンドポイントの作成
  • ENDPOINT_ID: エンドポイント ID
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 '{
  "productRecognitionConfig": {
    "recognitionConfidenceThreshold": 0.4
  }
}'
DeployProductRecognitionIndex

エンドポイントにデプロイできる ProductRecognitionIndex は 1 つだけですが、1 つの ProductRecognitionIndex を複数のエンドポイントにデプロイできます。

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:deployRetailProductRecognitionIndex \
  -d '{
    "retail_product_recognition_index": "projects/PROJECT_ID/locations/us-central1/retailCatalogs/'CATALOG_ID'/retailProductRecognitionIndexes/INDEX_ID"
  }'
GetEndpoint
curl -sS -X GET -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
ListEndpoints
curl -sS -X GET -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
UndeployProductRecognitionIndex

デプロイ解除では、デプロイされた ProductRecognitionIndex が現在の呼び出し元エンドポイントから削除されるだけで、この ProductRecognitionIndex が他のエンドポイントにもデプロイされている場合でも、他のエンドポイントには影響しません。

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:undeployRetailProductRecognitionIndex
DeleteEndpoint
curl -sS -X DELETE -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

バッチ分析推論(商品認識)

gs://my-bucket/input-file.csv の入力ファイルの例:

gs://my-bucket/my-image1.jpg
gs://my-bucket/my-image2.jpg
gs://my-bucket/my-image3.jpg
  • INPUT_FILE_URI=入力ファイルの Cloud Storage URI> 入力ファイルの各行は、処理する画像の Cloud Storage URI です(例: gs://my-bucket/my-image.jpg)。
  • OUTPUT_URI_PREFIX=出力結果ファイルの Cloud Storage URI プレフィックス(例: 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_PRODUCT_RECOGNITION",
     }
  ],
  "outputGcsDestination": {
    "outputUriPrefix": "OUTPUT_URI_PREFIX"
  }
}'
"features": [
    {
      "type": "TYPE_PRODUCT_RECOGNITION",
      "productRecognitionConfig": {
        "recognitionConfidenceThreshold": 0.4
      }
    }
  ],

productRecognitionConfigRetailProductRecognitionConfig オブジェクト)で設定および構成できるフィールドは他にもあります。詳細については、API リファレンスのリソースの説明をご覧ください。

API リファレンス

リソース: projects.locations.retailCatalogs

JSON 表現

{
  "name": string,
  "displayName": string,
  "createTime": string,
  "updateTime": string,
  "resourceState": enum(RetailResourceState),
  "labels": {
    string: string,
    ...
  }
}

フィールド


名前

文字列

出力専用。RetailCatalog のリソース名

displayName

文字列

省略可。RetailCatalog の表示名。

createTime

string(Timestamp 形式)

出力専用。この RetailCatalog が作成されたときのタイムスタンプ。

updateTime

string(Timestamp 形式)

出力専用。更新タイムスタンプ。

resourceState

enum

出力専用。RetailCatalog の状態。

個のラベル

map(キー: 文字列、値: 文字列)

RetailCatalog を整理するためのユーザー定義のメタデータを含むラベル。

ラベルのキーと値は 64 文字(Unicode コードポイント)以下にする必要があります。使用できるのは小文字、数字、アンダースコア、ダッシュのみです。国際文字も使用できます。

ラベルの詳細と例については、 https://goo.gl/xmQnxf をご覧ください。

"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }。

メソッド: projects.locations.retailCatalogs.create

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs

パスパラメータ

文字列 必須。親 ID。

リクエストの本文

リクエストの本文には RetailCatalog のインスタンスが含まれます。

レスポンスの本文

成功した場合、レスポンスの本文には、新しく作成された RetailCatalog のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.get

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}

パスパラメータ

name 文字列 必須。RetailCatalog 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には RetailCatalog のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.list

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs

パスパラメータ

文字列 必須。親 ID。

クエリ パラメータ

filter 文字列 省略可。リクエストの結果をフィルタリングする式。
pageToken 文字列 省略可。サーバーが返す必要がある結果のページを特定するトークンです。
pageSize 整数 省略可。リクエストされたページサイズ。サーバーはリクエストされた数よりも少ない項目を返す場合があります。指定しない場合は、サーバーで適切なデフォルトが選択されます。
orderBy 文字列 省略可。昇順で並べ替えるフィールドのカンマ区切りリスト。降順にするには、フィールド名の後に「desc」を使用します。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には次の構造のデータが含まれます。 JSON 表現

{
  "retailCatalogs": [
    {
      object (RetailCatalog)
    }
  ],
  "nextPageToken": string
}

メソッド: projects.locations.retailCatalogs.delete

HTTP リクエスト

DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}

パスパラメータ

name 文字列 必須。RetailCatalog 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.importRetailProducts

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}:importRetailProducts

パスパラメータ

name 文字列 必須。RetailCatalog リソースの名前。

リクエストの本文

JSON 表現

{
  "gcsSource": { object(GcsSource) },
  "format": enum(Format)
}

フィールド

gcsSource オブジェクト 必須。入力コンテンツの Cloud Storage のロケーション。複数の入力位置を指定できます。すべての入力場所の内容が 1 つのバッチでインポートされます。サポートされているファイル拡張子: 1. JSONL ファイル。各行は RetailProductIoFormat の JSON 形式です。
2. TXT ファイル。各行は、インポートする商品の gtin です。
形式 enum 必須。インポート ファイルの形式。

ENUM 値の形式

FORMAT_UNSPECIFIED これは使用しないでください。
FORMAT_TXT TXT 形式。
FORMAT_JSONL JSONL 形式。

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

リソース: projects.locations.retailProducts

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
}

フィールド


名前

文字列

出力専用。RetailProductImage のリソース名

displayName

文字列

省略可。RetailProductImage の表示名。

sourceType

enum

省略可。ソースタイプ

gcsUri

文字列

省略可。RetailProductImage の Cloud Storage のロケーション。画像が Google によって提供される場合(ソースタイプが SOURCE_TYPE_GOOGLE の場合など)を除き、設定する必要があります。

resourceState

enum

出力専用。RetailProductImage の状態。

個のラベル

map(キー: 文字列、値: 文字列)

RetailProductImage を整理するためのユーザー定義のメタデータを含むラベル。

ラベルのキーと値は 64 文字(Unicode コードポイント)以下にする必要があります。使用できるのは小文字、数字、アンダースコア、ダッシュのみです。国際文字も使用できます。

ラベルの詳細と例については、 https://goo.gl/xmQnxf をご覧ください。

"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }。

createTime

string(Timestamp 形式)

出力のみ。作成タイムスタンプ。

updateTime

string(Timestamp 形式)

出力のみ。更新タイムスタンプ。

RetailThirdPartyId JSON 表現

{
  "id": string,
  "owner": string
}

フィールド

id 文字列 小売業者またはメーカーが使用するサードパーティ ID(SKU や MPN など)。
オーナー 文字列 サードパーティ ID を「所有」するエンティティ(この商品を販売するメーカーや小売店など)。

メソッド: projects.locations.retailCatalogs.retailProducts.create

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts

パスパラメータ

文字列 必須。親 ID。

リクエストの本文

リクエストの本文には RetailProduct のインスタンスが含まれます。

レスポンスの本文

成功した場合、レスポンスの本文には、新しく作成された RetailProduct のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProducts.get

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*

パスパラメータ

name 文字列 必須。RetailProduct 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には RetailProduct のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProducts.list

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts

パスパラメータ

文字列 必須。親 ID。

クエリ パラメータ

filter 文字列 省略可。リクエストの結果をフィルタリングする式。
pageToken 文字列 省略可。サーバーが返す必要がある結果のページを特定するトークンです。
pageSize 整数 省略可。リクエストされたページサイズ。サーバーはリクエストされた数よりも少ない項目を返す場合があります。指定しない場合は、サーバーで適切なデフォルトが選択されます。
orderBy 文字列 省略可。昇順で並べ替えるフィールドのカンマ区切りリスト。降順にするには、フィールド名の後に「desc」を使用します。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には次の構造のデータが含まれます。 JSON 表現

{
  "retailProducts": [
    {
      object (RetailProducts)
    }
  ],
  "nextPageToken": string
}

メソッド: projects.locations.retailCatalogs.retailProducts.delete

HTTP リクエスト

DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*

パスパラメータ

name 文字列 必須。RetailProduct 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文は空になります。

リソース: projects.locations.retailProductImages

JSON 表現

{
  "name": string,
  "displayName": string,
  "sourceType": enum(SourceType),
  "gcsUri": string,
  "resourceState": enum(RetailResourceState),
   "labels": {
    string: string,
    ...
    }
   "createTime": string,
   "updateTime": string
}

フィールド


名前

文字列

出力専用。RetailProductImage のリソース名

displayName

文字列

省略可。RetailProductImage の表示名。

sourceType

enum

省略可。ソースタイプ

gcsUri

文字列

省略可。RetailProductImage の Cloud Storage のロケーション。画像が Google によって提供される場合(ソースタイプが SOURCE_TYPE_GOOGLE の場合など)を除き、設定する必要があります。

resourceState

enum

出力のみ。RetailProductImage の状態。

個のラベル

map(キー: 文字列、値: 文字列)

RetailProductImage を整理するためのユーザー定義のメタデータを含むラベル。

ラベルのキーと値は 64 文字(Unicode コードポイント)以下にする必要があります。使用できるのは小文字、数字、アンダースコア、ダッシュのみです。国際文字も使用できます。

ラベルの詳細と例については、 https://goo.gl/xmQnxf をご覧ください。

"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }。

createTime

string(Timestamp 形式)

出力のみ。作成タイムスタンプ。

updateTime

string(Timestamp 形式)

出力のみ。更新タイムスタンプ。

SourceType 列挙型の値

SOURCE_TYPE_UNSPECIFIED 不明なデータソース。これは使用しないでください。
SOURCE_TYPE_FIXED_CAMERA 固定カメラで画像が撮影されます。
SOURCE_TYPE_HAND_HELD_CAMERA 手持ちのカメラで撮影された画像。
SOURCE_TYPE_CRAWLED 画像はウェブからクロールされます。
SOURCE_TYPE_SYSTEM_GENERATED 画像は、人間がラベル付けした元の画像から切り抜かれています。

メソッド: projects.locations.retailCatalogs.retailProducts.retailProductImages.create

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages

パスパラメータ

文字列 必須。親 ID。

リクエストの本文

リクエストの本文には RetailProductImage のインスタンスが含まれます。

レスポンスの本文

成功した場合、レスポンスの本文には、新しく作成された RetailProductImage のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProducts.retailProductImages.get

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*

パスパラメータ

name 文字列 必須。RetailProductImage 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には RetailProductImage のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProducts.retailProductImages.list

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages

パスパラメータ

文字列 必須。親 ID。

クエリ パラメータ

filter 文字列 省略可。リクエストの結果をフィルタリングする式。
pageToken 文字列 省略可。サーバーが返す必要がある結果のページを特定するトークンです。
pageSize 整数 省略可。リクエストされたページサイズ。サーバーはリクエストされた数よりも少ない項目を返す場合があります。指定しない場合は、サーバーで適切なデフォルトが選択されます。
orderBy 文字列 省略可。昇順で並べ替えるフィールドのカンマ区切りリスト。降順にするには、フィールド名の後に「desc」を使用します。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文に次の構造のデータが含まれます。

JSON 表現

{
  "retailProductImages": [
    {
      object (RetailProductImages)
    }
  ],
  "nextPageToken": string
}

メソッド: projects.locations.retailCatalogs.retailProducts.retailProductImages.delete

HTTP リクエスト

DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*

パスパラメータ

name 文字列 必須。RetailProductImage 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文は空になります。

リソース: projects.locations.retailCatalogs.retailProductSets

JSON 表現

{
  "name": string,
  "displayName": string,
  "retailProductIds": [string],
  "resourceState": enum(RetailResourceState),
   "labels": {
    string: string,
    ...
    }
   "createTime": string,
   "updateTime": string
}

フィールド


名前

文字列

出力専用。RetailProductSet のリソース名

displayName

文字列

省略可。RetailProductSet の表示名。

retailProductIds []

文字列

出力のみ。この RetailProductSet に属する商品のリソース ID。RetailProductSet 内のプロダクトは同じカタログに属している必要があります。

resourceState

enum

出力専用。RetailProductSet の状態。

個のラベル

map(キー: 文字列、値: 文字列)

RetailProductSet を整理するためのユーザー定義のメタデータを含むラベル。

ラベルのキーと値は 64 文字(Unicode コードポイント)以下にする必要があります。使用できるのは小文字、数字、アンダースコア、ダッシュのみです。国際文字も使用できます。

ラベルの詳細と例については、 https://goo.gl/xmQnxf をご覧ください。

"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }。

createTime

string(Timestamp 形式)

出力のみ。作成タイムスタンプ。

updateTime

string(Timestamp 形式)

出力のみ。更新タイムスタンプ。

メソッド: projects.locations.retailCatalogs.retailProductSets.create

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets

パスパラメータ

文字列 必須。親 ID。

リクエストの本文

リクエストの本文には RetailProductSet のインスタンスが含まれます。

レスポンスの本文

成功した場合、レスポンスの本文には、新しく作成された RetailProductSet のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProductSets.get

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*

パスパラメータ

name 文字列 必須。RetailProductSet の識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には RetailProductSet のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProductSets.list

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets

パスパラメータ

文字列 必須。親 ID。

クエリ パラメータ

filter 文字列 省略可。リクエストの結果をフィルタリングする式。
pageToken 文字列 省略可。サーバーが返す必要がある結果のページを特定するトークンです。
pageSize 整数 省略可。リクエストされたページサイズ。サーバーはリクエストされた数よりも少ない項目を返す場合があります。指定しない場合は、サーバーで適切なデフォルトが選択されます。
orderBy 文字列 省略可。昇順で並べ替えるフィールドのカンマ区切りリスト。降順にするには、フィールド名の後に「desc」を使用します。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文に次の構造のデータが含まれます。

JSON 表現

{
  "retailProductSets": [
    {
      object (RetailProductSets)
    }
  ],
  "nextPageToken": string
}

メソッド: projects.locations.retailCatalogs.retailProductSets.delete

HTTP リクエスト

DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*

パスパラメータ

name 文字列 必須。RetailProductSet の識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文は空になります。

メソッド: projects.locations.retailCatalogs.retailProductSets.add

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:remove

パスパラメータ

name 文字列 必須。RetailProductSet リソース名。

リクエストの本文

JSON 表現

{
  "productIds": [string],
  "productFilter": string
}

フィールド


productIds[ ]

文字列

追加する RetailProducts のリソース ID。これらはすべて、指定された宛先 RetailProductSet と同じ RetailCatalog に属している必要があります。1 つのリクエストで最大 200 個の RetailProducts ID を指定できます。productFilter と併用することはできません。

productFilter

文字列

親 RetailCatalog のすべての RetailProduct に適用される標準フィルタ。フィルタ条件を満たすアイテムを選択し、それらを RetailProductSet に追加します。product_ids と一緒に使用することはできません。サポートされているフィルタ: https://google.aip.dev/160

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProductSets.remove

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:add

パスパラメータ

name 文字列 必須。RetailProductSet リソース名。

リクエストの本文

JSON 表現

{
  "productIds": [string],
  "productFilter": string
}

フィールド


productIds[ ]

文字列

削除する RetailProduct のリソース ID。指定された RetailProduct がこの RetailProductSet に属していない場合、無視されます。1 つのリクエストで最大 200 個の RetailProducts ID を指定できます。products_filter と併用することはできません。

productFilter

文字列

指定された RetailProductSet 内のすべての RetailProduct に適用される標準フィルタ。フィルタ条件を満たすアイテムを選択し、RetailProductSet から削除します。product_ids と一緒に使用することはできません。サポートされているフィルタ:https://google.aip.dev/160

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

リソース: projects.locations.retailCatalogs.retailProductRecognitionIndexes

JSON 表現

{
  "name": string,
  "displayName": string,
  "description": string,
  "retailProductSet": [string],
   "resourceState": enum(RetailResourceState),
   "labels": {
    string: string,
    ...
    }
   "createTime": string,
   "updateTime": string
}

フィールド


名前

文字列

出力専用。RetailProductRecognitionIndex リソースのリソース名。

displayName

文字列

省略可。RetailProductRecognitionIndex の表示名。

説明

文字列

省略可。RetailProductRecognitionIndex の説明。

retailProductSet[]

文字列

省略可。このリソースの作成に使用する RetailProductSet のリソース名。設定されている場合、RetailProductRecognitionIndex には指定された RetailProductSet の商品のみが含まれます。設定しない場合、親カタログ内のすべての商品が使用されます。

resourceState

enum

出力のみ。RetailProductRecognitionIndex の状態。

個のラベル

map(キー: 文字列、値: 文字列)

RetailProductRecognitionIndex を整理するためのユーザー定義のメタデータを含むラベル。

ラベルのキーと値は 64 文字(Unicode コードポイント)以下にする必要があります。使用できるのは小文字、数字、アンダースコア、ダッシュのみです。国際文字も使用できます。

ラベルの詳細と例については、 https://goo.gl/xmQnxf をご覧ください。

"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }。

createTime

string(Timestamp 形式)

出力専用。作成タイムスタンプ。

updateTime

string(Timestamp 形式)

出力のみ。更新タイムスタンプ。

メソッド: projects.locations.retailCatalogs.retailProductRecognitionIndexes.create

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes

パスパラメータ

文字列 必須。親 ID。

リクエストの本文

リクエストの本文には RetailProductRecognitionIndex のインスタンスが含まれます。

レスポンスの本文

成功した場合、レスポンスの本文には、新しく作成された RetailProductRecognitionIndex のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProductRecognitionIndexes.get

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*

パスパラメータ

name 文字列 必須。RetailProductRecognitionIndex 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には RetailProductRecognitionIndex のインスタンスが含まれます。

メソッド: projects.locations.retailCatalogs.retailProductRecognitionIndexes.list

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes

パスパラメータ

文字列 必須。親 ID。

クエリ パラメータ

filter 文字列 省略可。リクエストの結果をフィルタリングする式。
pageToken 文字列 省略可。サーバーが返す必要がある結果のページを特定するトークンです。
pageSize 整数 省略可。リクエストされたページサイズ。サーバーはリクエストされた数よりも少ない項目を返す場合があります。指定しない場合は、サーバーで適切なデフォルトが選択されます。
orderBy 文字列 省略可。昇順で並べ替えるフィールドのカンマ区切りリスト。降順にするには、フィールド名の後に「desc」を使用します。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文に次の構造のデータが含まれます。

JSON 表現

{
  "retailProductRecognitionIndexes": [
    {
      object (RetailProductRecognitionIndex)
    }
  ],
  "nextPageToken": string
}

メソッド: projects.locations.retailCatalogs.retailProductRecognitionIndexes.delete

HTTP リクエスト

DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*

パスパラメータ

name 文字列 必須。ProductRecognitionIndex 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

リソース: projects.locations.retailEndpoints

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
}

フィールド


名前

文字列

出力専用。RetailEndpoint リソースのリソース名。

displayName

文字列

省略可。RetailEndpoint の表示名。

説明

文字列

省略可。RetailEndpoint の説明。

deployedProductRecognitionIndex

文字列

出力専用。この RetailEndpoint にデプロイされた ProductRecognitionIndex のリソース名。

productRecognitionConfig

オブジェクト

省略可。商品認識の構成。

tagRecognitionConfig

オブジェクト

省略可。タグ認識の構成。

resourceState

enum

出力のみ。RetailProductRecognitionIndex の状態。

個のラベル

map(キー: 文字列、値: 文字列)

RetailProductRecognitionIndex を整理するためのユーザー定義のメタデータを含むラベル。

ラベルのキーと値は 64 文字(Unicode コードポイント)以下にする必要があります。使用できるのは小文字、数字、アンダースコア、ダッシュのみです。国際文字も使用できます。

ラベルの詳細と例については、 https://goo.gl/xmQnxf をご覧ください。

"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }。

createTime

string(Timestamp 形式)

出力専用。作成タイムスタンプ。

updateTime

string(Timestamp 形式)

出力専用。更新タイムスタンプ。

RetailProductRecognitionConfig

JSON 表現

{
  "productDetectionModel": string,
  "detectionConfidenceThreshold": float,
  "recognitionConfidenceThreshold": float,
  "additionalConfig": { object }
}

フィールド

|

productDetectionModel 文字列 必須。入力画像内の商品を検出するために使用するモデル。サポートされている値: builtin/stable(デフォルト)または Vertex AI モデルのリソース名。
detectionConfidenceThreshold float 省略可。検出結果をフィルタする信頼度しきい値。設定されていない場合は、システムのデフォルト値が使用されます。
recognitionConfidenceThreshold float 省略可。認識結果をフィルタリングするための信頼度のしきい値。設定されていない場合は、システムのデフォルト値が使用されます。
additionalConfig object (Struct format) 省略可。商品認識の追加構成。

RetailTagRecognitionConfig

JSON 表現

{
  "tagDetectionModel": string,
  "tagParsingModel": string,
  "detectionConfidenceThreshold": float,
  "parsingConfidenceThreshold": float,
  "additionalConfig": { object }
}

フィールド

tagDetectionModel 文字列 必須。入力画像内のタグを検出するために使用するモデル。サポートされている値: Vertex AI モデルリソース。
tagParsingModel 文字列 必須。検出されたタグのテキストを解析するモデル。サポートされている値: Vertex AI モデルリソース。
detectionConfidenceThreshold float 省略可。検出結果をフィルタする信頼度しきい値。設定されていない場合は、システムのデフォルト値が使用されます。
parsingConfidenceThreshold float 省略可。テキスト解析結果をフィルタする信頼度のしきい値。設定されていない場合は、システムのデフォルト値が使用されます。
additionalConfig object (Struct format) 省略可。タグ認識の追加設定。

メソッド: projects.locations.retailEndpoints.create

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints

パスパラメータ

文字列 必須。親 ID。

リクエストの本文

リクエストの本文には RetailEndpoint のインスタンスが含まれます。

レスポンスの本文

成功した場合、レスポンスの本文には、新しく作成された RetailEndpoint のインスタンスが含まれます。

メソッド: projects.locations.retailEndpoints.get

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*}

パスパラメータ

name 文字列 必須。RetailEndpoint 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には RetailEndpoint のインスタンスが含まれます。

メソッド: projects.locations.retailEndpoints.list

HTTP リクエスト

GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints

パスパラメータ

文字列 必須。親 ID。

クエリ パラメータ

filter 文字列 省略可。リクエストの結果をフィルタリングする式。
pageToken 文字列 省略可。サーバーが返す必要がある結果のページを特定するトークンです。
pageSize 整数 省略可。リクエストされたページサイズ。サーバーはリクエストされた数よりも少ない項目を返す場合があります。指定しない場合は、サーバーで適切なデフォルトが選択されます。
orderBy 文字列 省略可。昇順で並べ替えるフィールドのカンマ区切りリスト。降順にするには、フィールド名の後に「desc」を使用します。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文に次の構造のデータが含まれます。

JSON 表現

{
  "retailEndpoints": [
    {
      object (RetailEndpoint)
    }
  ],
  "nextPageToken": string
}

メソッド: projects.locations.retailEndpoints.delete

HTTP リクエスト

DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*

パスパラメータ

name 文字列 必須。RetailEndpoint 識別子。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文は空になります。

メソッド: projects.locations.retailEndpoints.deployRetailProductRecognitionIndex

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:deployRetailProductRecognitionIndex

パスパラメータ

retailEndpoint 文字列 必須。RetailProductRecognitionIndex がデプロイされる RetailEndpoint リソースのリソース名。

リクエストの本文

JSON 表現

{
  "retailProductRecognitionIndex": string,
}

フィールド

retailProductRecognitionIndex 文字列 必須。デプロイする RetailProductRecognitionIndex のリソース名。

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

メソッド: projects.locations.retailEndpoints.undeployRetailProductRecognitionIndex

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:undeployRetailProductRecognitionIndex

パスパラメータ

retailEndpoint 文字列 必須。デプロイ解除の対象となる RetailEndpoint リソースのリソース名。

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

メソッド: projects.locations.retailEndpoints.batchAnalyze

HTTP リクエスト

POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:batchAnalyze

パスパラメータ

retailEndpoint 文字列 必須。推論リクエストを処理する RetailEndpoint のリソース名。

リクエストの本文

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
}

フィールド

gcsSource 文字列 必須。入力コンテンツが保存されている Cloud Storage 上の場所。複数の入力位置を指定できます。すべての入力ロケーションの内容は 1 つのバッチで処理されます。サポートされているコンテンツ: TXT ファイル。各行は画像のフルパスです。1 つのリクエストで最大 5 万枚の画像をサポートできます。
outputGcsDestination 文字列 省略可。出力の書き込み先となるディレクトリの Cloud Storage の場所。
corpus 文字列 省略可。画像ウェアハウス コーパスのリソース名。現時点ではサポートされていません。
bigqueryTable 文字列 省略可。アノテーション エクスポート用の BigQuery テーブルのリソース名。「projects/*/datasets/*/tables/*」の形式。設定すると、ML 推論から生成されたアノテーションも指定された BigQuery テーブルにエクスポートされます。現時点ではサポートされていません。
features[] オブジェクト 必須。実行する ML 推論のタイプ。

機能

JSON 表現

{
  "type": enum(Type),
  "productRecognitionConfig": object(RetailProductRecognitionConfig),
  "tagRecognitionConfig": object(RetailTagRecognitionConfig)
}

フィールド

type enum 必須。特徴のタイプ。
productRecognitionConfig オブジェクト <0x0 省略可。商品認識機能のリクエストごとのオーバーライド。タイプが TYPE_PRODUCT_RECOGNITION に設定されている場合にのみ有効です。
tagRecognitionConfig オブジェクト <0x0 省略可。タグ認識機能のリクエストごとのオーバーライド。タイプが TYPE_TAG_RECOGNITION に設定されている場合にのみ有効です。

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

GcsSource

JSON 表現

{
  "uris": [string]
}

フィールド

uris[] 文字列 必須。Cloud Storage パスへの参照。

タイプ

ENUM 値

TYPE_UNSPECIFIED デフォルト値。これは使用しないでください。
TYPE_PRODUCT_RECOGNITION 商品認識。デプロイされた RetailProductRecognitionIndex を含む RetailEndpoint で使用する必要があります。
TYPE_TAG_RECOGNITION タグの検出と解析。RetailTagRecognitionConfig を使用する RetailEndpoint で使用する必要があります。

RetailProductIoFormat

JSON 表現

{
  "retailProduct": { object(RetailProduct) },
  "retailProductImages": [ { object(RetailProductImage) }]
}

フィールド

retailProduct オブジェクト 必須。RetailProduct をインポート
retailProductImages[ ] オブジェクト 省略可。インポートする指定された RetailProductRetailProductImage

RetailResourceState

ENUM 値

RETAIL_RESOURCE_STATE_UNSPECIFIED デフォルト値。使用しないでください。
RETAIL_RESOURCE_STATE_CREATING 状態の作成中。
RETAIL_RESOURCE_STATE_CREATED 状態が作成されました。
RETAIL_RESOURCE_STATE_UPDATING 状態を更新しています。
RETAIL_RESOURCE_STATE_DELETED 状態が削除済み。
RETAIL_RESOURCE_STATE_ERROR 状態エラー。