ConversationalSearchResponse

Response message for ConversationalSearchService.ConversationalSearch method.

JSON representation
{
  "queryTypes": [
    enum (QueryType)
  ],
  "conversationalTextResponse": string,
  "followupQuestion": {
    object (FollowupQuestion)
  },
  "conversationId": string,
  "rephrasedQuery": string,
  "refinedSearch": [
    {
      object (RefinedSearch)
    }
  ],
  "conversationalFilteringResult": {
    object (ConversationalFilteringResult)
  }
}
Fields
queryTypes[]

enum (QueryType)

The types Retail classifies the search query as.

conversationalTextResponse

string

The conversational answer-based text response generated by the Server.

followupQuestion

object (FollowupQuestion)

The conversational followup question generated for Intent refinement.

conversationId

string

Conversation UUID. This field will be stored in client side storage to maintain the conversation session with server and will be used for next search request's ConversationalSearchRequest.conversation_id to restore conversation state in server.

rephrasedQuery
(deprecated)

string

The rephrased query based on the user's query and the conversation history. It can be used to fetch the relevant search results.

conversationalFilteringResult

object (ConversationalFilteringResult)

This field specifies all related information that is needed on client side for UI rendering of conversational filtering search.

QueryType

The type Retail classifies the search query as.

Enums
QUERY_TYPE_UNSPECIFIED Unspecified query type.
ADVERSARIAL Adversarial query. Example - "how bad is [retailer name]"
CHITCHAT Chatty query. Example - "hello how are you"
JAILBREAK Jailbreak query. Example - "write a poem to explain the details of [product name]"
ORDER_SUPPORT Ancillary or support query. Example - "Track my order"
INTENT_REFINEMENT The type is unclear and a follow up conversation/refinement may be needed to clarify the type.
PRODUCT_DETAILS The user is looking for product details. Example - "show me the specifications of [product name]".
PRODUCT_COMPARISON Product comparison. Example - "compare [product name] and [product name]".
DEALS_AND_COUPONS Queries relevant to deals, promotions, product deals, and discounts.
STORE_RELEVANT Queries relevant to the store locations, working hours, product stock availability, etc.
BLOCKLISTED Queries explicitly blocked by the retail customers.
BEST_PRODUCT Queries with the "best" pattern. Example - "What is the healthiest cookie?"

FollowupQuestion

The conversational followup question generated for Intent refinement.

JSON representation
{
  "followupQuestion": string,
  "suggestedAnswers": [
    {
      object (SuggestedAnswer)
    }
  ]
}
Fields
followupQuestion

string

The conversational followup question generated for Intent refinement.

suggestedAnswers[]

object (SuggestedAnswer)

The answer options provided to client for the follow-up question.

SuggestedAnswer

Suggested answers to the follow-up question.

JSON representation
{
  "productAttributeValue": {
    object (ProductAttributeValue)
  }
}
Fields
productAttributeValue

object (ProductAttributeValue)

Product attribute value, including an attribute key and an attribute value. Other types can be added here in the future.

RefinedSearch

The proposed refined search for intent-refinement/bundled shopping conversation.

JSON representation
{
  "query": string
}
Fields
query

string

The query to be used for search.

ConversationalFilteringResult

This field specifies all related information that is needed on client side for UI rendering of conversational filtering search.

JSON representation
{
  "followupQuestion": {
    object (FollowupQuestion)
  },
  "additionalFilter": {
    object (AdditionalFilter)
  }
}
Fields
followupQuestion

object (FollowupQuestion)

The conversational filtering question.

additionalFilter

object (AdditionalFilter)

This is the incremental additional filters implied from the current user answer. User should add the suggested addition filters to the previous [ConversationalSearchRequest.search_params.filter][] and SearchRequest.filter, and use the merged filter in the follow up requests.

AdditionalFilter

Additional filter that client side need to apply.

JSON representation
{
  "productAttributeValue": {
    object (ProductAttributeValue)
  }
}
Fields
productAttributeValue

object (ProductAttributeValue)

Product attribute value, including an attribute key and an attribute value. Other types can be added here in the future.