REST Resource: projects.locations.evaluations

리소스: 평가

평가는 평가 프로세스의 단일 실행입니다. 평가 상태와 결과 데이터를 캡슐화합니다.

JSON 표현
{
  "name": string,
  "evaluationSpec": {
    object (EvaluationSpec)
  },
  "qualityMetrics": {
    object (QualityMetrics)
  },
  "state": enum (State),
  "error": {
    object (Status)
  },
  "createTime": string,
  "endTime": string,
  "errorSamples": [
    {
      object (Status)
    }
  ]
}
필드
name

string

식별자. Evaluation의 전체 리소스 이름입니다(projects/{project}/locations/{location}/evaluations/{evaluation} 형식).

이 필드는 UTF-8로 인코딩된 문자열이어야 하며 길이 제한은 1,024자(영문 기준)입니다.

evaluationSpec

object (EvaluationSpec)

필수 항목입니다. 평가 사양입니다.

qualityMetrics

object (QualityMetrics)

출력 전용입니다. 평가에서 생성된 측정항목으로, SampleQuerySet의 모든 SampleQuery에 대해 평균을 냅니다.

평가 상태가 SUCCEEDED인 경우에만 채워집니다.

state

enum (State)

출력 전용입니다. 평가 상태입니다.

error

object (Status)

출력 전용입니다. 평가 중에 발생한 오류입니다. 평가 상태가 실패인 경우에만 채워집니다.

createTime

string (Timestamp format)

출력 전용입니다. Evaluation이 생성된 타임스탬프입니다.

생성된 출력은 항상 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"입니다.

endTime

string (Timestamp format)

출력 전용입니다. Evaluation가 완료된 타임스탬프입니다.

생성된 출력은 항상 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"입니다.

errorSamples[]

object (Status)

출력 전용입니다. 요청을 처리하는 중에 발생한 오류 샘플입니다.

EvaluationSpec

평가 사양을 설명합니다.

JSON 표현
{
  "querySetSpec": {
    object (QuerySetSpec)
  },

  // Union field search_spec can be only one of the following:
  "searchRequest": {
    object (SearchRequest)
  }
  // End of list of possible types for union field search_spec.
}
필드
querySetSpec

object (QuerySetSpec)

(선택사항) 쿼리 집합의 사양입니다.

통합 필드 search_spec. 검색 사양입니다. search_spec은 다음 중 하나여야 합니다.
searchRequest

object (SearchRequest)

필수 항목입니다. 평가를 실행하는 데 사용되는 검색 요청입니다.

SearchRequest 내의 다음 필드만 지원됩니다. 다른 필드가 제공되면 UNSUPPORTED 오류가 반환됩니다.

ImageQuery

이미지 쿼리 입력을 지정합니다.

JSON 표현
{

  // Union field image can be only one of the following:
  "imageBytes": string
  // End of list of possible types for union field image.
}
필드

통합 필드 image.

image는 다음 중 하나여야 합니다.

imageBytes

string

Base64로 인코딩된 이미지 바이트입니다. 지원되는 이미지 형식: JPEG, PNG, BMP

FacetSpec

패싯 검색을 수행할 패싯 사양입니다.

JSON 표현
{
  "facetKey": {
    object (FacetKey)
  },
  "limit": integer,
  "excludedFilterKeys": [
    string
  ],
  "enableDynamicPosition": boolean
}
필드
facetKey

object (FacetKey)

필수 항목입니다. 패싯 키 사양입니다.

limit

integer

이 패싯에 대해 반환되는 최대 패싯 값입니다. 지정하지 않으면 기본값은 20입니다. 허용되는 최댓값은 300입니다. 300을 초과하는 값은 300으로 변환됩니다. 의료 검색의 집계에서 [FacetKey.key] 가 'healthcare_aggregation_key'인 경우 여기에 설정된 값과 관계없이 한도가 내부적으로 10,000으로 재정의됩니다.

이 필드가 음수이면 INVALID_ARGUMENT이 반환됩니다.

excludedFilterKeys[]

string

패싯 생성 시 제외할 키 목록입니다.

기본적으로 FacetKey.key는 이 필드에 나열되지 않는 한 필터에서 제외되지 않습니다.

