Guida a Product Recognizer

Il modello Product Recognizer ti aiuta a riconoscere e capire quale prodotto è presente nell'immagine fornita. L'immagine deve contenere un solo articolo di prodotto che vuoi riconoscere.

Questo modello può fungere da componenti di base per l'AI per analizzare e interpretare i dati delle immagini prodotto, che puoi acquisire dai negozi al dettaglio.

Casi d'uso del riconoscimento tag e del riconoscimento dei prodotti

I modelli Product Recognizer e Tag Recognizer possono fungere da componenti di base dell'AI per analizzare e interpretare i dati immagine relativi a prodotti ed etichette, che potresti aver acquisito da negozi al dettaglio.

I modelli di riconoscimento dei prodotti e dei tag incorporano diverse funzionalità di modellazione e dati di base di Google AI per aiutare i rivenditori e/o i partner tecnici a risolvere i problemi chiave nella comprensione dei dati delle immagini di prodotti ed etichette dei prezzi, tra cui:

  • Riconoscimento, ovvero la comprensione di quale prodotto è presente nell'immagine.
  • Riconoscimento e analisi del tag (ad esempio, il tag prezzo o qualsiasi altro tag di etichetta di testo) in base allo schema di estrazione delle entità di coppia chiave-valore definito dall'utente.

In particolare, sono inclusi diversi modelli di Google AI differenziati per supportare la risoluzione dei problemi di questi casi d'uso, ad esempio

  • Modello di incorporamento visivo delle miniature dei prodotti, che trasforma un'immagine della miniatura del prodotto in una rappresentazione numerica dello spazio delle funzionalità.
  • Il modello OCR di Google, che estrae tutti i testi visibili nell'immagine.
  • Modello di estrazione di entità di Google (che puoi personalizzare), che trasforma i testi non elaborati in entità denominate coppie chiave-valore definite dall'utente.

Oltre a questi modelli di Google AI, il sistema di riconoscimento dei prodotti sfrutta anche l'ampio database di informazioni sui prodotti di Google. I dati di prodotto in questo database dei prodotti includono l'identità GTIN / UPC del prodotto, il brand del prodotto, il titolo e le descrizioni in varie lingue, il logo del prodotto e le immagini con varie varianti di packaging. Il database dei prodotti con il modello di incorporamento visivo delle miniature dei prodotti menzionato in precedenza consente al modello di riconoscimento dei prodotti di riconoscere immediatamente molti prodotti.

Le due principali funzionalità di AI sono i modelli di riconoscimento dei prodotti e di riconoscimento dei tag.

Funzionalità di riconoscimento dei prodotti

Questo modello riconosce l'identità del singolo prodotto a livello di Global Trade Item Number (GTIN) o codice UPC (Universal Product Code). Nel Product Recognizer sono inclusi diversi modelli di Google AI differenziati per potenziare la risoluzione dei problemi di questi casi d'uso, ad esempio:

  • Il modello di incorporamento visivo del prodotto, che trasforma un'immagine prodotto in una rappresentazione numerica dello spazio delle funzionalità.
  • La tecnologia OCR di Google, che estrae tutto il testo visibile nell'immagine.
  • Il database di prodotti Google utilizzato in combinazione con il modello di incorporamento visivo delle miniature dei prodotti consente al modello di riconoscimento dei prodotti di riconoscere immediatamente molti prodotti.

Esempio di oggetto JSON di output

{
  "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"
          },
        }
      ]
    }
  ]
}

Concetti API

Sono disponibili sei risorse API per facilitare la creazione del catalogo dei prodotti, la gestione dei set di dati dei prodotti, la creazione di indici e il deployment per il servizio di riconoscimento dei prodotti. Sono descritti come segue:

Diagramma della gerarchia delle risorse per il servizio di riconoscimento dei prodotti.

Catalogo: risorsa principale che rappresenta il contenitore di tutti i prodotti offerti dal rivenditore.

