Cette page explique comment trier les résultats d'une requête de recherche effectuée sur des datastores de données structurées et sur des datastores de données non structurées avec des métadonnées.
Types de données acceptés pour l'ordre des résultats
Voici les types de champs que vous pouvez utiliser pour trier les résultats de recherche:
string
number
datetime
geolocation
Avant de commencer
Assurez-vous d'avoir une application avec un datastore contenant des données structurées ou des données non structurées avec des métadonnées.
Trier vos résultats de recherche
Pour trier les résultats de recherche d'un datastore structuré ou d'un datastore non structuré avec des métadonnées, procédez comme suit:
REST
Pour utiliser l'API afin de classer les résultats de recherche d'une application avec des données structurées ou des données non structurées avec des métadonnées, utilisez la méthode engines.servingConfigs.search
:
Recherchez votre ID d'application. Si vous disposez déjà de votre ID d'application, passez à l'étape suivante.
Dans la console Google Cloud, accédez à la page Agent Builder.
Sur la page Applications, recherchez le nom de votre application et obtenez son ID dans la colonne ID.
Envoyez une requête de recherche et incluez le champ
orderBy
.curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "query": "QUERY", "orderBy": "ORDER_BY" }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre Google Cloud projet.APP_ID
: ID de l'application Vertex AI Search.QUERY
: texte de la requête à rechercher.ORDER_BY
: ordre dans lequel les résultats sont organisés. L'ordre de tri par défaut est croissant. Par exemple, spécifierdate
renvoie les résultats du plus ancien au plus récent. Pour obtenir un tri décroissant, ajoutezdesc
à la valeurdate
(par exemple,date desc
). Pour obtenir d'autres exemples, consultez les exemples deorderBy
.
orderBy
exemples
Pour trier sur un champ de chaîne appelé title
:
"orderBy": "title"
pour renvoyer les documents par ordre alphabétique croissant en fonction du titre."orderBy": "title desc"
pour renvoyer les documents triés par ordre alphabétique inverse (de Z à A) en fonction du titre.
Pour trier sur un champ numérique appelé rating
:
"orderBy": "rating"
pour classer les documents du moins au plus notés."orderBy": "rating desc"
pour trier les documents de la note la plus élevée à la note la plus basse.
Pour trier sur un champ de type "datetime" appelé available_date
:
"orderBy": "available_date"
pour les classer du document le plus récent au plus ancien."orderBy": "available_date desc"
pour classer les documents de la date la plus éloignée à la date la plus proche.
Pour trier en fonction de la géolocalisation sur un champ appelé location
:
"orderBy": "GEO_DISTANCE(location, \"Mountain View, CA\")"
trie les documents de la plus proche à la plus éloignée de Mountain View."orderBy": "GEO_DISTANCE(location, 37.38, -122.08) desc"
trie les documents de l'emplacement le plus éloigné à l'emplacement le plus proche de 37,38°N et 122,08°W.