이 필드에 속성 키를 나열하면 검색 결과에서 필터링되더라도 값이 속성 결과로 표시될 수 있습니다. 이 필드를 사용해도 반환되는 검색 결과에는 영향을 미치지 않습니다.

예를 들어 색상 패싯이 'Red'인 문서가 100개 있고 색상 패싯이 'Blue'인 문서가 200개 있다고 가정해 보겠습니다. 'color:ANY("Red")' 필터가 포함되어 있고 'color'가 FacetKey.key인 쿼리는 기본적으로 검색 결과에서 'Red' 문서만 반환하고 'Red'를 개수 100의 유일한 색상 패싯으로 반환합니다. 파란색 문서도 있지만 '파란색'은 사용 가능한 패싯 값으로 표시되지 않습니다.

'color'가 'excludedFilterKeys'에 나열된 경우 이제 'color' 키가 필터에서 제외되므로 쿼리는 개수가 100인 'Red'와 개수가 200인 'Blue'를 모두 반환합니다. 이 필드는 검색 결과에 영향을 미치지 않으므로 검색 결과는 여전히 'Red' 문서만 반환하도록 올바르게 필터링됩니다.

최대 100개의 값이 허용됩니다. 그렇지 않으면 INVALID_ARGUMENT 오류가 반환됩니다.

enableDynamicPosition

boolean

이 패싯의 동적 위치를 사용 설정합니다. true로 설정하면 응답의 모든 패싯 중에서 이 패싯의 위치가 자동으로 결정됩니다. 동적 패싯이 사용 설정된 경우 함께 정렬됩니다. false로 설정하면 응답에서 이 패싯의 위치가 요청과 동일하며 동적 위치가 사용 설정된 패싯 및 모든 동적 패싯보다 순위가 높습니다.

예를 들어 항상 대답에 평가 패싯이 반환되기를 원하지만 평가 패싯을 항상 상단에 표시할 필요는 없습니다. 이 경우 응답의 평점 패싯 위치가 자동으로 결정되도록 enableDynamicPosition을 true로 설정할 수 있습니다.

또 다른 예로 요청에 다음 패싯이 있다고 가정해 보겠습니다.

  • 'rating', enableDynamicPosition = true

  • 'price', enableDynamicPosition = false

  • 'brands', enableDynamicPosition = false

또한 동적 패싯이 사용 설정되어 있어 패싯 gender가 생성됩니다. 그런 다음 응답의 최종 상품 속성 순서는 API가 '성별' 및 '평점' 상품 속성을 정렬하는 방식에 따라 ("가격", "브랜드", "평점", "성별") 또는 ("가격", "브랜드", "성별", "평점")이 될 수 있습니다. 하지만 enableDynamicPosition이 false이므로 'price'와 'brands'는 항상 1위와 2위로 표시됩니다.

FacetKey

패싯을 계산하는 방법을 지정합니다.

JSON 표현
{
  "key": string,
  "intervals": [
    {
      object (Interval)
    }
  ],
  "restrictedValues": [
    string
  ],
  "prefixes": [
    string
  ],
  "contains": [
    string
  ],
  "caseInsensitive": boolean,
  "orderBy": string
}
필드
key

string

필수 항목입니다. Document 객체에서 지원되는 텍스트 및 숫자 패싯 키로, 이 키를 기준으로 패싯 값이 계산됩니다. 패싯 키는 대소문자를 구분합니다.

intervals[]

object (Interval)

값을 간격으로 버킷팅해야 하는 경우에만 설정합니다. 숫자 값이 있는 패싯에 설정해야 합니다. 텍스트 값이 있는 패싯에 설정하면 안 됩니다. 최대 간격 수는 30입니다.

restrictedValues[]

string

지정된 제한된 값에 대한 패싯만 가져옵니다. 텍스트 필드에서만 지원됩니다. 예를 들어 'category'에 'Action > 2022', 'Action > 2021', 'Sci-Fi > 2022'라는 세 가지 값이 있다고 가정해 보겠습니다. 'restrictedValues'를 'Action > 2022'로 설정하면 'category' 패싯에는 'Action > 2022'만 포함됩니다. 텍스트 필드에서만 지원됩니다. 최댓값은 10입니다.