Prodotto: rappresenta un prodotto offerto da un commerciante. Product è una risorsa secondaria di Catalog.

ProductImage: l'immagine che rappresenta una visualizzazione di un prodotto. ProductImage è una risorsa secondaria di Product.

ProductSet: un contenitore con granularità più fine per organizzare e raggruppare i prodotti nello stesso Catalog. Un ProductSet può contenere uno o più Product, ma non "possiede" i Product che contiene, bensì mantiene un "collegamento" a questi.

ProductRecognitionIndex: contiene un elenco di incorporamenti di immagini utilizzati per gli algoritmi di riconoscimento dei prodotti. ProductRecognitionIndex può essere creato dall'intero Catalog o da un ProductSet (un sottoinsieme dei Product del Catalog).

Endpoint: un posizionamento che contiene tutte le configurazioni necessarie per eseguire l'inferenza del riconoscimento dei prodotti o del riconoscimento dei tag. Per il riconoscimento del prodotto, è necessario eseguire il deployment di un ProductRecognitionIndex. Per il riconoscimento dei tag, è necessario specificare i modelli di analisi delle entità tag.

Configurazione dell'ambiente

Questa sezione descrive come interagire con l'API RESTful Store Vision AI.

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

Tutti i metodi create richiedono la specifica esplicita del nome/ID della risorsa da creare. Puoi utilizzare una stringa significativa identificatore, ad esempio "product-ABC" o un identificatore generato in modo casuale, ad esempio UUID.

Per concedere a una persona con ruolo l'accesso di editor per utilizzare l'API Store Vision, esegui il seguente comando di binding IAM:

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

Per concedere a un account di servizio l'accesso come editor, utilizza il comando seguente:

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

Scopri di più sul binding IAM.

User journey del riconoscimento dei prodotti

  1. Crea un catalogo.
  2. Importa i prodotti e (facoltativo) ProductImages in Catalog.
  3. Visualizza e modifica Product e ProductImages e, se vuoi, crea un ProductSet per organizzare l'elenco dei prodotti in modo più granulare.
  4. Crea un Index, a partire dall'intero Catalog o da un ProductSet.
  5. Crea un Endpoint con la configurazione di riconoscimento dei prodotti desiderata e vi esegue il deployment di un Index.
  6. Esegui BatchAnalyze con la funzionalità ProductRecognition. Nel backend, il sistema identificherà i prodotti da ogni immagine di input e recupererà i primi K prodotti simili dall'indice specificato utilizzando sia i segnali visivi che quelli di testo OCR.

Gestione delle risorse API (catalogo e Indexset)

Catalogo

Crea catalogo
  • CATALOG_ID=Il tuo ID catalogo.
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

Output di esempio

{
  "name": "projects/cloud-store-vision-test/locations/us-central1/operations/operation-1655157982362-5e15b7f95fa6f-d30364c6-dc3a3714",
  "done": false
}
Pull Operation until done
  • OPERATION_ID=Your output operation, for example, 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

Output di esempio

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

Esistono due formati di importazione supportati:

  • TXT: ogni riga è il GTIN di un prodotto da importare
  • JSONL: ogni riga è un formato JSON di RetailProductIoFormat, ad esempio:
{"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"}}}

Per ulteriori dettagli su RetailProductIoFormat, consulta il riferimento API. Al momento supportiamo l'importazione di un massimo di 10.000 prodotti per operazione ImportProduct.

Tieni presente inoltre che "name" all'interno di "retailProductImages" deve essere univoco nell'ambito della risorsa "retailProduct" principale, il che significa che potrebbero esistere due "retailProductImages" con lo stesso "name" purché appartengano a una risorsa "retailProduct" diversa.

  • IMPORT_FILE_URI=Your import file URI Cloud Storage, for example, gs://mybucket/my_import_file.jsonl
  • IMPORT_FORMAT=Your import file format, either FORMAT_JSONL or 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"
  }'
Elenca catalogo
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

Prodotto

CreateProduct con GTIN

