ServingConfig

서빙 시간 결과 (예: 검색 결과 또는 추천 예측)를 생성하는 데 사용되는 메타데이터를 구성합니다. ServingConfig는 검색 및 예측 요청에 전달되어 결과를 생성합니다.

JSON 표현
{
  "name": string,
  "displayName": string,
  "solutionType": enum (SolutionType),
  "modelId": string,
  "diversityLevel": string,
  "rankingExpression": string,
  "createTime": string,
  "updateTime": string,
  "filterControlIds": [
    string
  ],
  "boostControlIds": [
    string
  ],
  "redirectControlIds": [
    string
  ],
  "synonymsControlIds": [
    string
  ],
  "onewaySynonymsControlIds": [
    string
  ],
  "dissociateControlIds": [
    string
  ],
  "replacementControlIds": [
    string
  ],
  "ignoreControlIds": [
    string
  ],
  "promoteControlIds": [
    string
  ],
  "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

필수 항목입니다. 사람이 읽을 수 있는 서빙 구성 표시 이름입니다. Discovery UI에서 사용됩니다.

이 필드는 UTF-8로 인코딩된 문자열이어야 하며 길이 제한은 128자(영문 기준)입니다. 그렇지 않으면 INVALID_ARGUMENT 오류가 반환됩니다.

solutionType

enum (SolutionType)

필수 항목입니다. 변경할 수 없습니다. 서빙 구성이 연결될 수 있는 솔루션 유형을 지정합니다.

modelId

string

서빙 시 사용할 모델의 ID입니다. 현재는 RecommendationModel만 지원됩니다. 호환되는 모델 (예: 내가 좋아할 만한 기타 항목 CTR에서 내가 좋아할 만한 기타 항목 CVR)로만 변경할 수 있습니다.

SolutionTypeSOLUTION_TYPE_RECOMMENDATION인 경우 필요합니다.

diversityLevel

string

추천 모델 결과(예: medium-diversity 또는 high-diversity)에 사용할 다양성 정도입니다. 현재 지원되는 값:

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

지정하지 않으면 추천 모델 유형에 따라 기본값이 선택됩니다. 기본값은 no-diversity입니다.

SolutionTypeSOLUTION_TYPE_RECOMMENDATION인 경우에만 설정할 수 있습니다.

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 생성 타임스탬프입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

updateTime

string (Timestamp format)

출력 전용입니다. ServingConfig 업데이트 타임스탬프입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. '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개입니다.

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

(선택사항) 시청한 콘텐츠의 순위를 내리기 위해 확인할 과거 기간(일)을 지정합니다. 0으로 설정하거나 설정하지 않으면 기본적으로 최대 365일로 설정됩니다.

contentFreshnessCutoffDays

integer

추천 결과에 사용되는 콘텐츠 신선도를 지정합니다. 콘텐츠가 콘텐츠 최신성 기준일보다 오래 게시된 경우 콘텐츠의 순위가 내려갑니다.

통합 필드 demote_content_watched. 시청한 콘텐츠의 강등 기준점을 지정합니다. 기준점은 백분율 또는 분 값일 수 있습니다. media-complete 이벤트 유형의 경우 이 값을 설정해야 합니다. demote_content_watched은 다음 중 하나일 수 있습니다.
contentWatchedPercentageThreshold

number

순위 내리기를 위한 시청한 콘텐츠 비율 기준을 지정합니다. 임계값은 [0, 1.0] 사이여야 합니다(0과 1.0 포함).

contentWatchedSecondsThreshold

number

순위 내리기를 위한 시청한 콘텐츠 시간 기준을 지정합니다.

GenericConfig

일반 검색에 필요한 구성을 지정합니다. 현재 다음을 지원합니다.

  • contentSearchSpec: 일반 콘텐츠 검색 구성입니다.
JSON 표현
{
  "contentSearchSpec": {
    object (ContentSearchSpec)
  }
}
필드
contentSearchSpec

object (ContentSearchSpec)

콘텐츠 검색의 예상 동작을 지정합니다. 콘텐츠 검색이 사용 설정된 데이터 스토어에만 유효합니다.

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)

(선택사항) 사용자 정의 분류기에 사용할 상위 k 값입니다.

temperature

number

(선택사항) 사용자 정의 분류기에 사용할 온도 값입니다.

seed

integer

(선택사항) 사용자 정의 분류기에 사용할 시드 값입니다.