REST Resource: projects.locations.collections.dataStores.servingConfigs

資源:ServingConfig

設定用於產生供應時間結果 (例如搜尋結果或推薦預測) 的中繼資料。ServingConfig 會傳遞至搜尋和預測要求,並產生結果。

JSON 表示法
{
  "name": string,
  "displayName": string,
  "solutionType": enum (SolutionType),
  "modelId": string,
  "diversityLevel": string,
  "embeddingConfig": {
    object (EmbeddingConfig)
  },
  "rankingExpression": string,
  "createTime": string,
  "updateTime": string,
  "filterControlIds": [
    string
  ],
  "boostControlIds": [
    string
  ],
  "redirectControlIds": [
    string
  ],
  "synonymsControlIds": [
    string
  ],
  "onewaySynonymsControlIds": [
    string
  ],
  "dissociateControlIds": [
    string
  ],
  "replacementControlIds": [
    string
  ],
  "ignoreControlIds": [
    string
  ],
  "promoteControlIds": [
    string
  ],
  "personalizationSpec": {
    object (PersonalizationSpec)
  },
  "answerGenerationSpec": {
    object (AnswerGenerationSpec)
  },

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "mediaConfig": {
    object (MediaConfig)
  },
  "genericConfig": {
    object (GenericConfig)
  }
  // End of mutually exclusive fields.
}
欄位
name

string

不可變動。完整名稱 projects/{project}/locations/{location}/collections/{collectionId}/engines/{engineId}/servingConfigs/{servingConfigId}

displayName

string

這是必要旗標,使用者可理解的供應設定顯示名稱。用於探索使用者介面。

這個欄位必須是 UTF-8 編碼的字串,長度上限為 128 個半形字元。否則,系統會傳回 INVALID_ARGUMENT 錯誤。

solutionType

enum (SolutionType)

這是必要旗標,不可變動。指定供應設定可關聯的解決方案類型。

modelId

string

在放送時使用的模型 ID。目前僅支援 RecommendationModel。可以變更,但只能變更為相容模型 (例如將「您可能喜歡的其他項目」點閱率變更為「您可能喜歡的其他項目」轉換率)。

如果 SolutionType 為 SOLUTION_TYPE_RECOMMENDATION,則為必填屬性。

diversityLevel

string

建議模型結果中要使用的多樣性程度,例如 medium-diversity 或 high-diversity。目前支援的值:

  • no-diversity
  • low-diversity
  • medium-diversity
  • high-diversity
  • auto-diversity

如未指定,我們會根據建議模型類型選擇預設值。預設值為 no-diversity。

只有在 SolutionType 為 SOLUTION_TYPE_RECOMMENDATION 時,才能設定這個值。

embeddingConfig

object (EmbeddingConfig)

自備嵌入設定。這項設定用於搜尋語意檢索。檢索作業會根據 SearchRequest.EmbeddingSpec.EmbeddingVector.vector 的點積和這個 EmbeddingConfig 提供的文件嵌入項目進行。如果提供 SearchRequest.EmbeddingSpec.EmbeddingVector.vector,系統會覆寫這項 ServingConfig.embedding_config。

rankingExpression

string

排名運算式可控管擷取文件的自訂排名。如要使用這項功能,必須先嵌入文件。ServingConfig 中的排名運算式設定適用於供應設定處理的所有搜尋要求。不過,如果指定 SearchRequest.ranking_expression,系統會覆寫 ServingConfig 排序運算式。

排名運算式是單一函式或多個以「+」連結的函式。

  • rankingExpression = function, { " + ", function };

支援的函式:

  • double * relevanceScore
  • double * dotProduct(embedding_field_path)

函式變數:

  • relevanceScore:預先定義的關鍵字,用於評估查詢和文件之間的關聯性。
  • embedding_field_path:與查詢嵌入向量搭配使用的文件嵌入欄位。
  • dotProduct:embedding_field_path 和查詢嵌入向量之間的嵌入函式。

排名運算式範例:

如果文件含有嵌入欄位 doc_embedding,排名運算式可能是 0.5 * relevanceScore + 0.3 * dotProduct(doc_embedding)。

createTime

string (Timestamp format)

僅供輸出。建立 ServingConfig 的時間戳記。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

updateTime

string (Timestamp format)

僅供輸出。供應設定更新時間戳記。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

filterControlIds[]

string

要在放送路徑中使用的篩選器控制項。系統會套用所有觸發的篩選器控制項。篩選器控制項必須與服務設定位於同一個資料儲存庫。最多 20 個篩選器控制項。

boostControlIds[]

string

在服務路徑中使用的升幅控制項。系統會套用所有觸發的升級控制項。提升控制項必須與服務設定位於同一個資料儲存庫。最多可使用 20 個提高排名控制項。

redirectControlIds[]

string

重新導向控制項的 ID。即使有多個重新導向動作適用,系統也只會套用第一個觸發的動作。最多只能有 100 項規格。

只有在 SolutionType 為 SOLUTION_TYPE_SEARCH 時,才能設定這個值。

synonymsControlIds[]

string

條件同義詞規格。如果符合多個同義字條件,系統會執行清單中所有相符的同義字控制項。最多只能有 100 項規格。

只有在 SolutionType 為 SOLUTION_TYPE_SEARCH 時,才能設定這個值。

onewaySynonymsControlIds[]

string

單向同義詞規格條件。如果多個單向同義字條件相符,系統會執行清單中所有相符的單向同義字控制選項。最多只能有 100 項規格。

只有在 SolutionType 為 SOLUTION_TYPE_SEARCH 時,才能設定這個值。

dissociateControlIds[]

string