Supportiamo i formati GTIN-8, GTIN-13, GTIN-14 e UPC(noto anche come GTIN-12). Scopri di più sul formato GTIN qui.

  • PRODUCT_ID=Your product id
  • GTIN=gtin del tuo prodotto, ad esempio 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 con ID di terze parti
  • PRODUCT_ID=Your product id
  • THIRD_PARTY_ID=ID di terze parti
  • OWNER=The entity that owns the third party identifier
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=Your product image id
  • IMAGE_GCS_URI=Your image Cloud Storage uri, for example, 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=Your product set 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

Crea ProductRecognitionIndex

Esistono due modi per creare un ProductRecognitionIndex: dal catalogo, che utilizzerà tutti i contenuti del catalogo, oppure da un ProductSet, che utilizzerà solo i prodotti e le immagini dei prodotti associati.

  • INDEX_ID=Your index id
  • COVERAGE_CSV_OUTPUT_DIRECTORY=<Percorso Cloud Storage della directory in cui verrà scritto il file di copertura dell'indice
# 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"}'
Ottieni 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
List 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
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

Endpoint

Crea endpoint
  • ENDPOINT_ID=Your endpoint 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

È possibile eseguire il deployment di un endpoint solo con un ProductRecognitionIndex, ma un ProductRecognitionIndex può essere eseguito il deployment su più endpoint.

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

L'annullamento del deployment rimuoverà solo ProductRecognitionIndex dall'endpoint di chiamata corrente e non influirà sugli altri endpoint se ProductRecognitionIndex viene eseguito il deployment anche in altri.

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

Inferenza di analisi batch (riconoscimento dei prodotti)

File di input di esempio in 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 of your input file> each line in the input file is just a Cloud Storage uri of image to process, for example, gs://my-bucket/my-image.jpg
  • OUTPUT_URI_PREFIX=Cloud Storage uri prefix for output results file, for example, 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
      }
    }
  ],

Esistono anche altri campi che puoi impostare e configurare in productRecognitionConfig, che è un oggetto RetailProductRecognitionConfig. Per ulteriori dettagli, consulta la descrizione della risorsa nel Riferimento API.

Riferimento API

Risorsa: projects.locations.retailCatalogs

Rappresentazione JSON

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

Campi


nome

Stringa

Solo output. Nome risorsa di RetailCatalog

displayName

Stringa

(Facoltativo) Nome visualizzato di RetailCatalog.

createTime

stringa (formato Timestamp)

Solo output. Timestamp di creazione di questo RetailCatalog.

updateTime

stringa (formato Timestamp)

Solo output. Il timestamp dell'aggiornamento.

resourceState

enum

Solo output. Stato di RetailCatalog.

etichette

map (key: string, value: string)

Le etichette con metadati definiti dall'utente per organizzare RetailCatalog.

I valori e le chiavi di etichetta non devono superare i 64 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Sono consentiti caratteri internazionali.

Per ulteriori informazioni ed esempi di etichette, consulta la pagina https://goo.gl/xmQnxf.

Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Metodo: projects.locations.retailCatalogs.create

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di RetailCatalog.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailCatalog appena creata.

Metodo: projects.locations.retailCatalogs.get

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailCatalog.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailCatalog.

Metodo: projects.locations.retailCatalogs.list

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Parametri di query

filtro string Facoltativo. Un'espressione per filtrare i risultati della richiesta.
pageToken string Facoltativo. Un token che identifica una pagina di risultati che il server deve restituire.
pageSize integer Facoltativo. Dimensioni della pagina richiesta. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato.
orderBy string Facoltativo. Un elenco separato da virgole di campi da ordinare in ordine crescente. Utilizza "desc" dopo il nome di un campo per l'ordine decrescente.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura: Rappresentazione JSON

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

Metodo: projects.locations.retailCatalogs.delete

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailCatalog.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Metodo: projects.locations.retailCatalogs.importRetailProducts

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Nome della risorsa RetailCatalog.

Corpo della richiesta