prefixes[]

string

지정된 문자열 프리픽스로 시작하는 패싯 값만 가져옵니다. 예를 들어 'category'에 'Action > 2022', 'Action > 2021', 'Sci-Fi > 2022'라는 세 가지 값이 있다고 가정해 보겠습니다. 'prefixes'를 'Action'으로 설정하면 'category' 패싯에는 'Action > 2022' 및 'Action > 2021'만 포함됩니다. 텍스트 필드에서만 지원됩니다. 최댓값은 10입니다.

contains[]

string

지정된 문자열이 포함된 패싯 값만 가져옵니다. 예를 들어 'category'에 'Action > 2022', 'Action > 2021', 'Sci-Fi > 2022'라는 세 가지 값이 있다고 가정해 보겠습니다. 'contains'를 '2022'로 설정하면 'category' 패싯에는 'Action > 2022' 및 'Sci-Fi > 2022'만 포함됩니다. 텍스트 필드에서만 지원됩니다. 최댓값은 10입니다.

caseInsensitive

boolean

접두사 또는 포함으로 패싯 값을 가져올 때 패싯 키를 대소문자를 구분하지 않도록 하려면 true이고, 그렇지 않으면 false입니다.

orderBy

string

문서가 반환되는 순서입니다.

허용되는 값은 다음과 같습니다.

설정하지 않으면 텍스트 값은 일반적인 순서로 정렬되고, 숫자 간격은 FacetSpec.FacetKey.intervals에 의해 지정된 순서로 정렬됩니다.

간격

부동 소수점 간격입니다.

JSON 표현
{

  // Union field min can be only one of the following:
  "minimum": number,
  "exclusiveMinimum": number
  // End of list of possible types for union field min.

  // Union field max can be only one of the following:
  "maximum": number,
  "exclusiveMaximum": number
  // End of list of possible types for union field max.
}
필드

통합 필드 min. 간격의 하한입니다. min 필드가 모두 설정되지 않은 경우 하한값은 음수의 무한대입니다.

이 필드는 최댓값보다 크면 안 됩니다. 그렇지 않으면 INVALID_ARGUMENT 오류가 반환됩니다. min은 다음 중 하나여야 합니다.

minimum

number

하한값을 포함합니다.

exclusiveMinimum

number

하한값을 제외합니다.

통합 필드 max. 간격의 상한입니다. max 필드가 모두 설정되지 않은 경우 상한값은 양수의 무한대입니다.

이 필드는 최솟값보다 작으면 안 됩니다. 그렇지 않으면 INVALID_ARGUMENT 오류가 반환됩니다. max은 다음 중 하나여야 합니다.

maximum

number

상한값을 포함합니다.

exclusiveMaximum

number

상한값을 제외합니다.

QueryExpansionSpec

쿼리 확장이 수행되는 조건을 결정하는 사양입니다.

JSON 표현
{
  "condition": enum (Condition),
  "pinUnexpandedResults": boolean
}
필드
condition

enum (Condition)

쿼리 확장이 수행되는 조건입니다. 기본값은 Condition.DISABLED입니다.

pinUnexpandedResults

boolean

확장되지 않은 결과를 고정할지 여부입니다. 이 필드를 true로 설정하면 비확장 제품이 항상 검색 결과 상단에 표시되고 그 아래에 확장된 결과가 표시됩니다.

조건

쿼리 확장이 수행되는 조건을 설명하는 열거형입니다.

열거형
CONDITION_UNSPECIFIED 지정되지 않은 검색어 확장 조건입니다. 이 경우 서버 동작은 기본적으로 Condition.DISABLED입니다.
DISABLED 검색어 확장이 사용 중지되었습니다. SearchResponse.total_size가 0이더라도 정확한 검색어만 사용됩니다.
AUTO Search API에서 빌드한 자동 검색어 확장입니다.

SpellCorrectionSpec

질문 맞춤법 수정 사양입니다.

JSON 표현
{
  "mode": enum (Mode)
}
필드
mode

enum (Mode)

