Method: projects.locations.corpora.searchAssets

Busca el activo multimedia.

Solicitud HTTP

POST https://visionai.googleapis.com/v1/{corpus=projects/*/locations/*/corpora/*}:searchAssets

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de ruta de acceso

Parámetros
corpus

string

Obligatorio. Es el corpus superior que se debe buscar. Formato: "projects/{projectId}/locations/{locationId}/corpora/{corpus_id}"

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "pageSize": integer,
  "pageToken": string,
  "contentTimeRanges": {
    object (DateTimeRangeArray)
  },
  "criteria": [
    {
      object (Criteria)
    }
  ],
  "exclusionCriteria": [
    {
      object (Criteria)
    }
  ],
  "facetSelections": [
    {
      object (FacetGroup)
    }
  ],
  "resultAnnotationKeys": [
    string
  ],
  "searchQuery": string,

  // Union field sort_spec can be only one of the following:
  "schemaKeySortingStrategy": {
    object (SchemaKeySortingStrategy)
  }
  // End of list of possible types for union field sort_spec.
}
Campos
pageSize

integer

Es la cantidad de resultados que se mostrarán en esta página. Si es 0, el servidor decidirá el pageSize adecuado.

pageToken

string

Es el token de Continuation para recuperar la siguiente página. Si está vacío, significa que está recuperando la primera página.

contentTimeRanges

object (DateTimeRangeArray)

Los intervalos de tiempo en los que debe estar el contenido de video coincidente Si no se proporcionan rangos, no habrá restricciones de tiempo. Este campo se trata de la misma manera que los criterios que se indican a continuación, pero se define por separado para mayor comodidad, ya que se usa con frecuencia. Ten en cuenta que, si la fecha de finalización es en el futuro, se fijará en la hora en que se recibió la solicitud.

criteria[]

object (Criteria)

Criterios aplicados a los resultados de la búsqueda.

exclusionCriteria[]

object (Criteria)

Criterios para excluir de los resultados de la búsqueda. Ten en cuenta que se ignorará fetchMatchedAnnotations.

facetSelections[]

object (FacetGroup)

Almacena el estado de selección de faceta más reciente. Aquí solo se presentarán los grupos de facetas con la selección del usuario. El estado de selección es seleccionado o no seleccionado. Solo se usarán los buckets de facetas seleccionados como criterios de búsqueda.

resultAnnotationKeys[]

string

Es una lista de claves de anotación para especificar las anotaciones que se recuperarán y mostrarán con cada resultado de la búsqueda. El nivel de detalle de las anotaciones debe ser GRANULARITY_ASSET_LEVEL y su estrategia de búsqueda no debe ser NO_SEARCH.

searchQuery

string

Es una búsqueda global. Permite que el usuario busque activos sin necesidad de especificar a qué campo pertenece el valor.

Campo de unión sort_spec. Especificación de ordenamiento. Si no se especifica este campo, la configuración predeterminada es la siguiente: - STREAM_VIDEO: Los resultados de la búsqueda se ordenan por la hora de inicio. sort_spec puede ser solo uno de los siguientes:
schemaKeySortingStrategy

object (SchemaKeySortingStrategy)

Ordena por el valor de la clave del esquema de datos.

Cuerpo de la respuesta

Mensaje de respuesta para corpora.searchAssets.

Si se ejecuta correctamente, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON
{
  "searchResultItems": [
    {
      object (SearchResultItem)
    }
  ],
  "nextPageToken": string,
  "facetResults": [
    {
      object (FacetGroup)
    }
  ]
}
Campos
searchResultItems[]

object (SearchResultItem)

Resultados de la búsqueda que se muestran.

nextPageToken

string

Es el token de habilitación de la página siguiente.

facetResults[]

object (FacetGroup)

Resultados de la búsqueda de facetas de una búsqueda determinada, que contiene los valores de facetas que ya seleccionó el usuario y los resultados de la búsqueda de facetas actualizados.

Permisos de autorización

Se requiere el siguiente permiso de OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para obtener más información, consulta Descripción general de la autenticación.

Permisos de IAM

Se requiere el siguiente permiso de IAM en el recurso corpus:

  • visionai.assets.search

