Guía del reconocedor de etiquetas

El modelo Tag Recognizer te ayuda a resolver problemas clave para comprender tu biblioteca de venta minorista, es decir, reconocer y analizar las etiquetas (por ejemplo, la etiqueta de precio o cualquier otra etiqueta) según el esquema de extracción de entidades de par clave-valor definido por el usuario.

Este modelo puede servir como el principal componente de IA para analizar e interpretar los datos de las imágenes de productos en las tiendas minoristas. Por ejemplo, puedes usar este modelo en imágenes de estantes que capturan cámaras locales o dispositivos móviles.

Casos de uso del Reconocedor de etiquetas y el Reconocedor de productos

El modelo de reconocimiento de productos y los modelos de reconocimiento de etiquetas pueden servir como los principales componentes básicos de la IA para analizar e interpretar los datos de imágenes sobre los productos y las etiquetas que se encuentran en las tiendas minoristas, como las imágenes de escaneo de estantes que capturan las cámaras instaladas o los dispositivos o plataformas móviles.

Los modelos de reconocimiento de productos y de etiquetas incorporan varias capacidades de modelado y datos de la IA de Google para ayudar a los minoristas o socios técnicos a resolver problemas clave para comprender el estante de venta minorista, incluidos los siguientes:

  • Detectar, reconocer y, por lo tanto, comprender qué productos hay en la imagen o en el estante
  • Detectar, reconocer y analizar las etiquetas (por ejemplo, el precio o cualquier otra etiqueta de texto) según el esquema de extracción de entidades de par clave-valor definido por el usuario

En particular, se incluyen varios modelos diferenciadores de la IA de Google en la solución de verificación de la biblioteca para respaldar la resolución de problemas de estos casos de uso, como los siguientes:

  • Modelos de detección de productos (Google los entrenó previamente, pero puedes personalizarlos).
  • Modelo de incorporación visual de miniaturas de productos, que convierte una imagen de miniatura de producto en una representación numérica del espacio de atributos.
  • Modelo de OCR de Google, que extrae todo el texto visible en la imagen
  • El modelo de extracción de entidades de Google (que puedes personalizar), que convierte los textos sin procesar en entidades con nombre de par clave-valor definido por el usuario

Además de estos modelos de IA de Google, la solución de verificación de bibliotecas también aprovecha la gran base de datos de información de productos de Google. Los datos de productos de esta base de datos incluyen la identidad del GTIN o UPC, la marca, el título y las descripciones en varios idiomas, el logotipo y las imágenes del producto con varias variaciones de empaque. La base de datos de productos con el modelo de incorporación visual de miniaturas de productos mencionado anteriormente permite que el modelo de reconocedor de productos pueda reconocer muchos productos de inmediato.

Por ejemplo, dada una imagen de la biblioteca capturada como se muestra a continuación, el objetivo de la solución de verificación de bibliotecas es el siguiente:

  1. Detecta y localiza todas las cajas de artículos del producto (visibles, no muy ocluidas) en la imagen y reconoce la identidad del producto de cada caja de artículo del producto individual a nivel del GTIN o UPC.
  2. Detecta y localiza todos los cuadros de etiquetas (visibles) en la imagen, reconoce todas las cadenas de texto en la etiqueta y, luego, intenta analizar el texto en el esquema de extracción de entidades de pares clave-valor definido por el usuario, como la descripción del artículo del producto y el valor del precio.

Las dos funciones principales de IA que habilitan estas soluciones son el modelo de Product Recognizer y el modelo de Tag Recognizer, sobre los que proporcionaremos más detalles en las siguientes secciones. Para cada una de estas dos APIs que proporcionan principalmente los servicios de inferencia de imágenes, hay uno o más componentes en cada una que puedes personalizar. Primero, describiremos la ruta de inferencia del uso de la API y, luego, proporcionaremos una breve descripción de cómo puedes personalizar los componentes involucrados, ya sea a través de la configuración del usuario o a través del entrenamiento de modelos que realices.

Funcionalidad del reconocedor de etiquetas

Este modelo reconoce todas las cadenas de texto en la etiqueta y, luego, intenta analizar el texto en el esquema de extracción de entidades de par clave-valor definido por el usuario, como la descripción del artículo del producto o el valor del precio. Incluye los siguientes modelos de IA de Google que lo diferencian:

  • La tecnología de OCR de Google, que extrae todo el texto visible de la imagen.
  • El modelo de extracción de entidades de Google, que convierte el texto sin procesar en entidades con nombre de par clave-valor definidas por el usuario Personaliza este modelo con Vertex AI. Por ejemplo, si lo que te interesa principalmente es la descripción del artículo del producto, el valor del precio del producto o el precio de oferta, pero nada más, el usuario puede definir su esquema de análisis de etiquetas de la siguiente manera:

    key: item_description   value: string
    key: regular_price      value: number
    key: sale_price         value: number
    