맞춤법 수정이 원래 검색어를 대체하는 모드입니다. 기본값은 Mode.AUTO입니다.

모드

맞춤법 수정이 수행되는 모드를 설명하는 열거형입니다.

열거형
MODE_UNSPECIFIED 지정되지 않은 맞춤법 수정 모드입니다. 이 경우 서버 동작은 기본적으로 Mode.AUTO입니다.
SUGGESTION_ONLY Search API는 맞춤법 제안을 찾으려고 시도합니다. 추천이 발견되면 SearchResponse.corrected_query에 배치됩니다. 맞춤법 추천은 검색어로 사용되지 않습니다.
AUTO Search API에서 빌드한 자동 맞춤법 검사입니다. 수정된 질문이 있으면 이를 기반으로 검색이 진행됩니다.

EmbeddingSpec

맞춤 쿼리 임베딩 벡터를 사용하여 시맨틱 문서 검색을 실행하는 사양입니다.

JSON 표현
{
  "embeddingVectors": [
    {
      object (EmbeddingVector)
    }
  ]
}
필드
embeddingVectors[]

object (EmbeddingVector)

검색에 사용되는 임베딩 벡터입니다. 1개로 제한

EmbeddingVector

임베딩 벡터입니다.

JSON 표현
{
  "fieldPath": string,
  "vector": [
    number
  ]
}
필드
fieldPath

string

스키마의 임베딩 필드 경로입니다.

vector[]

number

임베딩 벡터를 쿼리합니다.

RankingExpressionBackend

순위 표현식 평가에 사용할 백엔드입니다.

열거형
RANKING_EXPRESSION_BACKEND_UNSPECIFIED 지정되지 않은/알 수 없는 값의 기본 옵션입니다.
BYOE

지원 중단됨: 대신 RANK_BY_EMBEDDING을 사용하세요. 맞춤 임베딩 모델을 사용한 순위 지정(순위 표현식을 평가하는 기본 방법) 레거시 enum 옵션입니다. 대신 RANK_BY_EMBEDDING를 사용해야 합니다.

CLEARBOX

지원 중단됨: 대신 RANK_BY_FORMULA을 사용하세요. 맞춤 수식으로 순위 지정 레거시 enum 옵션입니다. 대신 RANK_BY_FORMULA를 사용해야 합니다.

RANK_BY_EMBEDDING 맞춤 임베딩 모델을 사용한 순위 지정(순위 표현식을 평가하는 기본 방법)
RANK_BY_FORMULA 맞춤 수식으로 순위 지정

NaturalLanguageQueryUnderstandingSpec

검색 요청에 자연어 이해 기능을 사용 설정하기 위한 사양입니다.

JSON 표현
{
  "filterExtractionCondition": enum (FilterExtractionCondition),
  "geoSearchQueryDetectionFieldNames": [
    string
  ],
  "extractedFilterBehavior": enum (ExtractedFilterBehavior),
  "allowedFieldNames": [
    string
  ]
}
필드
filterExtractionCondition

enum (FilterExtractionCondition)

필터 추출이 수행되는 조건입니다. 서버 동작은 기본적으로 DISABLED입니다.

geoSearchQueryDetectionFieldNames[]

string

자연어 검색 쿼리에서 위치정보 필터가 감지되는 경우 위치 기반 필터링에 사용되는 필드 이름입니다. FilterExtractionCondition이 ENABLED로 설정된 경우에만 유효합니다.

이 필드가 설정되면 ServingConfig.geo_search_query_detection_field_names에 설정된 필드 이름을 재정의합니다.

extractedFilterBehavior

enum (ExtractedFilterBehavior)

(선택사항) 추출된 필터가 검색에 적용되는 방식을 제어합니다. 기본 동작은 요청에 따라 달라집니다. 단일 데이터 스토어 구조화된 검색의 경우 기본값은 HARD_FILTER입니다. 다중 데이터 스토어 검색의 경우 기본 동작은 SOFT_BOOST입니다. 위치 기반 필터는 항상 하드 필터로 적용되며 SOFT_BOOST 설정이 영향을 미치지 않습니다. 이 필드는 [SearchRequest.natural_language_query_understanding_spec.filter_extraction_condition][] 이 FilterExtractionCondition.ENABLED로 설정된 경우에만 사용됩니다.

