Il modello Product Recognizer ti aiuta a riconoscere e capire quale prodotto è presente nell'immagine fornita. L'immagine deve contenere un solo prodotto che vuoi riconoscere.
Questo modello può fungere da blocco di base dell'AI per analizzare e interpretare i dati delle immagini dei prodotti, 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 elementi di base dell'AI per analizzare e interpretare i dati immagine relativi a prodotti e tag, che potresti aver acquisito dai 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 principali 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 cartellino del prezzo o qualsiasi altro tag di etichetta di testo) in base allo schema di estrazione delle entità della coppia chiave-valore definita 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 delle 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 GTIN (Global Trade Item Number) o UPC (Universal Product Code). Nel Riconoscimento prodotti sono inclusi diversi modelli di Google AI differenziati per consentire la risoluzione di questi casi d'uso, ad esempio:
- Il modello di incorporamento visivo del prodotto, che trasforma un'immagine del prodotto in una rappresentazione numerica dello spazio delle funzionalità.
- La tecnologia OCR di Google, che estrae tutti i testi visibili 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 molti prodotti immediatamente.
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 delle 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:

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 contenuti, 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 di 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
dei prodotti, è necessario eseguire il deployment di un ProductRecognitionIndex.
Per il riconoscimento dei tag, è necessario specificare i modelli di analisi delle entità dei 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 riportato di seguito:
gcloud projects add-iam-policy-binding PROJECT_ID --member='serviceAccount:SERVICE_ACCOUNT' --role='roles/visionai.editor'
Scopri di più sul binding IAM.
Percorso dell'utente del riconoscimento dei prodotti
- Crea un catalogo.
- Importa i prodotti e (facoltativamente)
ProductImagesinCatalog. - Visualizza e modifica
ProducteProductImagese, se vuoi, crea unProductSetper organizzare l'elenco dei prodotti in modo più granulare. - Crea un
Index, dall'interoCatalogo da unProductSet. - Crea un
Endpointcon la configurazione di riconoscimento dei prodotti desiderata e vi esegue il deployment di unIndex. - Esegui
BatchAnalyzecon 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 segnali visivi che di testo OCR.
Gestione delle risorse API (catalogo e Indexset)
Catalogo
Crea catalogo
- CATALOG_ID=Your catalog 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
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 solo 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"
}'
Elenco cataloghi
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
Create ProductRecognitionIndex
Esistono due modi per creare un ProductRecognitionIndex: dal catalogo, che utilizzerà tutto ciò che contiene, 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 di 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"}'
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
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 indice ProductRecognitionIndex, ma un indice 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 su 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=URI Cloud Storage del file di input> ogni riga del file di input è un URI Cloud Storage dell'immagine da elaborare, ad esempio 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
}
}
],
Sono disponibili 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
name |
Stringa |
Solo output. Nome risorsa di RetailCatalog |
|---|---|---|
displayName |
Stringa |
(Facoltativo) Nome visualizzato di RetailCatalog. |
createTime |
string (Timestamp format) |
Solo output. Timestamp di creazione di questo RetailCatalog. |
updateTime |
string (Timestamp format) |
Solo output. Il timestamp dell'aggiornamento. |
resourceState |
enum |
Solo output. Stato di RetailCatalog. |
etichette |
map (key: string, value: string) |
Le etichette con i metadati definiti dall'utente per organizzare il catalogo Retail. 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
name |
Stringa |
Solo output. Nome della risorsa RetailProductImage |
|---|---|---|
displayName |
Stringa |
(Facoltativo) Nome visualizzato di RetailProductImage. |
sourceType |
enum |
(Facoltativo) Tipo di origine |
gcsUri |
stringa |
(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, visita la pagina https://goo.gl/xmQnxf. Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (Timestamp format) |
Solo output. Timestamp creazione. |
updateTime |
string (Timestamp format) |
Solo output. Il timestamp dell'aggiornamento. |
RetailThirdPartyId Presentazione JSON
{
"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
name |
Stringa |
Solo output. Nome della risorsa RetailProductImage |
|---|---|---|
displayName |
Stringa |
(Facoltativo) Nome visualizzato di RetailProductImage. |
sourceType |
enum |
(Facoltativo) Tipo di origine |
gcsUri |
stringa |
(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, visita la pagina https://goo.gl/xmQnxf. Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (Timestamp format) |
Solo output. Timestamp creazione. |
updateTime |
string (Timestamp format) |
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
name |
Stringa |
Solo output. Nome risorsa del 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, visita la pagina https://goo.gl/xmQnxf. Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (Timestamp format) |
Solo output. Timestamp creazione. |
updateTime |
string (Timestamp format) |
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[ ] |
stringa |
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 |
stringa |
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[ ] |
stringa |
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 |
stringa |
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
name |
Stringa |
Solo output. Nome della risorsa RetailProductRecognitionIndex. |
|---|---|---|
displayName |
Stringa |
(Facoltativo) Nome visualizzato di RetailProductRecognitionIndex. |
descrizione |
Stringa |
(Facoltativo) La descrizione di RetailProductRecognitionIndex. |
retailProductSet[] |
stringa |
(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 l'indice RetailProductRecognition. 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, visita la pagina https://goo.gl/xmQnxf. Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (Timestamp format) |
Solo output. Timestamp creazione. |
updateTime |
string (Timestamp format) |
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
name |
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 del prodotto. |
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 l'indice RetailProductRecognition. 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, visita la pagina https://goo.gl/xmQnxf. Un oggetto contenente un elenco di coppie "chiave": valore. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (Timestamp format) |
Solo output. Timestamp creazione. |
updateTime |
string (Timestamp format) |
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 del 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 sui 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 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 località di input verranno elaborati in un unico batch. Contenuti supportati: un file TXT in cui ogni riga è il percorso completo di un'immagine. In una richiesta è possibile supportare un massimo di 50.000 immagini. |
|---|---|---|
| outputGcsDestination | string | Facoltativo. Il percorso 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 un percorso 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) RetailProductImages 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. |
| RETAIL_RESOURCE_STATE_DELETED | Stato eliminato. |
| RETAIL_RESOURCE_STATE_ERROR | Errore di stato. |