Esquema de análisis de etiquetas

Con el entrenamiento del modelo de extracción de entidades personalizado, el cuadro de elementos de etiqueta detectado se reconocerá y analizará de acuerdo con el esquema definido por el usuario, por ejemplo, de la siguiente manera:

  item_description:   COLLECTION 18PC GFT BX
  regular_price:      1099
  sale_price:         999

Ejemplo de objeto JSON de salida

{
  "imageUri": "gs://test_bucket/test_image.jpg",
  "tagRecognitionAnnotations": [
    {
      "entities": [
        {
          "confidence": 0.99646133,
          "mentionText": "NISSIN TOP RAMEN\n\nBOW CHICKEN\n\n",
          "region": {
            "xMax": 0.4618055,
            "xMin": 0.042725038,
            "yMax": 0.45387268,
            "yMin": 0.18415153
          },
          "type":"description"
        },
        {
          "confidence": 0.95828205,
          "mentionText": "$3.90\n",
          "region": {
            "xMax": 0.24819264,
            "xMin": 0.04185935,
            "yMax": 0.96134734,
            "yMin": 0.80382305
          },
          "type":"unit_price"
        },
        {
          "confidence": 0.60659707,
          "mentionText": "$14.99\n",
          "region": {
            "xMax": 0.9754113,
            "xMin": 0.3654699,
            "yMax": 0.92825794,
            "yMin": 0.40368474
          },
          "type":"price"
        }
      ]
    }
  ]
}

Configuración del entorno

En esta sección, se describe cómo interactuar con la API RESTful de Store Vision AI.

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

Todos los métodos create requieren especificar de forma explícita el nombre o el ID del recurso que se creará. Puedes usar un identificador de cadena significativo, por ejemplo, "product-ABC", o un identificador generado de forma aleatoria, por ejemplo, un UUID.

Para otorgarle a un rol de persona el acceso de editor para usar la API de Store Vision, ejecuta el siguiente comando de vinculación de IAM:

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

Para otorgarle a una cuenta de servicio el acceso de editor, usa el siguiente comando:

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

Obtén más información sobre la vinculación de IAM.

Recorrido del usuario del Reconocedor de etiquetas

  1. Realiza el entrenamiento personalizado del modelo de detección de etiquetas con la función de detección de objetos de Vertex AI/AutoML Vision.
  2. Realiza el entrenamiento del modelo de análisis de entidades de etiquetas con la función de detección de objetos de Vertex AI/AutoML Vision con un motor de OCR personalizado.
  3. Crea un extremo con la configuración de reconocimiento de etiquetas deseada.
  4. Realiza BatchAnalyze con la función TagRecognition. En el backend, el sistema identificará las etiquetas de cada imagen de entrada, analizará el texto de cada etiqueta detectada para producir un resultado de análisis estructurado. Entrenamiento del modelo de detección de etiquetas y análisis de entidades

Puedes entrenar el modelo de detección de etiquetas personalizado con la función de entrenamiento de modelos de detección de objetos de imagen existente del producto Vertex AI / AutoML Vision. Aunque la función de entrenamiento de modelos de detección de objetos de Vertex AI o AutoML Vision proporciona una experiencia de entrenamiento de modelos completamente administrada, sigue siendo tu responsabilidad preparar un conjunto de datos de imágenes con una buena muestra de anotaciones de cuadros delimitadores de objetos completamente etiquetados como el conjunto de datos de entrenamiento que se ingresará en la consola de entrenamiento de modelos. Google Cloud proporciona el servicio de etiquetado de datos de Vertex AI para que puedas crear la tarea de etiquetado de datos. Sigue el siguiente vínculo de trabajo de etiquetado de datos de Vertex AI para obtener más información: /vertex-ai/docs/datasets/data-labeling-job. Proporciona instrucciones claras de etiquetado de datos a los evaluadores manuales para que sepan cómo etiquetar los cuadros de límite de detección de etiquetas en las imágenes como preparación del conjunto de datos de entrenamiento.