allowedFieldNames[]

string

(선택사항) 자연어 필터 추출에 사용할 수 있는 필드의 허용 목록입니다. 기본적으로 지정되지 않은 경우 색인 생성 가능한 모든 필드가 자연어 필터 추출에 적합합니다 (하지만 사용이 보장되지는 않음). allowedFieldNames에 필드가 지정된 경우 스키마에서 색인 생성 가능으로 표시되고 허용 목록에 지정된 필드만 자연어 필터 추출에 적합합니다. 참고: 멀티 데이터 스토어 검색의 경우 아직 지원되지 않으며 무시됩니다.

FilterExtractionCondition

필터 추출이 수행되는 조건을 설명하는 열거형입니다.

열거형
CONDITION_UNSPECIFIED 서버 동작은 기본적으로 DISABLED입니다.
DISABLED NL 필터 추출을 사용 중지합니다.
ENABLED NL 필터 추출을 사용 설정합니다.

ExtractedFilterBehavior

추출된 필터가 검색에 적용되는 방식을 설명하는 열거형입니다.

열거형
EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED는 추출된 필터에 기본 동작을 사용합니다. 단일 데이터 스토어 검색의 경우 기본적으로 하드 필터로 적용됩니다. 다중 데이터 스토어 검색의 경우 기본적으로 소프트 부스트로 적용됩니다.
HARD_FILTER 추출된 모든 필터를 결과에 하드 필터로 적용합니다. 추출된 필터를 통과하지 못한 결과는 결과 집합에 반환되지 않습니다.
SOFT_BOOST 추출된 모든 필터를 소프트 부스트로 적용합니다. 필터를 통과한 결과는 결과 세트에서 더 높은 순위로 올라갑니다.

SearchAsYouTypeSpec

검색 요청에서 입력 시 검색을 위한 사양입니다.

JSON 표현
{
  "condition": enum (Condition)
}
필드
condition

enum (Condition)

실시간 검색이 수행되는 조건입니다. 기본값은 Condition.DISABLED입니다.

조건

입력 시 검색이 수행되는 조건을 설명하는 열거형입니다.

열거형
CONDITION_UNSPECIFIED 서버 동작은 기본적으로 Condition.DISABLED입니다.
DISABLED 실시간 검색을 사용 중지합니다.
ENABLED 입력과 동시에 검색을 사용 설정합니다.
AUTO 입력과 동시에 검색 모드와 표준 검색 모드 간 자동 전환으로, 단일 API 구현 (예: 디바운싱)에 적합합니다.

DisplaySpec

일치 강조 표시와 같은 표시할 기능을 지정합니다.

JSON 표현
{
  "matchHighlightingCondition": enum (MatchHighlightingCondition)
}
필드
matchHighlightingCondition

enum (MatchHighlightingCondition)

일치 항목 강조 표시가 수행되는 조건입니다.

MatchHighlightingCondition

일치 항목 강조 표시가 수행되는 조건을 설명하는 열거형입니다.

열거형
MATCH_HIGHLIGHTING_CONDITION_UNSPECIFIED 서버 동작은 MATCH_HIGHLIGHTING_DISABLED와 동일합니다.
MATCH_HIGHLIGHTING_DISABLED 모든 문서에서 일치 항목 강조 표시를 사용 중지합니다.
MATCH_HIGHLIGHTING_ENABLED 모든 문서에서 일치 항목 강조 표시를 사용 설정합니다.

SessionSpec

세션 사양입니다.

다중 턴 검색 기능은 현재 비공개 GA 단계에 있습니다. 이 기능이 공개 GA로 출시되기 전에 v1alpha 또는 v1beta 버전을 사용하거나 Google 지원팀을 통해 허용 목록에 추가해 달라고 요청하세요.

JSON 표현
{
  "queryId": string,
  "searchResultPersistenceCount": integer
}
필드
queryId

string

설정된 경우 검색 결과는 이 쿼리 ID로 지정된 '턴'에 저장됩니다.

