Mit dem Modell Product Recognizer können Sie erkennen und nachvollziehen, welches Produkt auf dem bereitgestellten Bild zu sehen ist. Das Bild sollte nur ein einzelnes Produkt enthalten, das Sie erkennen möchten.
Dieses Modell kann als primärer KI-Baustein für die Analyse und Interpretation von Produktbilddaten dienen, die Sie in Einzelhandelsgeschäften erfassen können.
Anwendungsfälle für die Tag- und Produkterkennung
Die Modelle Product Recognizer und Tag Recognizer können als primäre KI-Bausteine für die Analyse und Interpretation der Bilddaten zu Produkten und Tags dienen, die Sie möglicherweise in Einzelhandelsgeschäften erfasst haben.
Die Modelle „Produkterkennung“ und „Tag-Erkennung“ enthalten mehrere wichtige Google AI-Modellierungs- und Datenfunktionen, mit denen Einzelhändler und/oder technische Partner wichtige Probleme beim Analysieren von Produkt- und Preisschildbilddaten lösen können. Dazu gehören:
- Erkennen, d. h. verstehen, welches Produkt auf dem Bild zu sehen ist.
- Das Tag (z. B. „price-tag“ oder andere Textlabel-Tags) wird gemäß dem vom Nutzer definierten Schema für die Extraktion von Schlüssel/Wert-Paaren erkannt und geparst.
Insbesondere sind mehrere differenzierende Google AI-Modelle enthalten, um die Problemlösung in diesen Anwendungsfällen zu unterstützen, z. B.
- Ein Modell zum Einbetten von Produkt-Miniaturansichten, das ein Bild einer Produkt-Miniaturansicht in eine numerische Darstellung des Merkmalsraums umwandelt.
- Das Google-OCR-Modell, mit dem der gesamte im Bild sichtbare Text extrahiert wird.
- Google-Modell zur Extraktion von Entitäten, das Sie anpassen können. Es wandelt die Rohdaten in die vom Nutzer definierten benannten Entitäten in Form von Schlüssel/Wert-Paaren um.
Zusätzlich zu diesen Google AI-Modellen greift die Produkterkennung auch auf die große Datenbank mit Produktinformationen von Google zurück. Die Produktdaten in dieser Produktdatenbank umfassen die GTIN-/UPC-Identität des Produkts, die Produktmarke, den Titel und sprachübergreifende Beschreibungen, das Produktlogo und Bilder mit verschiedenen Verpackungsvarianten. Die Produktdatenbank mit dem oben erwähnten visuellen Einbettungsmodell für Produkt-Thumbnails ermöglicht es dem Modell für die Produkterkennung, viele Produkte sofort zu erkennen.
Die beiden wichtigsten KI-Funktionen sind die Modelle für die Produkterkennung und die Taggerkennung.
Funktionsweise der Produkterkennung
In diesem Modell wird die Identität einzelner Produkte auf GTIN-Ebene (Global Trade Item Number) oder UPC-Ebene (Universal Product Code) erkannt. Im Product Recognizer sind mehrere differenzierende Google AI-Modelle enthalten, um die Problemlösung in diesen Anwendungsfällen zu ermöglichen, z. B.:
- Das Modell für das visuelle Einbetten von Produkten, das ein Produktbild in eine numerische Darstellung des Merkmalsraums umwandelt.
- Die Google-OCR-Technologie, mit der alle im Bild sichtbaren Texte extrahiert werden.
- Die Google-Produktdatenbank, die in Kombination mit dem visuellen Einbettungsmodell für Produkt-Thumbnails verwendet wird, ermöglicht es dem Modell zur Produkterkennung, viele Produkte sofort zu erkennen.
Beispiel für ein JSON-Ausgabeobjekt
{
"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-Konzepte
Es gibt sechs API-Ressourcen, die beim Erstellen von Produktkatalogen, der Verwaltung von Produktdatasets, dem Erstellen von Indexen und der Bereitstellung für den Dienst „Produkterkennung“ helfen. Sie werden so beschrieben:

Katalog: Die Stammressource, die den Container für alle vom Einzelhändler angebotenen Produkte darstellt.
Produkt: Stellt ein Produkt dar, das von einem Händler angeboten wird. Product ist eine untergeordnete Ressource von Catalog.
ProductImage: Das Bild, das eine Ansicht eines Produkts darstellt. ProductImage
ist eine untergeordnete Ressource von Product.
ProductSet: Ein Container mit feinerer Granularität zum Organisieren und Gruppieren von Produkten in derselben Catalog. Ein ProductSet kann ein oder mehrere Products enthalten, ist aber nicht der „Eigentümer“ der enthaltenen Products, sondern verwaltet stattdessen einen „Link“ zu ihnen.
ProductRecognitionIndex: Enthält eine Liste von Bildeinbettungen, die für Produkterkennungsalgorithmen verwendet werden. ProductRecognitionIndex kann entweder aus dem gesamten Catalog oder aus einem ProductSet (einer Teilmenge der Product aus dem Catalog) erstellt werden.
Endpunkt: Ein Placement, das alle Konfigurationen enthält, die für die Inferenz zur Produkt- oder Tag-Erkennung erforderlich sind. Für die Produkterkennung ist die Bereitstellung einer ProductRecognitionIndex erforderlich.
Für die Tag-Erkennung ist die Angabe von Parsing-Modellen für Tag-Entitäten erforderlich.
Umgebung einrichten
In diesem Abschnitt wird beschrieben, wie Sie mit der Store Vision AI RESTful API interagieren.
API_ENDPOINT=visionai.googleapis.com
PROJECT_ID=your project ID
Für alle create-Methoden muss der Name/die ID der zu erstellenden Ressource explizit angegeben werden. Sie können einen aussagekräftigen String als Kennung verwenden, z. B. „product-ABC“, oder eine zufällig generierte Kennung, z. B. eine UUID.
Wenn Sie einer Person mit einer Rolle Bearbeiterzugriff für die Verwendung der Store Vision API gewähren möchten, führen Sie den folgenden IAM-Bindungsbefehl aus:
gcloud projects add-iam-policy-binding PROJECT_ID --member='user:USER_ACCOUNT' --role='roles/visionai.editor'
Verwenden Sie den folgenden Befehl, um einem Dienstkonto Bearbeitungszugriff zu gewähren:
gcloud projects add-iam-policy-binding PROJECT_ID --member='serviceAccount:SERVICE_ACCOUNT' --role='roles/visionai.editor'
Weitere Informationen zum IAM-Binding
User Journey für die Produkterkennung
- Erstellen Sie einen Katalog.
- Importieren Sie Produkte und (optional)
ProductImagesinCatalog. - Sie können die
ProductundProductImagesaufrufen und ändern. Optional können Sie eineProductSeterstellen, um die Produktliste detaillierter zu organisieren. - Erstellen Sie ein
Indexentweder aus dem gesamtenCatalogoder aus einemProductSet. - Erstellt ein
Endpoint-Objekt mit der gewünschten Konfiguration für die Produkterkennung und stellt einIndex-Objekt darin bereit. - Führen Sie
BatchAnalyzemit der FunktionProductRecognitionaus. Im Backend identifiziert das System Produkte aus jedem Eingabebild und ruft die K ähnlichsten Produkte aus dem angegebenen Index ab. Dabei werden sowohl visuelle als auch OCR-Textsignale verwendet.
API-Ressourcenverwaltung (Katalog und Indexset)
Katalog
Katalog erstellen
- CATALOG_ID=Ihre Katalog-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
Beispielausgabe
{
"name": "projects/cloud-store-vision-test/locations/us-central1/operations/operation-1655157982362-5e15b7f95fa6f-d30364c6-dc3a3714",
"done": false
}
Vorgang abrufen, bis er abgeschlossen ist
- OPERATION_ID=Ihr Ausgabevorgang, z. B. 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
Beispielausgabe
{
"name": "projects/cloud-store-vision-test/locations/us-central1/operations/operation-1655157982362-5e15b7f95fa6f-d30364c6-dc3a3714",
"done": true
}
ImportProduct
Es werden zwei Importformate unterstützt:
- TXT: Jede Zeile enthält die GTIN eines zu importierenden Produkts.
- JSONL: Jede Zeile ist ein JSON-Format von RetailProductIoFormat, z. B.
{"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"}}}
Weitere Informationen zu RetailProductIoFormat finden Sie in der API-Referenz. Derzeit können mit dem Vorgang „ImportProduct“ maximal 10.000 Produkte importiert werden.
Der „name“ [Name] in „retailProductImages“ [Produktbilder für Einzelhandel] muss nur im Rahmen der übergeordneten Ressource „retailProduct“ [Einzelhandelsprodukt] eindeutig sein. Es kann also zwei „retailProductImages“ [Produktbilder für Einzelhandel] mit demselben „name“ [Name] geben, solange sie zu verschiedenen „retailProduct“-Ressourcen [Einzelhandelsprodukt] gehören.
- IMPORT_FILE_URI=Ihr Cloud Storage-URI für die Importdatei, z. B. gs://mybucket/my_import_file.jsonl
- IMPORT_FORMAT=Ihr Importdateiformat, entweder FORMAT_JSONL oder 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"
}'
Katalog auflisten
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
Produkt
CreateProduct mit GTIN
Wir unterstützen die Formate GTIN-8, GTIN-13, GTIN-14 und UPC(auch bekannt als GTIN-12). Weitere Informationen zum GTIN-Format
- PRODUCT_ID=Ihre Produkt-ID
- GTIN=GTIN Ihres Produkts, z. B. 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"}'
CreateProduct mit Drittanbieter-ID
- PRODUCT_ID=Ihre Produkt-ID
- THIRD_PARTY_ID=Drittanbieter-ID
- OWNER=Die Rechtspersönlichkeit, die Inhaber der Drittanbieter-ID ist
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=Ihre Produktbild-ID
- IMAGE_GCS_URI=Ihr Cloud Storage-URI für das Bild, z. B. 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=Ihre Produktgruppen-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
Es gibt zwei Möglichkeiten, einen ProductRecognitionIndex zu erstellen: entweder aus einem Katalog, in dem alle darin enthaltenen Elemente verwendet werden, oder aus einer Produktgruppe, in der nur die zugehörigen Produkte und Produktbilder verwendet werden.
- INDEX_ID=Ihre Index-ID
- COVERAGE_CSV_OUTPUT_DIRECTORY=<Cloud Storage-Speicherort des Verzeichnisses, in das die Indexabdeckungsdatei geschrieben wird
# 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"}'
Get 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 auflisten
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
Delete 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
Endpunkt
Endpunkt erstellen
- ENDPOINT_ID=Ihre Endpunkt-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
Ein Endpunkt kann nur mit einem ProductRecognitionIndex bereitgestellt werden, ein ProductRecognitionIndex kann aber auf mehreren Endpunkten bereitgestellt werden.
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
Durch das Entfernen der Bereitstellung wird der bereitgestellte ProductRecognitionIndex nur vom aktuellen aufrufenden Endpunkt entfernt. Andere Endpunkte sind nicht betroffen, wenn dieser ProductRecognitionIndex auch auf anderen Endpunkten bereitgestellt wird.
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
Batchanalyse-Inferenz (Produkterkennung)
Beispiel für Eingabedatei unter 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 Ihrer Eingabedatei> Jede Zeile in der Eingabedatei ist nur eine Cloud Storage-URI des zu verarbeitenden Bildes, z. B. gs://my-bucket/my-image.jpg
- OUTPUT_URI_PREFIX=Cloud Storage-URI-Präfix für die Ausgabedatei mit den Ergebnissen, z. B. 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
}
}
],
Es gibt auch weitere Felder, die Sie in productRecognitionConfig festlegen und konfigurieren können. productRecognitionConfig ist ein RetailProductRecognitionConfig-Objekt.
Weitere Informationen finden Sie in der Ressourcenbeschreibung in der API-Referenz.
API-Referenz
Ressource: projects.locations.retailCatalogs
JSON-Darstellung
{
"name": string,
"displayName": string,
"createTime": string,
"updateTime": string,
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
}
Fields
name |
String |
Nur Ausgabe. Ressourcenname des RetailCatalog |
|---|---|---|
displayName |
String |
Optional. Der Anzeigename des RetailCatalog. |
createTime |
string (Timestamp format) |
Nur Ausgabe. Zeitstempel für die Erstellung dieses RetailCatalog. |
updateTime |
string (Timestamp format) |
Nur Ausgabe. Der Zeitstempel der Aktualisierung. |
resourceState |
enum |
Nur Ausgabe. Status des RetailCatalog. |
Labels |
map (key: string, value: string) |
Die Labels mit benutzerdefinierten Metadaten zum Organisieren Ihres RetailCatalog. Labelschlüssel und ‑werte dürfen maximal 64 Zeichen (Unicode-Codepunkte) lang sein und nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Internationale Zeichen sind zulässig. Weitere Informationen und Beispiele für Labels finden Sie unter https://goo.gl/xmQnxf. Ein Objekt mit einer Liste der Paare „key“: value. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" } |
Methode: projects.locations.retailCatalogs.create
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Anfragetext
Der Anfragetext enthält eine Instanz von RetailCatalog.
Antworttext
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von RetailCatalog.
Methode: projects.locations.retailCatalogs.get
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}
Pfadparameter
| Name | String | Erforderlich. RetailCatalog-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von RetailCatalog.
Methode: projects.locations.retailCatalogs.list
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Suchparameter
| filtern | String | Optional. Ein Ausdruck zum Filtern der Ergebnisse der Anfrage. |
|---|---|---|
| pageToken | String | Optional. Ein Token, das eine Ergebnisseite identifiziert, die der Server liefern soll |
| pageSize | integer | Optional. Angeforderte Seitengröße. Der Server gibt möglicherweise weniger Elemente als angefordert zurück. Wenn kein Wert angegeben wurde, wählt der Server einen geeigneten Standardwert aus. |
| orderBy | String | Optional. Eine durch Kommas getrennte Liste von Feldern, nach denen in aufsteigender Reihenfolge sortiert werden soll. Verwenden Sie „desc“ nach einem Feldnamen für die absteigende Sortierung. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur: JSON-Darstellung
{
"retailCatalogs": [
{
object (RetailCatalog)
}
],
"nextPageToken": string
}
Methode: projects.locations.retailCatalogs.delete
HTTP-Anfrage
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}
Pfadparameter
| Name | String | Erforderlich. RetailCatalog-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Methode: projects.locations.retailCatalogs.importRetailProducts
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}:importRetailProducts
Pfadparameter
| Name | String | Erforderlich. Ressourcenname von RetailCatalog. |
Anfragetext
JSON-Darstellung
{
"gcsSource": { object(GcsSource) },
"format": enum(Format)
}
Fields
| gcsSource | Objekt | Erforderlich. Der Cloud Storage-Speicherort für die Eingabeinhalte.
Es können mehrere Eingabestandorte angegeben werden. Die Inhalte aller Eingabestandorte werden in einem Batch importiert. Unterstützte Dateiendungen: 1.
Eine JSONL-Datei. Jede Zeile ist ein JSON-Format von RetailProductIoFormat. 2. Eine TXT-Datei. Jede Zeile enthält die GTIN eines zu importierenden Produkts. |
| format | enum | Erforderlich. Das Importdateiformat. |
ENUM-Werte formatieren
| FORMAT_UNSPECIFIED | Sollte nicht verwendet werden. |
|---|---|
| FORMAT_TXT | TXT-Format. |
| FORMAT_JSONL | JSONL-Format. |
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Ressource: projects.locations.retailProducts
JSON-Darstellung
{
"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
}
Fields
name |
String |
Nur Ausgabe. Ressourcenname des RetailProductImage |
|---|---|---|
displayName |
String |
Optional. Anzeigename des RetailProductImage. |
sourceType |
enum |
Optional. Quelltyp |
gcsUri |
string |
Optional. Cloud Storage-Speicherort des RetailProductImage. Sollte festgelegt werden, es sei denn, das Bild wird von Google bereitgestellt, z. B. wenn der Quelltyp SOURCE_TYPE_GOOGLE ist. |
resourceState |
enum |
Nur Ausgabe. Status des RetailProductImage. |
Labels |
map (key: string, value: string) |
Die Labels mit benutzerdefinierten Metadaten zum Organisieren Ihrer RetailProductImage. Labelschlüssel und ‑werte dürfen maximal 64 Zeichen (Unicode-Codepunkte) lang sein und nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Internationale Zeichen sind zulässig. Weitere Informationen und Beispiele für Labels finden Sie unter https://goo.gl/xmQnxf. Ein Objekt mit einer Liste der Paare „key“: value. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" } |
createTime |
string (Timestamp format) |
Nur Ausgabe. Zeitstempel der Erstellung. |
updateTime |
string (Timestamp format) |
Nur Ausgabe. Der Zeitstempel der Aktualisierung. |
RetailThirdPartyId JSON-Darstellung
{
"id": string,
"owner": string
}
Fields
| id | String | Die Drittanbieter-ID, die vom Einzelhändler oder Hersteller verwendet wird (z. B. SKU oder MPN). |
| Inhaber | String | Die Einheit, die die Drittanbieter-Kennung „besitzt“, z. B. der Hersteller oder der Einzelhändler, der dieses Produkt verkauft. |
Methode: projects.locations.retailCatalogs.retailProducts.create
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Anfragetext
Der Anfragetext enthält eine Instanz von RetailProduct.
Antworttext
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von RetailProduct.
Methode: projects.locations.retailCatalogs.retailProducts.get
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*
Pfadparameter
| Name | String | Erforderlich. RetailProduct-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von RetailProduct.
Methode: projects.locations.retailCatalogs.retailProducts.list
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Suchparameter
| filtern | String | Optional. Ein Ausdruck zum Filtern der Ergebnisse der Anfrage. |
|---|---|---|
| pageToken | String | Optional. Ein Token, das eine Ergebnisseite identifiziert, die der Server liefern soll |
| pageSize | integer | Optional. Angeforderte Seitengröße. Der Server gibt möglicherweise weniger Elemente als angefordert zurück. Wenn kein Wert angegeben wurde, wählt der Server einen geeigneten Standardwert aus. |
| orderBy | String | Optional. Eine durch Kommas getrennte Liste von Feldern, nach denen in aufsteigender Reihenfolge sortiert werden soll. Verwenden Sie „desc“ nach einem Feldnamen für die absteigende Sortierung. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur: JSON-Darstellung
{
"retailProducts": [
{
object (RetailProducts)
}
],
"nextPageToken": string
}
Methode: projects.locations.retailCatalogs.retailProducts.delete
HTTP-Anfrage
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*
Pfadparameter
| Name | String | Erforderlich. RetailProduct-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, ist der Antworttext leer.
Ressource: projects.locations.retailProductImages
JSON-Darstellung
{
"name": string,
"displayName": string,
"sourceType": enum(SourceType),
"gcsUri": string,
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Fields
name |
String |
Nur Ausgabe. Ressourcenname des RetailProductImage |
|---|---|---|
displayName |
String |
Optional. Anzeigename des RetailProductImage. |
sourceType |
enum |
Optional. Quelltyp |
gcsUri |
string |
Optional. Cloud Storage-Speicherort des RetailProductImage. Sollte festgelegt werden, es sei denn, das Bild wird von Google bereitgestellt, z. B. wenn der Quelltyp SOURCE_TYPE_GOOGLE ist. |
resourceState |
enum |
Nur Ausgabe. Status des RetailProductImage. |
Labels |
map (key: string, value: string) |
Die Labels mit benutzerdefinierten Metadaten zum Organisieren Ihrer RetailProductImage. Labelschlüssel und ‑werte dürfen maximal 64 Zeichen (Unicode-Codepunkte) lang sein und nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Internationale Zeichen sind zulässig. Weitere Informationen und Beispiele für Labels finden Sie unter https://goo.gl/xmQnxf. Ein Objekt mit einer Liste der Paare „key“: value. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" } |
createTime |
string (Timestamp format) |
Nur Ausgabe. Zeitstempel der Erstellung. |
updateTime |
string (Timestamp format) |
Nur Ausgabe. Der Zeitstempel der Aktualisierung. |
ENUM-Werte für SourceType
| SOURCE_TYPE_UNSPECIFIED | Unbekannte Datenquelle. Sollte nicht verwendet werden. |
|---|---|
| SOURCE_TYPE_FIXED_CAMERA | Das Bild wurde mit einer festen Kamera aufgenommen. |
| SOURCE_TYPE_HAND_HELD_CAMERA | Das Bild wurde mit einer Handkamera aufgenommen. |
| SOURCE_TYPE_CRAWLED | Das Bild wird aus dem Web gecrawlt. |
| SOURCE_TYPE_SYSTEM_GENERATED | Das Bild wurde aus einem Originalbild mit menschlicher Beschriftung zugeschnitten. |
Methode: projects.locations.retailCatalogs.retailProducts.retailProductImages.create
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Anfragetext
Der Anfragetext enthält eine Instanz von RetailProductImage.
Antworttext
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von RetailProductImage.
Methode: projects.locations.retailCatalogs.retailProducts.retailProductImages.get
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*
Pfadparameter
| Name | String | Erforderlich. RetailProductImage-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von RetailProductImage.
Methode: projects.locations.retailCatalogs.retailProducts.retailProductImages.list
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Suchparameter
| filtern | String | Optional. Ein Ausdruck zum Filtern der Ergebnisse der Anfrage. |
|---|---|---|
| pageToken | String | Optional. Ein Token, das eine Ergebnisseite identifiziert, die der Server liefern soll |
| pageSize | integer | Optional. Angeforderte Seitengröße. Der Server gibt möglicherweise weniger Elemente als angefordert zurück. Wenn kein Wert angegeben wurde, wählt der Server einen geeigneten Standardwert aus. |
| orderBy | String | Optional. Eine durch Kommas getrennte Liste von Feldern, nach denen in aufsteigender Reihenfolge sortiert werden soll. Verwenden Sie „desc“ nach einem Feldnamen für die absteigende Sortierung. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, enthält der Antworttext Daten mit folgender Struktur:
JSON-Darstellung
{
"retailProductImages": [
{
object (RetailProductImages)
}
],
"nextPageToken": string
}
Methode: projects.locations.retailCatalogs.retailProducts.retailProductImages.delete
HTTP-Anfrage
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*
Pfadparameter
| Name | String | Erforderlich. RetailProductImage-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, ist der Antworttext leer.
Ressource: projects.locations.retailCatalogs.retailProductSets
JSON-Darstellung
{
"name": string,
"displayName": string,
"retailProductIds": [string],
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Fields
name |
String |
Nur Ausgabe. Ressourcenname des RetailProductSet |
|---|---|---|
displayName |
String |
Optional. Anzeigename des RetailProductSet. |
retailProductIds [] |
String |
Nur Ausgabe. Ressourcen-IDs von Produkten, die zu diesem RetailProductSet gehören. Die Produkte in einem RetailProductSet müssen sich im selben Katalog befinden. |
resourceState |
enum |
Nur Ausgabe. Status des RetailProductSet. |
Labels |
map (key: string, value: string) |
Die Labels mit benutzerdefinierten Metadaten zum Organisieren Ihres RetailProductSet. Labelschlüssel und ‑werte dürfen maximal 64 Zeichen (Unicode-Codepunkte) lang sein und nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Internationale Zeichen sind zulässig. Weitere Informationen und Beispiele für Labels finden Sie unter https://goo.gl/xmQnxf. Ein Objekt mit einer Liste der Paare „key“: value. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" } |
createTime |
string (Timestamp format) |
Nur Ausgabe. Zeitstempel der Erstellung. |
updateTime |
string (Timestamp format) |
Nur Ausgabe. Der Zeitstempel der Aktualisierung. |
Methode: projects.locations.retailCatalogs.retailProductSets.create
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Anfragetext
Der Anfragetext enthält eine Instanz von RetailProductSet.
Antworttext
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von RetailProductSet.
Methode: projects.locations.retailCatalogs.retailProductSets.get
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*
Pfadparameter
| Name | String | Erforderlich. Kennzeichnung des RetailProductSet. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Bei Erfolg enthält der Antworttext eine Instanz von RetailProductSet.
Methode: projects.locations.retailCatalogs.retailProductSets.list
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Suchparameter
| filtern | String | Optional. Ein Ausdruck zum Filtern der Ergebnisse der Anfrage. |
|---|---|---|
| pageToken | String | Optional. Ein Token, das eine Ergebnisseite identifiziert, die der Server liefern soll |
| pageSize | integer | Optional. Angeforderte Seitengröße. Der Server gibt möglicherweise weniger Elemente als angefordert zurück. Wenn kein Wert angegeben wurde, wählt der Server einen geeigneten Standardwert aus. |
| orderBy | String | Optional. Eine durch Kommas getrennte Liste von Feldern, nach denen in aufsteigender Reihenfolge sortiert werden soll. Verwenden Sie „desc“ nach einem Feldnamen für die absteigende Sortierung. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, enthält der Antworttext Daten mit folgender Struktur:
JSON-Darstellung
{
"retailProductSets": [
{
object (RetailProductSets)
}
],
"nextPageToken": string
}
Methode: projects.locations.retailCatalogs.retailProductSets.delete
HTTP-Anfrage
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*
Pfadparameter
| Name | String | Erforderlich. Kennzeichnung des RetailProductSet. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, ist der Antworttext leer.
Methode: projects.locations.retailCatalogs.retailProductSets.add
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:remove
Pfadparameter
| Name | String | Erforderlich. Ressourcenname des RetailProductSet. |
Anfragetext
JSON-Darstellung
{
"productIds": [string],
"productFilter": string
}
Fields
productIds[ ] |
string |
Ressourcen-ID der hinzuzufügenden RetailProducts. Sie müssen alle zum selben RetailCatalog wie das angegebene Ziel-RetailProductSet gehören. In einer Anfrage können bis zu 200 RetailProducts-IDs angegeben werden. Kann nicht zusammen mit „productFilter“ verwendet werden. |
|---|---|---|
productFilter |
string |
Ein Standardfilter, der auf alle RetailProducts im übergeordneten RetailCatalog angewendet wird. Damit werden Elemente ausgewählt, die die Filterbedingungen erfüllen, und dem RetailProductSet hinzugefügt. Kann nicht zusammen mit „product_ids“ verwendet werden. Unterstützte Filter: https://google.aip.dev/160 |
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Methode: projects.locations.retailCatalogs.retailProductSets.remove
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:add
Pfadparameter
| Name | String | Erforderlich. Ressourcenname des RetailProductSet. |
Anfragetext
JSON-Darstellung
{
"productIds": [string],
"productFilter": string
}
Fields
productIds[ ] |
string |
Ressourcen-IDs der zu entfernenden RetailProducts. Wenn die angegebenen RetailProducts nicht zu diesem RetailProductSet gehören, werden sie ignoriert. In einer Anfrage können bis zu 200 RetailProducts-IDs angegeben werden. Kann nicht zusammen mit „products_filter“ verwendet werden. |
|---|---|---|
productFilter |
string |
Ein Standardfilter, der auf alle RetailProducts im angegebenen RetailProductSet angewendet wird. Er wählt Elemente aus, die den Filterbedingungen entsprechen, und entfernt sie aus dem RetailProductSet. Kann nicht zusammen mit „product_ids“ verwendet werden. Unterstützte Filter:https://google.aip.dev/160 |
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Ressource: projects.locations.retailCatalogs.retailProductRecognitionIndexes
JSON-Darstellung
{
"name": string,
"displayName": string,
"description": string,
"retailProductSet": [string],
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Fields
name |
String |
Nur Ausgabe. Ressourcenname der RetailProductRecognitionIndex-Ressource. |
|---|---|---|
displayName |
String |
Optional. Anzeigename des RetailProductRecognitionIndex. |
description |
String |
Optional. Die Beschreibung von RetailProductRecognitionIndex. |
retailProductSet[] |
string |
Optional. Der Ressourcenname des RetailProductSet, das zum Erstellen dieser Ressource verwendet werden soll. Wenn festgelegt, enthält der RetailProductRecognitionIndex nur Produkte im angegebenen RetailProductSet. Wenn nicht festgelegt, werden alle Produkte im übergeordneten Katalog verwendet. |
resourceState |
enum |
Nur Ausgabe. Status des RetailProductRecognitionIndex. |
Labels |
map (key: string, value: string) |
Die Labels mit benutzerdefinierten Metadaten zum Organisieren Ihres RetailProductRecognitionIndex. Labelschlüssel und ‑werte dürfen maximal 64 Zeichen (Unicode-Codepunkte) lang sein und nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Internationale Zeichen sind zulässig. Weitere Informationen und Beispiele für Labels finden Sie unter https://goo.gl/xmQnxf. Ein Objekt mit einer Liste der Paare „key“: value. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" } |
createTime |
string (Timestamp format) |
Nur Ausgabe. Zeitstempel der Erstellung. |
updateTime |
string (Timestamp format) |
Nur Ausgabe. Der Zeitstempel der Aktualisierung. |
Methode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.create
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Anfragetext
Der Anfragetext enthält eine Instanz von RetailProductRecognitionIndex.
Antworttext
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von RetailProductRecognitionIndex.
Methode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.get
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*
Pfadparameter
| Name | String | Erforderlich. RetailProductRecognitionIndex-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von RetailProductRecognitionIndex.
Methode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.list
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Suchparameter
| filtern | String | Optional. Ein Ausdruck zum Filtern der Ergebnisse der Anfrage. |
|---|---|---|
| pageToken | String | Optional. Ein Token, das eine Ergebnisseite identifiziert, die der Server liefern soll |
| pageSize | integer | Optional. Angeforderte Seitengröße. Der Server gibt möglicherweise weniger Elemente als angefordert zurück. Wenn kein Wert angegeben wurde, wählt der Server einen geeigneten Standardwert aus. |
| orderBy | String | Optional. Eine durch Kommas getrennte Liste von Feldern, nach denen in aufsteigender Reihenfolge sortiert werden soll. Verwenden Sie „desc“ nach einem Feldnamen für die absteigende Sortierung. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, enthält der Antworttext Daten mit folgender Struktur:
JSON-Darstellung
{
"retailProductRecognitionIndexes": [
{
object (RetailProductRecognitionIndex)
}
],
"nextPageToken": string
}
Methode: projects.locations.retailCatalogs.retailProductRecognitionIndexes.delete
HTTP-Anfrage
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*
Pfadparameter
| Name | String | Erforderlich. Die Kennzeichnung des ProductRecognitionIndex. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Ressource: projects.locations.retailEndpoints
JSON-Darstellung
{
"name": string,
"displayName": string,
"description": string,
"deployedProductRecognitionIndex": string,
"resourceState": enum(RetailResourceState),
"productRecognitionConfig": { object(RetailProductRecognitionConfig) },
"tagRecognitionConfig": { object(RetailTagRecognitionConfig) },
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Fields
name |
String |
Nur Ausgabe. Ressourcenname der RetailEndpoint-Ressource. |
|---|---|---|
displayName |
String |
Optional. Anzeigename des RetailEndpoint. |
description |
String |
Optional. Die Beschreibung des RetailEndpoint. |
deployedProductRecognitionIndex |
String |
Nur Ausgabe. Ressourcenname des ProductRecognitionIndex, der für diesen RetailEndpoint bereitgestellt wird. |
productRecognitionConfig |
Objekt |
Optional. Konfiguration für die Produkterkennung. |
tagRecognitionConfig |
Objekt |
Optional. Konfiguration für die Tag-Erkennung. |
resourceState |
enum |
Nur Ausgabe. Status des RetailProductRecognitionIndex. |
Labels |
map (key: string, value: string) |
Die Labels mit benutzerdefinierten Metadaten zum Organisieren Ihres RetailProductRecognitionIndex. Labelschlüssel und ‑werte dürfen maximal 64 Zeichen (Unicode-Codepunkte) lang sein und nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Internationale Zeichen sind zulässig. Weitere Informationen und Beispiele für Labels finden Sie unter https://goo.gl/xmQnxf. Ein Objekt mit einer Liste der Paare „key“: value. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" } |
createTime |
string (Timestamp format) |
Nur Ausgabe. Zeitstempel der Erstellung. |
updateTime |
string (Timestamp format) |
Nur Ausgabe. Der Zeitstempel der Aktualisierung. |
RetailProductRecognitionConfig
JSON-Darstellung
{
"productDetectionModel": string,
"detectionConfidenceThreshold": float,
"recognitionConfidenceThreshold": float,
"additionalConfig": { object }
}
Fields
|
| productDetectionModel | String | Erforderlich. Modell, das zum Erkennen von Produkten in Eingabebildern verwendet werden soll. Unterstützte Werte: „builtin/stable“ (Standardeinstellung) oder Ressourcenname des Vertex AI-Modells. |
|---|---|---|
| detectionConfidenceThreshold | float | Optional. Konfidenzschwellenwert zum Filtern von Erkennungsergebnissen. Wenn nicht festgelegt, wird ein Systemstandardwert verwendet. |
| recognitionConfidenceThreshold | float | Optional. Konfidenzschwellenwert zum Filtern von Erkennungsergebnissen. Wenn nicht festgelegt, wird ein Systemstandardwert verwendet. |
| additionalConfig | object (Struct format) | Optional. Zusätzliche Konfigurationen für die Produkterkennung. |
RetailTagRecognitionConfig
JSON-Darstellung
{
"tagDetectionModel": string,
"tagParsingModel": string,
"detectionConfidenceThreshold": float,
"parsingConfidenceThreshold": float,
"additionalConfig": { object }
}
Fields
| tagDetectionModel | String | Erforderlich. Modell, das zum Erkennen von Tags in Eingabebildern verwendet werden soll. Unterstützte Werte: Vertex AI-Modellressource. |
|---|---|---|
| tagParsingModel | String | Erforderlich. Modell zum Parsen von Text in erkannten Tags. Unterstützte Werte: Vertex AI-Modellressource. |
| detectionConfidenceThreshold | float | Optional. Konfidenzschwellenwert zum Filtern von Erkennungsergebnissen. Wenn nicht festgelegt, wird ein Systemstandardwert verwendet. |
| parsingConfidenceThreshold | float | Optional. Konfidenzgrenzwert zum Filtern von Ergebnissen der Textanalyse. Wenn nicht festgelegt, wird ein Systemstandardwert verwendet. |
| additionalConfig | object (Struct format) | Optional. Zusätzliche Konfigurationen für die Tag-Erkennung. |
Methode: projects.locations.retailEndpoints.create
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Anfragetext
Der Anfragetext enthält eine Instanz von RetailEndpoint.
Antworttext
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von RetailEndpoint.
Methode: projects.locations.retailEndpoints.get
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*}
Pfadparameter
| Name | String | Erforderlich. RetailEndpoint-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von RetailEndpoint.
Methode: projects.locations.retailEndpoints.list
HTTP-Anfrage
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints
Pfadparameter
| parent | String | Erforderlich. Übergeordnete Kennung. |
Suchparameter
| filtern | String | Optional. Ein Ausdruck zum Filtern der Ergebnisse der Anfrage. |
|---|---|---|
| pageToken | String | Optional. Ein Token, das eine Ergebnisseite identifiziert, die der Server liefern soll |
| pageSize | integer | Optional. Angeforderte Seitengröße. Der Server gibt möglicherweise weniger Elemente als angefordert zurück. Wenn kein Wert angegeben wurde, wählt der Server einen geeigneten Standardwert aus. |
| orderBy | String | Optional. Eine durch Kommas getrennte Liste von Feldern, nach denen in aufsteigender Reihenfolge sortiert werden soll. Verwenden Sie „desc“ nach einem Feldnamen für die absteigende Sortierung. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, enthält der Antworttext Daten mit folgender Struktur:
JSON-Darstellung
{
"retailEndpoints": [
{
object (RetailEndpoint)
}
],
"nextPageToken": string
}
Methode: projects.locations.retailEndpoints.delete
HTTP-Anfrage
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*
Pfadparameter
| Name | String | Erforderlich. RetailEndpoint-ID. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich ist, ist der Antworttext leer.
Methode: projects.locations.retailEndpoints.deployRetailProductRecognitionIndex
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:deployRetailProductRecognitionIndex
Pfadparameter
| retailEndpoint | String | Erforderlich. Ressourcenname der RetailEndpoint-Ressource, in der die RetailProductRecognitionIndex bereitgestellt wird. |
Anfragetext
JSON-Darstellung
{
"retailProductRecognitionIndex": string,
}
Fields
| retailProductRecognitionIndex | String | Erforderlich. Der Ressourcenname von
RetailProductRecognitionIndex
für die Bereitstellung. |
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Methode: projects.locations.retailEndpoints.undeployRetailProductRecognitionIndex
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:undeployRetailProductRecognitionIndex
Pfadparameter
| retailEndpoint | String | Erforderlich. Der Ressourcenname der RetailEndpoint-Ressource, für die die Bereitstellung aufgehoben wird. |
Anfragetext
Der Anfragetext muss leer sein.
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Methode: projects.locations.retailEndpoints.batchAnalyze
HTTP-Anfrage
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:batchAnalyze
Pfadparameter
| retailEndpoint | String | Erforderlich. Der Ressourcenname der RetailEndpoint, die für die Verarbeitung der Inferenzanfrage verwendet werden soll. |
Anfragetext
JSON-Darstellung
{
"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
}
Fields
| gcsSource | String | Erforderlich. Der Cloud Storage-Speicherort für die Eingabeinhalte. Es können mehrere Eingabestandorte angegeben werden. Die Inhalte aller Eingabestandorte werden in einem Batch verarbeitet. Unterstützter Inhalt: Eine TXT-Datei, in der jede Zeile den vollständigen Pfad zu einem Bild enthält. In einer Anfrage können maximal 50.000 Bilder unterstützt werden. |
|---|---|---|
| outputGcsDestination | String | Optional. Der Cloud Storage-Speicherort des Verzeichnisses, in das die Ausgabe geschrieben werden soll. |
| Korpus | String | Optional. Ressourcenname des Bild-Warehouse-Korpus. Wird bisher nicht unterstützt. |
| bigqueryTable | String | Optional. Ressourcenname der BigQuery-Tabelle für den Export von Anmerkungen. Im Format „projects/*/datasets/*/tables/*“. Wenn festgelegt, werden auch Vermerke, die aus der ML-Inferenz generiert wurden, in die angegebene BigQuery-Tabelle exportiert. Wird bisher nicht unterstützt. |
| features[] | Objekt | Erforderlich. Der Typ der auszuführenden ML-Inferenz. |
Funktion
JSON-Darstellung
{
"type": enum(Type),
"productRecognitionConfig": object(RetailProductRecognitionConfig),
"tagRecognitionConfig": object(RetailTagRecognitionConfig)
}
Fields
| Typ | enum | Erforderlich. Der Featuretyp. |
|---|---|---|
| productRecognitionConfig | Objekt | Optional. Überschreibungen für die Funktion zur Produkterkennung pro Anfrage. Sie ist nur wirksam, wenn „type“ auf TYPE_PRODUCT_RECOGNITION festgelegt ist. |
| tagRecognitionConfig | Objekt | Optional. Überschreibungen pro Anfrage für die Funktion zur Tag-Erkennung. Sie ist nur wirksam, wenn der Typ auf TYPE_TAG_RECOGNITION festgelegt ist. |
Antworttext
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
Typen
GcsSource
JSON-Darstellung
{
"uris": [string]
}
Fields
| uris[] | String | Erforderlich. Verweise auf Cloud Storage-Pfade. |
Typ
ENUM-Werte
| TYPE_UNSPECIFIED | Der Standardwert. Sollte nicht verwendet werden. |
|---|---|
| TYPE_PRODUCT_RECOGNITION | Produkterkennung. Muss auf einem RetailEndpoint mit bereitgestelltem RetailProductRecognitionIndex verwendet werden. |
| TYPE_TAG_RECOGNITION | Tag-Erkennung und ‑Parsing. Muss für ein RetailEndpoint mit RetailTagRecognitionConfig verwendet werden. |
RetailProductIoFormat
JSON-Darstellung
{
"retailProduct": { object(RetailProduct) },
"retailProductImages": [ { object(RetailProductImage) }]
}
Fields
| retailProduct | Objekt | Erforderlich. RetailProduct wird importiert |
|---|---|---|
| retailProductImages[ ] | Objekt | Optional. RetailProductImages des angegebenen RetailProduct, die importiert werden sollen. |
RetailResourceState
ENUM-Werte
| RETAIL_RESOURCE_STATE_UNSPECIFIED | Der Standardwert. Sollte nicht verwendet werden. |
|---|---|
| RETAIL_RESOURCE_STATE_CREATING | Status „Wird erstellt“. |
| RETAIL_RESOURCE_STATE_CREATED | Status „Erstellt“ |
| RETAIL_RESOURCE_STATE_UPDATING | Status wird aktualisiert. |
| RETAIL_RESOURCE_STATE_DELETED | Bundesland gelöscht. |
| RETAIL_RESOURCE_STATE_ERROR | Statusfehler. |