Rappresentazione JSON

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

Campi

gcsSource oggetto Obbligatorio. Il percorso Cloud Storage dei contenuti di input. È possibile fornire più posizioni di input. I contenuti di tutte le posizioni di input verranno importati in un unico batch. Estensioni dei file supportate: 1. Un file JSONL. Ogni riga è un formato JSON di RetailProductIoFormat.
2. Un file TXT. Ogni riga è il GTIN di un prodotto da importare.
formato enum Obbligatorio. Il formato del file di importazione.

Formattare i valori ENUM

FORMAT_UNSPECIFIED Non deve essere utilizzato.
FORMAT_TXT formato TXT.
FORMAT_JSONL Formato JSONL.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Risorsa: projects.locations.retailProducts

Rappresentazione 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
}

Campi


nome

Stringa

Solo output. Nome della risorsa RetailProductImage

displayName

Stringa

(Facoltativo) Nome visualizzato di RetailProductImage.

sourceType

enum

(Facoltativo) Tipo di origine

gcsUri

string

(Facoltativo) Percorso Cloud Storage di RetailProductImage. Deve essere impostato, tranne quando l'immagine viene fornita da Google, ad esempio quando il tipo di origine è SOURCE_TYPE_GOOGLE.

resourceState

enum

Solo output. Stato di RetailProductImage.

etichette

map (key: string, value: string)

Le etichette con metadati definiti dall'utente per organizzare RetailProductImage.

I valori e le chiavi di etichetta non devono superare i 64 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Sono consentiti caratteri internazionali.

Per ulteriori informazioni ed esempi di etichette, consulta la pagina https://goo.gl/xmQnxf.

Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

stringa (formato Timestamp)

Solo output. Timestamp creazione.

updateTime

stringa (formato Timestamp)

Solo output. Il timestamp dell'aggiornamento.

Presentazione JSON RetailThirdPartyId

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

Campi

id string ID di terze parti utilizzato dal rivenditore o dal produttore (ad esempio, SKU o MPN).
proprietario string L'entità "proprietaria" dell'identificatore di terze parti, ad esempio il produttore o il rivenditore che vende questo prodotto.

Metodo: projects.locations.retailCatalogs.retailProducts.create

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di RetailProduct.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProduct appena creata.

Metodo: projects.locations.retailCatalogs.retailProducts.get

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailProduct.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProduct.

Metodo: projects.locations.retailCatalogs.retailProducts.list

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Parametri di query

filtro string Facoltativo. Un'espressione per filtrare i risultati della richiesta.
pageToken string Facoltativo. Un token che identifica una pagina di risultati che il server deve restituire.
pageSize integer Facoltativo. Dimensioni della pagina richiesta. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato.
orderBy string Facoltativo. Un elenco separato da virgole di campi da ordinare in ordine crescente. Utilizza "desc" dopo il nome di un campo per l'ordine decrescente.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura: Rappresentazione JSON

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

Metodo: projects.locations.retailCatalogs.retailProducts.delete

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailProduct.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta è vuoto.

Risorsa: projects.locations.retailProductImages

Rappresentazione JSON

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

Campi


nome

Stringa

Solo output. Nome della risorsa RetailProductImage

displayName

Stringa

(Facoltativo) Nome visualizzato di RetailProductImage.

sourceType

enum

(Facoltativo) Tipo di origine

gcsUri

string

(Facoltativo) Percorso Cloud Storage di RetailProductImage. Deve essere impostato, tranne quando l'immagine viene fornita da Google, ad esempio quando il tipo di origine è SOURCE_TYPE_GOOGLE.

resourceState

enum

Solo output. Stato di RetailProductImage.

etichette

map (key: string, value: string)

Le etichette con metadati definiti dall'utente per organizzare RetailProductImage.

I valori e le chiavi di etichetta non devono superare i 64 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Sono consentiti caratteri internazionali.

Per ulteriori informazioni ed esempi di etichette, consulta la pagina https://goo.gl/xmQnxf.

Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