條件不會關聯規格。如果符合多個「不建立關聯」條件,系統會執行清單中所有相符的「不建立關聯」控制選項。順序沒有影響。最多只能有 100 項規格。

只有在 SolutionType 為 SOLUTION_TYPE_SEARCH 時,才能設定這個值。

replacementControlIds[]

string

條件替代規格。系統會依清單中的順序套用規則。先前取代的字詞無法再次取代。最多只能有 100 項規格。

只有在 SolutionType 為 SOLUTION_TYPE_SEARCH 時,才能設定這個值。

ignoreControlIds[]

string

條件忽略規格。如果符合多個忽略條件,系統會執行清單中所有相符的忽略控制項。順序沒有影響。最多只能有 100 項規格。

promoteControlIds[]

string

條件促銷規格。

最多只能有 100 項規格。

personalizationSpec

object (PersonalizationSpec)

個人化規格的規格。

請注意,如果同時設定 ServingConfig.personalization_spec 和 SearchRequest.personalization_spec,SearchRequest.personalization_spec 會覆寫 ServingConfig.personalization_spec。

answerGenerationSpec

object (AnswerGenerationSpec)

選用。生成答案的規格。

特定產業別的設定。以下列出互斥的欄位。回應中最多只會設定一個欄位:
mediaConfig

object (MediaConfig)

供應設定的 MediaConfig。

genericConfig

object (GenericConfig)

供應設定的 GenericConfig。

互斥欄位的結尾。

MediaConfig

指定媒體探索所需的設定。目前支援的項目如下:

  • demote_content_watched:觀看內容降級的門檻。顧客可以指定是否要使用看過的內容降級或看過的詳細資料頁面。使用觀看內容降級功能時,顧客必須指定觀看分鐘數或百分比超過門檻,系統就會在推薦結果中降級該內容。
  • promote_fresh_content:宣傳最新內容的截止日期。顧客可以指定是否使用內容新鮮度宣傳活動。如果內容是在截止日期前發布,系統會在推薦結果中宣傳該內容。只有在 SolutionType 為 SOLUTION_TYPE_RECOMMENDATION 時,才能設定這個值。
JSON 表示法
{
  "demotionEventType": string,
  "demoteContentWatchedPastDays": integer,
  "contentFreshnessCutoffDays": integer,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "contentWatchedPercentageThreshold": number,
  "contentWatchedSecondsThreshold": number
  // End of mutually exclusive fields.
}
欄位
demotionEventType

string

指定用於降低建議結果排名的事件類型。目前支援的值:

  • view-item:查看項目。
  • media-play:開始/繼續觀看影片、播放歌曲等。
  • media-complete:已看完或中途停止觀看影片、聽完歌曲等。

如未設定,系統不會套用觀看記錄降級。系統仍會套用內容更新降級處置。

demoteContentWatchedPastDays

integer

選用。指定要往回追溯的天數,系統會根據這項設定降級已觀看內容。如設為零或未設定,預設為最多 365 天。

contentFreshnessCutoffDays

integer

指定用於建議結果的內容新鮮度。如果內容發布時間超過內容更新截止天數,就會遭到降級。

指定降級已觀看內容的門檻,門檻可以是百分比或分鐘值。必須為 media-complete 事件類型設定此值。以下列出互斥的欄位。回應中最多只會設定一個欄位:
contentWatchedPercentageThreshold

number

指定降級的觀看內容百分比門檻。門檻值必須介於 [0, 1.0] 之間 (含)。

contentWatchedSecondsThreshold

number

指定降級的觀看分鐘數門檻。

互斥欄位的結尾。

GenericConfig

指定一般探索所需的設定。目前支援:

  • contentSearchSpec:一般內容搜尋的設定。
JSON 表示法
{
  "contentSearchSpec": {
    object (ContentSearchSpec)
  }
}
欄位
contentSearchSpec

object (ContentSearchSpec)

指定內容搜尋的預期行為。僅適用於啟用內容搜尋功能的資料儲存庫。

EmbeddingConfig

定義嵌入設定,用於自備嵌入功能。

JSON 表示法
{
  "fieldPath": string
}
欄位
fieldPath

string

結構定義中對應為嵌入欄位的完整欄位路徑。

AnswerGenerationSpec

生成答案的規格。

JSON 表示法
{
  "userDefinedClassifierSpec": {
    object (UserDefinedClassifierSpec)
  }
}
欄位
userDefinedClassifierSpec

object (UserDefinedClassifierSpec)

選用。使用者指定分類器規格的規格。

UserDefinedClassifierSpec

使用者定義分類器的規格。

JSON 表示法
{
  "enableUserDefinedClassifier": boolean,
  "preamble": string,
  "modelId": string,
  "taskMarker": string,
  "topP": number,
  "topK": string,
  "temperature": number,
  "seed": integer
}
欄位
enableUserDefinedClassifier

boolean

選用。是否啟用及納入使用者定義的分類器。

preamble

string

選用。用於使用者定義分類器的序文。

modelId

string

選用。用於使用者定義分類器的模型 ID。

taskMarker

string

選用。用於使用者定義分類器的工作標記。

topP

number

選用。用於使用者定義分類器的 top-p 值。

topK

string (int64 format)

選用。用於使用者定義分類器的 top-k 值。

temperature

number

選用。使用者定義的分類器所用的溫度值。

seed

integer

選用。用於使用者定義分類器的種子值。

方法

answer

Answer 查詢方法。

create

建立 ServingConfig。

delete

刪除 ServingConfig。

get

取得 ServingConfig。

list

列出連結至這個資料儲存庫的所有 ServingConfig。

patch

更新 ServingConfig。

recommend

提供建議,這需要情境式使用者事件。
執行搜尋。

searchLite

執行搜尋。

streamAnswer

Answer query 方法 (串流)。