SearchResponse

SearchService.Search 메서드의 응답 메시지입니다.

JSON 표현
{
  "results": [
    {
      object (SearchResult)
    }
  ],
  "facets": [
    {
      object (Facet)
    }
  ],
  "guidedSearchResult": {
    object (GuidedSearchResult)
  },
  "totalSize": integer,
  "attributionToken": string,
  "redirectUri": string,
  "nextPageToken": string,
  "correctedQuery": string,
  "suggestedQuery": string,
  "summary": {
    object (Summary)
  },
  "appliedControls": [
    string
  ],
  "geoSearchDebugInfo": [
    {
      object (GeoSearchDebugInfo)
    }
  ],
  "queryExpansionInfo": {
    object (QueryExpansionInfo)
  },
  "naturalLanguageQueryUnderstandingInfo": {
    object (NaturalLanguageQueryUnderstandingInfo)
  },
  "sessionInfo": {
    object (SessionInfo)
  },
  "oneBoxResults": [
    {
      object (OneBoxResult)
    }
  ],
  "searchLinkPromotions": [
    {
      object (SearchLinkPromotion)
    }
  ]
}
필드
results[]

object (SearchResult)

일치하는 문서 목록입니다. 순서는 순위를 나타냅니다.

facets[]

object (Facet)

사용자가 요청한 패싯의 결과입니다.

guidedSearchResult

object (GuidedSearchResult)

안내식 검색 결과입니다.

totalSize

integer

페이지로 나누기와 관계없이 일치하는 항목의 예상 총 개수입니다. 페이지로 나누기를 통해 반환된 results 수가 일치하는 totalSize보다 적을 수 있습니다.

attributionToken

string

고유한 검색 토큰입니다. 이 토큰은 검색으로 인해 발생한 UserEvent 로그에 포함되어야 하며, 이를 통해 검색 모델 성능을 정확하게 기여 분석할 수 있습니다. 또한 고객 지원 시나리오에서 요청을 식별하는 데도 도움이 됩니다.

redirectUri

string

고객 정의 리디렉션 페이지의 URI입니다. 리디렉션 작업이 트리거되면 검색이 실행되지 않으며 응답에 redirectUriattributionToken만 설정됩니다.

nextPageToken

string

다음 페이지를 검색하기 위해 SearchRequest.page_token으로 전송할 수 있는 토큰입니다. 이 필드를 생략하면 후속 페이지가 표시되지 않습니다.

correctedQuery

string

맞춤법이 수정된 질문을 포함합니다(있는 경우). 맞춤법 수정 유형이 AUTOMATIC인 경우 검색 결과는 correctedQuery를 기반으로 합니다. 그렇지 않으면 검색에 원래 쿼리가 사용됩니다.

suggestedQuery

string

신뢰도가 낮은 수정된 질문, 즉 '다음과 같은 뜻인가요?' 질문입니다. correctedQuery와 비교할 때 이 필드는 SpellCorrector가 응답을 반환했지만 수정의 신뢰도가 낮아 FPR(전체 페이지 대체)이 트리거되지 않은 경우(예: 문서 말뭉치에 원래 쿼리와 일치하는 항목이 있어 반전됨) 설정됩니다.

summary

object (Summary)

검색 결과의 일부로 표시되는 요약 이 필드는 SearchRequest.ContentSearchSpec.summary_spec이 설정된 경우에만 반환됩니다.

appliedControls[]

string

제어 서비스의 일부로 적용되는 컨트롤입니다.

geoSearchDebugInfo[]

object (GeoSearchDebugInfo)

queryExpansionInfo

object (QueryExpansionInfo)

반환된 결과의 검색어 확장 정보입니다.

naturalLanguageQueryUnderstandingInfo

object (NaturalLanguageQueryUnderstandingInfo)

반환된 결과의 자연어 쿼리 이해 정보입니다.

sessionInfo

object (SessionInfo)

세션 정보입니다.

SearchRequest.session이 제공된 경우에만 설정됩니다. 자세한 내용은 설명을 참고하세요.

oneBoxResults[]

object (OneBoxResult)

원박스 결과 목록입니다. 다양한 유형의 원박스 결과가 여러 개 있을 수 있습니다.

패싯

패싯 결과입니다.

JSON 표현
{
  "key": string,
  "values": [
    {
      object (FacetValue)
    }
  ],
  "dynamicFacet": boolean
}
필드
key

string

이 패싯의 키입니다. 예를 들면 "colors" 또는 "price"입니다. SearchRequest.FacetSpec.FacetKey.key와 일치합니다.

values[]

object (FacetValue)

이 필드의 패싯 값입니다.

dynamicFacet

boolean

패싯이 동적으로 생성되는지 여부입니다.

FacetValue

값 이름과 개수가 포함된 패싯 값입니다.