stringa (formato Timestamp)

Solo output. Timestamp creazione.

updateTime

stringa (formato Timestamp)

Solo output. Il timestamp dell'aggiornamento.

Valori ENUM SourceType

SOURCE_TYPE_UNSPECIFIED Origine dati sconosciuta. Non deve essere utilizzato.
SOURCE_TYPE_FIXED_CAMERA L'immagine viene acquisita da una videocamera fissa.
SOURCE_TYPE_HAND_HELD_CAMERA L'immagine viene acquisita da una videocamera portatile.
SOURCE_TYPE_CRAWLED L'immagine viene sottoposta a scansione dal web.
SOURCE_TYPE_SYSTEM_GENERATED L'immagine è ritagliata da un'immagine originale con etichettatura umana.

Metodo: projects.locations.retailCatalogs.retailProducts.retailProductImages.create

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di RetailProductImage.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProductImage appena creata.

Metodo: projects.locations.retailCatalogs.retailProducts.retailProductImages.get

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailProductImage.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProductImage.

Metodo: projects.locations.retailCatalogs.retailProducts.retailProductImages.list

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Parametri di query

filtro string Facoltativo. Un'espressione per filtrare i risultati della richiesta.
pageToken string Facoltativo. Un token che identifica una pagina di risultati che il server deve restituire.
pageSize integer Facoltativo. Dimensioni della pagina richiesta. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato.
orderBy string Facoltativo. Un elenco separato da virgole di campi da ordinare in ordine crescente. Utilizza "desc" dopo il nome di un campo per l'ordine decrescente.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON

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

Metodo: projects.locations.retailCatalogs.retailProducts.retailProductImages.delete

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailProductImage.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta è vuoto.

Risorsa: projects.locations.retailCatalogs.retailProductSets

Rappresentazione JSON

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

Campi


nome

Stringa

Solo output. Nome della risorsa RetailProductSet

displayName

Stringa

(Facoltativo) Nome visualizzato di RetailProductSet.

retailProductIds []

Stringa

Solo output. ID risorsa dei prodotti appartenenti a questo RetailProductSet. I prodotti in un RetailProductSet devono trovarsi nello stesso catalogo.

resourceState

enum

Solo output. Stato di RetailProductSet.

etichette

map (key: string, value: string)

Le etichette con metadati definiti dall'utente per organizzare il tuo RetailProductSet.

I valori e le chiavi di etichetta non devono superare i 64 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Sono consentiti caratteri internazionali.

Per ulteriori informazioni ed esempi di etichette, consulta la pagina https://goo.gl/xmQnxf.

Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

stringa (formato Timestamp)

Solo output. Timestamp creazione.

updateTime

stringa (formato Timestamp)

Solo output. Il timestamp dell'aggiornamento.

Metodo: projects.locations.retailCatalogs.retailProductSets.create

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di RetailProductSet.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProductSet appena creata.

Metodo: projects.locations.retailCatalogs.retailProductSets.get

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailProductSet.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProductSet.

Metodo: projects.locations.retailCatalogs.retailProductSets.list

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Parametri di query

filtro string Facoltativo. Un'espressione per filtrare i risultati della richiesta.
pageToken string Facoltativo. Un token che identifica una pagina di risultati che il server deve restituire.
pageSize integer Facoltativo. Dimensioni della pagina richiesta. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato.
orderBy string Facoltativo. Un elenco separato da virgole di campi da ordinare in ordine crescente. Utilizza "desc" dopo il nome di un campo per l'ordine decrescente.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON

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

Metodo: projects.locations.retailCatalogs.retailProductSets.delete

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailProductSet.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta è vuoto.

Metodo: projects.locations.retailCatalogs.retailProductSets.add

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Nome della risorsa RetailProductSet.

Corpo della richiesta

Rappresentazione JSON

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

Campi


productIds[ ]

string

