- Solicitação HTTP
- Parâmetros de caminho
- Corpo da solicitação
- Corpo da resposta
- Escopos de autorização
- Permissões do IAM
- SchemaKeySortingStrategy
- Opção
- AggregateMethod
- FacetGroup
- FacetBucket
- Intervalo
Pesquisar recurso de mídia.
Solicitação HTTP
POST https://visionai.googleapis.com/v1/{corpus=projects/*/locations/*/corpora/*}:searchAssets
O URL usa a sintaxe de transcodificação gRPC.
Parâmetros de caminho
Parâmetros | |
---|---|
corpus |
Obrigatório. O corpus pai a ser pesquisado. Formato: "projects/{projectId}/locations/{locationId}/corpora/{corpus_id}" |
Corpo da solicitação
O corpo da solicitação contém dados com a seguinte estrutura:
Representação JSON |
---|
{ "pageSize": integer, "pageToken": string, "contentTimeRanges": { object ( |
Campos | |
---|---|
pageSize |
O número de resultados que serão retornados nesta página. Se for 0, o servidor vai decidir o tamanho da página apropriado. |
pageToken |
O token de continuação para buscar a próxima página. Se estiver vazio, significa que ele está recuperando a primeira página. |
contentTimeRanges |
Intervalos de tempo em que o conteúdo do vídeo correspondente precisa estar. Se nenhum intervalo for fornecido, não haverá restrição de tempo. Esse campo é tratado da mesma forma que os critérios abaixo, mas é definido separadamente para sua conveniência, já que é usado com frequência. Se o endTime estiver no futuro, ele será fixado no momento em que a solicitação foi recebida. |
criteria[] |
Critérios aplicados aos resultados da pesquisa. |
exclusionCriteria[] |
Critérios a serem excluídos dos resultados da pesquisa. |
facetSelections[] |
Armazena o estado de seleção de faceta mais recente. Somente os grupos de facetas com a seleção do usuário serão apresentados aqui. O estado de seleção é selecionado ou não selecionado. Somente os buckets de facetas selecionados serão usados como critérios de pesquisa. |
resultAnnotationKeys[] |
Uma lista de chaves de anotação para especificar as anotações a serem recuperadas e retornadas com cada resultado da pesquisa. A granularidade da anotação precisa ser GRANULARITY_ASSET_LEVEL, e a estratégia de pesquisa não pode ser NO_SEARCH. |
searchQuery |
Consulta de pesquisa global. Permite que o usuário pesquise recursos sem precisar especificar a qual campo o valor pertence. |
Campo de união sort_spec . Especificação de classificação. Se esse campo não for especificado, o padrão será: - STREAM_VIDEO: os resultados da pesquisa são classificados pelo horário de início. sort_spec pode ser apenas de um dos tipos a seguir: |
|
schemaKeySortingStrategy |
Ordene pelo valor na chave do esquema de dados. |
Corpo da resposta
Mensagem de resposta para corpora.searchAssets.
Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:
Representação JSON |
---|
{ "searchResultItems": [ { object ( |
Campos | |
---|---|
searchResultItems[] |
Resultados da pesquisa retornados. |
nextPageToken |
O token de continuação da próxima página. |
facetResults[] |
Resultados da pesquisa de atributos de uma determinada consulta, que contém os valores de atributo já selecionados do usuário e os resultados da pesquisa de atributos atualizados. |
Escopos de autorização
Requer o seguinte escopo OAuth:
https://www.googleapis.com/auth/cloud-platform
Para saber mais, consulte a Visão geral da autenticação.
Permissões do IAM
Requer a seguinte permissão do IAM no recurso corpus
:
visionai.assets.search
Para mais informações, consulte a documentação do IAM.
SchemaKeySortingStrategy
Uma estratégia para especificar como classificar por chave de esquema de dados.
Representação JSON |
---|
{
"options": [
{
object ( |
Campos | |
---|---|
options[] |
As opções na frente têm prioridade maior do que as de trás. |
Opção
Opção para uma chave de esquema de dados.
Representação JSON |
---|
{
"dataSchemaKey": string,
"sortDecreasing": boolean,
"aggregateMethod": enum ( |
Campos | |
---|---|
dataSchemaKey |
Os dados usados para classificar. |
sortDecreasing |
Indica se a classificação será em ordem decrescente ou crescente. Por padrão, os resultados são classificados em ordem crescente. |
aggregateMethod |
Método de agregação para a chave do esquema de dados atual. |
AggregateMethod
Quando um resultado tem vários valores com a mesma chave, especifique qual valor é usado para classificar. Por padrão, AGGREGATE_METHOD_LARGEST é usado quando os resultados são classificados em ordem decrescente, e AGGREGATE_METHOD_SMALLEST é usado quando os resultados são classificados em ordem crescente.
Enums | |
---|---|
AGGREGATE_METHOD_UNSPECIFIED |
O método agregado não especificado será substituído, conforme mencionado acima. |
AGGREGATE_METHOD_LARGEST |
Seleciona o valor mais alto (lexicográfico ou numérico) para classificar. |
AGGREGATE_METHOD_SMALLEST |
Seleciona o menor valor (lexicográfico ou numérico) para classificar. |
FacetGroup
Um grupo de buckets de facetas que são transmitidos de um lado para o outro entre o back-end e o front-end.
Representação JSON |
---|
{ "facetId": string, "displayName": string, "buckets": [ { object ( |
Campos | |
---|---|
facetId |
ID exclusivo do grupo de facetas. |
displayName |
Nome de exibição do atributo. Para ser usado pela interface para renderização de facetas. |
buckets[] |
Buckets associados ao atributo. Por exemplo, para a faceta "Equipe", o contêiner pode ser 49ers, Patriots etc. |
bucketType |
Tipo de bucket de faceta. |
fetchMatchedAnnotations |
Se verdadeiro, retorna anotações de correspondência de consulta para a seleção desse grupo de facetas. Essa opção só é aplicável a facetas com base em anotações no nível da partição. Ele aceita os seguintes valores de faceta: - INTEGER - STRING (somente DataSchema.SearchStrategy.EXACT_SEARCH) |
FacetBucket
Armazena o valor da faceta, o estado das seleções e os metadados.
Representação JSON |
---|
{ "selected": boolean, // Union field |
Campos | |
---|---|
selected |
Indica se um bucket de faceta está selecionado. Esse campo representa a seleção de facetas do usuário. Ele é definido pelo front-end em SearchVideosRequest. |
Campo de união bucket_value . Intervalo associado a um atributo. Por exemplo, o bucket da faceta "team" pode ser "49ers", "patriots" etc. O bucket da faceta "player" pode ser "tom brady", "drew brees" etc. bucket_value pode ser apenas uma das seguintes opções: |
|
value |
Valor singular. |
range |
Valor do intervalo. |
Intervalo
O intervalo de valores [início, fim] em que a segmentação é aplicada.
Representação JSON |
---|
{ "start": { object ( |
Campos | |
---|---|
start |
Início do intervalo. A inexistência indica algum limite (por exemplo, -inf). |
end |
Fim do intervalo. A não existência indica algum limite (por exemplo, inf). |