Para entrenar el modelo de análisis de entidades de etiquetas, debes preparar una colección de datos de entrenamiento con imágenes y sus anotaciones asociadas.

  • La imagen es la imagen de la etiqueta ya recortada.
  • En cada imagen, debes definir y proporcionar el campo de entidad clave (como los campos product_title, price y unit_price) que deseas detectar y reconocer o analizar, y su ubicación de coordenadas de cuadro de límite de imagen asociada en esta vista de imagen recortada.
  • Para admitir el reconocimiento o el análisis correctos, también debes proporcionar la sintaxis de la expresión regular para caracterizar cada campo. Esto es necesario para ayudar a la rutina de entrenamiento y de inferencia del algoritmo de análisis de etiquetas.

imagen de etiqueta reconocida

Ejemplo de entrenamiento para el análisis de entidades de etiquetas

Por ejemplo, con el ejemplo anterior de entrenamiento de análisis de entidades de etiquetas, puedes proporcionar una línea de información de anotación en el archivo CSV de anotación de datos de entrenamiento de la siguiente manera:

"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"

En el ejemplo anterior:

  • El campo "product_title" tiene su coordenada de imagen de cuadro correspondiente "(x0, y0, x1, y1)" y la restricción de expresión regular para este campo es "".
  • El campo "price" tiene su coordenada de imagen de cuadro correspondiente "(x0, y0, x1, y1)" y la restricción de expresión regular para este campo es "$\d+\.\d{2}", lo que indica que queremos reconocer y analizar este campo con el signo $ al comienzo de la entrada de texto y algunos dígitos numéricos antes del "." y dos dígitos después del ".".
  • El campo "unit_price" tiene la misma sintaxis de anotación que el campo "price", por ejemplo, las coordenadas de la imagen del cuadro "(x0, y0, x1, y1)" y la restricción de expresión regular para este campo es "$\d+\.\d{2}", lo que indica que queremos reconocer y analizar este campo con el signo $ al comienzo de la entrada de texto y algunos dígitos numéricos antes del "." y dos dígitos después del ".".

Por lo tanto, los datos de entrenamiento de un modelo de detección de entidades o análisis de etiquetas de precios adecuados tendrán una colección de imágenes de etiquetas de precios, con la anotación en un archivo CSV con cada entrada de fila de CSV, como la entrada del ejemplo anterior.

"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"

"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"

"image_filepath", "product_title", "(x0, y0, x1, y1)", "", "price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}", "unit_price", "(x0, y0, x1, y1)", "\\$\\d+\\.\\d{2}"

[...]

Puedes entrenar el modelo personalizado de análisis de entidades de etiquetas con la función de entrenamiento de modelos de detección de objetos de imagen del producto existente de Vertex AI /AutoML Vision, además de la personalización del motor de OCR de Google.

Ten en cuenta que, aunque, a partir de julio de 2022, el entrenamiento y la implementación de modelos personalizados de detección de etiquetas y análisis de entidades de etiquetas en la API de BatchAnalyze de Store Vision AI aún no se admiten por completo como una experiencia de consola integrada, puedes aprovechar este entrenamiento personalizado de modelos de detección de etiquetas y análisis de entidades de etiquetas (con la función de detección de objetos de Vertex AI Vision) y publicarlos en la API de BatchAnalyze de Store Vision AI si sigues varios pasos de autopublicación manuales.

Uso de la API: Inferencia de análisis por lotes

Crear extremos
  • ENDPOINT_ID=El ID de tu extremo
  • TAG_DETECTOR=El nombre de tu modelo de detección de etiquetas
  • TAG_PARSER=El nombre de tu modelo de análisis de etiquetas
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 '{
  "tagRecognitionConfig": {
    "tag_detection_model": "TAG_DETECTOR_NAME",
    "tag_parsing_model": "TAG_PARSER_NAME"
  }
}'
  • INPUT_FILE_URI=URI de Cloud Storage de tu archivo de entrada. Cada línea del archivo de entrada es solo un URI de Cloud Storage de la imagen que se procesará, por ejemplo, gs://mi-bucket/mi-imagen.jpg
  • OUTPUT_URI_PREFIX=Prefijo de URI de Cloud Storage para el archivo de resultados de salida, por ejemplo, gs://mi-bucket/mi-dir-de-salida
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_TAG_RECOGNITION",
     }
  ],
  "outputGcsDestination": {
    "outputUriPrefix": "OUTPUT_URI_PREFIX"
  }
}'
"features": [
    {
      "type": "TYPE_TAG_RECOGNITION",
      "tagRecognitionConfig": {
        "tag_detection_model": "'TAG_DETECTOR_NAME'",
        "tag_parsing_model": "TAG_PARSER_NAME"
      }
    }
  ],

También hay más campos que puedes establecer y configurar en tagRecognitionConfig, que es un objeto RetailTagRecognitionConfig. Consulta la descripción del recurso en la referencia de la API para obtener más detalles.

