本頁面說明 Gemini Enterprise 的基本自動完成功能。自動完成功能會根據輸入查詢的前幾個字元,產生查詢建議。
如果是結構化和非結構化資料,自動完成功能預設會根據資料儲存庫中的文件內容生成建議。匯入文件後,自動完成功能預設要等到有足夠的優質資料 (通常需要幾天),才會開始產生建議。如果您透過 API 提出自動完成要求,自動完成功能可以根據 Google 搜尋記錄或使用者事件產生建議。
查詢建議模型會決定自動完成功能使用哪種資料類型來產生建議。查詢建議模型有四種:
文件。文件模型會根據使用者匯入的文件生成建議。
可完成的欄位。可補全欄位模型會直接從結構化資料欄位中擷取文字,並提供建議。只有加上
completable註解的欄位,才會用於自動完成建議。這個模型僅適用於結構化資料。Google 搜尋記錄。Google 搜尋記錄模型會根據
SearchService.searchAPI 呼叫記錄產生建議。如果servingConfigs.search方法沒有可用流量,請勿使用這個模型。使用者事件。使用者事件模型會根據使用者匯入的搜尋事件產生建議。
自動完成要求是使用 dataStores.completeQuery 方法傳送。
下表列出各資料類型適用的查詢建議模型類型。
查詢建議模型 |
資料來源 |
網站資料 |
結構化資料 |
非結構化資料 |
|---|---|---|---|---|
| Document | 由使用者匯入 | ✔* (預設) | ✔ (預設) | |
| 可完成的欄位 | 由使用者匯入 | ✔ | ||
| 搜尋記錄 | 自動收集 | ✔ (預設) | ✔ | ✔ |
| 使用者事件 | 由使用者匯入或由小工具自動收集 | ✔ | ✔ | ✔ |
*:文件結構定義必須包含 title 或 description 欄位,或必須有指定為 title 或 description 鍵屬性的欄位。請參閱「更新結構化資料的結構定義」。
如果不想使用資料類型的預設模型,可以在傳送自動完成要求時指定其他模型。自動完成要求是使用 dataStores.completeQuery 方法傳送。詳情請參閱「API 操作說明:傳送自動完成要求以選擇其他模型」。
自動完成功能
Gemini Enterprise 支援下列自動完成功能,可在搜尋時顯示最實用的預測結果:
| 功能 | 說明 | 範例或更多資訊 |
|---|---|---|
| 修正錯字 | 修正拼寫錯誤的字詞。 | Milc → Milk。
|
| 移除不安全的字詞 |
|
令人反感的文字,例如色情、煽情露骨、粗俗、暴力。 |
| 防止顯示基本個人識別資訊 (PII) | Gemini Enterprise 採用 Sensitive Data Protection,會盡可能避免顯示基本類型的 PII,例如電話號碼和電子郵件地址。 |
如果資料儲存庫中有電子郵件地址 為更全面防範 PII 外洩,Google 建議您除了使用 Gemini Enterprise 提供的偵測工具,也應套用自己的資料遺失防護 (DLP) 解決方案。詳情請參閱「防範 PII 外洩」。 |
| 拒絕清單 |
|
詳情請參閱「使用自動完成拒絕清單」。 |
| 簡化字詞 |
|
Shoes for Women、Womens Shoes 和 Womans Shoes 會簡化,系統只會建議最熱門的項目。 |
| 尾端比對建議 |
|
詳情請參閱「尾端比對建議」。 |
尾端比對建議
結尾比對建議是使用完全前置字元比對,比對查詢字串中的最後一個字詞。
舉例來說,假設自動完成要求傳送了「songs with he」查詢。啟用結尾比對時,自動完成功能可能會發現完整前置字串「songs with he」沒有任何相符項目。不過,查詢中的最後一個字詞「he」與「hello world」和「hello kitty」的前置字串完全相符。在這種情況下,系統會傳回「songs with hello world」和「songs with hello kitty」等建議,因為沒有完全相符的建議。
這項功能可減少空白建議結果,並增加建議的多樣性,在資料來源 (使用者事件數量、Google 搜尋記錄和文件主題涵蓋範圍) 有限的情況下特別實用。不過,啟用結尾比對建議可能會降低建議的整體品質。由於結尾比對只會比對前置字串的結尾字詞,因此傳回的部分建議可能不合理。舉例來說,如果查詢「songs with he」,可能會得到「songs with helpers guides」這類結尾相符建議。
只有在下列情況下,系統才會傳回尾端相符建議:
在
dataStores.completeQuery要求中,include_tail_suggestions設為true。沒有與查詢完全相符的前置字元建議。
防範 PII 外洩
PII 的定義廣泛,且可能難以偵測。因此,Gemini Enterprise 無法保證自動完成建議不會傳回 PII。
Gemini Enterprise 會套用 Sensitive Data Protection 檢查服務,尋找並封鎖常見類型的 PII,避免其出現在建議中。不過,如果資料儲存庫含有 PII,或您使用 Google 搜尋記錄或使用者事件查詢建議模型,請詳閱下列內容並採取適當行動:
如果您想保護的 PII 類型相當標準,例如電話號碼和電子郵件地址,請先廣泛測試應用程式的自動完成建議。Gemini Enterprise 無法保證自動完成建議不會傳回 PII。
如果在自動完成測試期間發現 PII 外洩,或您已知有非標準 PII 需要保護 (例如專屬使用者 ID),請嘗試調整自動完成門檻和內容提供參數。詳情請參閱「降低傳回含有 PII 的建議風險」。
如果調整參數仍無法防止 PII 外洩,請自行實作資料遺失防護解決方案。根據資料儲存庫、使用者事件或使用者搜尋查詢中最可能出現的 PII 類型,自訂資料遺失防護解決方案。您可以使用 Sensitive Data Protection 或第三方 DLP 服務。請採取下列其中一種做法:
將文件和使用者事件匯入資料儲存庫前,請先篩除 PII。
在服務時向使用者顯示建議之前,請先檢查自動完成建議,並封鎖含有任何 PII 的建議。
如果您使用 Google 搜尋記錄或使用者事件模型,請在搜尋列中加入一些資訊文字,提醒使用者不要在搜尋查詢中輸入 PII。
如果您有任何疑問,或在封鎖 PII 時遇到特定問題,請與客戶工程師 (CE) 或 Google 帳戶團隊聯絡。
開啟或關閉小工具的自動完成功能
如要開啟或關閉小工具的自動完成功能,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Gemini Enterprise」頁面。
按一下要編輯的應用程式名稱。
按一下「Configurations」。
點按「UI」分頁標籤。
切換「Show autocomplete suggestions」(顯示自動完成建議) 選項,即可啟用或停用小工具的自動完成建議。啟用自動完成功能後,系統需要一兩天才會開始顯示建議。
更新自動完成設定
如要在使用者介面中調整自動完成設定,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Gemini Enterprise」頁面。
按一下要編輯的應用程式名稱。
按一下「Configurations」。
按一下「自動完成」分頁標籤。
輸入或選取要更新的自動完成設定新值:
- 建議數量上限:系統可為查詢提供的自動完成建議數量上限。
- 觸發長度下限:輸入多少字元後,系統才會提供自動完成建議。
- 比對順序:自動完成功能可開始比對建議內容的查詢字串位置。
- 查詢建議模型:用於生成擷取建議的查詢建議模型。您可以使用
queryModel參數,在dataStores.completeQuery中覆寫這項設定。 啟用自動完成:根據預設,自動完成功能必須先收集足夠的優質資料 (通常需要幾天),才會開始提供建議。如要覆寫這項預設設定,並提早開始取得自動完成建議,請選取「Now」(立即)。
即使選取「立即」,系統也可能需要一天才能產生建議,而且在有足夠的優質資料之前,部分自動完成建議仍會遺漏或品質不佳。
拒絕清單:將拒絕清單匯入為 Cloud Storage bucket 中的 JSON 檔案。如要進一步瞭解拒絕清單的限制和規格,請參閱「使用自動完成拒絕清單」。
點選「儲存並發布」。如果引擎已啟用自動完成功能,變更會在幾分鐘內生效。
降低傳回含有 PII 的建議風險
使用者擁有各種 PII 資訊,例如駕照和電話號碼,這些資訊應保持私密。不過,使用者可能會在搜尋列中輸入任何這類 PII 資訊,尋找與自己相關的結果。
如果您使用 Google 搜尋記錄或使用者事件模型,且使用者可能會在搜尋列中輸入 PII,則可調整下列參數,減少 PII 外洩:
queryFrequencyThreshold:查詢必須輸入達這個次數,才能做為自動完成建議傳回。numUniqueUsersThreshold:查詢必須由這麼多不重複使用者輸入,才能做為自動完成建議傳回。搜尋使用者事件中userPseudoId欄位的值,會決定使用者是否不重複。
用途範例
舉例來說,假設使用者的帳號應保密。
如果使用 Google 搜尋記錄或使用者事件建議模型,系統會使用這些帳號以及使用者搜尋的所有其他字詞來產生建議。因此,如果使用者 A 的帳號 YZ-46789A 曾多次輸入搜尋列,而使用者 B 的帳號為 YZ-42345B,當使用者 B 在搜尋列中輸入 YZ-4 時,傳回的自動完成建議可能是使用者 A 的帳號。
為降低這類外洩事件發生的可能性,Gemini Enterprise 管理員決定:
將
queryFrequencyThreshold參數的值提高至30。在這種情況下,一個帳號不太可能經常輸入。不過,熱門搜尋查詢的輸入頻率至少會達到這個次數。將
numUniqueUsersThreshold參數的值提高至6。管理員認為,在六個搜尋事件中,不太可能在搜尋列中輸入相同的帳號,且每個事件都與不同的userPseudoId相關聯。
程序
自動完成功能有兩個門檻參數。這些參數無法在 Google Cloud 控制台使用,但可透過對 updateCompletionConfig 方法發出 REST API 呼叫來設定。
如要設定自動完成門檻,請按照下列步驟操作。每個步驟都是選用的,視您要變更的參數而定。
REST
更新
CompletionConfig.queryFrequencyThreshold欄位:curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/completionConfig?updateMask=queryFrequencyThreshold \ -d '{ "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/completionConfig", "queryFrequencyThreshold": QUERY_FREQUENCY_THRESHOLD }'更改下列內容:
PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:與應用程式相關聯的資料儲存庫 ID。
QUERY_FREQUENCY_THRESHOLD:整數值,表示搜尋查詢必須輸入的最低次數,才能做為自動完成建議傳回。系統會以月為單位,在滾動時間範圍內加總計數。預設值為8。
更新
CompletionConfig.numUniqueUsersThreshold欄位:curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/completionConfig?updateMask=numUniqueUsersThreshold \ -d '{ "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/completionConfig", "numUniqueUsersThreshold": UNIQUE_USERS }'將
UNIQUE_USERS替換為整數值,代表必須輸入特定搜尋查詢的不重複使用者人數下限,系統才會將該查詢傳回為自動完成建議。系統會以月為單位,在滾動時間範圍內加總計數。預設值為3。
更新結構定義中的可完成欄位註解
如要為結構化資料結構定義中的欄位啟用自動完成功能,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Gemini Enterprise」頁面。
按一下要編輯的應用程式名稱。必須使用結構化資料。
按一下 [Data] (資料)。
按一下「結構定義」分頁標籤。
按一下「編輯」,選取要標示為
completable的結構定義欄位。按一下「儲存」,儲存更新後的欄位設定。這些建議大約需要一天才能生成並傳回。
傳送自動完成要求
下列範例說明如何傳送自動完成要求。
REST
如要使用 API 傳送自動完成要求,請按照下列步驟操作:
找出資料儲存庫 ID。如果您已有資料儲存庫 ID,請跳到下一個步驟。
前往 Google Cloud 控制台的「Gemini Enterprise」頁面,然後點按導覽選單中的「Data Stores」(資料儲存庫)。
點按資料儲存庫的名稱。
在資料儲存庫的「Data」(資料) 頁面,取得資料儲存庫 ID。
呼叫
dataStores.completeQuery方法。curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID:completeQuery?query=QUERY_STRING"更改下列內容:
PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:與應用程式相關聯的資料儲存庫 ID。QUERY_STRING:用於擷取建議的預測輸入。
將自動完成要求傳送至其他模型
如要使用其他查詢建議模型傳送自動完成要求,請按照下列步驟操作:
找出資料儲存庫 ID。如果您已有資料儲存庫 ID,請跳到下一個步驟。
前往 Google Cloud 控制台的「Gemini Enterprise」頁面,然後點按導覽選單中的「Data Stores」(資料儲存庫)。
點按資料儲存庫的名稱。
在資料儲存庫的「Data」(資料) 頁面,取得資料儲存庫 ID。
呼叫
dataStores.completeQuery方法。curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID:completeQuery?query=QUERY_STRING&query_model=QUERY_SUGGESTIONS_MODEL"更改下列內容:
PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:與應用程式相關聯的資料儲存庫專屬 ID。QUERY_STRING:用於擷取建議的預測輸入。QUERY_SUGGESTIONS_MODEL:要求使用的查詢建議模型:document、document-completable、search-history或user-event。如果是醫療照護資料,請使用healthcare-default。
C#
在試用這個範例之前,請先按照「使用用戶端程式庫的 Gemini Enterprise 快速入門導覽課程」中的 C# 設定說明操作。詳情請參閱 Gemini Enterprise C# API 參考文件。
如要向 Gemini Enterprise 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Go
在試用這個範例之前,請先按照「使用用戶端程式庫的 Gemini Enterprise 快速入門導覽課程」中的 Go 設定說明操作。詳情請參閱 Gemini Enterprise Go API 參考文件。
如要向 Gemini Enterprise 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Java
在試用這個範例之前,請先按照「使用用戶端程式庫的 Gemini Enterprise 快速入門導覽課程」中的 Java 設定說明操作。詳情請參閱 Gemini Enterprise Java API 參考文件。
如要向 Gemini Enterprise 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Node.js
在試用這個範例之前,請先按照「使用用戶端程式庫的 Gemini Enterprise 快速入門導覽課程」中的 Node.js 設定說明操作。詳情請參閱 Gemini Enterprise Node.js API 參考文件。
如要向 Gemini Enterprise 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Python
在試用這個範例之前,請先按照「使用用戶端程式庫的 Gemini Enterprise 快速入門導覽課程」中的 Python 設定說明操作。詳情請參閱 Gemini Enterprise Python API 參考文件。
如要向 Gemini Enterprise 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Ruby
在試用這個範例之前,請先按照「使用用戶端程式庫的 Gemini Enterprise 快速入門導覽課程」中的 Ruby 設定說明操作。詳情請參閱 Gemini Enterprise Ruby API 參考文件。
如要向 Gemini Enterprise 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
使用自動完成拒絕清單
拒絕清單可避免自動完成建議顯示特定字詞。
舉例來說,假設有一家製藥公司,如果某種藥物不再獲得 FDA 核准,但資料儲存庫的文件中仍有提及,他們可能不希望該藥物出現在建議查詢中。公司可以將該藥物名稱加入拒絕清單,避免系統建議該藥物。
適用的限制如下:
- 每個資料儲存庫只能有一份拒絕清單
- 上傳拒絕清單後,系統會覆寫該資料儲存庫現有的拒絕清單
- 每個拒絕清單最多 1,000 個字詞
- 字詞不區分大小寫
- 匯入拒絕清單後,需要 1 到 2 天才會生效
拒絕清單中的每個項目都包含 blockPhrase 和 matchOperator:
blockPhrase:輸入字串做為拒絕清單字詞。字詞不區分大小寫。matchOperator:接受下列值:EXACT_MATCH:防止與拒絕清單字詞完全比對的字詞顯示為建議查詢。CONTAINS:防止顯示任何含有拒絕清單字詞的建議。
以下是包含四個項目的拒絕清單範例:
{ "entries": [ {"blockPhrase":"Oranges","matchOperator":"CONTAINS"}, {"blockPhrase":"bAd apples","matchOperator":"EXACT_MATCH"}, {"blockPhrase":"Cool as A Cucumber","matchOperator":"EXACT_MATCH"}, {"blockPhrase":"cherry pick","matchOperator":"CONTAINS"} ] }
匯入拒絕清單前,請確認已設定必要的存取控管,以便存取 Discovery Engine 編輯器。
您可以從本機 JSON 資料或從 Cloud Storage 匯入拒絕清單。如要從資料儲存庫移除拒絕清單,請清除拒絕清單。
從本機 JSON 資料匯入拒絕清單
如要從含有拒絕清單的本機 JSON 檔案匯入拒絕清單,請按照下列步驟操作:
在本機 JSON 檔案中建立拒絕清單,格式如下。請確認每個拒絕清單項目都位於新的一行,且沒有換行。
{ "inlineSource": { "entries": [ { "blockPhrase":"TERM_1","matchOperator":"MATCH_OPERATOR_1" }, { "blockPhrase":"TERM_2","matchOperator":"MATCH_OPERATOR_2" } ] } }
向
suggestionDenyListEntries:import方法傳送 POST 要求,並提供 JSON 檔案的名稱。curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data @DENYLIST_FILE \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/dataStores/DATA_STORE_ID/suggestionDenyListEntries:import"更改下列內容:
DENYLIST_FILE:包含拒絕清單字詞的 JSON 檔案本機路徑。PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:與應用程式相關聯的資料儲存庫 ID。
匯入拒絕清單後,系統需要 1 到 2 天才會開始篩選建議。
從 Cloud Storage 匯入拒絕清單
如要從 Cloud Storage 中的 JSON 檔案匯入拒絕清單,請按照下列步驟操作:
請使用下列格式在 JSON 檔案中建立拒絕清單,並匯入 Cloud Storage bucket。請確認每個拒絕清單項目都位於新的一行,且沒有換行。
{ "blockPhrase":"TERM_1","matchOperator":"MATCH_OPERATOR_1" } { "blockPhrase":"TERM_2","matchOperator":"MATCH_OPERATOR_2" }
建立包含
gcsSource物件的本機 JSON 檔案。請使用這個參數,指向 Cloud Storage bucket 中的拒絕清單檔案位置。{ "gcsSource": { "inputUris": [ "DENYLIST_STORAGE_LOCATION" ] } }
將
DENYLIST_STORAGE_LOCATION替換為 Cloud Storage 中拒絕清單的位置。只能輸入一個 URI。URI 必須採用下列格式:gs://BUCKET/FILE_PATH。向
suggestionDenyListEntries:import方法傳送 POST 要求,並加入gcsSource物件。curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data @GCS_SOURCE_FILE \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/dataStores/DATA_STORE_ID/suggestionDenyListEntries:import"更改下列內容:
GCS_SOURCE_FILE:檔案的本機路徑,其中包含指向拒絕清單的gcsSource物件。PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:與應用程式相關聯的資料儲存庫 ID。
匯入拒絕清單後,系統需要 1 到 2 天才會開始篩選建議。
清除拒絕清單
如要從資料儲存庫清除拒絕清單,請按照下列步驟操作:
向
suggestionDenyListEntries:purge方法傳送 POST 要求。curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/dataStores/DATA_STORE_ID/suggestionDenyListEntries:purge"更改下列內容:
PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:與應用程式相關聯的資料儲存庫 ID。
使用匯入的自動完成建議清單
您可以選擇提供自己的自動完成建議清單,而不使用自動完成資料模型產生的自動完成建議。
- 文字正規化:建議文字會轉換為小寫、經過 Unicode 正規化、內部空白字元會收合、捲曲的單引號 (U+2018、U+2019) 會折疊為 ASCII 單引號 (U+0027),並移除內嵌的雙引號字元和結尾句號。
- 長度篩選。系統會捨棄長度少於三個字元或超過 125 個字元的建議。
- 依分數匯總簡化。如果兩個以上的匯入建議正規化為相同文字 (例如
"Pixel 10 Pro Moonstone"和"Pixel 10 Pro moonstone",或使用捲曲撇號的"jobseeker’s allowance"和使用 ASCII 撇號的"jobseeker's allowance"),系統會將這些建議合併為單一建議,分數為輸入分數的總和。如要保留建議的分數,請只提交一次。 - PII 篩選。系統會篩除含有個人識別資訊的建議。
- 拒絕清單篩選。系統會篩除與資料儲存庫建議項目拒絕清單中詞組相符的建議。
SafeSearch功能不會套用至匯入的建議,您必須確保匯入的建議適合使用者。
對大多數應用程式來說,使用其中一個自動完成資料模型產生的建議,可獲得更好的結果。不過,在少數情況下,模型的建議可能不符合您的需求,而提供不連續的建議清單,可為使用者帶來更優質的自動完成體驗。
舉例來說,小型線上書店會匯入書名清單,做為自動完成建議。當顧客開始在搜尋列中輸入內容時,自動完成建議一律會是匯入清單中的書名。當書籍清單變更時,書店會清除目前的清單並匯入新清單。清單摘錄可能如下所示:
{"suggestion": "Wuthering Heights", "globalScore": "0.52" },
{"suggestion": "The Time Machine", "globalScore": "0.26" },
{"suggestion": "Nicholas Nickleby", "globalScore": "0.38" },
{"suggestion": "A Little Princess", "globalScore": "0.71" },
{"suggestion": "The Scarlet Letter", "globalScore": "0.32" }
globalScore 是介於 [0, 1] 之間的浮點數,用於為建議項目排名。或者,您也可以使用大於一的整數做為 frequency 分數。如果 globalScore 無法使用 (設為空值),系統會使用 frequency 分數來排序建議。
事前準備
如要匯入自動完成建議,您必須具備 Discovery Engine 管理員 IAM 角色,其中包含 discoveryengine.completionSuggestions.import 權限。
詳情請參閱「IAM 角色和權限」。
設定及匯入自動完成建議
如要設定並從 BigQuery 匯入自動完成建議清單,請按照下列步驟操作:
建立建議清單,並載入 BigQuery 資料表。
您至少需要以字串形式提供每項建議,以及全域分數或頻率。
請使用下列資料表結構定義建立建議清單:
[ { "description": "The suggestion text", "mode": "REQUIRED", "name": "suggestion", "type": "STRING" }, { "description": "Global score of this suggestion. Control how this suggestion would be scored and ranked. Set global score or frequency; not both.", "mode": "NULLABLE", "name": "globalScore", "type": "FLOAT" }, { "description": "Frequency of this suggestion. Used to rank suggestions when the global score is not available.", "mode": "NULLABLE", "name": "frequency", "type": "INTEGER" } ]請參閱 BigQuery 說明文件,瞭解如何建立 BigQuery 資料表,並將自動完成建議清單載入資料表。
從 BigQuery 匯入清單。
向
completionSuggestions:import方法傳送 POST 要求,並加入bigquerySource物件。curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/dataStores/DATA_STORE_ID/completionSuggestions:import" \ -d '{ "bigquery_source": {"project_id": "PROJECT_ID_SOURCE", "dataset_id": "DATASET_ID", "table_id": "TABLE_ID"} }'更改下列內容:
PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:資料儲存庫的 ID。PROJECT_ID_SOURCE:要匯入的資料集所在專案。DATASET_ID:要匯入的建議清單資料集 IDTABLE_ID:要匯入的建議清單資料表 ID
選用:記下傳回的
name值,並按照「取得長時間執行作業的詳細資料」一節的指示操作,查看匯入作業何時完成。如果尚未為應用程式啟用自動完成功能,請按照「更新自動完成設定」一節的程序操作。請務必將「Enable autocomplete」(啟用自動完成功能) 設為「Now」(立即啟用)。
請等待幾天,讓索引作業完成,並讓匯入的建議可供使用。
傳送自動完成要求
如要傳送自動完成要求,並傳回匯入的建議,而非自動完成模型的建議,請按照下列步驟操作:
- 按照這項程序,將自動完成要求傳送至其他模型,並將
QUERY_SUGGESTIONS_MODEL設為imported-suggestion。
清除匯入的自動完成建議清單
匯入新的自動完成建議清單前,請先移除現有清單。
如要清除現有的自動完成建議清單,請按照下列步驟操作:
向
completionSuggestions:purge方法傳送 POST 要求。curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/dataStores/DATA_STORE_ID/completionSuggestions:purge"更改下列內容:
PROJECT_ID: Google Cloud 專案的編號或 ID。DATA_STORE_ID:與應用程式相關聯的資料儲存庫 ID。
選用:記下傳回的
name值,並按照「取得長時間執行的作業詳細資料」中的操作說明,查看清除作業何時完成。
進階文件資料模型
Gemini Enterprise 提供進階資料模型,可自動完成程式碼。這項資料模型會根據您匯入的文件,運用 Google 大型語言模型 (LLM) 生成高品質的自動完成建議。
這個功能為實驗性質。如要使用這項功能,請與 Google Cloud 帳戶團隊聯絡,要求加入許可清單。
進階文件資料模型不適用於醫療照護搜尋,也不適用於美國和歐盟多區域。