O modelo Product Recognizer ajuda a reconhecer e compreender que produtos estão na imagem fornecida ou na prateleira.
Este modelo pode servir como o bloco de construção de IA principal para analisar e interpretar dados de imagens de produtos em lojas de retalho. Por exemplo, pode usar este modelo em imagens de prateleiras capturadas por câmaras locais ou dispositivos móveis.
Exemplos de utilização do Identificador de etiquetas e do Identificador de produtos
O modelo de reconhecimento de produtos e os modelos de reconhecimento de etiquetas podem servir como os blocos de construção de IA principais para analisar e interpretar os dados de imagens relativos a produtos e etiquetas encontrados em lojas de retalho, como as imagens de leitura de prateleiras capturadas pelas câmaras instaladas ou pelos dispositivos / plataformas móveis.
Os modelos de reconhecimento de produtos e de etiquetas incorporam várias capacidades de modelagem e dados de IA da Google para ajudar os retalhistas e/ou os parceiros técnicos a resolver problemas importantes na compreensão da prateleira de retalho, incluindo:
- Detetar, reconhecer e, assim, compreender que produtos estão na imagem ou na prateleira.
- Detetar, reconhecer e analisar as etiquetas (por exemplo, etiqueta de preço ou quaisquer outras etiquetas de texto) de acordo com o esquema de extração de entidades de pares de chave-valor definidos pelo utilizador.
Em particular, vários modelos de IA da Google diferenciadores estão incluídos na solução de verificação de prateleiras para suportar a resolução de problemas destes exemplos de utilização, como
- Modelos de deteção de produtos (pré-preparados pela Google, mas que ainda pode personalizar).
- Modelo de incorporação visual de miniaturas de produtos, que transforma uma imagem de miniatura de produto numa representação numérica do espaço de caraterísticas.
- Modelo de OCR da Google, que extrai todos os textos visíveis na imagem.
- Modelo de extração de entidades da Google (que pode personalizar), que transforma os textos não processados em entidades com nomes de pares de chave-valor definidos pelo utilizador.
Além destes modelos de IA da Google, a solução de verificação de prateleiras também tira partido da grande base de dados de informações sobre produtos da Google. Os dados dos produtos nesta base de dados de produtos incluem a identidade GTIN / CPU do produto, a marca do produto, o título e as descrições em vários idiomas, o logótipo do produto e as imagens com várias variações de embalagens. A base de dados de produtos com o modelo de incorporação visual de miniaturas de produtos mencionado anteriormente permite que o modelo de reconhecimento de produtos consiga reconhecer muitos produtos imediatamente.
Por exemplo, dada uma imagem de prateleira capturada da seguinte forma, a solução de verificação de prateleiras destina-se a:
- Detetar e localizar todas as caixas de artigos de produtos (visíveis, não severamente ocultadas) na imagem e reconhecer a identidade do produto de cada caixa de artigos de produtos individual ao nível do GTIN / CPU.
- Detetar e localizar todas as caixas de etiquetas (visíveis) na imagem, reconhecer todas as strings de texto na etiqueta e, em seguida, tentar analisar o texto no esquema de extração de entidades de pares de chaves-valores definidos pelo utilizador, como a descrição do artigo do produto e o valor do preço.
As duas principais funcionalidades de IA que ativam estas soluções são o modelo de reconhecimento de produtos e o modelo de reconhecimento de etiquetas, sobre os quais vamos fornecer mais detalhes nas secções seguintes. Para cada uma destas duas APIs que fornecem principalmente os serviços de inferência de imagens, existem um ou mais componentes em cada API que pode personalizar. Primeiro, vamos descrever o caminho de inferência da utilização da API e, em seguida, fornecer uma breve descrição de como pode personalizar os componentes envolvidos, seja através de alguma configuração do utilizador ou de alguma preparação do modelo que realizar.
Funcionalidade do identificador de produtos
Este modelo reconhece a identidade individual do produto ao nível do Número global de artigo comercial (GTIN) ou do Código de produto universal (CPU). Vários modelos de IA da Google diferenciadores estão incluídos no reconhecedor de produtos para potenciar a resolução de problemas nestes exemplos de utilização, como:
- O modelo de incorporação visual de produtos, que transforma uma imagem de produto numa representação numérica do espaço de caraterísticas.
- A tecnologia OCR da Google, que extrai todos os textos visíveis na imagem.
- A base de dados de produtos Google usada em combinação com o modelo de incorporação visual da miniatura do produto permite que o modelo do reconhecedor de produtos reconheça muitos produtos imediatamente.
Exemplo de objeto JSON de saída
{ "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" }, } ] } ] }
Conceitos da API
Existem seis recursos da API oferecidos para ajudar a criar o catálogo de produtos, a gestão do conjunto de dados de produtos, a criação de índices e a implementação do serviço de reconhecimento de produtos. São descritos da seguinte forma:
Catálogo: recurso raiz que representa o contentor de todos os produtos oferecidos pelo retalhista.
Produto: representa um produto oferecido por um comerciante. Product
é um recurso filho de Catalog
.
ProductImage: a imagem que representa uma vista de um produto. ProductImage
é um recurso secundário de Product
.
ProductSet: um contentor de granularidade mais fina para organizar e agrupar produtos no mesmo Catalog
. Um ProductSet
pode conter um ou vários Product
s, mas não "possui" os Product
s que contém. Em vez disso, mantém uma "associação" com eles.
ProductRecognitionIndex: contém uma lista de incorporações de imagens usadas para algoritmos de reconhecimento de produtos. ProductRecognitionIndex
podem ser criadas a partir de todo o Catalog
ou de um ProductSet
(um subconjunto dos Product
s do Catalog
).
Ponto final: um posicionamento que contém todas as configurações necessárias para realizar a inferência de reconhecimento de produtos ou reconhecimento de etiquetas. Para o reconhecimento de produtos, é necessário especificar o modelo de deteção de produtos e implementar um ProductRecognitionIndex
. Para o reconhecimento de etiquetas, é necessário especificar os modelos de deteção de etiquetas e de análise de entidades de etiquetas.
Configuração do ambiente
Esta secção descreve como interagir com a API RESTful Store Vision AI.
API_ENDPOINT=visionai.googleapis.com
PROJECT_ID=your project ID
Todos os métodos create
requerem a especificação explícita do nome/ID do recurso a criar. Pode usar um identificador de string significativo, por exemplo, "product-ABC" ou um identificador gerado aleatoriamente, por exemplo, UUID.
Para conceder a uma pessoa a função de editor com acesso à API Store Vision, execute o seguinte comando de associação do IAM:
gcloud projects add-iam-policy-binding PROJECT_ID --member='user:USER_ACCOUNT' --role='roles/visionai.editor'
Para conceder acesso de editor a uma conta de serviço, use o comando abaixo:
gcloud projects add-iam-policy-binding PROJECT_ID --member='serviceAccount:SERVICE_ACCOUNT' --role='roles/visionai.editor'
Saiba mais sobre a associação do IAM.
Percurso do utilizador do Reconhecedor de produtos
- Crie um catálogo.
- Importe produtos e (opcionalmente)
ProductImages
para oCatalog
. - Veja e modifique os elementos
Product
eProductImages
e, opcionalmente, crie um elementoProductSet
para organizar a lista de produtos com uma granularidade mais detalhada. - Crie um
Index
, a partir de todo oCatalog
ou de umProductSet
. - Cria um
Endpoint
com a configuração de reconhecimento de produtos desejada e implementa umIndex
no mesmo. - Realize
BatchAnalyze
com a funcionalidadeProductRecognition
. No back-end, o sistema identifica os produtos de cada imagem de entrada e obtém os K principais produtos semelhantes do índice especificado através de sinais visuais e de texto de OCR.
Gestão de recursos da API (catálogo e Indexset)
Catálogo
Crie um catálogo
- CATALOG_ID=O ID do seu catálogo.
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
Exemplo de resultado
{
"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
Exemplo de resultado
{
"name": "projects/cloud-store-vision-test/locations/us-central1/operations/operation-1655157982362-5e15b7f95fa6f-d30364c6-dc3a3714",
"done": true
}
ImportProduct
Existem dois formatos de importação suportados:
- TXT: cada linha é o GTIN de um produto a importar
- JSONL: cada linha é um formato JSON de RetailProductIoFormat, por exemplo:
{"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"}}}
Consulte a referência da API para ver mais detalhes sobre o RetailProductIoFormat. Atualmente,suportamos a importação de um máximo de 10 000 produtos por operação ImportProduct.
Tenha também em atenção que o "nome" em "retailProductImages" só tem de ser exclusivo no âmbito do recurso "retailProduct" principal, o que significa que podem existir 2 "retailProductImages" com o mesmo "nome", desde que pertençam a um recurso "retailProduct" diferente.
- IMPORT_FILE_URI=O URI do Cloud Storage do seu ficheiro de importação, por exemplo, gs://mybucket/my_import_file.jsonl
- IMPORT_FORMAT=O formato do ficheiro de importação, FORMAT_JSONL ou 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"
}'
Catálogo de listas
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
Produto
CreateProduct com GTIN
Suportamos o formato GTIN-8, GTIN-13, GTIN-14 e UPC(também conhecido como GTIN-12). Saiba mais acerca do formato GTIN aqui.
- PRODUCT_ID=O ID do produto
- GTIN=gtin do seu produto, por exemplo, 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 com ID de terceiros
- PRODUCT_ID=O ID do produto
- THIRD_PARTY_ID=ID de terceiros
- OWNER=A entidade proprietária do identificador de terceiros
curl -sS -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts?retail_product_id=PRODUCT_ID \
-d '
{
"third_party_ids": {
"id": "THIRD_PARTY_ID",
"owner": "OWNER",
}
}'
ListProducts
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts
GetProducts
curl -sS -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID
DeleteProduct
curl -sS -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://visionai.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/us-central1/retailCatalogs/CATALOG_ID/retailProducts/PRODUCT_ID
ProductImage
CreateProductImage
- PRODUCT_IMAGE_ID=ID da imagem do produto
- IMAGE_GCS_URI=O URI do Cloud Storage da sua imagem, por exemplo, 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=O ID do conjunto de produtos
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
Crie um ProductRecognitionIndex
Existem duas formas de criar um ProductRecognitionIndex: a partir do catálogo, que usa tudo o que está contido neste catálogo, ou a partir de um ProductSet, que usa apenas os produtos e as imagens dos produtos associados.
- INDEX_ID=O ID do seu índice
- COVERAGE_CSV_OUTPUT_DIRECTORY=<Localização do armazenamento na nuvem do diretório onde o ficheiro de cobertura do índice vai ser escrito
# 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
Listar 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
Eliminar 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
Ponto final
Criar ponto final
- ENDPOINT_ID=O ID do seu ponto final
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
Um ponto final só pode ser implementado com um ProductRecognitionIndex, mas um ProductRecognitionIndex pode ser implementado em vários pontos finais.
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
A anulação da implementação apenas remove o ProductRecognitionIndex implementado do Endpoint de chamada atual e não afeta outros Endpoints se este ProductRecognitionIndex também estiver implementado noutros.
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
Análise em lote da inferência (reconhecimento de produtos)
Exemplo de ficheiro de entrada em 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 do Cloud Storage do seu ficheiro de entrada> cada linha no ficheiro de entrada é apenas um URI do Cloud Storage da imagem a processar, por exemplo, gs://my-bucket/my-image.jpg
- OUTPUT_URI_PREFIX=Prefixo do URI do Cloud Storage para o ficheiro de resultados de saída, por exemplo, 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
}
}
],
Também existem mais campos que pode definir e configurar no
productRecognitionConfig
, que é um objeto RetailProductRecognitionConfig
.
Consulte a descrição do recurso na referência da API para ver mais detalhes.
Referência da API
Recurso: projects.locations.retailCatalogs
Representação JSON
{
"name": string,
"displayName": string,
"createTime": string,
"updateTime": string,
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
}
Campos
name |
String |
Apenas saída. Nome do recurso do RetailCatalog |
---|---|---|
displayName |
String |
Opcional. Nome a apresentar do RetailCatalog. |
createTime |
string (formato Timestamp) |
Apenas saída. Data/hora em que este RetailCatalog foi criado. |
updateTime |
string (formato Timestamp) |
Apenas saída. A data/hora da atualização. |
resourceState |
enum |
Apenas saída. Estado do RetailCatalog. |
etiquetas |
map (key: string, value: string) |
As etiquetas com metadados definidos pelo utilizador para organizar o seu RetailCatalog. As chaves e os valores das etiquetas não podem ter mais de 64 carateres (pontos de código Unicode) e só podem conter letras minúsculas, carateres numéricos, sublinhados e travessões. São permitidos carateres internacionais. Consulte https://goo.gl/xmQnxf para mais informações e exemplos de etiquetas. Um objeto que contém uma lista de pares "chave": valor. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
Método: projects.locations.retailCatalogs.create
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Corpo do pedido
O corpo do pedido contém uma instância de RetailCatalog
.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada de
RetailCatalog
.
Método: projects.locations.retailCatalogs.get
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}
Parâmetros de caminho
nome | de string | Obrigatório. RetailCatalog identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de RetailCatalog
.
Método: projects.locations.retailCatalogs.list
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/us-central1}/retailCatalogs
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Parâmetros de consulta
filtrar | de string | Opcional. Uma expressão para filtrar os resultados do pedido. |
---|---|---|
pageToken | de string | Opcional. Um token que identifica uma página de resultados que o servidor deve devolver. |
pageSize | número inteiro | Opcional. Tamanho da página solicitado. O servidor pode devolver menos itens do que o pedido. Se não for especificado, o servidor seleciona uma predefinição adequada. |
orderBy | de string | Opcional. Uma lista de campos separados por vírgulas para ordenar por ordem ascendente. Use "desc" após o nome de um campo para ordem descendente. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém dados com a seguinte estrutura: Representação JSON
{
"retailCatalogs": [
{
object (RetailCatalog)
}
],
"nextPageToken": string
}
Método: projects.locations.retailCatalogs.delete
Pedido HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}
Parâmetros de caminho
nome | de string | Obrigatório. RetailCatalog identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Método: projects.locations.retailCatalogs.importRetailProducts
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/us-central1/retailCatalogs/*}:importRetailProducts
Parâmetros de caminho
nome | de string | Obrigatório. RetailCatalog nome do recurso. |
Corpo do pedido
Representação JSON
{
"gcsSource": { object(GcsSource) },
"format": enum(Format)
}
Campos
gcsSource | objeto | Obrigatório. A localização do Cloud Storage para o conteúdo de entrada.
Podem ser fornecidas várias localizações de entrada. O conteúdo de todas as localizações de entrada é importado num lote. Extensões de ficheiros suportadas: 1.
Um ficheiro JSONL. Cada linha é um formato JSON de RetailProductIoFormat. 2. Um ficheiro TXT. Cada linha é o GTIN de um produto a importar. |
formato | enum | Obrigatório. O formato do ficheiro de importação. |
Formate valores ENUM
FORMAT_UNSPECIFIED | Não deve ser usado. |
---|---|
FORMAT_TXT | Formato TXT. |
FORMAT_JSONL | Formato JSONL. |
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Recurso: projects.locations.retailProducts
Representação 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
}
Campos
name |
String |
Apenas saída. Nome do recurso de RetailProductImage |
---|---|---|
displayName |
String |
Opcional. Nome a apresentar de RetailProductImage. |
sourceType |
enum |
Opcional. Tipo de origem |
gcsUri |
string |
Opcional. Localização do Cloud Storage da RetailProductImage. Deve ser definido, exceto quando a imagem é fornecida pela Google, por exemplo, quando o tipo de origem é SOURCE_TYPE_GOOGLE. |
resourceState |
enum |
Apenas saída. Estado de RetailProductImage. |
etiquetas |
map (key: string, value: string) |
As etiquetas com metadados definidos pelo utilizador para organizar a RetailProductImage. As chaves e os valores das etiquetas não podem ter mais de 64 carateres (pontos de código Unicode) e só podem conter letras minúsculas, carateres numéricos, sublinhados e travessões. São permitidos carateres internacionais. Consulte https://goo.gl/xmQnxf para mais informações e exemplos de etiquetas. Um objeto que contém uma lista de pares "chave": valor. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (formato Timestamp) |
Apenas saída. A data/hora de criação. |
updateTime |
string (formato Timestamp) |
Apenas saída. A data/hora da atualização. |
RetailThirdPartyId
Apresentação JSON
{
"id": string,
"owner": string
}
Campos
id | de string | ID de terceiros usado pelo retalhista ou fabricante (por exemplo, SKU ou NSF). |
proprietário | de string | A entidade "proprietária" do identificador de terceiros, por exemplo, o fabricante ou o retalhista que vende este produto. |
Método: projects.locations.retailCatalogs.retailProducts.create
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Corpo do pedido
O corpo do pedido contém uma instância de RetailProduct
.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada de
RetailProduct
.
Método: projects.locations.retailCatalogs.retailProducts.get
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*
Parâmetros de caminho
nome | de string | Obrigatório. RetailProduct identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de RetailProduct
.
Método: projects.locations.retailCatalogs.retailProducts.list
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProducts
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Parâmetros de consulta
filtrar | de string | Opcional. Uma expressão para filtrar os resultados do pedido. |
---|---|---|
pageToken | de string | Opcional. Um token que identifica uma página de resultados que o servidor deve devolver. |
pageSize | número inteiro | Opcional. Tamanho da página solicitado. O servidor pode devolver menos itens do que o pedido. Se não for especificado, o servidor seleciona uma predefinição adequada. |
orderBy | de string | Opcional. Uma lista de campos separados por vírgulas para ordenar por ordem ascendente. Use "desc" após o nome de um campo para ordem descendente. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém dados com a seguinte estrutura: Representação JSON
{
"retailProducts": [
{
object (RetailProducts)
}
],
"nextPageToken": string
}
Método: projects.locations.retailCatalogs.retailProducts.delete
Pedido HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*
Parâmetros de caminho
nome | de string | Obrigatório. RetailProduct identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta está vazio.
Recurso: projects.locations.retailProductImages
Representação JSON
{
"name": string,
"displayName": string,
"sourceType": enum(SourceType),
"gcsUri": string,
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Campos
name |
String |
Apenas saída. Nome do recurso de RetailProductImage |
---|---|---|
displayName |
String |
Opcional. Nome a apresentar de RetailProductImage. |
sourceType |
enum |
Opcional. Tipo de origem |
gcsUri |
string |
Opcional. Localização do Cloud Storage da RetailProductImage. Deve ser definido, exceto quando a imagem é fornecida pela Google, por exemplo, quando o tipo de origem é SOURCE_TYPE_GOOGLE. |
resourceState |
enum |
Apenas saída. Estado de RetailProductImage. |
etiquetas |
map (key: string, value: string) |
As etiquetas com metadados definidos pelo utilizador para organizar o RetailProductImage. As chaves e os valores das etiquetas não podem ter mais de 64 carateres (pontos de código Unicode) e só podem conter letras minúsculas, carateres numéricos, sublinhados e travessões. São permitidos carateres internacionais. Consulte https://goo.gl/xmQnxf para mais informações e exemplos de etiquetas. Um objeto que contém uma lista de pares "chave": valor. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (formato Timestamp) |
Apenas saída. A data/hora de criação. |
updateTime |
string (formato Timestamp) |
Apenas saída. A data/hora da atualização. |
Valores ENUM SourceType
SOURCE_TYPE_UNSPECIFIED | Origem de dados desconhecida. Não deve ser usado. |
---|---|
SOURCE_TYPE_FIXED_CAMERA | A imagem é capturada a partir de uma câmara fixa. |
SOURCE_TYPE_HAND_HELD_CAMERA | A imagem é capturada com uma câmara portátil. |
SOURCE_TYPE_CRAWLED | A imagem é rastreada a partir da Web. |
SOURCE_TYPE_SYSTEM_GENERATED | A imagem é recortada de uma imagem original com etiquetagem humana. |
Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.create
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Corpo do pedido
O corpo do pedido contém uma instância de RetailProductImage
.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada de
RetailProductImage
.
Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.get
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*
Parâmetros de caminho
nome | de string | Obrigatório. RetailProductImage identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de RetailProductImage
.
Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.list
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*/retailProducts/*}/retailProductImages
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Parâmetros de consulta
filtrar | de string | Opcional. Uma expressão para filtrar os resultados do pedido. |
---|---|---|
pageToken | de string | Opcional. Um token que identifica uma página de resultados que o servidor deve devolver. |
pageSize | número inteiro | Opcional. Tamanho da página solicitado. O servidor pode devolver menos itens do que o pedido. Se não for especificado, o servidor seleciona uma predefinição adequada. |
orderBy | de string | Opcional. Uma lista de campos separados por vírgulas para ordenar por ordem ascendente. Use "desc" após o nome de um campo para ordem descendente. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém dados com a seguinte estrutura:
Representação JSON
{
"retailProductImages": [
{
object (RetailProductImages)
}
],
"nextPageToken": string
}
Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.delete
Pedido HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProducts/*/retailProductImages/*
Parâmetros de caminho
nome | de string | Obrigatório. RetailProductImage identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta está vazio.
Recurso: projects.locations.retailCatalogs.retailProductSets
Representação JSON
{
"name": string,
"displayName": string,
"retailProductIds": [string],
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Campos
name |
String |
Apenas saída. Nome do recurso do RetailProductSet |
---|---|---|
displayName |
String |
Opcional. Nome a apresentar do RetailProductSet. |
retailProductIds [] |
String |
Apenas saída. IDs dos recursos de produtos pertencentes a este RetailProductSet. Os produtos num RetailProductSet devem estar no mesmo catálogo. |
resourceState |
enum |
Apenas saída. Estado do RetailProductSet. |
etiquetas |
map (key: string, value: string) |
As etiquetas com metadados definidos pelo utilizador para organizar o seu RetailProductSet. As chaves e os valores das etiquetas não podem ter mais de 64 carateres (pontos de código Unicode) e só podem conter letras minúsculas, carateres numéricos, sublinhados e travessões. São permitidos carateres internacionais. Consulte https://goo.gl/xmQnxf para mais informações e exemplos de etiquetas. Um objeto que contém uma lista de pares "chave": valor. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (formato Timestamp) |
Apenas saída. A data/hora de criação. |
updateTime |
string (formato Timestamp) |
Apenas saída. A data/hora da atualização. |
Método: projects.locations.retailCatalogs.retailProductSets.create
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Corpo do pedido
O corpo do pedido contém uma instância de RetailProductSet.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada de RetailProductSet.
Método: projects.locations.retailCatalogs.retailProductSets.get
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*
Parâmetros de caminho
nome | de string | Obrigatório. Identificador de RetailProductSet. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de RetailProductSet.
Método: projects.locations.retailCatalogs.retailProductSets.list
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductSets
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Parâmetros de consulta
filtrar | de string | Opcional. Uma expressão para filtrar os resultados do pedido. |
---|---|---|
pageToken | de string | Opcional. Um token que identifica uma página de resultados que o servidor deve devolver. |
pageSize | número inteiro | Opcional. Tamanho da página solicitado. O servidor pode devolver menos itens do que o pedido. Se não for especificado, o servidor seleciona uma predefinição adequada. |
orderBy | de string | Opcional. Uma lista de campos separados por vírgulas para ordenar por ordem ascendente. Use "desc" após o nome de um campo para ordem descendente. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém dados com a seguinte estrutura:
Representação JSON
{
"retailProductSets": [
{
object (RetailProductSets)
}
],
"nextPageToken": string
}
Método: projects.locations.retailCatalogs.retailProductSets.delete
Pedido HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*
Parâmetros de caminho
nome | de string | Obrigatório. Identificador de RetailProductSet. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta está vazio.
Método: projects.locations.retailCatalogs.retailProductSets.add
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:remove
Parâmetros de caminho
nome | de string | Obrigatório. Nome do recurso RetailProductSet. |
Corpo do pedido
Representação JSON
{
"productIds": [string],
"productFilter": string
}
Campos
productIds[ ] |
string |
ID do recurso dos RetailProducts a adicionar. Têm de pertencer ao mesmo RetailCatalog que o RetailProductSet de destino especificado. É possível especificar até 200 IDs de RetailProducts num pedido. Não pode ser usado em conjunto com productFilter. |
---|---|---|
productFilter |
string |
Um filtro padrão que será aplicado a todos os RetailProducts no RetailCatalog principal, seleciona os itens que satisfazem as condições do filtro e adiciona-os ao RetailProductSet. Não pode ser usado em conjunto com product_ids. Filtros suportados: https://google.aip.dev/160 |
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Método: projects.locations.retailCatalogs.retailProductSets.remove
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductSets/*}:add
Parâmetros de caminho
nome | de string | Obrigatório. Nome do recurso RetailProductSet. |
Corpo do pedido
Representação JSON
{
"productIds": [string],
"productFilter": string
}
Campos
productIds[ ] |
string |
IDs dos recursos dos RetailProducts a remover. Se os RetailProducts especificados não pertencerem a este RetailProductSet, são ignorados. É possível especificar até 200 IDs de RetailProducts num pedido. Não pode ser usado em conjunto com products_filter. |
---|---|---|
productFilter |
string |
Um filtro padrão que será aplicado a todos os RetailProducts no RetailProductSet especificado, seleciona os itens que satisfazem as condições do filtro e remove-os do RetailProductSet. Não pode ser usado em conjunto com product_ids. Filtros suportados:https://google.aip.dev/160 |
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Recurso: projects.locations.retailCatalogs.retailProductRecognitionIndexes
Representação JSON
{
"name": string,
"displayName": string,
"description": string,
"retailProductSet": [string],
"resourceState": enum(RetailResourceState),
"labels": {
string: string,
...
}
"createTime": string,
"updateTime": string
}
Campos
name |
String |
Apenas saída. Nome do recurso do recurso RetailProductRecognitionIndex. |
---|---|---|
displayName |
String |
Opcional. Nome a apresentar do RetailProductRecognitionIndex. |
descrição |
String |
Opcional. A descrição do RetailProductRecognitionIndex. |
retailProductSet[] |
string |
Opcional. O nome do recurso de RetailProductSet a usar para criar este recurso. Se estiver definido, o RetailProductRecognitionIndex só contém produtos no RetailProductSet especificado. Se não for definido, são usados todos os produtos no catálogo principal. |
resourceState |
enum |
Apenas saída. Estado do RetailProductRecognitionIndex. |
etiquetas |
map (key: string, value: string) |
As etiquetas com metadados definidos pelo utilizador para organizar o seu RetailProductRecognitionIndex. As chaves e os valores das etiquetas não podem ter mais de 64 carateres (pontos de código Unicode) e só podem conter letras minúsculas, carateres numéricos, sublinhados e travessões. São permitidos carateres internacionais. Consulte https://goo.gl/xmQnxf para mais informações e exemplos de etiquetas. Um objeto que contém uma lista de pares "chave": valor. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (formato Timestamp) |
Apenas saída. A data/hora de criação. |
updateTime |
string (formato Timestamp) |
Apenas saída. A data/hora da atualização. |
Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.create
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Corpo do pedido
O corpo do pedido contém uma instância de RetailProductRecognitionIndex
.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada de
RetailProductRecognitionIndex
.
Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.get
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*
Parâmetros de caminho
nome | de string | Obrigatório. RetailProductRecognitionIndex identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de
RetailProductRecognitionIndex
.
Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.list
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*/retailCatalogs/*}/retailProductRecognitionIndexes
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Parâmetros de consulta
filtrar | de string | Opcional. Uma expressão para filtrar os resultados do pedido. |
---|---|---|
pageToken | de string | Opcional. Um token que identifica uma página de resultados que o servidor deve devolver. |
pageSize | número inteiro | Opcional. Tamanho da página solicitado. O servidor pode devolver menos itens do que o pedido. Se não for especificado, o servidor seleciona uma predefinição adequada. |
orderBy | de string | Opcional. Uma lista de campos separados por vírgulas para ordenar por ordem ascendente. Use "desc" após o nome de um campo para ordem descendente. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém dados com a seguinte estrutura:
Representação JSON
{
"retailProductRecognitionIndexes": [
{
object (RetailProductRecognitionIndex)
}
],
"nextPageToken": string
}
Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.delete
Pedido HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailCatalogs/*/retailProductRecognitionIndexes/*
Parâmetros de caminho
nome | de string | Obrigatório. Identificador ProductRecognitionIndex. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Recurso: projects.locations.retailEndpoints
Representação 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
}
Campos
name |
String |
Apenas saída. Nome do recurso do recurso RetailEndpoint. |
---|---|---|
displayName |
String |
Opcional. Nome a apresentar do RetailEndpoint. |
descrição |
String |
Opcional. A descrição do RetailEndpoint. |
deployedProductRecognitionIndex |
String |
Apenas saída. Nome de recurso do ProductRecognitionIndex implementado neste RetailEndpoint. |
productRecognitionConfig |
objeto |
Opcional. Configuração para o reconhecimento de produtos. |
tagRecognitionConfig |
objeto |
Opcional. Configuração para o reconhecimento de etiquetas. |
resourceState |
enum |
Apenas saída. Estado do RetailProductRecognitionIndex. |
etiquetas |
map (key: string, value: string) |
As etiquetas com metadados definidos pelo utilizador para organizar o seu RetailProductRecognitionIndex. As chaves e os valores das etiquetas não podem ter mais de 64 carateres (pontos de código Unicode) e só podem conter letras minúsculas, carateres numéricos, sublinhados e travessões. São permitidos carateres internacionais. Consulte https://goo.gl/xmQnxf para mais informações e exemplos de etiquetas. Um objeto que contém uma lista de pares "chave": valor. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
createTime |
string (formato Timestamp) |
Apenas saída. A data/hora de criação. |
updateTime |
string (formato Timestamp) |
Apenas saída. A data/hora da atualização. |
RetailProductRecognitionConfig
Representação JSON
{
"productDetectionModel": string,
"detectionConfidenceThreshold": float,
"recognitionConfidenceThreshold": float,
"additionalConfig": { object }
}
Campos
|
productDetectionModel | de string | Obrigatório. Modelo a usar para detetar produtos em imagens de entrada. Valores suportados: "builtin/stable" (o valor predefinido) ou o nome do recurso do modelo do Vertex AI. |
---|---|---|
detectionConfidenceThreshold | flutuante | Opcional. Limite de confiança para filtrar os resultados da deteção. Se não for definido, é usado um valor predefinido do sistema. |
recognitionConfidenceThreshold | flutuante | Opcional. Limite de confiança para filtrar os resultados do reconhecimento. Se não for definido, é usado um valor predefinido do sistema. |
additionalConfig | objeto (formato Struct) | Opcional. Configurações adicionais para o reconhecimento de produtos. |
RetailTagRecognitionConfig
Representação JSON
{
"tagDetectionModel": string,
"tagParsingModel": string,
"detectionConfidenceThreshold": float,
"parsingConfidenceThreshold": float,
"additionalConfig": { object }
}
Campos
tagDetectionModel | de string | Obrigatório. Modelo a usar para detetar etiquetas em imagens de entrada. Valores suportados: recurso de modelo do Vertex AI. |
---|---|---|
tagParsingModel | de string | Obrigatório. Modelo para analisar texto em etiquetas detetadas. Valores suportados: recurso de modelo do Vertex AI. |
detectionConfidenceThreshold | flutuante | Opcional. Limite de confiança para filtrar os resultados da deteção. Se não for definido, é usado um valor predefinido do sistema. |
parsingConfidenceThreshold | flutuante | Opcional. Limite de confiança para filtrar resultados da análise sintática de texto. Se não for definido, é usado um valor predefinido do sistema. |
additionalConfig | objeto (formato Struct) | Opcional. Configurações adicionais para o reconhecimento de etiquetas. |
Método: projects.locations.retailEndpoints.create
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Corpo do pedido
O corpo do pedido contém uma instância de RetailEndpoint
.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância recém-criada de
RetailEndpoint
.
Método: projects.locations.retailEndpoints.get
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*}
Parâmetros de caminho
nome | de string | Obrigatório. RetailEndpoint identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de RetailEndpoint
.
Método: projects.locations.retailEndpoints.list
Pedido HTTP
GET https://visionai.googleapis.com/v1alpha1/{parent=projects/*/locations/*}/retailEndpoints
Parâmetros de caminho
pai ou mãe | de string | Obrigatório. Identificador principal. |
Parâmetros de consulta
filtrar | de string | Opcional. Uma expressão para filtrar os resultados do pedido. |
---|---|---|
pageToken | de string | Opcional. Um token que identifica uma página de resultados que o servidor deve devolver. |
pageSize | número inteiro | Opcional. Tamanho da página solicitado. O servidor pode devolver menos itens do que o pedido. Se não for especificado, o servidor seleciona uma predefinição adequada. |
orderBy | de string | Opcional. Uma lista de campos separados por vírgulas para ordenar por ordem ascendente. Use "desc" após o nome de um campo para ordem descendente. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém dados com a seguinte estrutura:
Representação JSON
{
"retailEndpoints": [
{
object (RetailEndpoint)
}
],
"nextPageToken": string
}
Método: projects.locations.retailEndpoints.delete
Pedido HTTP
DELETE https://visionai.googleapis.com/v1alpha1/{name=projects/*/locations/*/retailEndpoints/*
Parâmetros de caminho
nome | de string | Obrigatório. RetailEndpoint identificador. |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta está vazio.
Método: projects.locations.retailEndpoints.deployRetailProductRecognitionIndex
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:deployRetailProductRecognitionIndex
Parâmetros de caminho
retailEndpoint | de string | Obrigatório. Nome do recurso do RetailEndpoint
recurso no qual o
RetailProductRecognitionIndex está implementado. |
Corpo do pedido
Representação JSON
{
"retailProductRecognitionIndex": string,
}
Campos
retailProductRecognitionIndex | de string | Obrigatório. O nome do recurso de
RetailProductRecognitionIndex
a implementar. |
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Método: projects.locations.retailEndpoints.undeployRetailProductRecognitionIndex
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:undeployRetailProductRecognitionIndex
Parâmetros de caminho
retailEndpoint | de string | Obrigatório. Nome do recurso do recurso no qual a anulação da implementação vai atuar.RetailEndpoint |
Corpo do pedido
O corpo do pedido tem de estar vazio.
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Método: projects.locations.retailEndpoints.batchAnalyze
Pedido HTTP
POST https://visionai.googleapis.com/v1alpha1/{retailEndpoint=projects/*/locations/*/retailEndpoints/*}:batchAnalyze
Parâmetros de caminho
retailEndpoint | de string | Obrigatório. Nome do recurso do RetailEndpoint
para publicar o pedido de inferência. |
Corpo do pedido
Representação 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
}
Campos
gcsSource | de string | Obrigatório. A localização do Cloud Storage para o conteúdo de entrada. Podem ser fornecidas várias localizações de entrada. O conteúdo de todas as localizações de entrada é processado num lote. Conteúdo suportado: um ficheiro TXT em que cada linha é o caminho completo para uma imagem. É possível suportar um máximo de 50 mil imagens num pedido. |
---|---|---|
outputGcsDestination | de string | Opcional. A localização do Cloud Storage do diretório onde a saída vai ser escrita. |
corpus | de string | Opcional. Nome do recurso do corpus do banco de dados de imagens. Ainda não é suportado. |
bigqueryTable | de string | Opcional. Nome do recurso da tabela do BigQuery para exportações de anotações. No formato "projects/*/datasets/*/tables/*". Se estiver definido, as anotações geradas a partir da inferência de ML também são exportadas para a tabela do BigQuery especificada. Ainda não é suportado. |
features[] | Objeto | Obrigatório. O tipo de inferência de ML a realizar. |
Funcionalidade
Representação JSON
{
"type": enum(Type),
"productRecognitionConfig": object(RetailProductRecognitionConfig),
"tagRecognitionConfig": object(RetailTagRecognitionConfig)
}
Campos
escrever | enum | Obrigatório. O tipo de funcionalidade. |
---|---|---|
productRecognitionConfig | objeto | Opcional. Por pedido substituições para a funcionalidade de reconhecimento de produtos. Só é eficaz se o tipo estiver definido como TYPE_PRODUCT_RECOGNITION. |
tagRecognitionConfig | objeto | Opcional. Substituições por pedido para a funcionalidade de reconhecimento de etiquetas. Só é eficaz se o tipo estiver definido como TYPE_TAG_RECOGNITION. |
Corpo da resposta
Se for bem-sucedido, o corpo da resposta contém uma instância de Operation
.
Tipos
GcsSource
Representação JSON
{
"uris": [string]
}
Campos
uris[] | de string | Obrigatório. Referências a caminhos do Cloud Storage. |
Tipo
Valores ENUM
TYPE_UNSPECIFIED | O valor predefinido. Não deve ser usado. |
---|---|
TYPE_PRODUCT_RECOGNITION | Reconhecimento de produtos. Tem de ser usado num
RetailEndpoint com o
RetailProductRecognitionIndex implementado. |
TYPE_TAG_RECOGNITION | Deteção e análise de etiquetas. Tem de ser usada num
RetailEndpoint com
RetailTagRecognitionConfig. |
RetailProductIoFormat
Representação JSON
{
"retailProduct": { object(RetailProduct) },
"retailProductImages": [ { object(RetailProductImage) }]
}
Campos
retailProduct | objeto | Obrigatório. RetailProduct a importar |
---|---|---|
retailProductImages[ ] | objeto | Opcional. RetailProductImage s do RetailProduct fornecido a importar. |
RetailResourceState
Valores ENUM
RETAIL_RESOURCE_STATE_UNSPECIFIED | O valor predefinido. Não deve ser usado. |
---|---|
RETAIL_RESOURCE_STATE_CREATING | Estado: a criar. |
RETAIL_RESOURCE_STATE_CREATED | Estado criado. |
RETAIL_RESOURCE_STATE_UPDATING | A atualizar o estado. |
RETAIL_RESOURCE_STATE_DELETED | Estado eliminado. |
RETAIL_RESOURCE_STATE_ERROR | Erro de estado. |