ID risorsa dei RetailProducts da aggiungere. Devono appartenere tutti allo stesso RetailCatalog del RetailProductSet di destinazione specificato. È possibile specificare fino a 200 ID RetailProducts in una richiesta. Non può essere utilizzato insieme a productFilter.

productFilter

string

Un filtro standard che verrà applicato a tutti i RetailProduct nel RetailCatalog principale, seleziona gli elementi che soddisfano le condizioni del filtro e aggiungili al RetailProductSet. Non può essere utilizzato insieme a product_ids. Filtri supportati: https://google.aip.dev/160

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Metodo: projects.locations.retailCatalogs.retailProductSets.remove

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Nome della risorsa RetailProductSet.

Corpo della richiesta

Rappresentazione JSON

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

Campi


productIds[ ]

string

ID risorsa dei RetailProducts da rimuovere. Se RetailProducts specificato non appartiene a questo RetailProductSet, verrà ignorato. È possibile specificare fino a 200 ID RetailProducts in una richiesta. Non può essere utilizzato insieme a products_filter.

productFilter

string

Un filtro standard che verrà applicato a tutti i RetailProduct nel RetailProductSet specificato, seleziona gli elementi che soddisfano le condizioni del filtro e rimuovili dal RetailProductSet. Non può essere utilizzato insieme a product_ids. Filtri supportati:https://google.aip.dev/160

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Risorsa: projects.locations.retailCatalogs.retailProductRecognitionIndexes

Rappresentazione JSON

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

Campi


nome

Stringa

Solo output. Nome della risorsa RetailProductRecognitionIndex.

displayName

Stringa

(Facoltativo) Nome visualizzato di RetailProductRecognitionIndex.

descrizione

Stringa

(Facoltativo) La descrizione di RetailProductRecognitionIndex.

retailProductSet[]

string

(Facoltativo) Il nome della risorsa RetailProductSet da utilizzare per creare questa risorsa. Se impostato, RetailProductRecognitionIndex conterrà solo i prodotti nel RetailProductSet specificato. Se non viene impostato, verranno utilizzati tutti i prodotti del catalogo principale.

resourceState

enum

Solo output. Stato di RetailProductRecognitionIndex.

etichette

map (key: string, value: string)

Le etichette con metadati definiti dall'utente per organizzare il tuo RetailProductRecognitionIndex.

I valori e le chiavi di etichetta non devono superare i 64 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Sono consentiti caratteri internazionali.

Per ulteriori informazioni ed esempi di etichette, consulta la pagina https://goo.gl/xmQnxf.

Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

stringa (formato Timestamp)

Solo output. Timestamp creazione.

updateTime

stringa (formato Timestamp)

Solo output. Il timestamp dell'aggiornamento.

Metodo: projects.locations.retailCatalogs.retailProductRecognitionIndexes.create

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di RetailProductRecognitionIndex.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProductRecognitionIndex appena creata.

Metodo: projects.locations.retailCatalogs.retailProductRecognitionIndexes.get

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailProductRecognitionIndex.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailProductRecognitionIndex.

Metodo: projects.locations.retailCatalogs.retailProductRecognitionIndexes.list

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Parametri di query

filtro string Facoltativo. Un'espressione per filtrare i risultati della richiesta.
pageToken string Facoltativo. Un token che identifica una pagina di risultati che il server deve restituire.
pageSize integer Facoltativo. Dimensioni della pagina richiesta. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato.
orderBy string Facoltativo. Un elenco separato da virgole di campi da ordinare in ordine crescente. Utilizza "desc" dopo il nome di un campo per l'ordine decrescente.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON

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

Metodo: projects.locations.retailCatalogs.retailProductRecognitionIndexes.delete

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore ProductRecognitionIndex.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Risorsa: projects.locations.retailEndpoints

Rappresentazione 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
}

Campi


nome

Stringa

Solo output. Nome della risorsa RetailEndpoint.

displayName

Stringa

(Facoltativo) Nome visualizzato di RetailEndpoint.

descrizione

Stringa

