Google Cloud Discovery Engine V1beta Client - Class SearchRequest (0.8.0)

Reference documentation and code samples for the Google Cloud Discovery Engine V1beta Client class SearchRequest.

Request message for SearchService.Search method.

Generated from protobuf message google.cloud.discoveryengine.v1beta.SearchRequest

Namespace

Google \ Cloud \ DiscoveryEngine \ V1beta

Methods

__construct

Constructor.

Parameters
NameDescription
data array

Optional. Data for populating the Message object.

↳ serving_config string

Required. The resource name of the Search serving config, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/servingConfigs/default_serving_config. This field is used to identify the serving configuration name, set of models used to make the search.

↳ branch string

The branch resource name, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/branches/0. Use default_branch as the branch ID or leave this field empty, to search documents under the default branch.

↳ query string

Raw search query.

↳ image_query Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\ImageQuery

Raw image query.

↳ page_size int

Maximum number of Documents to return. If unspecified, defaults to a reasonable value. The maximum allowed value is 100. Values above 100 are coerced to 100. If this field is negative, an INVALID_ARGUMENT is returned.

↳ page_token string

A page token received from a previous SearchService.Search call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to SearchService.Search must match the call that provided the page token. Otherwise, an INVALID_ARGUMENT error is returned.

↳ offset int

A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Documents deemed by the API as relevant) in search results. This field is only considered if page_token is unset. If this field is negative, an INVALID_ARGUMENT is returned.

↳ filter string

The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. Filter expression is case-sensitive. If this field is unrecognizable, an INVALID_ARGUMENT is returned.

↳ order_by string

The order in which documents are returned. Documents can be ordered by a field in an Document object. Leave it unset if ordered by relevance. order_by expression is case-sensitive. If this field is unrecognizable, an INVALID_ARGUMENT is returned.

↳ user_info Google\Cloud\DiscoveryEngine\V1beta\UserInfo

Information about the end user. Highly recommended for analytics. UserInfo.user_agent is used to deduce device_type for analytics.

↳ facet_specs array<Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\FacetSpec>

Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an INVALID_ARGUMENT error is returned.

↳ boost_spec Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\BoostSpec

Boost specification to boost certain documents.

↳ params array|Google\Protobuf\Internal\MapField

Additional search parameters. For public website search only, supported values are: * user_country_code: string. Default empty. If set to non-empty, results are restricted or boosted based on the location provided. * search_type: double. Default empty. Enables non-webpage searching depending on the value. The only valid non-default value is 1, which enables image searching.

↳ query_expansion_spec Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\QueryExpansionSpec

The query expansion specification that specifies the conditions under which query expansion occurs.

↳ spell_correction_spec Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\SpellCorrectionSpec

The spell correction specification that specifies the mode under which spell correction takes effect.

↳ user_pseudo_id string

A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor logs in or out of the website. This field should NOT have a fixed value such as unknown_visitor. This should be the same identifier as UserEvent.user_pseudo_id and CompleteQueryRequest.user_pseudo_id The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

↳ content_search_spec Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\ContentSearchSpec

A specification for configuring the behavior of content search.

↳ embedding_spec Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\EmbeddingSpec

Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.embedding_spec.embedding_vectors.vector and the document embedding that is provided in SearchRequest.embedding_spec.embedding_vectors.field_path. If SearchRequest.embedding_spec.embedding_vectors.field_path is not provided, it will use ServingConfig.embedding_config.field_paths.

↳ ranking_expression string

The ranking expression controls the customized ranking on retrieval documents. This overrides ServingConfig.ranking_expression. The ranking expression is a single function or multiple functions that are joint by "+". * ranking_expression = function, { " + ", function }; Supported functions: * double * relevance_score * double * dotProduct(embedding_field_path) Function variables: relevance_score: pre-defined keywords, used for measure relevance between query and document. embedding_field_path: the document embedding field used with query embedding vector. dotProduct: embedding function between embedding_field_path and query embedding vector. Example ranking expression: If document has an embedding field doc_embedding, the ranking expression could be 0.5 * relevance_score + 0.3 * dotProduct(doc_embedding).