예: 세션이 다음과 같다고 가정해 보겠습니다. session { name: ".../sessions/xxx" turns { query { text: "What is foo?" queryId: ".../questions/yyy" } answer: "Foo is ..." } turns { query { text: "How about bar then?" queryId: ".../questions/zzz" } } }

사용자는 다음과 같은 요청으로 /search API를 호출할 수 있습니다.

session: ".../sessions/xxx" sessionSpec { queryId: ".../questions/zzz" }

그런 다음 API는 마지막 턴과 연결된 검색 결과를 저장합니다. 저장된 검색 결과는 세션 ID와 질문 ID가 지정된 후속 /answer API 호출에서 사용할 수 있습니다. 또한 동일한 세션 ID 및 질문 ID로 /search와 /answer를 동시에 호출할 수 있습니다.

searchResultPersistenceCount

integer

유지할 상위 검색 결과의 수입니다. 지속된 검색 결과는 후속 /answer API 호출에 사용할 수 있습니다.

이 필드는 SearchRequest.ContentSearchSpec.SummarySpec.summary_result_countsummaryResultCount 필드와 유사합니다.

문서 모드의 경우 최대 10개, 청크 모드의 경우 최대 50개의 결과가 표시됩니다.

RelevanceThreshold

검색 결과의 관련성 기준점입니다. 관련성 기준이 높을수록 더 관련성 있는 결과가 표시되고 반환되는 결과 수는 줄어듭니다.

열거형
RELEVANCE_THRESHOLD_UNSPECIFIED 기본값 이 경우 서버 동작은 Google 정의 기준점으로 기본 설정됩니다.
LOWEST 관련성 기준이 가장 낮습니다.
LOW 관련성 기준이 낮습니다.
MEDIUM 관련성 기준이 보통입니다.
HIGH 관련성 기준이 높습니다.

RelevanceScoreSpec

문서 관련성 점수를 반환하기 위한 사양입니다.

JSON 표현
{
  "returnRelevanceScore": boolean
}
필드
returnRelevanceScore

boolean

(선택사항) 검색 결과의 관련성 점수를 반환할지 여부입니다. 점수가 높을수록 문서가 질문과 관련성이 높습니다.

SearchAddonSpec

SearchAddonSpec은 새로운 가격 재산정 모델에 따라 검색의 부가기능을 사용 중지하는 데 사용됩니다. 기본적으로 SearchAddonSpec이 지정되지 않은 경우 고객이 해당되는 모든 위치에서 이를 사용 설정하기를 원하는 것으로 간주합니다.

JSON 표현
{
  "disableSemanticAddOn": boolean,
  "disableKpiPersonalizationAddOn": boolean,
  "disableGenerativeAnswerAddOn": boolean
}
필드
disableSemanticAddOn

boolean

(선택사항) true인 경우 시맨틱 부가기능이 사용 중지됩니다. 시맨틱 부가기능에는 임베딩과 Jetstream이 포함됩니다.

disableKpiPersonalizationAddOn

boolean

(선택사항) true인 경우 KPI를 최적화하고 결과를 맞춤설정하기 위해 이벤트 재순위 지정 및 맞춤설정을 사용 중지합니다.

disableGenerativeAnswerAddOn

boolean

(선택사항) true인 경우 생성형 대답 부가기능이 사용 중지됩니다. 생성형 답변 부가기능에는 필터링 및 간단한 답변을 위한 자연어가 포함됩니다.

QuerySetSpec

쿼리 세트의 사양을 설명합니다.

JSON 표현
{
  "sampleQuerySet": string
}
필드
sampleQuerySet

string

(선택사항) 평가에 사용된 SampleQuerySet의 전체 리소스 이름으로, projects/{project}/locations/{location}/sampleQuerySets/{sampleQuerySet} 형식입니다.

QualityMetrics

평가에서 생성된 측정항목을 설명합니다.

JSON 표현
{
  "docRecall": {
    object (TopkMetrics)
  },
  "docPrecision": {
    object (TopkMetrics)
  },
  "docNdcg": {
    object (TopkMetrics)
  },
  "pageRecall": {
    object (TopkMetrics)
  },
  "pageNdcg": {
    object (TopkMetrics)
  }
}
필드
docRecall