Referencia de la API

Recurso: projects.locations.retailCatalogs

Representación JSON

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

Campos


name

Cadena

Solo salida. Es el nombre del recurso de RetailCatalog.

displayName

Cadena

Opcional. Es el nombre visible de RetailCatalog.

createTime

cadena (formato de marca de tiempo)

Solo salida. Marca de tiempo de la creación de este RetailCatalog.

updateTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de actualización.

resourceState

enum

Solo salida. Estado de RetailCatalog.

etiquetas

map (key: string, value: string)

Las etiquetas con metadatos definidos por el usuario para organizar tu RetailCatalog.

Las claves y los valores de las etiquetas no pueden tener más de 64 caracteres (puntos de código Unicode) y solo pueden contener letras en minúscula, caracteres numéricos, guiones bajos y guiones. Se permite el uso de caracteres internacionales.

Consulta https://goo.gl/xmQnxf para obtener más información sobre las etiquetas y ejemplos de estas.

Un objeto que contiene una lista de pares "clave": valor. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Método: projects.locations.retailCatalogs.create

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de RetailCatalog.

Cuerpo de la respuesta

Si el proceso se realiza de forma correcta, el cuerpo de la respuesta contiene una instancia recién creada de RetailCatalog.

Método: projects.locations.retailCatalogs.get

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailCatalog.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de RetailCatalog.

Método: projects.locations.retailCatalogs.list

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Parámetros de consulta

filter string Opcional. Es una expresión para filtrar los resultados de la solicitud.
pageToken string Opcional. Un token que identifica una página de resultados que debe mostrar el servidor.
pageSize integer Opcional. Indica el tamaño de la página solicitada. Es posible que el servidor muestre menos elementos de los solicitados. Si no se especifica, el servidor elegirá una configuración predeterminada adecuada.
orderBy string Opcional. Es una lista de campos separados por comas que se deben ordenar en orden ascendente. Usa "desc" después de un nombre de campo para ordenar de forma descendente.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se realiza correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura: Representación JSON

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

Método: projects.locations.retailCatalogs.delete

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailCatalog.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Método: projects.locations.retailCatalogs.importRetailProducts

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Nombre del recurso RetailCatalog.

Cuerpo de la solicitud

Representación JSON

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

Campos

gcsSource objeto Obligatorio. La ubicación de Cloud Storage para el contenido de entrada. Se pueden proporcionar varias ubicaciones de entrada. El contenido de todas las ubicaciones de entrada se importará en un lote. Extensiones de archivo compatibles: 1. Un archivo JSONL Cada línea es un formato JSON de RetailProductIoFormat.
2. Un archivo TXT. Cada línea es el GTIN de un producto que se importará.
formato enum Obligatorio. El formato de archivo de importación.

Formatea los valores de ENUM

FORMAT_UNSPECIFIED No se debe usar.
FORMAT_TXT Formato TXT.
FORMAT_JSONL Formato JSONL.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Recurso: projects.locations.retailProducts

Representación 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

Cadena

Solo salida. Es el nombre del recurso de RetailProductImage.

displayName

Cadena

Opcional. Es el nombre visible de RetailProductImage.

sourceType

enum

Opcional. Tipo de fuente

gcsUri
Cadena

Opcional. Ubicación de Cloud Storage de RetailProductImage. Se debe establecer, excepto cuando Google proporciona la imagen, por ejemplo, cuando el tipo de fuente es SOURCE_TYPE_GOOGLE.

resourceState

enum

Solo salida. Estado de RetailProductImage.

etiquetas

map (key: string, value: string)

Son las etiquetas con metadatos definidos por el usuario para organizar tu RetailProductImage.

Las claves y los valores de las etiquetas no pueden tener más de 64 caracteres (puntos de código Unicode) y solo pueden contener letras en minúscula, caracteres numéricos, guiones bajos y guiones. Se permite el uso de caracteres internacionales.

Consulta https://goo.gl/xmQnxf para obtener más información sobre las etiquetas y ejemplos de estas.

Un objeto que contiene una lista de pares "clave": valor. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de creación.

updateTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de actualización.

Presentación de JSON de RetailThirdPartyId

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

Campos

id string Es el ID de terceros que usa el minorista o el fabricante (por ejemplo, SKU o MPN).
propietario string Es la entidad que “posee” el identificador de terceros, por ejemplo, el fabricante o el minorista que vende este producto.

Método: projects.locations.retailCatalogs.retailProducts.create

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de RetailProduct.

Cuerpo de la respuesta

