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,
  "guidedSearchSpec": {
    object (GuidedSearchSpec)
  },
  "customFineTuningSpec": {
    object (CustomFineTuningSpec)
  },
  "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)
  },

  // Union field vertical_config can be only one of the following:
  "mediaConfig": {
    object (MediaConfig)
  },
  "genericConfig": {
    object (GenericConfig)
  }
  // End of list of possible types for union field vertical_config.
}
欄位
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。可以變更,但只能變更為相容的模型 (例如「您可能喜歡的其他項目」點閱率模型變更為「您可能喜歡的其他項目」轉換率模型)。

如果 SolutionTypeSOLUTION_TYPE_RECOMMENDATION,則為必填屬性。

diversityLevel

string

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

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

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

只有在 SolutionTypeSOLUTION_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)

guidedSearchSpec

object (GuidedSearchSpec)

建議搜尋設定。

customFineTuningSpec

object (CustomFineTuningSpec)

自訂微調設定。如果已設定 SearchRequest.custom_fine_tuning_spec,則優先順序高於此處設定的設定。

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 個。

只有在 SolutionTypeSOLUTION_TYPE_SEARCH 時,才能設定這個值。

synonymsControlIds[]

string

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

只有在 SolutionTypeSOLUTION_TYPE_SEARCH 時,才能設定這個值。

onewaySynonymsControlIds[]

string

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

只有在 SolutionTypeSOLUTION_TYPE_SEARCH 時,才能設定這個值。

dissociateControlIds[]

string

條件不會關聯規格。如果多個條件不關聯,清單中所有相符的條件不關聯控制項都會執行。順序不重要。規格數量上限為 100。

只有在 SolutionTypeSOLUTION_TYPE_SEARCH 時,才能設定這個值。

replacementControlIds[]

string

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

只有在 SolutionTypeSOLUTION_TYPE_SEARCH 時,才能設定這個值。

ignoreControlIds[]

string

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

promoteControlIds[]

string

條件促銷規格。

最多只能有 100 項規格。

personalizationSpec

object (PersonalizationSpec)

個人化規格的規格。

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

answerGenerationSpec

object (AnswerGenerationSpec)

選用。生成答案的規格。

聯集欄位 vertical_config。特定產業別的設定。vertical_config 只能是下列其中一個設定:
mediaConfig

object (MediaConfig)

供應設定的 MediaConfig。

genericConfig

object (GenericConfig)

供應設定的 GenericConfig。

MediaConfig

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

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

  // Union field demote_content_watched can be only one of the following:
  "contentWatchedPercentageThreshold": number,
  "contentWatchedSecondsThreshold": number
  // End of list of possible types for union field demote_content_watched.
}
欄位
demotionEventType

string

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

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

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

demoteContentWatchedPastDays

integer

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

contentFreshnessCutoffDays

integer

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

聯集欄位 demote_content_watched。指定降級已觀看內容的門檻,門檻可以是百分比或分鐘值。必須為 media-complete 事件類型設定此值。demote_content_watched 只能是下列其中一項:
contentWatchedPercentageThreshold

number

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

contentWatchedSecondsThreshold

number

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

GenericConfig

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

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

object (ContentSearchSpec)

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

EmbeddingConfig

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

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

string

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

GuidedSearchSpec

定義引導式搜尋規格。

JSON 表示法
{
  "enableRefinementAttributes": boolean,
  "enableRelatedQuestions": boolean,
  "maxRelatedQuestions": integer
}
欄位
enableRefinementAttributes

boolean

是否要在導覽式搜尋結果中啟用並納入精選屬性。

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 方法 (串流)。