Method: corpora.documents.query

Executa pesquisa semântica em um Document.

Solicitação HTTP

POST https://generativelanguage.googleapis.com/v1beta/{name=corpora/*/documents/*}:query

O URL usa a sintaxe de transcodificação gRPC.

Parâmetros de caminho

Parâmetros
name

string

Obrigatório. O nome do Document a ser consultado. Exemplo: corpora/my-corpus-123/documents/the-doc-abc

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "query": string,
  "resultsCount": integer,
  "metadataFilters": [
    {
      object (MetadataFilter)
    }
  ]
}
Campos
query

string

Obrigatório. String de consulta para realizar a pesquisa semântica.

resultsCount

integer

Opcional. O número máximo de Chunks a serem retornados. O serviço pode retornar menos Chunks.

Se não for especificado, no máximo 10 Chunks serão retornados. A contagem máxima de resultados especificada é 100.

metadataFilters[]

object (MetadataFilter)

Opcional. Filtrar por metadados Chunk. Cada objeto MetadataFilter precisa corresponder a uma chave exclusiva. Vários objetos MetadataFilter são unidos por "AND" lógicos.

Observação: a filtragem no nível de Document não é compatível com esta solicitação porque um nome Document já foi especificado.

Exemplo de consulta: (ano >= 2020 OR ano < 2010) AND (gênero = drama OR gênero = ação)

Lista de objetos MetadataFilter: metadataFilters = [ {key = "chunk.custom_metadata.year" Conditions = [{int_value = 2020, activity = GREATER_EQUAL}, {int_value = 2010, activity = LESS}}, {key = "chunk.custom_metadata.genre" Conditions = [{stringValue}operation = "dravalue}}", EQUAL}

Exemplo de consulta para um intervalo numérico de valores: (ano > 2015 E ano <= 2020)

Lista de objetos MetadataFilter: metadataFilters = [ {key = "chunk.custom_metadata.year" Conditions = [{int_value = 2015, activity = GREATER}]}, {key = "chunk.custom_metadata.year" Conditions = [{int_value = 2020, operation = LESS_EQUAL}]}]]

Observação: "AND" para a mesma chave são aceitos apenas para valores numéricos. Os valores de string aceitam apenas "OR"s para a mesma chave.

Corpo da resposta

Resposta de documents.query contendo uma lista de blocos relevantes.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "relevantChunks": [
    {
      object (RelevantChunk)
    }
  ]
}
Campos
relevantChunks[]

object (RelevantChunk)

Os blocos relevantes retornados.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/generative-language.retriever
  • https://www.googleapis.com/auth/generative-language.retriever.readonly

Para saber mais, consulte a Visão geral da autenticação.