本頁面說明如何排序對結構化資料儲存庫和含有中繼資料的非結構化資料儲存庫發出的搜尋查詢結果。
支援的資料類型,可用於排序結果
您可以根據下列欄位類型排序搜尋結果:
stringnumberdatetimegeolocation
事前準備
確認您擁有應用程式,且應用程式的資料儲存庫包含結構化資料或附有中繼資料的非結構化資料。
將搜尋結果排序
如要排序結構化資料儲存庫或含有中繼資料的非結構化資料儲存庫搜尋結果,請按照下列步驟操作:
REST
如要使用 API 排序應用程式的搜尋結果 (含結構化資料或含中繼資料的非結構化資料),請使用 engines.servingConfigs.search 方法:
找出應用程式 ID。如果已有應用程式 ID,請跳到下一個步驟。
前往 Google Cloud 控制台的「AI Applications」頁面。
在「應用程式」頁面中,找出應用程式名稱,然後從「ID」欄取得應用程式的 ID。
建立搜尋查詢並加入
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" }'更改下列內容:
PROJECT_ID:您的 Google Cloud 專案 ID。- :Vertex AI Search 應用程式的 ID。
APP_ID QUERY:要搜尋的查詢文字。ORDER_BY:結果的排列順序。預設排序順序為遞增。舉例來說,指定date會傳回從最舊到最新的結果。如要取得遞減排序順序,請將desc附加至date值,例如date desc。如需更多範例,請參閱orderBy範例。
orderBy 個樣本
如要依名為 title 的字串欄位排序:
"orderBy": "title",即可依文件標題的字母順序遞增排序。"orderBy": "title desc",即可依文件標題以反向字母順序 (從 Z 到 A) 排序。
如要依名為 rating 的數字欄位排序:
"orderBy": "rating",即可依評分由低到高排序文件。"orderBy": "rating desc",即可依評分由高至低排序文件。
如要依名為 available_date 的日期時間欄位排序:
"orderBy": "available_date",即可依文件到期日排序,從最近到最遠。"orderBy": "available_date desc",從最遠的有效日期排序至最近的有效日期。
如要根據名為 location 的欄位中的地理位置排序,請執行下列操作:
"orderBy": "GEO_DISTANCE(location, \"Mountain View, CA\")"會依據文件與山景城的距離排序,從最近到最遠。"orderBy": "GEO_DISTANCE(location, 37.38, -122.08) desc"會依據與 37.38°N 和 122.08°W 位置的距離,由遠到近排序文件。