Trier les résultats à partir de magasins de données structurées

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 selon lesquels vous pouvez trier vos résultats de recherche :

  • string
  • number
  • datetime
  • geolocation

Avant de commencer

Assurez-vous de disposer d'une application avec un data store 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 data store structurées ou d'un data store non structurées avec des métadonnées, procédez comme suit :

REST

Pour utiliser l'API afin de trier 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 :

  1. Trouvez l'ID de votre application. Si vous avez déjà votre ID d'application, passez à l'étape suivante.

    1. Dans la console Google Cloud , accédez à la page AI Applications.

      Accédez à "Applications".

    2. Sur la page Applications, recherchez le nom de votre application et récupérez son ID dans la colonne ID.

  2. 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 projet Google Cloud .
    • 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, si vous spécifiez date, les résultats sont renvoyés du plus ancien au plus récent. Pour obtenir un ordre de tri décroissant, ajoutez desc à la valeur date (par exemple, date desc). Pour obtenir d'autres exemples, consultez Exemples de orderBy.

orderBy exemples

Pour trier les résultats selon 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 les résultats selon un champ numérique appelé rating :

  • "orderBy": "rating" pour trier les documents du moins bien noté au mieux noté.

  • "orderBy": "rating desc" pour trier les documents du mieux au moins bien noté.

Pour trier les résultats selon un champ datetime appelé available_date :

  • "orderBy": "available_date" pour trier les documents du plus proche au plus éloigné.

  • "orderBy": "available_date desc" pour commander les documents en commençant par celui dont la date de disponibilité est la plus éloignée, puis en allant vers celui dont la date de disponibilité est la plus proche.

Pour trier selon la géolocalisation sur un champ appelé location :

  • "orderBy": "GEO_DISTANCE(location, \"Mountain View, CA\")" trie les documents du plus proche au plus éloigné de Mountain View.

  • "orderBy": "GEO_DISTANCE(location, 37.38, -122.08) desc" trie les documents du plus éloigné au plus proche de l'emplacement 37,38°N et 122,08°O.