Para obtener más información, consulta la documentación de IAM.

SchemaKeySortingStrategy

Es una estrategia para especificar cómo ordenar por clave de esquema de datos.

Representación JSON
{
  "options": [
    {
      object (Option)
    }
  ]
}
Campos
options[]

object (Option)

Las opciones de la parte frontal tienen mayor prioridad que las de la parte posterior.

Opción

Es la opción para una clave de esquema de datos.

Representación JSON
{
  "dataSchemaKey": string,
  "sortDecreasing": boolean,
  "aggregateMethod": enum (AggregateMethod)
}
Campos
dataSchemaKey

string

Son los datos que se usan para ordenar.

sortDecreasing

boolean

Indica si se debe ordenar de forma decreciente o creciente. De forma predeterminada, los resultados se ordenan de forma ascendente.

aggregateMethod

enum (AggregateMethod)

Es el método de agregación para la clave del esquema de datos actual.

AggregateMethod

Cuando un resultado tiene varios valores con la misma clave, especifica qué valor se usa para ordenar. De forma predeterminada, se usa AGGREGATE_METHOD_LARGEST cuando los resultados se ordenan de forma descendente y AGGREGATE_METHOD_SMALLEST cuando se ordenan de forma ascendente.

Enums
AGGREGATE_METHOD_UNSPECIFIED El método agregado no especificado se reemplazará como se mencionó anteriormente.
AGGREGATE_METHOD_LARGEST Toma el valor más alto (lexicográfico o numérico) para ordenar.
AGGREGATE_METHOD_SMALLEST Toma el valor más pequeño (lexicográfico o numérico) para ordenar.

FacetGroup

Es un grupo de buckets de facetas que se pasarán entre el backend y el frontend.

Representación JSON
{
  "facetId": string,
  "displayName": string,
  "buckets": [
    {
      object (FacetBucket)
    }
  ],
  "bucketType": enum (FacetBucketType),
  "fetchMatchedAnnotations": boolean
}
Campos
facetId

string

Es el ID único del grupo de facetas.

displayName

string

Es el nombre visible de la faceta. Se usará en la IU para la renderización de facetas.

buckets[]

object (FacetBucket)

Son los buckets asociados con la faceta. Por ejemplo, para la faceta “Equipo”, el bucket puede ser 49ers, Patriots, etcétera.

bucketType

enum (FacetBucketType)

Es el tipo de bucket de la faceta.

fetchMatchedAnnotations

boolean

Si es verdadero, muestra las anotaciones que coinciden con la consulta para la selección de este grupo de facetas. Esta opción solo se aplica a los componentes facetados basados en anotaciones a nivel de la partición. Admite los siguientes valores de faceta: - INTEGER - STRING (solo DataSchema.SearchStrategy.EXACT_SEARCH)

FacetBucket

Contiene el valor de la faceta, el estado de las selecciones y los metadatos.

Representación JSON
{
  "selected": boolean,

  // Union field bucket_value can be only one of the following:
  "value": {
    object (FacetValue)
  },
  "range": {
    object (Range)
  }
  // End of list of possible types for union field bucket_value.
}
Campos
selected

boolean

Indica si se seleccionó un bucket de facetas. Este campo representa la selección de facetas del usuario. El frontend lo establece en SearchVideosRequest.

Campo de unión bucket_value. Bucket asociado con una faceta. Por ejemplo, el bucket de la faceta “equipo” puede ser “49ers”, “patriots”, etc.; el bucket de la faceta “jugador” puede ser “tom brady”, “drew brees”, etc. bucket_value solo puede ser una de las siguientes opciones:
value

object (FacetValue)

Valor singular.

range

object (Range)

Valor del rango.

Rango

Es el rango de valores [inicio, fin] para los que se aplica el facetado.

Representación JSON
{
  "start": {
    object (FacetValue)
  },
  "end": {
    object (FacetValue)
  }
}
Campos
start

object (FacetValue)

Inicio del rango. La no existencia indica algún límite (p.ej., -inf).

end

object (FacetValue)

Es el final del rango. La no existencia indica algún límite (p.ej., inf).