↳ safe_search bool

Whether to turn on safe search. This is only supported for website search.

↳ user_labels array|Google\Protobuf\Internal\MapField

The user labels applied to a resource must meet the following requirements: * Each resource can have multiple labels, up to a maximum of 64. * Each label must be a key-value pair. * Keys have a minimum length of 1 character and a maximum length of 63 characters and cannot be empty. Values can be empty and have a maximum length of 63 characters. * Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. All characters must use UTF-8 encoding, and international characters are allowed. * The key portion of a label must be unique. However, you can use the same key with multiple resources. * Keys must start with a lowercase letter or international character. See Google Cloud Document for more details.

getServingConfig

Required. The resource name of the Search serving config, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/servingConfigs/default_serving_config.

This field is used to identify the serving configuration name, set of models used to make the search.

Returns
TypeDescription
string

setServingConfig

Required. The resource name of the Search serving config, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/servingConfigs/default_serving_config.

This field is used to identify the serving configuration name, set of models used to make the search.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getBranch

The branch resource name, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/branches/0.

Use default_branch as the branch ID or leave this field empty, to search documents under the default branch.

Returns
TypeDescription
string

setBranch

The branch resource name, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/branches/0.

Use default_branch as the branch ID or leave this field empty, to search documents under the default branch.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getQuery

Raw search query.

Returns
TypeDescription
string

setQuery

Raw search query.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getImageQuery

Raw image query.

Returns
TypeDescription
Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\ImageQuery|null

hasImageQuery

clearImageQuery

setImageQuery

Raw image query.

Parameter
NameDescription
var Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\ImageQuery
Returns
TypeDescription
$this

getPageSize

Maximum number of Documents to return. If unspecified, defaults to a reasonable value. The maximum allowed value is 100. Values above 100 are coerced to 100.

If this field is negative, an INVALID_ARGUMENT is returned.

Returns
TypeDescription
int

setPageSize

Maximum number of Documents to return. If unspecified, defaults to a reasonable value. The maximum allowed value is 100. Values above 100 are coerced to 100.

If this field is negative, an INVALID_ARGUMENT is returned.

Parameter
NameDescription
var int
Returns
TypeDescription
$this

getPageToken

A page token received from a previous SearchService.Search call. Provide this to retrieve the subsequent page.

When paginating, all other parameters provided to SearchService.Search must match the call that provided the page token. Otherwise, an INVALID_ARGUMENT error is returned.

Returns
TypeDescription
string

setPageToken

A page token received from a previous SearchService.Search call. Provide this to retrieve the subsequent page.

When paginating, all other parameters provided to SearchService.Search must match the call that provided the page token. Otherwise, an INVALID_ARGUMENT error is returned.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getOffset

A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Documents deemed by the API as relevant) in search results. This field is only considered if page_token is unset.

If this field is negative, an INVALID_ARGUMENT is returned.

Returns
TypeDescription
int

setOffset

A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Documents deemed by the API as relevant) in search results. This field is only considered if page_token is unset.

If this field is negative, an INVALID_ARGUMENT is returned.

Parameter
NameDescription
var int
Returns
TypeDescription
$this

getFilter

The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. Filter expression is case-sensitive.

If this field is unrecognizable, an INVALID_ARGUMENT is returned.

Returns
TypeDescription
string

setFilter

The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. Filter expression is case-sensitive.

If this field is unrecognizable, an INVALID_ARGUMENT is returned.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getOrderBy

The order in which documents are returned. Documents can be ordered by a field in an Document object. Leave it unset if ordered by relevance. order_by expression is case-sensitive.

If this field is unrecognizable, an INVALID_ARGUMENT is returned.

Returns
TypeDescription
string

setOrderBy

The order in which documents are returned. Documents can be ordered by a field in an Document object. Leave it unset if ordered by relevance. order_by expression is case-sensitive.

If this field is unrecognizable, an INVALID_ARGUMENT is returned.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getUserInfo