Si el proceso se realiza de forma correcta, el cuerpo de la respuesta contiene una instancia recién creada de RetailProduct.

Método: projects.locations.retailCatalogs.retailProducts.get

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailProduct.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de RetailProduct.

Método: projects.locations.retailCatalogs.retailProducts.list

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Parámetros de consulta

filter string Opcional. Es una expresión para filtrar los resultados de la solicitud.
pageToken string Opcional. Un token que identifica una página de resultados que debe mostrar el servidor.
pageSize integer Opcional. Indica el tamaño de la página solicitada. Es posible que el servidor muestre menos elementos de los solicitados. Si no se especifica, el servidor elegirá una configuración predeterminada adecuada.
orderBy string Opcional. Es una lista de campos separados por comas que se deben ordenar en orden ascendente. Usa "desc" después de un nombre de campo para ordenar de forma descendente.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se realiza correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura: Representación JSON

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

Método: projects.locations.retailCatalogs.retailProducts.delete

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailProduct.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta está vacío.

Recurso: projects.locations.retailProductImages

Representación JSON

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

Campos


name

Cadena

Solo salida. Es el nombre del recurso de RetailProductImage.

displayName

Cadena

Opcional. Es el nombre visible de RetailProductImage.

sourceType

enumeración

Opcional. Tipo de fuente

gcsUri
Cadena

Opcional. Ubicación de Cloud Storage de RetailProductImage. Se debe establecer, excepto cuando Google proporciona la imagen, por ejemplo, cuando el tipo de fuente es SOURCE_TYPE_GOOGLE.

resourceState

enumeración

Solo salida. Estado de RetailProductImage.

etiquetas

map (key: string, value: string)

Son las etiquetas con metadatos definidos por el usuario para organizar tu RetailProductImage.

Las claves y los valores de las etiquetas no pueden tener más de 64 caracteres (puntos de código Unicode) y solo pueden contener letras en minúscula, caracteres numéricos, guiones bajos y guiones. Se permite el uso de caracteres internacionales.

Consulta https://goo.gl/xmQnxf para obtener más información sobre las etiquetas y ejemplos de estas.

Un objeto que contiene una lista de pares "clave": valor. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de creación.

updateTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de actualización.

Valores de ENUM de SourceType

SOURCE_TYPE_UNSPECIFIED Fuente de datos desconocida. No se debe usar.
SOURCE_TYPE_FIXED_CAMERA La imagen se captura desde una cámara fija.
SOURCE_TYPE_HAND_HELD_CAMERA La imagen se captura con una cámara de mano.
SOURCE_TYPE_CRAWLED La imagen se rastrea desde la Web.
SOURCE_TYPE_SYSTEM_GENERATED La imagen se recorta de una imagen original con etiquetado manual.

Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.create

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de RetailProductImage.

Cuerpo de la respuesta

Si el proceso se realiza de forma correcta, el cuerpo de la respuesta contiene una instancia recién creada de RetailProductImage.

Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.get

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailProductImage.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de RetailProductImage.

Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.list

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Parámetros de consulta

filter string Opcional. Es una expresión para filtrar los resultados de la solicitud.
pageToken string Opcional. Un token que identifica una página de resultados que debe mostrar el servidor.
pageSize integer Opcional. Indica el tamaño de la página solicitada. Es posible que el servidor muestre menos elementos de los solicitados. Si no se especifica, el servidor elegirá una configuración predeterminada adecuada.
orderBy string Opcional. Es una lista de campos separados por comas que se deben ordenar en orden ascendente. Usa "desc" después de un nombre de campo para ordenar de forma descendente.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si el proceso es satisfactorio, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON

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

Método: projects.locations.retailCatalogs.retailProducts.retailProductImages.delete

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailProductImage.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta está vacío.

Recurso: projects.locations.retailCatalogs.retailProductSets

Representación JSON

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

Campos


name

Cadena

Solo salida. Es el nombre del recurso de RetailProductSet.

displayName

Cadena

Opcional. Es el nombre visible del RetailProductSet.

retailProductIds []

Cadena

Solo salida. IDs de recursos de los productos que pertenecen a este RetailProductSet. Los productos de un RetailProductSet deben estar en el mismo catálogo.

resourceState

enum

Solo salida. Estado del RetailProductSet.

etiquetas

map (key: string, value: string)

Son las etiquetas con metadatos definidos por el usuario para organizar tu RetailProductSet.

Las claves y los valores de las etiquetas no pueden tener más de 64 caracteres (puntos de código Unicode) y solo pueden contener letras en minúscula, caracteres numéricos, guiones bajos y guiones. Se permite el uso de caracteres internacionales.

