Method: corpora.documents.query

Effectue une recherche sémantique sur un Document.

Requête HTTP

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

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
name

string

Obligatoire. Nom du Document à interroger. Exemple : corpora/my-corpus-123/documents/the-doc-abc

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "query": string,
  "resultsCount": integer,
  "metadataFilters": [
    {
      object (MetadataFilter)
    }
  ]
}
Champs
query

string

Obligatoire. Chaîne de requête permettant d'effectuer une recherche sémantique.

resultsCount

integer

Facultatif. Nombre maximal de Chunk à renvoyer. Le service peut renvoyer moins de Chunk.

Si aucune valeur n'est spécifiée, 10 valeurs Chunk au maximum sont renvoyées. Le nombre maximal de résultats spécifié est de 100.

metadataFilters[]

object (MetadataFilter)

Facultatif. Filtrez les métadonnées Chunk. Chaque objet MetadataFilter doit correspondre à une clé unique. Plusieurs objets MetadataFilter sont reliés par des opérateurs logiques "AND".

Remarque: Le filtrage de niveau Document n'est pas disponible pour cette requête, car un nom Document est déjà spécifié.

Exemple de requête: (année >= 2020 OR année < 2010) AND (genre = drame OR genre = action)

Liste d'objets MetadataFilter: metadataFilters = [ {key = "chunk.custom_metadata.year" conditions = [{int_value = 2020,operation = GREATER_EQUAL}, {int_value = 2010,operation = LESS}}, {key = "chunk.custom_metadata.year" condition = [{stringValue = "drama opération}", conditions = [{stringValue = "drama" opération

Exemple de requête pour une plage numérique de valeurs: (année > 2015 ET année <= 2020)

Liste d'objets MetadataFilter: metadataFilters = [ {key = "chunk.custom_metadata.year" conditions = [{int_value = 2015, operation = GREATER}]}, {key = "chunk.custom_metadata.year" conditions = [{int_value = 2020, operation = LESS_EQUAL}]}]

Remarque : Les opérateurs "AND" pour une même clé ne sont acceptés que pour les valeurs numériques. Les valeurs de chaîne n'acceptent que les fonctions "OR" pour la même clé.

Corps de la réponse

Réponse de documents.query contenant une liste de fragments pertinents.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation JSON
{
  "relevantChunks": [
    {
      object (RelevantChunk)
    }
  ]
}
Champs
relevantChunks[]

object (RelevantChunk)

Les fragments pertinents renvoyés.

Champs d'application des autorisations

Nécessite l'un des champs d'application OAuth suivants :

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

Pour en savoir plus, consultez la page Présentation de l'authentification.