Information about the end user.

Highly recommended for analytics. UserInfo.user_agent is used to deduce device_type for analytics.

Returns
TypeDescription
Google\Cloud\DiscoveryEngine\V1beta\UserInfo|null

hasUserInfo

clearUserInfo

setUserInfo

Information about the end user.

Highly recommended for analytics. UserInfo.user_agent is used to deduce device_type for analytics.

Parameter
NameDescription
var Google\Cloud\DiscoveryEngine\V1beta\UserInfo
Returns
TypeDescription
$this

getFacetSpecs

Facet specifications for faceted search. If empty, no facets are returned.

A maximum of 100 values are allowed. Otherwise, an INVALID_ARGUMENT error is returned.

Returns
TypeDescription
Google\Protobuf\Internal\RepeatedField

setFacetSpecs

Facet specifications for faceted search. If empty, no facets are returned.

A maximum of 100 values are allowed. Otherwise, an INVALID_ARGUMENT error is returned.

Parameter
NameDescription
var array<Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\FacetSpec>
Returns
TypeDescription
$this

getBoostSpec

Boost specification to boost certain documents.

Returns
TypeDescription
Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\BoostSpec|null

hasBoostSpec

clearBoostSpec

setBoostSpec

Boost specification to boost certain documents.

Parameter
NameDescription
var Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\BoostSpec
Returns
TypeDescription
$this

getParams

Additional search parameters.

For public website search only, supported values are:

  • user_country_code: string. Default empty. If set to non-empty, results are restricted or boosted based on the location provided.
  • search_type: double. Default empty. Enables non-webpage searching depending on the value. The only valid non-default value is 1, which enables image searching.
Returns
TypeDescription
Google\Protobuf\Internal\MapField

setParams

Additional search parameters.

For public website search only, supported values are:

  • user_country_code: string. Default empty. If set to non-empty, results are restricted or boosted based on the location provided.
  • search_type: double. Default empty. Enables non-webpage searching depending on the value. The only valid non-default value is 1, which enables image searching.
Parameter
NameDescription
var array|Google\Protobuf\Internal\MapField
Returns
TypeDescription
$this

getQueryExpansionSpec

The query expansion specification that specifies the conditions under which query expansion occurs.

Returns
TypeDescription
Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\QueryExpansionSpec|null

hasQueryExpansionSpec

clearQueryExpansionSpec

setQueryExpansionSpec

The query expansion specification that specifies the conditions under which query expansion occurs.

Parameter
NameDescription
var Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\QueryExpansionSpec
Returns
TypeDescription
$this

getSpellCorrectionSpec

The spell correction specification that specifies the mode under which spell correction takes effect.

Returns
TypeDescription
Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\SpellCorrectionSpec|null

hasSpellCorrectionSpec

clearSpellCorrectionSpec

setSpellCorrectionSpec

The spell correction specification that specifies the mode under which spell correction takes effect.

Parameter
NameDescription
var Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\SpellCorrectionSpec
Returns
TypeDescription
$this

getUserPseudoId

A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor logs in or out of the website.

This field should NOT have a fixed value such as unknown_visitor. This should be the same identifier as UserEvent.user_pseudo_id and CompleteQueryRequest.user_pseudo_id The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

Returns
TypeDescription
string

setUserPseudoId

A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor logs in or out of the website.

This field should NOT have a fixed value such as unknown_visitor. This should be the same identifier as UserEvent.user_pseudo_id and CompleteQueryRequest.user_pseudo_id The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

Parameter
NameDescription
var string
Returns
TypeDescription
$this

getContentSearchSpec

A specification for configuring the behavior of content search.

Returns
TypeDescription
Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\ContentSearchSpec|null

hasContentSearchSpec

clearContentSearchSpec

setContentSearchSpec

A specification for configuring the behavior of content search.

Parameter
NameDescription
var Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\ContentSearchSpec
Returns
TypeDescription
$this

getEmbeddingSpec

Uses the provided embedding to do additional semantic document retrieval.