Consulta https://goo.gl/xmQnxf para obtener más información sobre las etiquetas y ejemplos de estas.

Un objeto que contiene una lista de pares "clave": valor. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de creación.

updateTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de actualización.

Método: projects.locations.retailCatalogs.retailProductSets.create

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de RetailProductSet.

Cuerpo de la respuesta

Si el proceso se realiza correctamente, el cuerpo de la respuesta contiene una instancia recién creada de RetailProductSet.

Método: projects.locations.retailCatalogs.retailProductSets.get

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador de RetailProductSet.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de RetailProductSet.

Método: projects.locations.retailCatalogs.retailProductSets.list

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Parámetros de consulta

filter string Opcional. Es una expresión para filtrar los resultados de la solicitud.
pageToken string Opcional. Un token que identifica una página de resultados que debe mostrar el servidor.
pageSize integer Opcional. Indica el tamaño de la página solicitada. Es posible que el servidor muestre menos elementos de los solicitados. Si no se especifica, el servidor elegirá una configuración predeterminada adecuada.
orderBy string Opcional. Es una lista de campos separados por comas que se deben ordenar en orden ascendente. Usa "desc" después de un nombre de campo para ordenar de forma descendente.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si el proceso es satisfactorio, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON

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

Método: projects.locations.retailCatalogs.retailProductSets.delete

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador de RetailProductSet.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta está vacío.

Método: projects.locations.retailCatalogs.retailProductSets.add

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el nombre del recurso de RetailProductSet.

Cuerpo de la solicitud

Representación JSON

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

Campos


productIds[ ]
Cadena

ID de recurso de los RetailProducts que se agregarán. Todos deben pertenecer al mismo RetailCatalog que el RetailProductSet de destino especificado. Se pueden especificar hasta 200 IDs de RetailProducts en una solicitud. No se puede usar junto con productFilter.

productFilter
Cadena

Es un filtro estándar que se aplicará a todos los RetailProducts en el RetailCatalog superior, seleccionará los elementos que satisfagan las condiciones del filtro y los agregará al RetailProductSet. No se puede usar junto con product_ids. Filtros compatibles: https://google.aip.dev/160

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Método: projects.locations.retailCatalogs.retailProductSets.remove

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el nombre del recurso de RetailProductSet.

Cuerpo de la solicitud

Representación JSON

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

Campos


productIds[ ]
Cadena

IDs de recursos de los RetailProducts que se quitarán. Si los RetailProducts especificados no pertenecen a este RetailProductSet, se ignorarán. Se pueden especificar hasta 200 IDs de RetailProducts en una solicitud. No se puede usar junto con products_filter.

productFilter
Cadena

Es un filtro estándar que se aplicará a todos los RetailProducts del RetailProductSet especificado, seleccionará los elementos que satisfagan las condiciones del filtro y los quitará del RetailProductSet. No se puede usar junto con product_ids. Filtros compatibles:https://google.aip.dev/160

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Recurso: projects.locations.retailCatalogs.retailProductRecognitionIndexes

Representación JSON

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

Campos


name

Cadena

Solo salida. Es el nombre del recurso RetailProductRecognitionIndex.

displayName

Cadena

Opcional. Es el nombre visible de RetailProductRecognitionIndex.

descripción

Cadena

Opcional. Es la descripción de RetailProductRecognitionIndex.

retailProductSet[]
Cadena

Opcional. Es el nombre del recurso de RetailProductSet que se usará para crear este recurso. Si se establece, RetailProductRecognitionIndex solo contendrá productos en el RetailProductSet determinado. Si no se establece, se usarán todos los productos del catálogo superior.

resourceState

enumeración

Solo salida. Es el estado de RetailProductRecognitionIndex.

etiquetas

map (key: string, value: string)

Son las etiquetas con metadatos definidos por el usuario para organizar tu RetailProductRecognitionIndex.

Las claves y los valores de las etiquetas no pueden tener más de 64 caracteres (puntos de código Unicode) y solo pueden contener letras en minúscula, caracteres numéricos, guiones bajos y guiones. Se permite el uso de caracteres internacionales.

Consulta https://goo.gl/xmQnxf para obtener más información sobre las etiquetas y ejemplos de estas.

Un objeto que contiene una lista de pares "clave": valor. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de creación.

updateTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de actualización.

Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.create

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de RetailProductRecognitionIndex.

Cuerpo de la respuesta

Si el proceso se realiza de forma correcta, el cuerpo de la respuesta contiene una instancia recién creada de RetailProductRecognitionIndex.

Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.get

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailProductRecognitionIndex.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta contiene una instancia de RetailProductRecognitionIndex.

Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.list

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Parámetros de consulta

