執行搜尋。
HTTP 要求
POST https://discoveryengine.googleapis.com/v1beta/{servingConfig=projects/*/locations/*/collections/*/engines/*/servingConfigs/*}:search
這個網址使用 gRPC 轉碼語法。
路徑參數
參數 | |
---|---|
servingConfig |
這是必要旗標,供應設定的資源名稱。搜尋供應設定的資源名稱,例如 |
要求主體
要求主體包含下列結構的資料:
JSON 表示法 |
---|
{ "branch": string, "query": string, "imageQuery": { object ( |
欄位 | |
---|---|
branch |
分支版本的資源名稱,例如 使用 |
query |
原始搜尋查詢。 |
imageQuery |
原始圖片查詢。 |
pageSize |
要傳回的
如果這個欄位為負數,系統會傳回 |
pageToken |
接收自前一個 進行分頁時,提供至 |
offset |
以 0 為索引的整數,用來指定搜尋結果中目前的偏移量 (也就是 API 視為相關的 如果這個欄位為負數,系統會傳回 如果偏移量過大,系統可能會將其限制在合理範圍內。 |
oneBoxPageSize |
OneBox 傳回的結果數上限。這項規定適用於各個 OneBox 類型。預設值為 10。 |
dataStoreSpecs[] |
定義要搜尋的特定 |
filter |
篩選器語法包含運算式語言,可從要篩選的文件的一或多個欄位建構述詞。篩選運算式會區分大小寫。 如果無法辨識這個欄位,系統會傳回 在 Vertex AI servingConfigs.search 中進行篩選時,系統會將 LHS 篩選鍵對應至 Vertex AI servingConfigs.search 後端定義的鍵屬性,而這項對應是由客戶在結構定義中定義。舉例來說,媒體客戶的結構定義中可能會有「name」欄位。在本例中,篩選器會如下所示:filter --> name:'ANY("king kong")' 如要進一步瞭解篩選功能,包括語法和篩選運算子,請參閱「篩選」 |
canonicalFilter |
使用者在搜尋頁面上未勾選任何篩選器時,系統套用的預設篩選器。 需要查詢擴展等品質改善措施時,套用至每個搜尋要求的篩選器。如果查詢結果數量不足,系統會使用這個篩選器判斷是否要啟用查詢擴充流程。查詢擴大搜尋時,系統仍會使用原始篩選器。強烈建議填寫這個欄位,以確保搜尋品質。 如要進一步瞭解篩選器語法,請參閱 |
orderBy |
傳回文件的順序。文件可依 如要進一步瞭解如何排序網站搜尋結果,請參閱「排序網頁搜尋結果」。如要進一步瞭解如何排序醫療保健搜尋結果,請參閱「排序醫療保健搜尋結果」。如果無法辨識這個欄位,系統會傳回 |
userInfo |
使用者的相關資訊。強烈建議用於數據分析和個人化。 |
languageCode |
BCP-47 語言代碼,例如「en-US」或「sr-Latn」。詳情請參閱「標準欄位」。這個欄位有助於更準確地解讀查詢。如未指定值,系統會自動偵測查詢語言代碼,但可能不準確。 |
regionCode |
某個地點的 Unicode 國家/地區代碼 (CLDR),例如「US」和「419」。詳情請參閱「標準欄位」。如果設定,系統會根據提供的 regionCode 提升結果。 |
facetSpecs[] |
多面向搜尋的 facet 規格。如果留空,就不會傳回任何構面。 最多可輸入 100 個值。否則,系統會傳回 |
boostSpec |
提高特定文件的規格。如要進一步瞭解加成,請參閱「加成」一文。 |
params |
其他搜尋參數。 僅限公開網站搜尋,支援的值如下:
如要查看可用代碼,請參閱「國家/地區代碼」。
|
queryExpansionSpec |
查詢擴充規格,指定查詢擴充的發生條件。 |
spellCorrectionSpec |
拼字校正規格,指定拼字校正生效的模式。 |
userPseudoId |
用於追蹤訪客的專屬 ID。舉例來說,這項功能可以透過 HTTP Cookie 實作,應能識別單一裝置上的訪客。訪客登入或登出網站時,這個專屬 ID 不應變更。 這個欄位「不得」有固定值,例如 這個 ID 應與 這個欄位必須是 UTF-8 編碼的字串,長度上限為 128 個字元。否則,系統會傳回 |
contentSearchSpec |
用於設定內容搜尋行為的規格。 |
embeddingSpec |
使用提供的嵌入內容執行額外的語意文件檢索。檢索作業會根據 如未提供 |
rankingExpression |
(選用步驟) 排名運算式可控管擷取文件的自訂排名。這會覆寫 如果未提供
支援的函式:
函式變數:
排名運算式範例: 如果文件含有嵌入欄位 doc_embedding,則排名運算式可能是 如果
以下列舉幾個使用支援的排名運算式類型的排名公式:
系統支援下列信號:
|
rankingExpressionBackend |
(選用步驟) 用於排名運算式評估的後端。 |
safeSearch |
是否開啟安全搜尋功能。這項功能僅適用於網站搜尋。 |
userLabels |
套用於資源的使用者標籤必須符合下列規定:
詳情請參閱 Google Cloud 文件。 |
naturalLanguageQueryUnderstandingSpec |
(選用步驟) 自然語言查詢理解功能設定,例如從查詢中擷取結構化欄位篩選器。詳情請參閱這份說明文件。如果未指定 |
searchAsYouTypeSpec |
servingConfigs.search 即時搜尋設定。僅支援 |
displaySpec |
(選用步驟) 設定顯示功能,例如在搜尋結果中醒目顯示相符項目。 |
session |
工作階段資源名稱。選填。 使用者可透過工作階段執行多輪 /search API 呼叫,或協調 /search API 呼叫和 /answer API 呼叫。 範例 1 (多輪 /search API 呼叫):使用在第一次呼叫中產生的工作階段 ID 呼叫 /search API。系統會將先前的搜尋查詢納入查詢狀態考量。也就是說,如果第一個查詢是「Alphabet 在 2022 年的表現如何?」,而目前的查詢是「2023 年的表現如何?」,系統會將目前的查詢解讀為「Alphabet 在 2023 年的表現如何?」。 範例 2 (在 /search API 呼叫和 /answer API 呼叫之間協調):使用第一次呼叫中產生的工作階段 ID 呼叫 /answer API。在這裡,答案生成作業會在第一次搜尋呼叫的搜尋結果脈絡中進行。 Multi-turn servingConfigs.search 功能目前處於私人正式發布階段。在公開發布這項功能前,請改用 v1alpha 或 v1beta 版。您也可以透過 Google 支援團隊申請加入允許清單。 |
sessionSpec |
工作階段規格。 只有在設定 |
relevanceThreshold |
搜尋結果的關聯性門檻。 預設為 Google 定義的門檻,可兼顧準確度和召回率,提供高度準確的結果,並全面涵蓋相關資訊。 這項功能不支援醫療保健搜尋。 |
personalizationSpec |
個人化規格。 請注意,如果同時設定 |
relevanceScoreSpec |
(選用步驟) 傳回關聯性分數的規格。 |
searchAddonSpec |
(選用步驟) 根據新的重新定價模式,SearchAddonSpec 用於停用搜尋的外掛程式。這個欄位僅支援搜尋要求。 |
回應主體
如果成功,回應主體會包含 SearchResponse
的執行個體。
授權範圍
需要下列其中一種 OAuth 範圍:
https://www.googleapis.com/auth/cloud-platform
https://www.googleapis.com/auth/discoveryengine.readwrite
https://www.googleapis.com/auth/discoveryengine.assist.readwrite
詳情請參閱Authentication Overview。
IAM 權限
需要 servingConfig
資源的下列 IAM 權限:
discoveryengine.servingConfigs.search
詳情請參閱 IAM 說明文件。