The retrieval is based on the dot product of SearchRequest.embedding_spec.embedding_vectors.vector and the document embedding that is provided in SearchRequest.embedding_spec.embedding_vectors.field_path. If SearchRequest.embedding_spec.embedding_vectors.field_path is not provided, it will use ServingConfig.embedding_config.field_paths.

Returns
TypeDescription
Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\EmbeddingSpec|null

hasEmbeddingSpec

clearEmbeddingSpec

setEmbeddingSpec

Uses the provided embedding to do additional semantic document retrieval.

The retrieval is based on the dot product of SearchRequest.embedding_spec.embedding_vectors.vector and the document embedding that is provided in SearchRequest.embedding_spec.embedding_vectors.field_path. If SearchRequest.embedding_spec.embedding_vectors.field_path is not provided, it will use ServingConfig.embedding_config.field_paths.

Parameter
NameDescription
var Google\Cloud\DiscoveryEngine\V1beta\SearchRequest\EmbeddingSpec
Returns
TypeDescription
$this

getRankingExpression

The ranking expression controls the customized ranking on retrieval documents. This overrides ServingConfig.ranking_expression.

The ranking expression is a single function or multiple functions that are joint by "+".

  • ranking_expression = function, { " + ", function }; Supported functions:
  • double * relevance_score
  • double * dotProduct(embedding_field_path) Function variables: relevance_score: pre-defined keywords, used for measure relevance between query and document. embedding_field_path: the document embedding field used with query embedding vector. dotProduct: embedding function between embedding_field_path and query embedding vector. Example ranking expression: If document has an embedding field doc_embedding, the ranking expression could be 0.5 * relevance_score + 0.3 * dotProduct(doc_embedding).
Returns
TypeDescription
string

setRankingExpression

The ranking expression controls the customized ranking on retrieval documents. This overrides ServingConfig.ranking_expression.

The ranking expression is a single function or multiple functions that are joint by "+".

  • ranking_expression = function, { " + ", function }; Supported functions:
  • double * relevance_score
  • double * dotProduct(embedding_field_path) Function variables: relevance_score: pre-defined keywords, used for measure relevance between query and document. embedding_field_path: the document embedding field used with query embedding vector. dotProduct: embedding function between embedding_field_path and query embedding vector. Example ranking expression: If document has an embedding field doc_embedding, the ranking expression could be 0.5 * relevance_score + 0.3 * dotProduct(doc_embedding).
Parameter
NameDescription
var string
Returns
TypeDescription
$this

getSafeSearch

Whether to turn on safe search. This is only supported for website search.

Returns
TypeDescription
bool

setSafeSearch

Whether to turn on safe search. This is only supported for website search.

Parameter
NameDescription
var bool
Returns
TypeDescription
$this

getUserLabels

The user labels applied to a resource must meet the following requirements:

  • Each resource can have multiple labels, up to a maximum of 64.

  • Each label must be a key-value pair.

  • Keys have a minimum length of 1 character and a maximum length of 63 characters and cannot be empty. Values can be empty and have a maximum length of 63 characters.
  • Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. All characters must use UTF-8 encoding, and international characters are allowed.
  • The key portion of a label must be unique. However, you can use the same key with multiple resources.
  • Keys must start with a lowercase letter or international character. See Google Cloud Document for more details.
Returns
TypeDescription
Google\Protobuf\Internal\MapField

setUserLabels

The user labels applied to a resource must meet the following requirements:

  • Each resource can have multiple labels, up to a maximum of 64.

  • Each label must be a key-value pair.

  • Keys have a minimum length of 1 character and a maximum length of 63 characters and cannot be empty. Values can be empty and have a maximum length of 63 characters.
  • Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. All characters must use UTF-8 encoding, and international characters are allowed.
  • The key portion of a label must be unique. However, you can use the same key with multiple resources.
  • Keys must start with a lowercase letter or international character. See Google Cloud Document for more details.
Parameter
NameDescription
var array|Google\Protobuf\Internal\MapField
Returns
TypeDescription
$this