object (TopkMetrics)

다양한 Top-K 컷오프 수준에서 문서당 재현율입니다.

재현율은 모든 관련 문서로부터 검색된 관련 문서의 비율입니다.

예 (상위 5개): * 단일 SampleQuery의 경우 상위 5개에서 5개의 관련 문서 중 3개가 검색되면 재현율@5 = 3/5 = 0.6

docPrecision

object (TopkMetrics)

다양한 Top-K 컷오프 수준에서 문서당 정밀도입니다.

정밀도는 관련성 있는 검색된 문서의 비율입니다.

예 (상위 5개): * 단일 SampleQuery의 경우 상위 5개에서 검색된 문서 5개 중 4개가 관련성이 있으면 precision@5 = 4/5 = 0.8입니다.

docNdcg

object (TopkMetrics)

다양한 Top-K 컷오프 수준에서 문서당 정규화된 할인 누적 이득(NDCG)입니다.

NDCG는 순위 품질을 측정하고 최상위 결과에 높은 관련성을 부여합니다.

예 (상위 3개): 검색된 문서가 3개 (D1, D2, D3)이고 관련성 판단이 바이너리 (관련된 경우 1, 관련되지 않은 경우 0)인 SampleQuery를 가정해 보겠습니다.

검색된 문서: [D3 (0), D1 (1), D2 (1)] 이상적인 문서: [D1 (1), D2 (1), D3 (0)]

SampleQueryNDCG@3을 계산합니다. * DCG@3: 0/log2(1+1) + 1/log2(2+1) + 1/log2(3+1) = 1.13 * 이상적인 DCG@3: 1/log2(1+1) + 1/log2(2+1) + 0/log2(3+1) = 1.63 * NDCG@3: 1.13/1.63 = 0.693

pageRecall

object (TopkMetrics)

다양한 Top-K 컷오프 수준에서 페이지당 재현율입니다.

재현율은 모든 관련 페이지 중에서 검색된 관련 페이지의 비율입니다.

예 (상위 5개): * 단일 SampleQuery의 경우 상위 5개에서 5개의 관련 페이지 중 3개가 검색되면 recall@5 = 3/5 = 0.6

pageNdcg

object (TopkMetrics)

다양한 Top-K 컷오프 수준에서 페이지당 정규화된 할인 누적 이득(NDCG)입니다

NDCG는 순위 품질을 측정하고 최상위 결과에 높은 관련성을 부여합니다.

예 (상위 3개): 검색된 페이지가 3개 (P1, P2, P3)이고 바이너리 관련성 판단 (관련성 있는 경우 1, 관련성 없는 경우 0)이 있는 SampleQuery를 가정해 보겠습니다.

가져온 항목: [P3 (0), P1 (1), P2 (1)] 이상적인 항목: [P1 (1), P2 (1), P3 (0)]

SampleQueryNDCG@3 계산: * DCG@3: 0/log2(1+1) + 1/log2(2+1) + 1/log2(3+1) = 1.13 * 이상적인 DCG@3: 1/log2(1+1) + 1/log2(2+1) + 0/log2(3+1) = 1.63 * NDCG@3: 1.13/1.63 = 0.693

TopkMetrics

특정 상위 k 수준에서 측정항목 값을 저장합니다.

JSON 표현
{
  "top1": number,
  "top3": number,
  "top5": number,
  "top10": number
}
필드
top1

number

상위 1개 값입니다.

top3

number

상위 3개 값입니다.

top5

number

상위 5개 값입니다.

top10

number

상위 10개 값입니다.

평가의 상태를 설명합니다.

열거형
STATE_UNSPECIFIED 평가가 지정되지 않았습니다.
PENDING 서비스가 평가를 실행할 준비를 하고 있습니다.
RUNNING 평가가 진행 중입니다.
SUCCEEDED 평가가 완료되었습니다.
FAILED 평가에 실패했습니다.

메서드

create

Evaluation를 만듭니다.

get

Evaluation을 가져옵니다.

list

Evaluation 목록을 가져옵니다.

listResults

지정된 Evaluation의 결과 목록을 가져옵니다.