JSON 표현
{
  "count": string,

  // Union field facet_value can be only one of the following:
  "value": string,
  "interval": {
    object (Interval)
  }
  // End of list of possible types for union field facet_value.
}
필드
count

string (int64 format)

이 패싯 값이 있는 항목의 수입니다.

통합 필드 facet_value. 값이 포함된 패싯 값입니다. facet_value은 다음 중 하나여야 합니다.
value

string

패싯의 텍스트 값입니다(예: 'colors' 패싯의 'Black').

interval

object (Interval)

패싯의 간격 값입니다(예: '가격' 패싯의 경우 [10, 20)). SearchRequest.FacetSpec.FacetKey.intervals와 일치합니다.

GuidedSearchResult

안내식 검색 결과입니다. 안내 검색을 통해 사용자는 검색 결과를 구체화하고 광범위한 검색 결과에서 실제 필요에 맞게 좁힐 수 있습니다.

JSON 표현
{
  "refinementAttributes": [
    {
      object (RefinementAttribute)
    }
  ],
  "followUpQuestions": [
    string
  ]
}
필드
refinementAttributes[]

object (RefinementAttribute)

순위가 지정된 세부검색 속성 목록입니다.

followUpQuestions[]

string

추천 후속 질문

RefinementAttribute

검색 결과 개선에 유용한 속성입니다.

JSON 표현
{
  "attributeKey": string,
  "attributeValue": string
}
필드
attributeKey

string

결과를 상세검색하는 데 사용되는 속성 키입니다. 예를 들면 "movie_type"입니다.

attributeValue

string

결과를 상세검색하는 데 사용되는 속성 값입니다. 예를 들면 "drama"입니다.

GeoSearchDebugInfo

위치정보 검색에서 발생하는 정방향 지오코딩 문제와 관련된 디버그 정보입니다.

JSON 표현
{
  "originalAddressQuery": string,
  "errorMessage": string
}
필드
originalAddressQuery

string

정방향 지오코딩 수집으로 인해 문제가 발생한 주소입니다.

errorMessage

string

발생한 오류입니다.

QueryExpansionInfo

확장이 발생했는지 여부를 비롯한 검색어 확장을 설명하는 정보입니다.

JSON 표현
{
  "expandedQuery": boolean,
  "pinnedResultCount": string
}
필드
expandedQuery

boolean

쿼리 확장이 발생했는지 여부를 나타내는 부울입니다.

pinnedResultCount

string (int64 format)

고정된 결과 수입니다. 이 필드는 확장되고 SearchRequest.QueryExpansionSpec.pin_unexpanded_results이 true로 설정된 경우에만 설정됩니다.

NaturalLanguageQueryUnderstandingInfo

입력 쿼리에 대해 실행된 자연어 이해를 설명하는 정보입니다.

JSON 표현
{
  "extractedFilters": string,
  "rewrittenQuery": string,
  "classifiedIntents": [
    string
  ],
  "structuredExtractedFilter": {
    object (StructuredExtractedFilter)
  }
}
필드
extractedFilters

string

입력 쿼리에서 추출된 필터입니다.

rewrittenQuery

string

추출된 필터를 제외하고 다시 작성된 입력 쿼리입니다.

classifiedIntents[]

string

입력 쿼리에서 분류된 의도입니다.

structuredExtractedFilter

object (StructuredExtractedFilter)

구조화된 형식으로 표현된 입력 쿼리에서 추출된 필터입니다.

StructuredExtractedFilter

구조화된 형식으로 표현된 입력 쿼리에서 추출된 필터입니다.

JSON 표현
{
  "expression": {
    object (Expression)
  }
}
필드
expression

object (Expression)

구조화된 형식으로 입력 쿼리에서 추출된 필터를 나타내는 표현식입니다. 단일 문자열, 숫자 또는 지리적 위치 제약 조건을 나타내는 간단한 표현식일 수도 있고, 논리 (OR 및 AND) 연산자를 사용하여 연결된 여러 표현식의 조합인 복합 표현식일 수도 있습니다.

표현식

입력 쿼리에서 추출된 필터를 나타내는 표현식입니다.

JSON 표현
{

  // Union field expr can be only one of the following:
  "stringConstraint": {
    object (StringConstraint)
  },
  "numberConstraint": {
    object (NumberConstraint)
  },
  "geolocationConstraint": {
    object (GeolocationConstraint)
  },
  "andExpr": {
    object (AndExpression)
  },
  "orExpr": {
    object (OrExpression)
  }
  // End of list of possible types for union field expr.
}
필드
통합 필드 expr. 표현식 유형입니다. expr은 다음 중 하나여야 합니다.
stringConstraint

object (StringConstraint)

문자열 제약 조건 표현식입니다.

numberConstraint

object (NumberConstraint)

숫자 제약 조건 표현식입니다.

geolocationConstraint

object (GeolocationConstraint)

위치정보 제약 조건 표현식입니다.