(Facoltativo) La descrizione di RetailEndpoint.

deployedProductRecognitionIndex

Stringa

Solo output. Nome della risorsa di ProductRecognitionIndex di cui è stato eseguito il deployment in questo RetailEndpoint.

productRecognitionConfig

oggetto

(Facoltativo) Configurazione per il riconoscimento dei prodotti.

tagRecognitionConfig

oggetto

(Facoltativo) Configurazione per il riconoscimento dei tag.

resourceState

enum

Solo output. Stato di RetailProductRecognitionIndex.

etichette

map (key: string, value: string)

Le etichette con metadati definiti dall'utente per organizzare il tuo RetailProductRecognitionIndex.

I valori e le chiavi di etichetta non devono superare i 64 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Sono consentiti caratteri internazionali.

Per ulteriori informazioni ed esempi di etichette, consulta la pagina https://goo.gl/xmQnxf.

Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

stringa (formato Timestamp)

Solo output. Timestamp creazione.

updateTime

stringa (formato Timestamp)

Solo output. Il timestamp dell'aggiornamento.

RetailProductRecognitionConfig

Rappresentazione JSON

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

Campi

|

productDetectionModel string Obbligatorio. Modello da utilizzare per rilevare i prodotti nelle immagini di input. Valori supportati: "builtin/stable" (il valore predefinito) o il nome della risorsa modello Vertex AI.
detectionConfidenceThreshold float Facoltativo. Soglia di confidenza per filtrare i risultati del rilevamento. Se non viene impostato, verrà utilizzato un valore predefinito del sistema.
recognitionConfidenceThreshold float Facoltativo. Soglia di confidenza per filtrare i risultati del riconoscimento. Se non viene impostato, verrà utilizzato un valore predefinito del sistema.
additionalConfig oggetto (formato Struct) Facoltativo. Configurazioni aggiuntive per il riconoscimento dei prodotti.

RetailTagRecognitionConfig

Rappresentazione JSON

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

Campi

tagDetectionModel string Obbligatorio. Modello da utilizzare per rilevare i tag nelle immagini di input. Valori supportati: risorsa modello Vertex AI.
tagParsingModel string Obbligatorio. Modello per analizzare il testo dei tag rilevati. Valori supportati: risorsa modello Vertex AI.
detectionConfidenceThreshold float Facoltativo. Soglia di confidenza per filtrare i risultati del rilevamento. Se non viene impostato, verrà utilizzato un valore predefinito del sistema.
parsingConfidenceThreshold float Facoltativo. Soglia di confidenza per filtrare i risultati dell'analisi del testo. Se non viene impostato, verrà utilizzato un valore predefinito del sistema.
additionalConfig oggetto (formato Struct) Facoltativo. Configurazioni aggiuntive per il riconoscimento dei tag.

Metodo: projects.locations.retailEndpoints.create

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di RetailEndpoint.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailEndpoint appena creata.

Metodo: projects.locations.retailEndpoints.get

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailEndpoint.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di RetailEndpoint.

Metodo: projects.locations.retailEndpoints.list

Richiesta HTTP

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

Parametri del percorso

genitore string Obbligatorio. Identificatore principale.

Parametri di query

filtro string Facoltativo. Un'espressione per filtrare i risultati della richiesta.
pageToken string Facoltativo. Un token che identifica una pagina di risultati che il server deve restituire.
pageSize integer Facoltativo. Dimensioni della pagina richiesta. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato.
orderBy string Facoltativo. Un elenco separato da virgole di campi da ordinare in ordine crescente. Utilizza "desc" dopo il nome di un campo per l'ordine decrescente.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON

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

Metodo: projects.locations.retailEndpoints.delete

Richiesta HTTP

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

Parametri del percorso

nome string Obbligatorio. Identificatore RetailEndpoint.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta è vuoto.

Metodo: projects.locations.retailEndpoints.deployRetailProductRecognitionIndex

Richiesta HTTP

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

Parametri del percorso