filter string Opcional. Es una expresión para filtrar los resultados de la solicitud.
pageToken string Opcional. Un token que identifica una página de resultados que debe mostrar el servidor.
pageSize integer Opcional. Indica el tamaño de la página solicitada. Es posible que el servidor muestre menos elementos de los solicitados. Si no se especifica, el servidor elegirá una configuración predeterminada adecuada.
orderBy string Opcional. Es una lista de campos separados por comas que se deben ordenar en orden ascendente. Usa "desc" después de un nombre de campo para ordenar de forma descendente.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si el proceso es satisfactorio, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON

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

Método: projects.locations.retailCatalogs.retailProductRecognitionIndexes.delete

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador de ProductRecognitionIndex.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Recurso: projects.locations.retailEndpoints

Representación 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

Cadena

Solo salida. Es el nombre del recurso RetailEndpoint.

displayName

Cadena

Opcional. Es el nombre visible de RetailEndpoint.

descripción

Cadena

Opcional. Es la descripción de RetailEndpoint.

deployedProductRecognitionIndex

Cadena

Solo salida. Es el nombre del recurso de ProductRecognitionIndex implementado en este RetailEndpoint.

productRecognitionConfig
Objeto

Opcional. Configuración para el reconocimiento de productos.

tagRecognitionConfig
Objeto

Opcional. Configuración para el reconocimiento de etiquetas.

resourceState

enumeración

Solo salida. Es el estado de RetailProductRecognitionIndex.

etiquetas

map (key: string, value: string)

Son las etiquetas con metadatos definidos por el usuario para organizar tu RetailProductRecognitionIndex.

Las claves y los valores de las etiquetas no pueden tener más de 64 caracteres (puntos de código Unicode) y solo pueden contener letras en minúscula, caracteres numéricos, guiones bajos y guiones. Se permite el uso de caracteres internacionales.

Consulta https://goo.gl/xmQnxf para obtener más información sobre las etiquetas y ejemplos de estas.

Un objeto que contiene una lista de pares "clave": valor. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de creación.

updateTime

cadena (formato de marca de tiempo)

Solo salida. La marca de tiempo de actualización.

RetailProductRecognitionConfig

Representación JSON

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

Campos

|

productDetectionModel string Obligatorio. Es el modelo que se usa para detectar productos en las imágenes de entrada. Valores admitidos: "integrado/estable" (el valor predeterminado) o el nombre del recurso del modelo de Vertex AI.
detectionConfidenceThreshold float Opcional. Umbral de confianza para filtrar los resultados de detección. Si no se establece, se usará un valor predeterminado del sistema.
recognitionConfidenceThreshold float Opcional. Umbral de confianza para filtrar los resultados del reconocimiento. Si no se establece, se usará un valor predeterminado del sistema.
additionalConfig objeto (formato Struct) Opcional. Parámetros de configuración adicionales para el reconocimiento de productos.

RetailTagRecognitionConfig

Representación JSON

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

Campos

tagDetectionModel string Obligatorio. Es el modelo que se usa para detectar etiquetas en las imágenes de entrada. Valores admitidos: Recurso de modelo de Vertex AI.
tagParsingModel string Obligatorio. Es un modelo para analizar el texto en las etiquetas detectadas. Valores admitidos: Recurso de modelo de Vertex AI.
detectionConfidenceThreshold float Opcional. Umbral de confianza para filtrar los resultados de detección. Si no se establece, se usará un valor predeterminado del sistema.
parsingConfidenceThreshold float Opcional. Umbral de confianza para filtrar los resultados del análisis de texto. Si no se establece, se usará un valor predeterminado del sistema.
additionalConfig objeto (formato Struct) Opcional. Parámetros de configuración adicionales para el reconocimiento de etiquetas.

Método: projects.locations.retailEndpoints.create

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de RetailEndpoint.

Cuerpo de la respuesta

Si el proceso se realiza de forma correcta, el cuerpo de la respuesta contiene una instancia recién creada de RetailEndpoint.

Método: projects.locations.retailEndpoints.get

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailEndpoint.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de RetailEndpoint.

Método: projects.locations.retailEndpoints.list

Solicitud HTTP

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

Parámetros de ruta de acceso

elemento superior string Obligatorio. Es el identificador superior.

Parámetros de consulta