andExpr

object (AndExpression)

여러 표현식을 연결하는 논리적 'And' 복합 연산자입니다.

orExpr

object (OrExpression)

여러 표현식을 연결하는 논리 'Or' 복합 연산자입니다.

StringConstraint

문자열 필드의 제약 조건 표현식입니다.

JSON 표현
{
  "fieldName": string,
  "values": [
    string
  ],
  "querySegment": string
}
필드
fieldName

string

스키마에 정의된 문자열 필드의 이름입니다.

values[]

string

문자열 필드의 값입니다. 필드 값이 여기에 지정된 값 중 하나와 일치하는 경우에만 레코드가 반환됩니다.

querySegment

string

필터와 일치하는 검색어 내 키워드를 식별합니다.

NumberConstraint

숫자 필드의 제약 조건 표현식입니다. 예: price < 100

JSON 표현
{
  "fieldName": string,
  "comparison": enum (Comparison),
  "value": number,
  "querySegment": string
}
필드
fieldName

string

스키마에 정의된 숫자 필드의 이름입니다.

comparison

enum (Comparison)

필드 값과 제약 조건에 지정된 값 간에 실행된 비교 작업입니다.

value

number

숫자 제약 조건에 지정된 값입니다.

querySegment

string

필터와 일치하는 검색어 내 키워드를 식별합니다.

비교

실행된 비교 작업입니다.

열거형
COMPARISON_UNSPECIFIED 정의되지 않은 비교 연산자입니다.
EQUALS = 등호 연산자를 나타냅니다.
LESS_THAN_EQUALS <= 연산자 이하를 나타냅니다.
LESS_THAN < 미만 연산자를 나타냅니다.
GREATER_THAN_EQUALS >= 연산자보다 크거나 같음을 나타냅니다.
GREATER_THAN > 연산자보다 큼을 나타냅니다.

GeolocationConstraint

위치정보 필드의 제약 조건입니다. 스키마에 정의된 위치정보 필드의 이름입니다.

JSON 표현
{
  "fieldName": string,
  "address": string,
  "latitude": number,
  "longitude": number,
  "radiusInMeters": number
}
필드
fieldName

string

스키마에 정의된 위치정보 필드의 이름입니다.

address

string

입력 쿼리에서 추론된 참조 주소입니다. 위치정보 필드에 대한 참조 주소의 근접성이 결과를 필터링하는 데 사용됩니다.

latitude

number

입력 쿼리에서 추론된 위치정보의 위도입니다.

longitude

number

입력 쿼리에서 추론된 위치정보의 경도입니다.

radiusInMeters

number

주소 주변의 반경(미터)입니다. 위치 정보 필드의 위치가 반경 내에 있으면 레코드가 반환됩니다.

AndExpression

논리 And 연산자입니다.

JSON 표현
{
  "expressions": [
    {
      object (Expression)
    }
  ]
}
필드
expressions[]

object (Expression)

AND로 결합된 표현식입니다.

OrExpression

논리 Or 연산자입니다.

JSON 표현
{
  "expressions": [
    {
      object (Expression)
    }
  ]
}
필드
expressions[]

object (Expression)

OR로 결합된 표현식입니다.

SessionInfo

세션에 관한 정보입니다.

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

string

세션 이름입니다. 자동 세션 모드를 사용하는 경우 (SearchRequest.session가 '-'로 끝나는 경우) 이 필드에는 새로 생성된 세션 이름이 저장됩니다.

queryId

string

이 검색 API 호출에 해당하는 쿼리 ID입니다. 하나의 세션에 여러 턴이 있을 수 있으며 각 턴에는 고유한 쿼리 ID가 있습니다.

Answer API 호출에서 세션 이름과 이 쿼리 ID를 지정하면 이 검색 호출의 검색 결과 컨텍스트에서 답변이 생성됩니다.

OneBoxResult

OneBoxResult는 UI에 다르게 표시하려는 특정 유형의 모든 결과를 보유합니다.

JSON 표현
{
  "oneBoxType": enum (OneBoxType),
  "searchResults": [
    {
      object (SearchResult)
    }
  ]
}
필드
oneBoxType

enum (OneBoxType)

One box 결과의 유형입니다.

searchResults[]

object (SearchResult)

이 하나의 검색창의 검색 결과입니다.

OneBoxType

One box 결과의 유형입니다.

열거형
ONE_BOX_TYPE_UNSPECIFIED 기본값 사용해서는 안 됩니다.
PEOPLE 한 상자 결과에 인물 검색 결과가 포함되어 있습니다.
ORGANIZATION 하나의 상자 결과에는 조직 결과가 포함됩니다.
SLACK 한 상자 결과에 슬랙 결과가 포함되어 있습니다.
KNOWLEDGE_GRAPH OneBox 결과에는 지식 그래프 검색 응답이 포함됩니다.