retailEndpoint string Obbligatorio. Nome della risorsa RetailEndpoint in cui viene eseguito il deployment di RetailProductRecognitionIndex.

Corpo della richiesta

Rappresentazione JSON

{
  "retailProductRecognitionIndex": string,
}

Campi

retailProductRecognitionIndex string Obbligatorio. Il nome della risorsa di RetailProductRecognitionIndex di cui eseguire il deployment.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Metodo: projects.locations.retailEndpoints.undeployRetailProductRecognitionIndex

Richiesta HTTP

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

Parametri del percorso

retailEndpoint string Obbligatorio. Nome della risorsa RetailEndpoint su cui verrà eseguito l'annullamento del deployment.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Metodo: projects.locations.retailEndpoints.batchAnalyze

Richiesta HTTP

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

Parametri del percorso

retailEndpoint string Obbligatorio. Nome della risorsa di RetailEndpoint per gestire la richiesta di inferenza.

Corpo della richiesta

Rappresentazione 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
}

Campi

gcsSource string Obbligatorio. Il percorso Cloud Storage dei contenuti di input. È possibile fornire più posizioni di input. I contenuti di tutte le posizioni di input verranno elaborati in un unico batch. Contenuti supportati: un file TXT, ogni riga è il percorso completo di un'immagine. In una richiesta è possibile supportare un massimo di 50.000 immagini.
outputGcsDestination string Facoltativo. La posizione di Cloud Storage della directory in cui scrivere l'output.
corpus string Facoltativo. Nome della risorsa del corpus del warehouse di immagini. Non ancora supportato.
bigqueryTable string Facoltativo. Nome della risorsa della tabella BigQuery per le esportazioni di annotazioni. Nel formato "projects/*/datasets/*/tables/*". Se impostate, anche le annotazioni generate dall'inferenza ML verranno esportate nella tabella BigQuery specificata. Non ancora supportato.
features[] Oggetto Obbligatorio. Il tipo di inferenza ML da eseguire.

Funzionalità

Rappresentazione JSON

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

Campi

tipo enum Obbligatorio. Il tipo di funzionalità.
productRecognitionConfig oggetto Facoltativo. Override per richiesta per la funzionalità di riconoscimento dei prodotti. È efficace solo se il tipo è impostato su TYPE_PRODUCT_RECOGNITION.
tagRecognitionConfig oggetto Facoltativo. Override per richiesta per la funzionalità di riconoscimento dei tag. È efficace solo se il tipo è impostato su TYPE_TAG_RECOGNITION.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.

Tipi

GcsSource

Rappresentazione JSON

{
  "uris": [string]
}

Campi

uris[] string Obbligatorio. Riferimenti a percorsi Cloud Storage.

Tipo

Valori ENUM

TYPE_UNSPECIFIED Il valore predefinito. Non deve essere utilizzato.
TYPE_PRODUCT_RECOGNITION Riconoscimento dei prodotti. Deve essere utilizzato su un RetailEndpoint con RetailProductRecognitionIndex implementato.
TYPE_TAG_RECOGNITION Rilevamento e analisi dei tag. Deve essere utilizzato su un RetailEndpoint con RetailTagRecognitionConfig.

RetailProductIoFormat

Rappresentazione JSON

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

Campi

retailProduct oggetto Obbligatorio. RetailProduct da importare
retailProductImages[ ] oggetto Facoltativo. RetailProductImage del RetailProduct specificato da importare.

RetailResourceState

Valori ENUM

RETAIL_RESOURCE_STATE_UNSPECIFIED Il valore predefinito. Non deve essere utilizzato.
RETAIL_RESOURCE_STATE_CREATING Stato: creazione in corso.
RETAIL_RESOURCE_STATE_CREATED Stato creato.
RETAIL_RESOURCE_STATE_UPDATING Aggiornamento dello stato in corso.
RETAIL_RESOURCE_STATE_DELETED Stato eliminato.
RETAIL_RESOURCE_STATE_ERROR Errore di stato.