filter string Opcional. Es una expresión para filtrar los resultados de la solicitud.
pageToken string Opcional. Un token que identifica una página de resultados que debe mostrar el servidor.
pageSize integer Opcional. Indica el tamaño de la página solicitada. Es posible que el servidor muestre menos elementos de los solicitados. Si no se especifica, el servidor elegirá una configuración predeterminada adecuada.
orderBy string Opcional. Es una lista de campos separados por comas que se deben ordenar en orden ascendente. Usa "desc" después de un nombre de campo para ordenar de forma descendente.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si el proceso es satisfactorio, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON

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

Método: projects.locations.retailEndpoints.delete

Solicitud HTTP

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

Parámetros de ruta de acceso

nombre string Obligatorio. Es el identificador RetailEndpoint.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta está vacío.

Método: projects.locations.retailEndpoints.deployRetailProductRecognitionIndex

Solicitud HTTP

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

Parámetros de ruta de acceso

retailEndpoint string Obligatorio. Es el nombre del recurso RetailEndpoint en el que se implementa RetailProductRecognitionIndex.

Cuerpo de la solicitud

Representación JSON

{
  "retailProductRecognitionIndex": string,
}

Campos

retailProductRecognitionIndex string Obligatorio. Es el nombre del recurso de RetailProductRecognitionIndex que se implementará.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Método: projects.locations.retailEndpoints.undeployRetailProductRecognitionIndex

Solicitud HTTP

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

Parámetros de ruta de acceso

retailEndpoint string Obligatorio. Es el nombre del recurso RetailEndpoint en el que se realizará la anulación de la implementación.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Método: projects.locations.retailEndpoints.batchAnalyze

Solicitud HTTP

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

Parámetros de ruta de acceso

retailEndpoint string Obligatorio. Es el nombre del recurso de RetailEndpoint para entregar la solicitud de inferencia.

Cuerpo de la solicitud

Representación 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 string Obligatorio. La ubicación de Cloud Storage para el contenido de entrada. Se pueden proporcionar varias ubicaciones de entrada. El contenido de todas las ubicaciones de entrada se procesará en un lote. Contenido admitido: Un archivo TXT, en el que cada línea es la ruta de acceso completa a una imagen. Se puede admitir un máximo de 50,000 imágenes en una solicitud.
outputGcsDestination string Opcional. La ubicación de Cloud Storage del directorio en el que se escribirá el resultado.
corpus string Opcional. Es el nombre del recurso del corpus del almacén de imágenes. Aún no se admite.
bigqueryTable string Opcional. Es el nombre del recurso de la tabla de BigQuery para las exportaciones de anotaciones. En el formato "projects/*/datasets/*/tables/*". Si se establece, las anotaciones generadas a partir de la inferencia de AA también se exportarán a la tabla de BigQuery determinada. Aún no se admite.
features[] Objeto Obligatorio. Es el tipo de inferencia de AA que se realizará.

Función

Representación JSON

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

Campos

tipo enum Obligatorio. El tipo de componente.
productRecognitionConfig objeto Opcional. Anulaciones por solicitud para la función de reconocimiento de productos Solo es efectivo si el tipo se establece en TYPE_PRODUCT_RECOGNITION.
tagRecognitionConfig objeto Opcional. Anulaciones por solicitud para la función de reconocimiento de etiquetas Solo es eficaz si el tipo se establece en TYPE_TAG_RECOGNITION.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Tipos

GcsSource

Representación JSON

{
  "uris": [string]
}

Campos

uris[] string Obligatorio. Referencias a rutas de acceso de Cloud Storage

Tipo

Valores de ENUM

TYPE_UNSPECIFIED Es el valor predeterminado. No se debe usar.
TYPE_PRODUCT_RECOGNITION Reconocimiento de productos. Se debe usar en un RetailEndpoint con RetailProductRecognitionIndex implementado.
TYPE_TAG_RECOGNITION Detección y análisis de etiquetas. Se debe usar en un RetailEndpoint con RetailTagRecognitionConfig.

RetailProductIoFormat

Representación JSON

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

Campos

retailProduct objeto Obligatorio. RetailProduct que se importará
retailProductImages[ ] objeto Opcional. Son los RetailProductImage del RetailProduct determinado que se importará.

RetailResourceState

Valores de ENUM

RETAIL_RESOURCE_STATE_UNSPECIFIED Es el valor predeterminado. No se debe usar.
RETAIL_RESOURCE_STATE_CREATING Creación de estado.
RETAIL_RESOURCE_STATE_CREATED Se creó el estado.
RETAIL_RESOURCE_STATE_UPDATING Actualización de estado.
RETAIL_RESOURCE_STATE_DELETED Estado borrado.
RETAIL_RESOURCE_STATE_ERROR Error de estado.