google-apis-discoveryengine_v1alpha 0.50.0 → 0.52.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1314,9 +1314,10 @@ module Google
1314
1314
  # Map from file type to override the default parsing configuration based on the
1315
1315
  # file type. Supported keys: * `pdf`: Override parsing config for PDF files,
1316
1316
  # either digital parsing, ocr parsing or layout parsing is supported. * `html`:
1317
- # Override parsing config for HTML files, only digital parsing and or layout
1317
+ # Override parsing config for HTML files, only digital parsing and layout
1318
1318
  # parsing are supported. * `docx`: Override parsing config for DOCX files, only
1319
- # digital parsing and or layout parsing are supported.
1319
+ # digital parsing and layout parsing are supported. * `pptx`: Override parsing
1320
+ # config for PPTX files, only digital parsing and layout parsing are supported.
1320
1321
  # Corresponds to the JSON property `parsingConfigOverrides`
1321
1322
  # @return [Hash<String,Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfig>]
1322
1323
  attr_accessor :parsing_config_overrides
@@ -1748,6 +1749,72 @@ module Google
1748
1749
  end
1749
1750
  end
1750
1751
 
1752
+ # Metadata related to the progress of the ImportCompletionSuggestions operation.
1753
+ # This will be returned by the google.longrunning.Operation.metadata field.
1754
+ class GoogleCloudDiscoveryengineV1ImportCompletionSuggestionsMetadata
1755
+ include Google::Apis::Core::Hashable
1756
+
1757
+ # Operation create time.
1758
+ # Corresponds to the JSON property `createTime`
1759
+ # @return [String]
1760
+ attr_accessor :create_time
1761
+
1762
+ # Count of CompletionSuggestions that failed to be imported.
1763
+ # Corresponds to the JSON property `failureCount`
1764
+ # @return [Fixnum]
1765
+ attr_accessor :failure_count
1766
+
1767
+ # Count of CompletionSuggestions successfully imported.
1768
+ # Corresponds to the JSON property `successCount`
1769
+ # @return [Fixnum]
1770
+ attr_accessor :success_count
1771
+
1772
+ # Operation last update time. If the operation is done, this is also the finish
1773
+ # time.
1774
+ # Corresponds to the JSON property `updateTime`
1775
+ # @return [String]
1776
+ attr_accessor :update_time
1777
+
1778
+ def initialize(**args)
1779
+ update!(**args)
1780
+ end
1781
+
1782
+ # Update properties of this object
1783
+ def update!(**args)
1784
+ @create_time = args[:create_time] if args.key?(:create_time)
1785
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
1786
+ @success_count = args[:success_count] if args.key?(:success_count)
1787
+ @update_time = args[:update_time] if args.key?(:update_time)
1788
+ end
1789
+ end
1790
+
1791
+ # Response of the CompletionService.ImportCompletionSuggestions method. If the
1792
+ # long running operation is done, this message is returned by the google.
1793
+ # longrunning.Operations.response field if the operation is successful.
1794
+ class GoogleCloudDiscoveryengineV1ImportCompletionSuggestionsResponse
1795
+ include Google::Apis::Core::Hashable
1796
+
1797
+ # Configuration of destination for Import related errors.
1798
+ # Corresponds to the JSON property `errorConfig`
1799
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ImportErrorConfig]
1800
+ attr_accessor :error_config
1801
+
1802
+ # A sample of errors encountered while processing the request.
1803
+ # Corresponds to the JSON property `errorSamples`
1804
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
1805
+ attr_accessor :error_samples
1806
+
1807
+ def initialize(**args)
1808
+ update!(**args)
1809
+ end
1810
+
1811
+ # Update properties of this object
1812
+ def update!(**args)
1813
+ @error_config = args[:error_config] if args.key?(:error_config)
1814
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
1815
+ end
1816
+ end
1817
+
1751
1818
  # Metadata related to the progress of the ImportDocuments operation. This is
1752
1819
  # returned by the google.longrunning.Operation.metadata field.
1753
1820
  class GoogleCloudDiscoveryengineV1ImportDocumentsMetadata
@@ -2080,6 +2147,59 @@ module Google
2080
2147
  end
2081
2148
  end
2082
2149
 
2150
+ # Metadata related to the progress of the PurgeCompletionSuggestions operation.
2151
+ # This is returned by the google.longrunning.Operation.metadata field.
2152
+ class GoogleCloudDiscoveryengineV1PurgeCompletionSuggestionsMetadata
2153
+ include Google::Apis::Core::Hashable
2154
+
2155
+ # Operation create time.
2156
+ # Corresponds to the JSON property `createTime`
2157
+ # @return [String]
2158
+ attr_accessor :create_time
2159
+
2160
+ # Operation last update time. If the operation is done, this is also the finish
2161
+ # time.
2162
+ # Corresponds to the JSON property `updateTime`
2163
+ # @return [String]
2164
+ attr_accessor :update_time
2165
+
2166
+ def initialize(**args)
2167
+ update!(**args)
2168
+ end
2169
+
2170
+ # Update properties of this object
2171
+ def update!(**args)
2172
+ @create_time = args[:create_time] if args.key?(:create_time)
2173
+ @update_time = args[:update_time] if args.key?(:update_time)
2174
+ end
2175
+ end
2176
+
2177
+ # Response message for CompletionService.PurgeCompletionSuggestions method.
2178
+ class GoogleCloudDiscoveryengineV1PurgeCompletionSuggestionsResponse
2179
+ include Google::Apis::Core::Hashable
2180
+
2181
+ # A sample of errors encountered while processing the request.
2182
+ # Corresponds to the JSON property `errorSamples`
2183
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
2184
+ attr_accessor :error_samples
2185
+
2186
+ # Whether the completion suggestions were successfully purged.
2187
+ # Corresponds to the JSON property `purgeSucceeded`
2188
+ # @return [Boolean]
2189
+ attr_accessor :purge_succeeded
2190
+ alias_method :purge_succeeded?, :purge_succeeded
2191
+
2192
+ def initialize(**args)
2193
+ update!(**args)
2194
+ end
2195
+
2196
+ # Update properties of this object
2197
+ def update!(**args)
2198
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
2199
+ @purge_succeeded = args[:purge_succeeded] if args.key?(:purge_succeeded)
2200
+ end
2201
+ end
2202
+
2083
2203
  # Metadata related to the progress of the PurgeDocuments operation. This will be
2084
2204
  # returned by the google.longrunning.Operation.metadata field.
2085
2205
  class GoogleCloudDiscoveryengineV1PurgeDocumentsMetadata
@@ -3057,11 +3177,9 @@ module Google
3057
3177
  # @return [String]
3058
3178
  attr_accessor :order_by
3059
3179
 
3060
- # Specifies the search result mode. If unspecified, the search result mode is
3061
- # based on DataStore.DocumentProcessingConfig.chunking_config: * If DataStore.
3062
- # DocumentProcessingConfig.chunking_config is specified, it defaults to `CHUNKS`.
3063
- # * Otherwise, it defaults to `DOCUMENTS`. See [parse and chunk documents](
3064
- # https://cloud.google.com/generative-ai-app-builder/docs/parse-chunk-documents)
3180
+ # Specifies the search result mode. If unspecified, the search result mode
3181
+ # defaults to `DOCUMENTS`. See [parse and chunk documents](https://cloud.google.
3182
+ # com/generative-ai-app-builder/docs/parse-chunk-documents)
3065
3183
  # Corresponds to the JSON property `searchResultMode`
3066
3184
  # @return [String]
3067
3185
  attr_accessor :search_result_mode
@@ -3630,6 +3748,12 @@ module Google
3630
3748
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAnswerStepActionObservationSearchResultSnippetInfo>]
3631
3749
  attr_accessor :snippet_info
3632
3750
 
3751
+ # Data representation. The structured JSON data for the document. It's populated
3752
+ # from the struct data from the Document , or the Chunk in search result .
3753
+ # Corresponds to the JSON property `structData`
3754
+ # @return [Hash<String,Object>]
3755
+ attr_accessor :struct_data
3756
+
3633
3757
  # Title.
3634
3758
  # Corresponds to the JSON property `title`
3635
3759
  # @return [String]
@@ -3649,6 +3773,7 @@ module Google
3649
3773
  @chunk_info = args[:chunk_info] if args.key?(:chunk_info)
3650
3774
  @document = args[:document] if args.key?(:document)
3651
3775
  @snippet_info = args[:snippet_info] if args.key?(:snippet_info)
3776
+ @struct_data = args[:struct_data] if args.key?(:struct_data)
3652
3777
  @title = args[:title] if args.key?(:title)
3653
3778
  @uri = args[:uri] if args.key?(:uri)
3654
3779
  end
@@ -4198,12 +4323,24 @@ module Google
4198
4323
  class GoogleCloudDiscoveryengineV1alphaCheckRequirementRequest
4199
4324
  include Google::Apis::Core::Hashable
4200
4325
 
4201
- # A Requirement.type specifying the requirement to check.
4326
+ # The type specifying the requirement to check. The supported types are: * `
4327
+ # discoveryengine.googleapis.com/media_recs/general/all/warning` * `
4328
+ # discoveryengine.googleapis.com/media_recs/oyml/cvr/warning` * `discoveryengine.
4329
+ # googleapis.com/media_recs/rfy/cvr/warning` * `discoveryengine.googleapis.com/
4330
+ # media_recs/mlt/cvr/warning` * `discoveryengine.googleapis.com/media_recs/mp/
4331
+ # cvr/warning` * `discoveryengine.googleapis.com/media_recs/oyml/wdps/warning` *
4332
+ # `discoveryengine.googleapis.com/media_recs/rfy/wdps/warning` * `
4333
+ # discoveryengine.googleapis.com/media_recs/mlt/wdps/warning`
4202
4334
  # Corresponds to the JSON property `requirementType`
4203
4335
  # @return [String]
4204
4336
  attr_accessor :requirement_type
4205
4337
 
4206
- # The resources to be checked for this requirement.
4338
+ # The type needed for the monitored resources: * `discoveryengine.googleapis.com/
4339
+ # Branch`. * The labels needed for this resource: * `project`_`number` * `
4340
+ # location`_`id` * `collection`_`id` * `datastore`_`id` * `branch`_`id` * `
4341
+ # discoveryengine.googleapis.com/DataStore` * The labels needed for this
4342
+ # resource: * `project`_`number` * `location`_`id` * `collection`_`id` * `
4343
+ # datastore`_`id`
4207
4344
  # Corresponds to the JSON property `resources`
4208
4345
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleApiMonitoredResource>]
4209
4346
  attr_accessor :resources
@@ -4219,7 +4356,7 @@ module Google
4219
4356
  end
4220
4357
  end
4221
4358
 
4222
- # Response for CheckRequirement method.
4359
+ # Response for the CheckRequirement method.
4223
4360
  class GoogleCloudDiscoveryengineV1alphaCheckRequirementResponse
4224
4361
  include Google::Apis::Core::Hashable
4225
4362
 
@@ -4622,6 +4759,65 @@ module Google
4622
4759
  end
4623
4760
  end
4624
4761
 
4762
+ # Autocomplete suggestions that are imported from Customer.
4763
+ class GoogleCloudDiscoveryengineV1alphaCompletionSuggestion
4764
+ include Google::Apis::Core::Hashable
4765
+
4766
+ # Alternative matching phrases for this suggestion.
4767
+ # Corresponds to the JSON property `alternativePhrases`
4768
+ # @return [Array<String>]
4769
+ attr_accessor :alternative_phrases
4770
+
4771
+ # Frequency of this suggestion. Will be used to rank suggestions when score is
4772
+ # not available.
4773
+ # Corresponds to the JSON property `frequency`
4774
+ # @return [Fixnum]
4775
+ attr_accessor :frequency
4776
+
4777
+ # Global score of this suggestion. Control how this suggestion would be scored /
4778
+ # ranked.
4779
+ # Corresponds to the JSON property `globalScore`
4780
+ # @return [Float]
4781
+ attr_accessor :global_score
4782
+
4783
+ # If two suggestions have the same groupId, they will not be returned together.
4784
+ # Instead the one ranked higher will be returned. This can be used to
4785
+ # deduplicate semantically identical suggestions.
4786
+ # Corresponds to the JSON property `groupId`
4787
+ # @return [String]
4788
+ attr_accessor :group_id
4789
+
4790
+ # The score of this suggestion within its group.
4791
+ # Corresponds to the JSON property `groupScore`
4792
+ # @return [Float]
4793
+ attr_accessor :group_score
4794
+
4795
+ # BCP-47 language code of this suggestion.
4796
+ # Corresponds to the JSON property `languageCode`
4797
+ # @return [String]
4798
+ attr_accessor :language_code
4799
+
4800
+ # Required. The suggestion text.
4801
+ # Corresponds to the JSON property `suggestion`
4802
+ # @return [String]
4803
+ attr_accessor :suggestion
4804
+
4805
+ def initialize(**args)
4806
+ update!(**args)
4807
+ end
4808
+
4809
+ # Update properties of this object
4810
+ def update!(**args)
4811
+ @alternative_phrases = args[:alternative_phrases] if args.key?(:alternative_phrases)
4812
+ @frequency = args[:frequency] if args.key?(:frequency)
4813
+ @global_score = args[:global_score] if args.key?(:global_score)
4814
+ @group_id = args[:group_id] if args.key?(:group_id)
4815
+ @group_score = args[:group_score] if args.key?(:group_score)
4816
+ @language_code = args[:language_code] if args.key?(:language_code)
4817
+ @suggestion = args[:suggestion] if args.key?(:suggestion)
4818
+ end
4819
+ end
4820
+
4625
4821
  # Defines circumstances to be checked before allowing a behavior
4626
4822
  class GoogleCloudDiscoveryengineV1alphaCondition
4627
4823
  include Google::Apis::Core::Hashable
@@ -5184,6 +5380,19 @@ module Google
5184
5380
  end
5185
5381
  end
5186
5382
 
5383
+ # Metadata for EvaluationService.CreateEvaluation method.
5384
+ class GoogleCloudDiscoveryengineV1alphaCreateEvaluationMetadata
5385
+ include Google::Apis::Core::Hashable
5386
+
5387
+ def initialize(**args)
5388
+ update!(**args)
5389
+ end
5390
+
5391
+ # Update properties of this object
5392
+ def update!(**args)
5393
+ end
5394
+ end
5395
+
5187
5396
  # Metadata for Create Schema LRO.
5188
5397
  class GoogleCloudDiscoveryengineV1alphaCreateSchemaMetadata
5189
5398
  include Google::Apis::Core::Hashable
@@ -5332,6 +5541,11 @@ module Google
5332
5541
  # @return [String]
5333
5542
  attr_accessor :display_name
5334
5543
 
5544
+ # The metrics of the trained model.
5545
+ # Corresponds to the JSON property `metrics`
5546
+ # @return [Hash<String,Float>]
5547
+ attr_accessor :metrics
5548
+
5335
5549
  # The state that the model is in (e.g.`TRAINING` or `TRAINING_FAILED`).
5336
5550
  # Corresponds to the JSON property `modelState`
5337
5551
  # @return [String]
@@ -5363,6 +5577,7 @@ module Google
5363
5577
  def update!(**args)
5364
5578
  @create_time = args[:create_time] if args.key?(:create_time)
5365
5579
  @display_name = args[:display_name] if args.key?(:display_name)
5580
+ @metrics = args[:metrics] if args.key?(:metrics)
5366
5581
  @model_state = args[:model_state] if args.key?(:model_state)
5367
5582
  @model_version = args[:model_version] if args.key?(:model_version)
5368
5583
  @name = args[:name] if args.key?(:name)
@@ -5794,7 +6009,7 @@ module Google
5794
6009
 
5795
6010
  # The URI of the content. Only Cloud Storage URIs (e.g. `gs://bucket-name/path/
5796
6011
  # to/file`) are supported. The maximum file size is 2.5 MB for text-based
5797
- # formats, 100 MB for other formats.
6012
+ # formats, 200 MB for other formats.
5798
6013
  # Corresponds to the JSON property `uri`
5799
6014
  # @return [String]
5800
6015
  attr_accessor :uri
@@ -5885,9 +6100,10 @@ module Google
5885
6100
  # Map from file type to override the default parsing configuration based on the
5886
6101
  # file type. Supported keys: * `pdf`: Override parsing config for PDF files,
5887
6102
  # either digital parsing, ocr parsing or layout parsing is supported. * `html`:
5888
- # Override parsing config for HTML files, only digital parsing and or layout
6103
+ # Override parsing config for HTML files, only digital parsing and layout
5889
6104
  # parsing are supported. * `docx`: Override parsing config for DOCX files, only
5890
- # digital parsing and or layout parsing are supported.
6105
+ # digital parsing and layout parsing are supported. * `pptx`: Override parsing
6106
+ # config for PPTX files, only digital parsing and layout parsing are supported.
5891
6107
  # Corresponds to the JSON property `parsingConfigOverrides`
5892
6108
  # @return [Hash<String,Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaDocumentProcessingConfigParsingConfig>]
5893
6109
  attr_accessor :parsing_config_overrides
@@ -6677,31 +6893,57 @@ module Google
6677
6893
  end
6678
6894
  end
6679
6895
 
6680
- # Fact Chunk.
6681
- class GoogleCloudDiscoveryengineV1alphaFactChunk
6896
+ # An evaluation is a single execution (or run) of an evaluation process. It
6897
+ # encapsulates the state of the evaluation and the resulting data.
6898
+ class GoogleCloudDiscoveryengineV1alphaEvaluation
6682
6899
  include Google::Apis::Core::Hashable
6683
6900
 
6684
- # Text content of the fact chunk. Can be at most 10K characters long.
6685
- # Corresponds to the JSON property `chunkText`
6901
+ # Output only. Timestamp the Evaluation was created at.
6902
+ # Corresponds to the JSON property `createTime`
6686
6903
  # @return [String]
6687
- attr_accessor :chunk_text
6904
+ attr_accessor :create_time
6688
6905
 
6689
- # The index of this chunk. Currently, only used for the streaming mode.
6690
- # Corresponds to the JSON property `index`
6691
- # @return [Fixnum]
6692
- attr_accessor :index
6906
+ # Output only. Timestamp the Evaluation was completed at.
6907
+ # Corresponds to the JSON property `endTime`
6908
+ # @return [String]
6909
+ attr_accessor :end_time
6693
6910
 
6694
- # Source from which this fact chunk was retrieved. If it was retrieved from the
6695
- # GroundingFacts provided in the request then this field will contain the index
6696
- # of the specific fact from which this chunk was retrieved.
6697
- # Corresponds to the JSON property `source`
6911
+ # The `Status` type defines a logical error model that is suitable for different
6912
+ # programming environments, including REST APIs and RPC APIs. It is used by [
6913
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
6914
+ # data: error code, error message, and error details. You can find out more
6915
+ # about this error model and how to work with it in the [API Design Guide](https:
6916
+ # //cloud.google.com/apis/design/errors).
6917
+ # Corresponds to the JSON property `error`
6918
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus]
6919
+ attr_accessor :error
6920
+
6921
+ # Output only. A sample of errors encountered while processing the request.
6922
+ # Corresponds to the JSON property `errorSamples`
6923
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
6924
+ attr_accessor :error_samples
6925
+
6926
+ # Describes the specification of the evaluation.
6927
+ # Corresponds to the JSON property `evaluationSpec`
6928
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaEvaluationEvaluationSpec]
6929
+ attr_accessor :evaluation_spec
6930
+
6931
+ # Immutable. The full resource name of the Evaluation, in the format of `
6932
+ # projects/`project`/locations/`location`/evaluations/`evaluation``. This field
6933
+ # must be a UTF-8 encoded string with a length limit of 1024 characters.
6934
+ # Corresponds to the JSON property `name`
6698
6935
  # @return [String]
6699
- attr_accessor :source
6936
+ attr_accessor :name
6700
6937
 
6701
- # More fine-grained information for the source reference.
6702
- # Corresponds to the JSON property `sourceMetadata`
6703
- # @return [Hash<String,String>]
6704
- attr_accessor :source_metadata
6938
+ # Describes the metrics produced by the evaluation.
6939
+ # Corresponds to the JSON property `qualityMetrics`
6940
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaQualityMetrics]
6941
+ attr_accessor :quality_metrics
6942
+
6943
+ # Output only. The state of the evaluation.
6944
+ # Corresponds to the JSON property `state`
6945
+ # @return [String]
6946
+ attr_accessor :state
6705
6947
 
6706
6948
  def initialize(**args)
6707
6949
  update!(**args)
@@ -6709,34 +6951,30 @@ module Google
6709
6951
 
6710
6952
  # Update properties of this object
6711
6953
  def update!(**args)
6712
- @chunk_text = args[:chunk_text] if args.key?(:chunk_text)
6713
- @index = args[:index] if args.key?(:index)
6714
- @source = args[:source] if args.key?(:source)
6715
- @source_metadata = args[:source_metadata] if args.key?(:source_metadata)
6954
+ @create_time = args[:create_time] if args.key?(:create_time)
6955
+ @end_time = args[:end_time] if args.key?(:end_time)
6956
+ @error = args[:error] if args.key?(:error)
6957
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
6958
+ @evaluation_spec = args[:evaluation_spec] if args.key?(:evaluation_spec)
6959
+ @name = args[:name] if args.key?(:name)
6960
+ @quality_metrics = args[:quality_metrics] if args.key?(:quality_metrics)
6961
+ @state = args[:state] if args.key?(:state)
6716
6962
  end
6717
6963
  end
6718
6964
 
6719
- # Response message for SiteSearchEngineService.FetchDomainVerificationStatus
6720
- # method.
6721
- class GoogleCloudDiscoveryengineV1alphaFetchDomainVerificationStatusResponse
6965
+ # Describes the specification of the evaluation.
6966
+ class GoogleCloudDiscoveryengineV1alphaEvaluationEvaluationSpec
6722
6967
  include Google::Apis::Core::Hashable
6723
6968
 
6724
- # A token that can be sent as `page_token` to retrieve the next page. If this
6725
- # field is omitted, there are no subsequent pages.
6726
- # Corresponds to the JSON property `nextPageToken`
6727
- # @return [String]
6728
- attr_accessor :next_page_token
6729
-
6730
- # List of TargetSites containing the site verification status.
6731
- # Corresponds to the JSON property `targetSites`
6732
- # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaTargetSite>]
6733
- attr_accessor :target_sites
6969
+ # Describes the specification of the query set.
6970
+ # Corresponds to the JSON property `querySetSpec`
6971
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaEvaluationEvaluationSpecQuerySetSpec]
6972
+ attr_accessor :query_set_spec
6734
6973
 
6735
- # The total number of items matching the request. This will always be populated
6736
- # in the response.
6737
- # Corresponds to the JSON property `totalSize`
6738
- # @return [Fixnum]
6739
- attr_accessor :total_size
6974
+ # Request message for SearchService.Search method.
6975
+ # Corresponds to the JSON property `searchRequest`
6976
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchRequest]
6977
+ attr_accessor :search_request
6740
6978
 
6741
6979
  def initialize(**args)
6742
6980
  update!(**args)
@@ -6744,29 +6982,21 @@ module Google
6744
6982
 
6745
6983
  # Update properties of this object
6746
6984
  def update!(**args)
6747
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
6748
- @target_sites = args[:target_sites] if args.key?(:target_sites)
6749
- @total_size = args[:total_size] if args.key?(:total_size)
6985
+ @query_set_spec = args[:query_set_spec] if args.key?(:query_set_spec)
6986
+ @search_request = args[:search_request] if args.key?(:search_request)
6750
6987
  end
6751
6988
  end
6752
6989
 
6753
- # Cloud FhirStore source import data from.
6754
- class GoogleCloudDiscoveryengineV1alphaFhirStoreSource
6990
+ # Describes the specification of the query set.
6991
+ class GoogleCloudDiscoveryengineV1alphaEvaluationEvaluationSpecQuerySetSpec
6755
6992
  include Google::Apis::Core::Hashable
6756
6993
 
6757
- # Required. The full resource name of the FHIR store to import data from, in the
6758
- # format of `projects/`project`/locations/`location`/datasets/`dataset`/
6759
- # fhirStores/`fhir_store``.
6760
- # Corresponds to the JSON property `fhirStore`
6761
- # @return [String]
6762
- attr_accessor :fhir_store
6763
-
6764
- # Intermediate Cloud Storage directory used for the import with a length limit
6765
- # of 2,000 characters. Can be specified if one wants to have the FhirStore
6766
- # export to a specific Cloud Storage directory.
6767
- # Corresponds to the JSON property `gcsStagingDir`
6994
+ # Required. The full resource name of the SampleQuerySet used for the evaluation,
6995
+ # in the format of `projects/`project`/locations/`location`/sampleQuerySets/`
6996
+ # sampleQuerySet``.
6997
+ # Corresponds to the JSON property `sampleQuerySet`
6768
6998
  # @return [String]
6769
- attr_accessor :gcs_staging_dir
6999
+ attr_accessor :sample_query_set
6770
7000
 
6771
7001
  def initialize(**args)
6772
7002
  update!(**args)
@@ -6774,20 +7004,181 @@ module Google
6774
7004
 
6775
7005
  # Update properties of this object
6776
7006
  def update!(**args)
6777
- @fhir_store = args[:fhir_store] if args.key?(:fhir_store)
6778
- @gcs_staging_dir = args[:gcs_staging_dir] if args.key?(:gcs_staging_dir)
7007
+ @sample_query_set = args[:sample_query_set] if args.key?(:sample_query_set)
6779
7008
  end
6780
7009
  end
6781
7010
 
6782
- # Configurations for fields of a schema. For example, configuring a field is
6783
- # indexable, or searchable.
6784
- class GoogleCloudDiscoveryengineV1alphaFieldConfig
7011
+ # Metadata related to the progress of the Export operation. This is returned by
7012
+ # the google.longrunning.Operation.metadata field.
7013
+ class GoogleCloudDiscoveryengineV1alphaExportUserEventsMetadata
6785
7014
  include Google::Apis::Core::Hashable
6786
7015
 
6787
- # If this field is set, only the corresponding source will be indexed for this
6788
- # field. Otherwise, the values from different sources are merged. Assuming a
6789
- # page with `` in meta tag, and `` in page map: if this enum is set to METATAGS,
6790
- # we will only index ``; if this enum is not set, we will merge them and index ``
7016
+ # Operation create time.
7017
+ # Corresponds to the JSON property `createTime`
7018
+ # @return [String]
7019
+ attr_accessor :create_time
7020
+
7021
+ # Operation last update time. If the operation is done, this is also the finish
7022
+ # time.
7023
+ # Corresponds to the JSON property `updateTime`
7024
+ # @return [String]
7025
+ attr_accessor :update_time
7026
+
7027
+ def initialize(**args)
7028
+ update!(**args)
7029
+ end
7030
+
7031
+ # Update properties of this object
7032
+ def update!(**args)
7033
+ @create_time = args[:create_time] if args.key?(:create_time)
7034
+ @update_time = args[:update_time] if args.key?(:update_time)
7035
+ end
7036
+ end
7037
+
7038
+ # Response of the ExportUserEventsRequest. If the long running operation was
7039
+ # successful, then this message is returned by the google.longrunning.Operations.
7040
+ # response field.
7041
+ class GoogleCloudDiscoveryengineV1alphaExportUserEventsResponse
7042
+ include Google::Apis::Core::Hashable
7043
+
7044
+ # Output result that stores the information about where the exported data is
7045
+ # stored.
7046
+ # Corresponds to the JSON property `outputResult`
7047
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaOutputResult]
7048
+ attr_accessor :output_result
7049
+
7050
+ # The `Status` type defines a logical error model that is suitable for different
7051
+ # programming environments, including REST APIs and RPC APIs. It is used by [
7052
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
7053
+ # data: error code, error message, and error details. You can find out more
7054
+ # about this error model and how to work with it in the [API Design Guide](https:
7055
+ # //cloud.google.com/apis/design/errors).
7056
+ # Corresponds to the JSON property `status`
7057
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus]
7058
+ attr_accessor :status
7059
+
7060
+ def initialize(**args)
7061
+ update!(**args)
7062
+ end
7063
+
7064
+ # Update properties of this object
7065
+ def update!(**args)
7066
+ @output_result = args[:output_result] if args.key?(:output_result)
7067
+ @status = args[:status] if args.key?(:status)
7068
+ end
7069
+ end
7070
+
7071
+ # Fact Chunk.
7072
+ class GoogleCloudDiscoveryengineV1alphaFactChunk
7073
+ include Google::Apis::Core::Hashable
7074
+
7075
+ # Text content of the fact chunk. Can be at most 10K characters long.
7076
+ # Corresponds to the JSON property `chunkText`
7077
+ # @return [String]
7078
+ attr_accessor :chunk_text
7079
+
7080
+ # The index of this chunk. Currently, only used for the streaming mode.
7081
+ # Corresponds to the JSON property `index`
7082
+ # @return [Fixnum]
7083
+ attr_accessor :index
7084
+
7085
+ # Source from which this fact chunk was retrieved. If it was retrieved from the
7086
+ # GroundingFacts provided in the request then this field will contain the index
7087
+ # of the specific fact from which this chunk was retrieved.
7088
+ # Corresponds to the JSON property `source`
7089
+ # @return [String]
7090
+ attr_accessor :source
7091
+
7092
+ # More fine-grained information for the source reference.
7093
+ # Corresponds to the JSON property `sourceMetadata`
7094
+ # @return [Hash<String,String>]
7095
+ attr_accessor :source_metadata
7096
+
7097
+ def initialize(**args)
7098
+ update!(**args)
7099
+ end
7100
+
7101
+ # Update properties of this object
7102
+ def update!(**args)
7103
+ @chunk_text = args[:chunk_text] if args.key?(:chunk_text)
7104
+ @index = args[:index] if args.key?(:index)
7105
+ @source = args[:source] if args.key?(:source)
7106
+ @source_metadata = args[:source_metadata] if args.key?(:source_metadata)
7107
+ end
7108
+ end
7109
+
7110
+ # Response message for SiteSearchEngineService.FetchDomainVerificationStatus
7111
+ # method.
7112
+ class GoogleCloudDiscoveryengineV1alphaFetchDomainVerificationStatusResponse
7113
+ include Google::Apis::Core::Hashable
7114
+
7115
+ # A token that can be sent as `page_token` to retrieve the next page. If this
7116
+ # field is omitted, there are no subsequent pages.
7117
+ # Corresponds to the JSON property `nextPageToken`
7118
+ # @return [String]
7119
+ attr_accessor :next_page_token
7120
+
7121
+ # List of TargetSites containing the site verification status.
7122
+ # Corresponds to the JSON property `targetSites`
7123
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaTargetSite>]
7124
+ attr_accessor :target_sites
7125
+
7126
+ # The total number of items matching the request. This will always be populated
7127
+ # in the response.
7128
+ # Corresponds to the JSON property `totalSize`
7129
+ # @return [Fixnum]
7130
+ attr_accessor :total_size
7131
+
7132
+ def initialize(**args)
7133
+ update!(**args)
7134
+ end
7135
+
7136
+ # Update properties of this object
7137
+ def update!(**args)
7138
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
7139
+ @target_sites = args[:target_sites] if args.key?(:target_sites)
7140
+ @total_size = args[:total_size] if args.key?(:total_size)
7141
+ end
7142
+ end
7143
+
7144
+ # Cloud FhirStore source import data from.
7145
+ class GoogleCloudDiscoveryengineV1alphaFhirStoreSource
7146
+ include Google::Apis::Core::Hashable
7147
+
7148
+ # Required. The full resource name of the FHIR store to import data from, in the
7149
+ # format of `projects/`project`/locations/`location`/datasets/`dataset`/
7150
+ # fhirStores/`fhir_store``.
7151
+ # Corresponds to the JSON property `fhirStore`
7152
+ # @return [String]
7153
+ attr_accessor :fhir_store
7154
+
7155
+ # Intermediate Cloud Storage directory used for the import with a length limit
7156
+ # of 2,000 characters. Can be specified if one wants to have the FhirStore
7157
+ # export to a specific Cloud Storage directory.
7158
+ # Corresponds to the JSON property `gcsStagingDir`
7159
+ # @return [String]
7160
+ attr_accessor :gcs_staging_dir
7161
+
7162
+ def initialize(**args)
7163
+ update!(**args)
7164
+ end
7165
+
7166
+ # Update properties of this object
7167
+ def update!(**args)
7168
+ @fhir_store = args[:fhir_store] if args.key?(:fhir_store)
7169
+ @gcs_staging_dir = args[:gcs_staging_dir] if args.key?(:gcs_staging_dir)
7170
+ end
7171
+ end
7172
+
7173
+ # Configurations for fields of a schema. For example, configuring a field is
7174
+ # indexable, or searchable.
7175
+ class GoogleCloudDiscoveryengineV1alphaFieldConfig
7176
+ include Google::Apis::Core::Hashable
7177
+
7178
+ # If this field is set, only the corresponding source will be indexed for this
7179
+ # field. Otherwise, the values from different sources are merged. Assuming a
7180
+ # page with `` in meta tag, and `` in page map: if this enum is set to METATAGS,
7181
+ # we will only index ``; if this enum is not set, we will merge them and index ``
6791
7182
  # .
6792
7183
  # Corresponds to the JSON property `advancedSiteSearchDataSources`
6793
7184
  # @return [Array<String>]
@@ -7002,6 +7393,27 @@ module Google
7002
7393
  end
7003
7394
  end
7004
7395
 
7396
+ # Response message for SiteSearchEngineService.GetUriPatternDocumentData method.
7397
+ class GoogleCloudDiscoveryengineV1alphaGetUriPatternDocumentDataResponse
7398
+ include Google::Apis::Core::Hashable
7399
+
7400
+ # Document data keyed by URI pattern. For example: document_data_map = ` "www.
7401
+ # url1.com/*": ` "Categories": ["category1", "category2"] `, "www.url2.com/*": `
7402
+ # "Categories": ["category3"] ` `
7403
+ # Corresponds to the JSON property `documentDataMap`
7404
+ # @return [Hash<String,Hash<String,Object>>]
7405
+ attr_accessor :document_data_map
7406
+
7407
+ def initialize(**args)
7408
+ update!(**args)
7409
+ end
7410
+
7411
+ # Update properties of this object
7412
+ def update!(**args)
7413
+ @document_data_map = args[:document_data_map] if args.key?(:document_data_map)
7414
+ end
7415
+ end
7416
+
7005
7417
  # Grounding Fact.
7006
7418
  class GoogleCloudDiscoveryengineV1alphaGroundingFact
7007
7419
  include Google::Apis::Core::Hashable
@@ -7108,9 +7520,9 @@ module Google
7108
7520
  end
7109
7521
  end
7110
7522
 
7111
- # Metadata related to the progress of the ImportDocuments operation. This is
7112
- # returned by the google.longrunning.Operation.metadata field.
7113
- class GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata
7523
+ # Metadata related to the progress of the ImportCompletionSuggestions operation.
7524
+ # This will be returned by the google.longrunning.Operation.metadata field.
7525
+ class GoogleCloudDiscoveryengineV1alphaImportCompletionSuggestionsMetadata
7114
7526
  include Google::Apis::Core::Hashable
7115
7527
 
7116
7528
  # Operation create time.
@@ -7118,21 +7530,16 @@ module Google
7118
7530
  # @return [String]
7119
7531
  attr_accessor :create_time
7120
7532
 
7121
- # Count of entries that encountered errors while processing.
7533
+ # Count of CompletionSuggestions that failed to be imported.
7122
7534
  # Corresponds to the JSON property `failureCount`
7123
7535
  # @return [Fixnum]
7124
7536
  attr_accessor :failure_count
7125
7537
 
7126
- # Count of entries that were processed successfully.
7538
+ # Count of CompletionSuggestions successfully imported.
7127
7539
  # Corresponds to the JSON property `successCount`
7128
7540
  # @return [Fixnum]
7129
7541
  attr_accessor :success_count
7130
7542
 
7131
- # Total count of entries that were processed.
7132
- # Corresponds to the JSON property `totalCount`
7133
- # @return [Fixnum]
7134
- attr_accessor :total_count
7135
-
7136
7543
  # Operation last update time. If the operation is done, this is also the finish
7137
7544
  # time.
7138
7545
  # Corresponds to the JSON property `updateTime`
@@ -7148,104 +7555,231 @@ module Google
7148
7555
  @create_time = args[:create_time] if args.key?(:create_time)
7149
7556
  @failure_count = args[:failure_count] if args.key?(:failure_count)
7150
7557
  @success_count = args[:success_count] if args.key?(:success_count)
7151
- @total_count = args[:total_count] if args.key?(:total_count)
7152
7558
  @update_time = args[:update_time] if args.key?(:update_time)
7153
7559
  end
7154
7560
  end
7155
7561
 
7156
- # Request message for Import methods.
7157
- class GoogleCloudDiscoveryengineV1alphaImportDocumentsRequest
7562
+ # Request message for CompletionService.ImportCompletionSuggestions method.
7563
+ class GoogleCloudDiscoveryengineV1alphaImportCompletionSuggestionsRequest
7158
7564
  include Google::Apis::Core::Hashable
7159
7565
 
7160
- # AlloyDB source import data from.
7161
- # Corresponds to the JSON property `alloyDbSource`
7162
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAlloyDbSource]
7163
- attr_accessor :alloy_db_source
7164
-
7165
- # Whether to automatically generate IDs for the documents if absent. If set to `
7166
- # true`, Document.ids are automatically generated based on the hash of the
7167
- # payload, where IDs may not be consistent during multiple imports. In which
7168
- # case ReconciliationMode.FULL is highly recommended to avoid duplicate contents.
7169
- # If unset or set to `false`, Document.ids have to be specified using id_field,
7170
- # otherwise, documents without IDs fail to be imported. Supported data sources: *
7171
- # GcsSource. GcsSource.data_schema must be `custom` or `csv`. Otherwise, an
7172
- # INVALID_ARGUMENT error is thrown. * BigQuerySource. BigQuerySource.data_schema
7173
- # must be `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown. *
7174
- # SpannerSource. * CloudSqlSource. * FirestoreSource. * BigtableSource.
7175
- # Corresponds to the JSON property `autoGenerateIds`
7176
- # @return [Boolean]
7177
- attr_accessor :auto_generate_ids
7178
- alias_method :auto_generate_ids?, :auto_generate_ids
7179
-
7180
7566
  # BigQuery source import data from.
7181
7567
  # Corresponds to the JSON property `bigquerySource`
7182
7568
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBigQuerySource]
7183
7569
  attr_accessor :bigquery_source
7184
7570
 
7185
- # The Cloud Bigtable source for importing data.
7186
- # Corresponds to the JSON property `bigtableSource`
7187
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBigtableSource]
7188
- attr_accessor :bigtable_source
7189
-
7190
- # Cloud SQL source import data from.
7191
- # Corresponds to the JSON property `cloudSqlSource`
7192
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCloudSqlSource]
7193
- attr_accessor :cloud_sql_source
7194
-
7195
7571
  # Configuration of destination for Import related errors.
7196
7572
  # Corresponds to the JSON property `errorConfig`
7197
7573
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportErrorConfig]
7198
7574
  attr_accessor :error_config
7199
7575
 
7200
- # Cloud FhirStore source import data from.
7201
- # Corresponds to the JSON property `fhirStoreSource`
7202
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaFhirStoreSource]
7203
- attr_accessor :fhir_store_source
7204
-
7205
- # Firestore source import data from.
7206
- # Corresponds to the JSON property `firestoreSource`
7207
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaFirestoreSource]
7208
- attr_accessor :firestore_source
7209
-
7210
7576
  # Cloud Storage location for input content.
7211
7577
  # Corresponds to the JSON property `gcsSource`
7212
7578
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaGcsSource]
7213
7579
  attr_accessor :gcs_source
7214
7580
 
7215
- # The field indicates the ID field or column to be used as unique IDs of the
7216
- # documents. For GcsSource it is the key of the JSON field. For instance, `my_id`
7217
- # for JSON ``"my_id": "some_uuid"``. For others, it may be the column name of
7218
- # the table where the unique ids are stored. The values of the JSON field or the
7219
- # table column are used as the Document.ids. The JSON field or the table column
7220
- # must be of string type, and the values must be set as valid strings conform to
7221
- # [RFC-1034](https://tools.ietf.org/html/rfc1034) with 1-63 characters.
7222
- # Otherwise, documents without valid IDs fail to be imported. Only set this
7223
- # field when auto_generate_ids is unset or set as `false`. Otherwise, an
7224
- # INVALID_ARGUMENT error is thrown. If it is unset, a default value `_id` is
7225
- # used when importing from the allowed data sources. Supported data sources: *
7226
- # GcsSource. GcsSource.data_schema must be `custom` or `csv`. Otherwise, an
7227
- # INVALID_ARGUMENT error is thrown. * BigQuerySource. BigQuerySource.data_schema
7228
- # must be `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown. *
7229
- # SpannerSource. * CloudSqlSource. * FirestoreSource. * BigtableSource.
7230
- # Corresponds to the JSON property `idField`
7231
- # @return [String]
7232
- attr_accessor :id_field
7233
-
7234
- # The inline source for the input config for ImportDocuments method.
7581
+ # The inline source for CompletionSuggestions.
7235
7582
  # Corresponds to the JSON property `inlineSource`
7236
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportDocumentsRequestInlineSource]
7583
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportCompletionSuggestionsRequestInlineSource]
7237
7584
  attr_accessor :inline_source
7238
7585
 
7239
- # The mode of reconciliation between existing documents and the documents to be
7240
- # imported. Defaults to ReconciliationMode.INCREMENTAL.
7241
- # Corresponds to the JSON property `reconciliationMode`
7242
- # @return [String]
7243
- attr_accessor :reconciliation_mode
7586
+ def initialize(**args)
7587
+ update!(**args)
7588
+ end
7244
7589
 
7245
- # The Spanner source for importing data
7246
- # Corresponds to the JSON property `spannerSource`
7247
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSpannerSource]
7248
- attr_accessor :spanner_source
7590
+ # Update properties of this object
7591
+ def update!(**args)
7592
+ @bigquery_source = args[:bigquery_source] if args.key?(:bigquery_source)
7593
+ @error_config = args[:error_config] if args.key?(:error_config)
7594
+ @gcs_source = args[:gcs_source] if args.key?(:gcs_source)
7595
+ @inline_source = args[:inline_source] if args.key?(:inline_source)
7596
+ end
7597
+ end
7598
+
7599
+ # The inline source for CompletionSuggestions.
7600
+ class GoogleCloudDiscoveryengineV1alphaImportCompletionSuggestionsRequestInlineSource
7601
+ include Google::Apis::Core::Hashable
7602
+
7603
+ # Required. A list of all denylist entries to import. Max of 1000 items.
7604
+ # Corresponds to the JSON property `suggestions`
7605
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCompletionSuggestion>]
7606
+ attr_accessor :suggestions
7607
+
7608
+ def initialize(**args)
7609
+ update!(**args)
7610
+ end
7611
+
7612
+ # Update properties of this object
7613
+ def update!(**args)
7614
+ @suggestions = args[:suggestions] if args.key?(:suggestions)
7615
+ end
7616
+ end
7617
+
7618
+ # Response of the CompletionService.ImportCompletionSuggestions method. If the
7619
+ # long running operation is done, this message is returned by the google.
7620
+ # longrunning.Operations.response field if the operation is successful.
7621
+ class GoogleCloudDiscoveryengineV1alphaImportCompletionSuggestionsResponse
7622
+ include Google::Apis::Core::Hashable
7623
+
7624
+ # Configuration of destination for Import related errors.
7625
+ # Corresponds to the JSON property `errorConfig`
7626
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportErrorConfig]
7627
+ attr_accessor :error_config
7628
+
7629
+ # A sample of errors encountered while processing the request.
7630
+ # Corresponds to the JSON property `errorSamples`
7631
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
7632
+ attr_accessor :error_samples
7633
+
7634
+ def initialize(**args)
7635
+ update!(**args)
7636
+ end
7637
+
7638
+ # Update properties of this object
7639
+ def update!(**args)
7640
+ @error_config = args[:error_config] if args.key?(:error_config)
7641
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
7642
+ end
7643
+ end
7644
+
7645
+ # Metadata related to the progress of the ImportDocuments operation. This is
7646
+ # returned by the google.longrunning.Operation.metadata field.
7647
+ class GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata
7648
+ include Google::Apis::Core::Hashable
7649
+
7650
+ # Operation create time.
7651
+ # Corresponds to the JSON property `createTime`
7652
+ # @return [String]
7653
+ attr_accessor :create_time
7654
+
7655
+ # Count of entries that encountered errors while processing.
7656
+ # Corresponds to the JSON property `failureCount`
7657
+ # @return [Fixnum]
7658
+ attr_accessor :failure_count
7659
+
7660
+ # Count of entries that were processed successfully.
7661
+ # Corresponds to the JSON property `successCount`
7662
+ # @return [Fixnum]
7663
+ attr_accessor :success_count
7664
+
7665
+ # Total count of entries that were processed.
7666
+ # Corresponds to the JSON property `totalCount`
7667
+ # @return [Fixnum]
7668
+ attr_accessor :total_count
7669
+
7670
+ # Operation last update time. If the operation is done, this is also the finish
7671
+ # time.
7672
+ # Corresponds to the JSON property `updateTime`
7673
+ # @return [String]
7674
+ attr_accessor :update_time
7675
+
7676
+ def initialize(**args)
7677
+ update!(**args)
7678
+ end
7679
+
7680
+ # Update properties of this object
7681
+ def update!(**args)
7682
+ @create_time = args[:create_time] if args.key?(:create_time)
7683
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
7684
+ @success_count = args[:success_count] if args.key?(:success_count)
7685
+ @total_count = args[:total_count] if args.key?(:total_count)
7686
+ @update_time = args[:update_time] if args.key?(:update_time)
7687
+ end
7688
+ end
7689
+
7690
+ # Request message for Import methods.
7691
+ class GoogleCloudDiscoveryengineV1alphaImportDocumentsRequest
7692
+ include Google::Apis::Core::Hashable
7693
+
7694
+ # AlloyDB source import data from.
7695
+ # Corresponds to the JSON property `alloyDbSource`
7696
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAlloyDbSource]
7697
+ attr_accessor :alloy_db_source
7698
+
7699
+ # Whether to automatically generate IDs for the documents if absent. If set to `
7700
+ # true`, Document.ids are automatically generated based on the hash of the
7701
+ # payload, where IDs may not be consistent during multiple imports. In which
7702
+ # case ReconciliationMode.FULL is highly recommended to avoid duplicate contents.
7703
+ # If unset or set to `false`, Document.ids have to be specified using id_field,
7704
+ # otherwise, documents without IDs fail to be imported. Supported data sources: *
7705
+ # GcsSource. GcsSource.data_schema must be `custom` or `csv`. Otherwise, an
7706
+ # INVALID_ARGUMENT error is thrown. * BigQuerySource. BigQuerySource.data_schema
7707
+ # must be `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown. *
7708
+ # SpannerSource. * CloudSqlSource. * FirestoreSource. * BigtableSource.
7709
+ # Corresponds to the JSON property `autoGenerateIds`
7710
+ # @return [Boolean]
7711
+ attr_accessor :auto_generate_ids
7712
+ alias_method :auto_generate_ids?, :auto_generate_ids
7713
+
7714
+ # BigQuery source import data from.
7715
+ # Corresponds to the JSON property `bigquerySource`
7716
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBigQuerySource]
7717
+ attr_accessor :bigquery_source
7718
+
7719
+ # The Cloud Bigtable source for importing data.
7720
+ # Corresponds to the JSON property `bigtableSource`
7721
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBigtableSource]
7722
+ attr_accessor :bigtable_source
7723
+
7724
+ # Cloud SQL source import data from.
7725
+ # Corresponds to the JSON property `cloudSqlSource`
7726
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCloudSqlSource]
7727
+ attr_accessor :cloud_sql_source
7728
+
7729
+ # Configuration of destination for Import related errors.
7730
+ # Corresponds to the JSON property `errorConfig`
7731
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportErrorConfig]
7732
+ attr_accessor :error_config
7733
+
7734
+ # Cloud FhirStore source import data from.
7735
+ # Corresponds to the JSON property `fhirStoreSource`
7736
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaFhirStoreSource]
7737
+ attr_accessor :fhir_store_source
7738
+
7739
+ # Firestore source import data from.
7740
+ # Corresponds to the JSON property `firestoreSource`
7741
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaFirestoreSource]
7742
+ attr_accessor :firestore_source
7743
+
7744
+ # Cloud Storage location for input content.
7745
+ # Corresponds to the JSON property `gcsSource`
7746
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaGcsSource]
7747
+ attr_accessor :gcs_source
7748
+
7749
+ # The field indicates the ID field or column to be used as unique IDs of the
7750
+ # documents. For GcsSource it is the key of the JSON field. For instance, `my_id`
7751
+ # for JSON ``"my_id": "some_uuid"``. For others, it may be the column name of
7752
+ # the table where the unique ids are stored. The values of the JSON field or the
7753
+ # table column are used as the Document.ids. The JSON field or the table column
7754
+ # must be of string type, and the values must be set as valid strings conform to
7755
+ # [RFC-1034](https://tools.ietf.org/html/rfc1034) with 1-63 characters.
7756
+ # Otherwise, documents without valid IDs fail to be imported. Only set this
7757
+ # field when auto_generate_ids is unset or set as `false`. Otherwise, an
7758
+ # INVALID_ARGUMENT error is thrown. If it is unset, a default value `_id` is
7759
+ # used when importing from the allowed data sources. Supported data sources: *
7760
+ # GcsSource. GcsSource.data_schema must be `custom` or `csv`. Otherwise, an
7761
+ # INVALID_ARGUMENT error is thrown. * BigQuerySource. BigQuerySource.data_schema
7762
+ # must be `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown. *
7763
+ # SpannerSource. * CloudSqlSource. * FirestoreSource. * BigtableSource.
7764
+ # Corresponds to the JSON property `idField`
7765
+ # @return [String]
7766
+ attr_accessor :id_field
7767
+
7768
+ # The inline source for the input config for ImportDocuments method.
7769
+ # Corresponds to the JSON property `inlineSource`
7770
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportDocumentsRequestInlineSource]
7771
+ attr_accessor :inline_source
7772
+
7773
+ # The mode of reconciliation between existing documents and the documents to be
7774
+ # imported. Defaults to ReconciliationMode.INCREMENTAL.
7775
+ # Corresponds to the JSON property `reconciliationMode`
7776
+ # @return [String]
7777
+ attr_accessor :reconciliation_mode
7778
+
7779
+ # The Spanner source for importing data
7780
+ # Corresponds to the JSON property `spannerSource`
7781
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSpannerSource]
7782
+ attr_accessor :spanner_source
7249
7783
 
7250
7784
  # Indicates which fields in the provided imported documents to update. If not
7251
7785
  # set, the default is to update all fields.
@@ -7344,18 +7878,33 @@ module Google
7344
7878
  end
7345
7879
  end
7346
7880
 
7347
- # Metadata related to the progress of the ImportSuggestionDenyListEntries
7348
- # operation. This is returned by the google.longrunning.Operation.metadata field.
7349
- class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesMetadata
7881
+ # Metadata related to the progress of the ImportSampleQueries operation. This
7882
+ # will be returned by the google.longrunning.Operation.metadata field.
7883
+ class GoogleCloudDiscoveryengineV1alphaImportSampleQueriesMetadata
7350
7884
  include Google::Apis::Core::Hashable
7351
7885
 
7352
- # Operation create time.
7886
+ # ImportSampleQueries operation create time.
7353
7887
  # Corresponds to the JSON property `createTime`
7354
7888
  # @return [String]
7355
7889
  attr_accessor :create_time
7356
7890
 
7357
- # Operation last update time. If the operation is done, this is also the finish
7358
- # time.
7891
+ # Count of SampleQuerys that failed to be imported.
7892
+ # Corresponds to the JSON property `failureCount`
7893
+ # @return [Fixnum]
7894
+ attr_accessor :failure_count
7895
+
7896
+ # Count of SampleQuerys successfully imported.
7897
+ # Corresponds to the JSON property `successCount`
7898
+ # @return [Fixnum]
7899
+ attr_accessor :success_count
7900
+
7901
+ # Total count of SampleQuerys that were processed.
7902
+ # Corresponds to the JSON property `totalCount`
7903
+ # @return [Fixnum]
7904
+ attr_accessor :total_count
7905
+
7906
+ # ImportSampleQueries operation last update time. If the operation is done, this
7907
+ # is also the finish time.
7359
7908
  # Corresponds to the JSON property `updateTime`
7360
7909
  # @return [String]
7361
7910
  attr_accessor :update_time
@@ -7367,22 +7916,35 @@ module Google
7367
7916
  # Update properties of this object
7368
7917
  def update!(**args)
7369
7918
  @create_time = args[:create_time] if args.key?(:create_time)
7919
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
7920
+ @success_count = args[:success_count] if args.key?(:success_count)
7921
+ @total_count = args[:total_count] if args.key?(:total_count)
7370
7922
  @update_time = args[:update_time] if args.key?(:update_time)
7371
7923
  end
7372
7924
  end
7373
7925
 
7374
- # Request message for CompletionService.ImportSuggestionDenyListEntries method.
7375
- class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesRequest
7926
+ # Request message for SampleQueryService.ImportSampleQueries method.
7927
+ class GoogleCloudDiscoveryengineV1alphaImportSampleQueriesRequest
7376
7928
  include Google::Apis::Core::Hashable
7377
7929
 
7930
+ # BigQuery source import data from.
7931
+ # Corresponds to the JSON property `bigquerySource`
7932
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBigQuerySource]
7933
+ attr_accessor :bigquery_source
7934
+
7935
+ # Configuration of destination for Import related errors.
7936
+ # Corresponds to the JSON property `errorConfig`
7937
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportErrorConfig]
7938
+ attr_accessor :error_config
7939
+
7378
7940
  # Cloud Storage location for input content.
7379
7941
  # Corresponds to the JSON property `gcsSource`
7380
7942
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaGcsSource]
7381
7943
  attr_accessor :gcs_source
7382
7944
 
7383
- # The inline source for SuggestionDenyListEntry.
7945
+ # The inline source for SampleQuerys.
7384
7946
  # Corresponds to the JSON property `inlineSource`
7385
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesRequestInlineSource]
7947
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportSampleQueriesRequestInlineSource]
7386
7948
  attr_accessor :inline_source
7387
7949
 
7388
7950
  def initialize(**args)
@@ -7391,19 +7953,21 @@ module Google
7391
7953
 
7392
7954
  # Update properties of this object
7393
7955
  def update!(**args)
7956
+ @bigquery_source = args[:bigquery_source] if args.key?(:bigquery_source)
7957
+ @error_config = args[:error_config] if args.key?(:error_config)
7394
7958
  @gcs_source = args[:gcs_source] if args.key?(:gcs_source)
7395
7959
  @inline_source = args[:inline_source] if args.key?(:inline_source)
7396
7960
  end
7397
7961
  end
7398
7962
 
7399
- # The inline source for SuggestionDenyListEntry.
7400
- class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesRequestInlineSource
7963
+ # The inline source for SampleQuerys.
7964
+ class GoogleCloudDiscoveryengineV1alphaImportSampleQueriesRequestInlineSource
7401
7965
  include Google::Apis::Core::Hashable
7402
7966
 
7403
- # Required. A list of all denylist entries to import. Max of 1000 items.
7404
- # Corresponds to the JSON property `entries`
7405
- # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSuggestionDenyListEntry>]
7406
- attr_accessor :entries
7967
+ # Required. A list of SampleQuerys to import. Max of 1000 items.
7968
+ # Corresponds to the JSON property `sampleQueries`
7969
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSampleQuery>]
7970
+ attr_accessor :sample_queries
7407
7971
 
7408
7972
  def initialize(**args)
7409
7973
  update!(**args)
@@ -7411,44 +7975,40 @@ module Google
7411
7975
 
7412
7976
  # Update properties of this object
7413
7977
  def update!(**args)
7414
- @entries = args[:entries] if args.key?(:entries)
7978
+ @sample_queries = args[:sample_queries] if args.key?(:sample_queries)
7415
7979
  end
7416
7980
  end
7417
7981
 
7418
- # Response message for CompletionService.ImportSuggestionDenyListEntries method.
7419
- class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesResponse
7982
+ # Response of the SampleQueryService.ImportSampleQueries method. If the long
7983
+ # running operation is done, this message is returned by the google.longrunning.
7984
+ # Operations.response field if the operation is successful.
7985
+ class GoogleCloudDiscoveryengineV1alphaImportSampleQueriesResponse
7420
7986
  include Google::Apis::Core::Hashable
7421
7987
 
7988
+ # Configuration of destination for Import related errors.
7989
+ # Corresponds to the JSON property `errorConfig`
7990
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportErrorConfig]
7991
+ attr_accessor :error_config
7992
+
7422
7993
  # A sample of errors encountered while processing the request.
7423
7994
  # Corresponds to the JSON property `errorSamples`
7424
7995
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
7425
7996
  attr_accessor :error_samples
7426
7997
 
7427
- # Count of deny list entries that failed to be imported.
7428
- # Corresponds to the JSON property `failedEntriesCount`
7429
- # @return [Fixnum]
7430
- attr_accessor :failed_entries_count
7431
-
7432
- # Count of deny list entries successfully imported.
7433
- # Corresponds to the JSON property `importedEntriesCount`
7434
- # @return [Fixnum]
7435
- attr_accessor :imported_entries_count
7436
-
7437
7998
  def initialize(**args)
7438
7999
  update!(**args)
7439
8000
  end
7440
8001
 
7441
8002
  # Update properties of this object
7442
8003
  def update!(**args)
8004
+ @error_config = args[:error_config] if args.key?(:error_config)
7443
8005
  @error_samples = args[:error_samples] if args.key?(:error_samples)
7444
- @failed_entries_count = args[:failed_entries_count] if args.key?(:failed_entries_count)
7445
- @imported_entries_count = args[:imported_entries_count] if args.key?(:imported_entries_count)
7446
8006
  end
7447
8007
  end
7448
8008
 
7449
- # Metadata related to the progress of the Import operation. This is returned by
7450
- # the google.longrunning.Operation.metadata field.
7451
- class GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata
8009
+ # Metadata related to the progress of the ImportSuggestionDenyListEntries
8010
+ # operation. This is returned by the google.longrunning.Operation.metadata field.
8011
+ class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesMetadata
7452
8012
  include Google::Apis::Core::Hashable
7453
8013
 
7454
8014
  # Operation create time.
@@ -7456,9 +8016,111 @@ module Google
7456
8016
  # @return [String]
7457
8017
  attr_accessor :create_time
7458
8018
 
7459
- # Count of entries that encountered errors while processing.
7460
- # Corresponds to the JSON property `failureCount`
7461
- # @return [Fixnum]
8019
+ # Operation last update time. If the operation is done, this is also the finish
8020
+ # time.
8021
+ # Corresponds to the JSON property `updateTime`
8022
+ # @return [String]
8023
+ attr_accessor :update_time
8024
+
8025
+ def initialize(**args)
8026
+ update!(**args)
8027
+ end
8028
+
8029
+ # Update properties of this object
8030
+ def update!(**args)
8031
+ @create_time = args[:create_time] if args.key?(:create_time)
8032
+ @update_time = args[:update_time] if args.key?(:update_time)
8033
+ end
8034
+ end
8035
+
8036
+ # Request message for CompletionService.ImportSuggestionDenyListEntries method.
8037
+ class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesRequest
8038
+ include Google::Apis::Core::Hashable
8039
+
8040
+ # Cloud Storage location for input content.
8041
+ # Corresponds to the JSON property `gcsSource`
8042
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaGcsSource]
8043
+ attr_accessor :gcs_source
8044
+
8045
+ # The inline source for SuggestionDenyListEntry.
8046
+ # Corresponds to the JSON property `inlineSource`
8047
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesRequestInlineSource]
8048
+ attr_accessor :inline_source
8049
+
8050
+ def initialize(**args)
8051
+ update!(**args)
8052
+ end
8053
+
8054
+ # Update properties of this object
8055
+ def update!(**args)
8056
+ @gcs_source = args[:gcs_source] if args.key?(:gcs_source)
8057
+ @inline_source = args[:inline_source] if args.key?(:inline_source)
8058
+ end
8059
+ end
8060
+
8061
+ # The inline source for SuggestionDenyListEntry.
8062
+ class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesRequestInlineSource
8063
+ include Google::Apis::Core::Hashable
8064
+
8065
+ # Required. A list of all denylist entries to import. Max of 1000 items.
8066
+ # Corresponds to the JSON property `entries`
8067
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSuggestionDenyListEntry>]
8068
+ attr_accessor :entries
8069
+
8070
+ def initialize(**args)
8071
+ update!(**args)
8072
+ end
8073
+
8074
+ # Update properties of this object
8075
+ def update!(**args)
8076
+ @entries = args[:entries] if args.key?(:entries)
8077
+ end
8078
+ end
8079
+
8080
+ # Response message for CompletionService.ImportSuggestionDenyListEntries method.
8081
+ class GoogleCloudDiscoveryengineV1alphaImportSuggestionDenyListEntriesResponse
8082
+ include Google::Apis::Core::Hashable
8083
+
8084
+ # A sample of errors encountered while processing the request.
8085
+ # Corresponds to the JSON property `errorSamples`
8086
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
8087
+ attr_accessor :error_samples
8088
+
8089
+ # Count of deny list entries that failed to be imported.
8090
+ # Corresponds to the JSON property `failedEntriesCount`
8091
+ # @return [Fixnum]
8092
+ attr_accessor :failed_entries_count
8093
+
8094
+ # Count of deny list entries successfully imported.
8095
+ # Corresponds to the JSON property `importedEntriesCount`
8096
+ # @return [Fixnum]
8097
+ attr_accessor :imported_entries_count
8098
+
8099
+ def initialize(**args)
8100
+ update!(**args)
8101
+ end
8102
+
8103
+ # Update properties of this object
8104
+ def update!(**args)
8105
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
8106
+ @failed_entries_count = args[:failed_entries_count] if args.key?(:failed_entries_count)
8107
+ @imported_entries_count = args[:imported_entries_count] if args.key?(:imported_entries_count)
8108
+ end
8109
+ end
8110
+
8111
+ # Metadata related to the progress of the Import operation. This is returned by
8112
+ # the google.longrunning.Operation.metadata field.
8113
+ class GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata
8114
+ include Google::Apis::Core::Hashable
8115
+
8116
+ # Operation create time.
8117
+ # Corresponds to the JSON property `createTime`
8118
+ # @return [String]
8119
+ attr_accessor :create_time
8120
+
8121
+ # Count of entries that encountered errors while processing.
8122
+ # Corresponds to the JSON property `failureCount`
8123
+ # @return [Fixnum]
7462
8124
  attr_accessor :failure_count
7463
8125
 
7464
8126
  # Count of entries that were processed successfully.
@@ -7831,6 +8493,136 @@ module Google
7831
8493
  end
7832
8494
  end
7833
8495
 
8496
+ # Response message for EvaluationService.ListEvaluationResults method.
8497
+ class GoogleCloudDiscoveryengineV1alphaListEvaluationResultsResponse
8498
+ include Google::Apis::Core::Hashable
8499
+
8500
+ # The EvaluationResults.
8501
+ # Corresponds to the JSON property `evaluationResults`
8502
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaListEvaluationResultsResponseEvaluationResult>]
8503
+ attr_accessor :evaluation_results
8504
+
8505
+ # A token that can be sent as ListEvaluationResultsRequest.page_token to
8506
+ # retrieve the next page. If this field is omitted, there are no subsequent
8507
+ # pages.
8508
+ # Corresponds to the JSON property `nextPageToken`
8509
+ # @return [String]
8510
+ attr_accessor :next_page_token
8511
+
8512
+ def initialize(**args)
8513
+ update!(**args)
8514
+ end
8515
+
8516
+ # Update properties of this object
8517
+ def update!(**args)
8518
+ @evaluation_results = args[:evaluation_results] if args.key?(:evaluation_results)
8519
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8520
+ end
8521
+ end
8522
+
8523
+ # Represents the results of an evaluation for a single SampleQuery.
8524
+ class GoogleCloudDiscoveryengineV1alphaListEvaluationResultsResponseEvaluationResult
8525
+ include Google::Apis::Core::Hashable
8526
+
8527
+ # Describes the metrics produced by the evaluation.
8528
+ # Corresponds to the JSON property `qualityMetrics`
8529
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaQualityMetrics]
8530
+ attr_accessor :quality_metrics
8531
+
8532
+ # Sample Query captures metadata to be used for evaluation.
8533
+ # Corresponds to the JSON property `sampleQuery`
8534
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSampleQuery]
8535
+ attr_accessor :sample_query
8536
+
8537
+ def initialize(**args)
8538
+ update!(**args)
8539
+ end
8540
+
8541
+ # Update properties of this object
8542
+ def update!(**args)
8543
+ @quality_metrics = args[:quality_metrics] if args.key?(:quality_metrics)
8544
+ @sample_query = args[:sample_query] if args.key?(:sample_query)
8545
+ end
8546
+ end
8547
+
8548
+ # Response message for EvaluationService.ListEvaluations method.
8549
+ class GoogleCloudDiscoveryengineV1alphaListEvaluationsResponse
8550
+ include Google::Apis::Core::Hashable
8551
+
8552
+ # The Evaluations.
8553
+ # Corresponds to the JSON property `evaluations`
8554
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaEvaluation>]
8555
+ attr_accessor :evaluations
8556
+
8557
+ # A token that can be sent as ListEvaluationsRequest.page_token to retrieve the
8558
+ # next page. If this field is omitted, there are no subsequent pages.
8559
+ # Corresponds to the JSON property `nextPageToken`
8560
+ # @return [String]
8561
+ attr_accessor :next_page_token
8562
+
8563
+ def initialize(**args)
8564
+ update!(**args)
8565
+ end
8566
+
8567
+ # Update properties of this object
8568
+ def update!(**args)
8569
+ @evaluations = args[:evaluations] if args.key?(:evaluations)
8570
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8571
+ end
8572
+ end
8573
+
8574
+ # Response message for SampleQueryService.ListSampleQueries method.
8575
+ class GoogleCloudDiscoveryengineV1alphaListSampleQueriesResponse
8576
+ include Google::Apis::Core::Hashable
8577
+
8578
+ # A token that can be sent as ListSampleQueriesRequest.page_token to retrieve
8579
+ # the next page. If this field is omitted, there are no subsequent pages.
8580
+ # Corresponds to the JSON property `nextPageToken`
8581
+ # @return [String]
8582
+ attr_accessor :next_page_token
8583
+
8584
+ # The SampleQuerys.
8585
+ # Corresponds to the JSON property `sampleQueries`
8586
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSampleQuery>]
8587
+ attr_accessor :sample_queries
8588
+
8589
+ def initialize(**args)
8590
+ update!(**args)
8591
+ end
8592
+
8593
+ # Update properties of this object
8594
+ def update!(**args)
8595
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8596
+ @sample_queries = args[:sample_queries] if args.key?(:sample_queries)
8597
+ end
8598
+ end
8599
+
8600
+ # Response message for SampleQuerySetService.ListSampleQuerySets method.
8601
+ class GoogleCloudDiscoveryengineV1alphaListSampleQuerySetsResponse
8602
+ include Google::Apis::Core::Hashable
8603
+
8604
+ # A token that can be sent as ListSampleQuerySetsRequest.page_token to retrieve
8605
+ # the next page. If this field is omitted, there are no subsequent pages.
8606
+ # Corresponds to the JSON property `nextPageToken`
8607
+ # @return [String]
8608
+ attr_accessor :next_page_token
8609
+
8610
+ # The SampleQuerySets.
8611
+ # Corresponds to the JSON property `sampleQuerySets`
8612
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSampleQuerySet>]
8613
+ attr_accessor :sample_query_sets
8614
+
8615
+ def initialize(**args)
8616
+ update!(**args)
8617
+ end
8618
+
8619
+ # Update properties of this object
8620
+ def update!(**args)
8621
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8622
+ @sample_query_sets = args[:sample_query_sets] if args.key?(:sample_query_sets)
8623
+ end
8624
+ end
8625
+
7834
8626
  # Response message for SchemaService.ListSchemas method.
7835
8627
  class GoogleCloudDiscoveryengineV1alphaListSchemasResponse
7836
8628
  include Google::Apis::Core::Hashable
@@ -7970,6 +8762,51 @@ module Google
7970
8762
  end
7971
8763
  end
7972
8764
 
8765
+ # Output result that stores the information about where the exported data is
8766
+ # stored.
8767
+ class GoogleCloudDiscoveryengineV1alphaOutputResult
8768
+ include Google::Apis::Core::Hashable
8769
+
8770
+ # A BigQuery output result.
8771
+ # Corresponds to the JSON property `bigqueryResult`
8772
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaOutputResultBigQueryOutputResult]
8773
+ attr_accessor :bigquery_result
8774
+
8775
+ def initialize(**args)
8776
+ update!(**args)
8777
+ end
8778
+
8779
+ # Update properties of this object
8780
+ def update!(**args)
8781
+ @bigquery_result = args[:bigquery_result] if args.key?(:bigquery_result)
8782
+ end
8783
+ end
8784
+
8785
+ # A BigQuery output result.
8786
+ class GoogleCloudDiscoveryengineV1alphaOutputResultBigQueryOutputResult
8787
+ include Google::Apis::Core::Hashable
8788
+
8789
+ # The ID of a BigQuery Dataset.
8790
+ # Corresponds to the JSON property `datasetId`
8791
+ # @return [String]
8792
+ attr_accessor :dataset_id
8793
+
8794
+ # The ID of a BigQuery Table.
8795
+ # Corresponds to the JSON property `tableId`
8796
+ # @return [String]
8797
+ attr_accessor :table_id
8798
+
8799
+ def initialize(**args)
8800
+ update!(**args)
8801
+ end
8802
+
8803
+ # Update properties of this object
8804
+ def update!(**args)
8805
+ @dataset_id = args[:dataset_id] if args.key?(:dataset_id)
8806
+ @table_id = args[:table_id] if args.key?(:table_id)
8807
+ end
8808
+ end
8809
+
7973
8810
  # Detailed page information.
7974
8811
  class GoogleCloudDiscoveryengineV1alphaPageInfo
7975
8812
  include Google::Apis::Core::Hashable
@@ -8267,9 +9104,9 @@ module Google
8267
9104
  end
8268
9105
  end
8269
9106
 
8270
- # Metadata related to the progress of the PurgeDocuments operation. This will be
8271
- # returned by the google.longrunning.Operation.metadata field.
8272
- class GoogleCloudDiscoveryengineV1alphaPurgeDocumentsMetadata
9107
+ # Metadata related to the progress of the PurgeCompletionSuggestions operation.
9108
+ # This is returned by the google.longrunning.Operation.metadata field.
9109
+ class GoogleCloudDiscoveryengineV1alphaPurgeCompletionSuggestionsMetadata
8273
9110
  include Google::Apis::Core::Hashable
8274
9111
 
8275
9112
  # Operation create time.
@@ -8277,21 +9114,6 @@ module Google
8277
9114
  # @return [String]
8278
9115
  attr_accessor :create_time
8279
9116
 
8280
- # Count of entries that encountered errors while processing.
8281
- # Corresponds to the JSON property `failureCount`
8282
- # @return [Fixnum]
8283
- attr_accessor :failure_count
8284
-
8285
- # Count of entries that were ignored as entries were not found.
8286
- # Corresponds to the JSON property `ignoredCount`
8287
- # @return [Fixnum]
8288
- attr_accessor :ignored_count
8289
-
8290
- # Count of entries that were deleted successfully.
8291
- # Corresponds to the JSON property `successCount`
8292
- # @return [Fixnum]
8293
- attr_accessor :success_count
8294
-
8295
9117
  # Operation last update time. If the operation is done, this is also the finish
8296
9118
  # time.
8297
9119
  # Corresponds to the JSON property `updateTime`
@@ -8305,27 +9127,108 @@ module Google
8305
9127
  # Update properties of this object
8306
9128
  def update!(**args)
8307
9129
  @create_time = args[:create_time] if args.key?(:create_time)
8308
- @failure_count = args[:failure_count] if args.key?(:failure_count)
8309
- @ignored_count = args[:ignored_count] if args.key?(:ignored_count)
8310
- @success_count = args[:success_count] if args.key?(:success_count)
8311
9130
  @update_time = args[:update_time] if args.key?(:update_time)
8312
9131
  end
8313
9132
  end
8314
9133
 
8315
- # Request message for DocumentService.PurgeDocuments method.
8316
- class GoogleCloudDiscoveryengineV1alphaPurgeDocumentsRequest
9134
+ # Request message for CompletionService.PurgeCompletionSuggestions method.
9135
+ class GoogleCloudDiscoveryengineV1alphaPurgeCompletionSuggestionsRequest
8317
9136
  include Google::Apis::Core::Hashable
8318
9137
 
8319
- # Configuration of destination for Purge related errors.
8320
- # Corresponds to the JSON property `errorConfig`
8321
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaPurgeErrorConfig]
8322
- attr_accessor :error_config
8323
-
8324
- # Required. Filter matching documents to purge. Only currently supported value
8325
- # is `*` (all items).
8326
- # Corresponds to the JSON property `filter`
8327
- # @return [String]
8328
- attr_accessor :filter
9138
+ def initialize(**args)
9139
+ update!(**args)
9140
+ end
9141
+
9142
+ # Update properties of this object
9143
+ def update!(**args)
9144
+ end
9145
+ end
9146
+
9147
+ # Response message for CompletionService.PurgeCompletionSuggestions method.
9148
+ class GoogleCloudDiscoveryengineV1alphaPurgeCompletionSuggestionsResponse
9149
+ include Google::Apis::Core::Hashable
9150
+
9151
+ # A sample of errors encountered while processing the request.
9152
+ # Corresponds to the JSON property `errorSamples`
9153
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
9154
+ attr_accessor :error_samples
9155
+
9156
+ # Whether the completion suggestions were successfully purged.
9157
+ # Corresponds to the JSON property `purgeSucceeded`
9158
+ # @return [Boolean]
9159
+ attr_accessor :purge_succeeded
9160
+ alias_method :purge_succeeded?, :purge_succeeded
9161
+
9162
+ def initialize(**args)
9163
+ update!(**args)
9164
+ end
9165
+
9166
+ # Update properties of this object
9167
+ def update!(**args)
9168
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
9169
+ @purge_succeeded = args[:purge_succeeded] if args.key?(:purge_succeeded)
9170
+ end
9171
+ end
9172
+
9173
+ # Metadata related to the progress of the PurgeDocuments operation. This will be
9174
+ # returned by the google.longrunning.Operation.metadata field.
9175
+ class GoogleCloudDiscoveryengineV1alphaPurgeDocumentsMetadata
9176
+ include Google::Apis::Core::Hashable
9177
+
9178
+ # Operation create time.
9179
+ # Corresponds to the JSON property `createTime`
9180
+ # @return [String]
9181
+ attr_accessor :create_time
9182
+
9183
+ # Count of entries that encountered errors while processing.
9184
+ # Corresponds to the JSON property `failureCount`
9185
+ # @return [Fixnum]
9186
+ attr_accessor :failure_count
9187
+
9188
+ # Count of entries that were ignored as entries were not found.
9189
+ # Corresponds to the JSON property `ignoredCount`
9190
+ # @return [Fixnum]
9191
+ attr_accessor :ignored_count
9192
+
9193
+ # Count of entries that were deleted successfully.
9194
+ # Corresponds to the JSON property `successCount`
9195
+ # @return [Fixnum]
9196
+ attr_accessor :success_count
9197
+
9198
+ # Operation last update time. If the operation is done, this is also the finish
9199
+ # time.
9200
+ # Corresponds to the JSON property `updateTime`
9201
+ # @return [String]
9202
+ attr_accessor :update_time
9203
+
9204
+ def initialize(**args)
9205
+ update!(**args)
9206
+ end
9207
+
9208
+ # Update properties of this object
9209
+ def update!(**args)
9210
+ @create_time = args[:create_time] if args.key?(:create_time)
9211
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
9212
+ @ignored_count = args[:ignored_count] if args.key?(:ignored_count)
9213
+ @success_count = args[:success_count] if args.key?(:success_count)
9214
+ @update_time = args[:update_time] if args.key?(:update_time)
9215
+ end
9216
+ end
9217
+
9218
+ # Request message for DocumentService.PurgeDocuments method.
9219
+ class GoogleCloudDiscoveryengineV1alphaPurgeDocumentsRequest
9220
+ include Google::Apis::Core::Hashable
9221
+
9222
+ # Configuration of destination for Purge related errors.
9223
+ # Corresponds to the JSON property `errorConfig`
9224
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaPurgeErrorConfig]
9225
+ attr_accessor :error_config
9226
+
9227
+ # Required. Filter matching documents to purge. Only currently supported value
9228
+ # is `*` (all items).
9229
+ # Corresponds to the JSON property `filter`
9230
+ # @return [String]
9231
+ attr_accessor :filter
8329
9232
 
8330
9233
  # Actually performs the purge. If `force` is set to false, return the expected
8331
9234
  # purge count without deleting any documents.
@@ -8567,6 +9470,86 @@ module Google
8567
9470
  end
8568
9471
  end
8569
9472
 
9473
+ # Describes the metrics produced by the evaluation.
9474
+ class GoogleCloudDiscoveryengineV1alphaQualityMetrics
9475
+ include Google::Apis::Core::Hashable
9476
+
9477
+ # Stores the metric values at specific top-k levels.
9478
+ # Corresponds to the JSON property `docNdcg`
9479
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaQualityMetricsTopkMetrics]
9480
+ attr_accessor :doc_ndcg
9481
+
9482
+ # Stores the metric values at specific top-k levels.
9483
+ # Corresponds to the JSON property `docPrecision`
9484
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaQualityMetricsTopkMetrics]
9485
+ attr_accessor :doc_precision
9486
+
9487
+ # Stores the metric values at specific top-k levels.
9488
+ # Corresponds to the JSON property `docRecall`
9489
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaQualityMetricsTopkMetrics]
9490
+ attr_accessor :doc_recall
9491
+
9492
+ # Stores the metric values at specific top-k levels.
9493
+ # Corresponds to the JSON property `pageNdcg`
9494
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaQualityMetricsTopkMetrics]
9495
+ attr_accessor :page_ndcg
9496
+
9497
+ # Stores the metric values at specific top-k levels.
9498
+ # Corresponds to the JSON property `pageRecall`
9499
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaQualityMetricsTopkMetrics]
9500
+ attr_accessor :page_recall
9501
+
9502
+ def initialize(**args)
9503
+ update!(**args)
9504
+ end
9505
+
9506
+ # Update properties of this object
9507
+ def update!(**args)
9508
+ @doc_ndcg = args[:doc_ndcg] if args.key?(:doc_ndcg)
9509
+ @doc_precision = args[:doc_precision] if args.key?(:doc_precision)
9510
+ @doc_recall = args[:doc_recall] if args.key?(:doc_recall)
9511
+ @page_ndcg = args[:page_ndcg] if args.key?(:page_ndcg)
9512
+ @page_recall = args[:page_recall] if args.key?(:page_recall)
9513
+ end
9514
+ end
9515
+
9516
+ # Stores the metric values at specific top-k levels.
9517
+ class GoogleCloudDiscoveryengineV1alphaQualityMetricsTopkMetrics
9518
+ include Google::Apis::Core::Hashable
9519
+
9520
+ # The top-1 value.
9521
+ # Corresponds to the JSON property `top1`
9522
+ # @return [Float]
9523
+ attr_accessor :top1
9524
+
9525
+ # The top-10 value.
9526
+ # Corresponds to the JSON property `top10`
9527
+ # @return [Float]
9528
+ attr_accessor :top10
9529
+
9530
+ # The top-3 value.
9531
+ # Corresponds to the JSON property `top3`
9532
+ # @return [Float]
9533
+ attr_accessor :top3
9534
+
9535
+ # The top-5 value.
9536
+ # Corresponds to the JSON property `top5`
9537
+ # @return [Float]
9538
+ attr_accessor :top5
9539
+
9540
+ def initialize(**args)
9541
+ update!(**args)
9542
+ end
9543
+
9544
+ # Update properties of this object
9545
+ def update!(**args)
9546
+ @top1 = args[:top1] if args.key?(:top1)
9547
+ @top10 = args[:top10] if args.key?(:top10)
9548
+ @top3 = args[:top3] if args.key?(:top3)
9549
+ @top5 = args[:top5] if args.key?(:top5)
9550
+ end
9551
+ end
9552
+
8570
9553
  # Defines a user inputed query.
8571
9554
  class GoogleCloudDiscoveryengineV1alphaQuery
8572
9555
  include Google::Apis::Core::Hashable
@@ -9188,7 +10171,7 @@ module Google
9188
10171
  attr_accessor :threshold_bindings
9189
10172
 
9190
10173
  # The requirement type, used as an identifier. Must be unique. The type should
9191
- # prefix with service name to avoid possible collision. It's encoraged to use
10174
+ # prefix with service name to avoid possible collision. It's encouraged to use
9192
10175
  # natural hierarchical grouping for similar requirements. Examples: * `library.
9193
10176
  # googleapis.com/books/min_available_books` * `discoveryengine.googleapis.com/
9194
10177
  # media_rec/recommended_for_you/conversion_rate`
@@ -9352,6 +10335,140 @@ module Google
9352
10335
  end
9353
10336
  end
9354
10337
 
10338
+ # Sample Query captures metadata to be used for evaluation.
10339
+ class GoogleCloudDiscoveryengineV1alphaSampleQuery
10340
+ include Google::Apis::Core::Hashable
10341
+
10342
+ # Output only. Timestamp the SampleQuery was created at.
10343
+ # Corresponds to the JSON property `createTime`
10344
+ # @return [String]
10345
+ attr_accessor :create_time
10346
+
10347
+ # Immutable. The full resource name of the sample query, in the format of `
10348
+ # projects/`project`/locations/`location`/sampleQuerySets/`sampleQuerySet`/
10349
+ # sampleQueries/`sampleQuery``. This field must be a UTF-8 encoded string with a
10350
+ # length limit of 1024 characters.
10351
+ # Corresponds to the JSON property `name`
10352
+ # @return [String]
10353
+ attr_accessor :name
10354
+
10355
+ # Query Entry captures metadata to be used for search evaluation.
10356
+ # Corresponds to the JSON property `queryEntry`
10357
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSampleQueryQueryEntry]
10358
+ attr_accessor :query_entry
10359
+
10360
+ def initialize(**args)
10361
+ update!(**args)
10362
+ end
10363
+
10364
+ # Update properties of this object
10365
+ def update!(**args)
10366
+ @create_time = args[:create_time] if args.key?(:create_time)
10367
+ @name = args[:name] if args.key?(:name)
10368
+ @query_entry = args[:query_entry] if args.key?(:query_entry)
10369
+ end
10370
+ end
10371
+
10372
+ # Query Entry captures metadata to be used for search evaluation.
10373
+ class GoogleCloudDiscoveryengineV1alphaSampleQueryQueryEntry
10374
+ include Google::Apis::Core::Hashable
10375
+
10376
+ # Required. The query.
10377
+ # Corresponds to the JSON property `query`
10378
+ # @return [String]
10379
+ attr_accessor :query
10380
+
10381
+ # List of targets for the query.
10382
+ # Corresponds to the JSON property `targets`
10383
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSampleQueryQueryEntryTarget>]
10384
+ attr_accessor :targets
10385
+
10386
+ def initialize(**args)
10387
+ update!(**args)
10388
+ end
10389
+
10390
+ # Update properties of this object
10391
+ def update!(**args)
10392
+ @query = args[:query] if args.key?(:query)
10393
+ @targets = args[:targets] if args.key?(:targets)
10394
+ end
10395
+ end
10396
+
10397
+ # Defines the parameters of the query's expected outcome.
10398
+ class GoogleCloudDiscoveryengineV1alphaSampleQueryQueryEntryTarget
10399
+ include Google::Apis::Core::Hashable
10400
+
10401
+ # Expected page numbers of the target. Each page number must be non negative.
10402
+ # Corresponds to the JSON property `pageNumbers`
10403
+ # @return [Array<Fixnum>]
10404
+ attr_accessor :page_numbers
10405
+
10406
+ # Relevance score of the target.
10407
+ # Corresponds to the JSON property `score`
10408
+ # @return [Float]
10409
+ attr_accessor :score
10410
+
10411
+ # Expected uri of the target. This field must be a UTF-8 encoded string with a
10412
+ # length limit of 2048 characters. Example of valid uris: `https://example.com/
10413
+ # abc`, `gcs://example/example.pdf`.
10414
+ # Corresponds to the JSON property `uri`
10415
+ # @return [String]
10416
+ attr_accessor :uri
10417
+
10418
+ def initialize(**args)
10419
+ update!(**args)
10420
+ end
10421
+
10422
+ # Update properties of this object
10423
+ def update!(**args)
10424
+ @page_numbers = args[:page_numbers] if args.key?(:page_numbers)
10425
+ @score = args[:score] if args.key?(:score)
10426
+ @uri = args[:uri] if args.key?(:uri)
10427
+ end
10428
+ end
10429
+
10430
+ # A SampleQuerySet is the parent resource of SampleQuery, and contains the
10431
+ # configurations shared by all SampleQuery under it.
10432
+ class GoogleCloudDiscoveryengineV1alphaSampleQuerySet
10433
+ include Google::Apis::Core::Hashable
10434
+
10435
+ # Output only. Timestamp the SampleQuerySet was created at.
10436
+ # Corresponds to the JSON property `createTime`
10437
+ # @return [String]
10438
+ attr_accessor :create_time
10439
+
10440
+ # The description of the SampleQuerySet.
10441
+ # Corresponds to the JSON property `description`
10442
+ # @return [String]
10443
+ attr_accessor :description
10444
+
10445
+ # Required. The sample query set display name. This field must be a UTF-8
10446
+ # encoded string with a length limit of 128 characters.
10447
+ # Corresponds to the JSON property `displayName`
10448
+ # @return [String]
10449
+ attr_accessor :display_name
10450
+
10451
+ # Immutable. The full resource name of the SampleQuerySet, in the format of `
10452
+ # projects/`project`/locations/`location`/sampleQuerySets/`sampleQuerySet``.
10453
+ # This field must be a UTF-8 encoded string with a length limit of 1024
10454
+ # characters.
10455
+ # Corresponds to the JSON property `name`
10456
+ # @return [String]
10457
+ attr_accessor :name
10458
+
10459
+ def initialize(**args)
10460
+ update!(**args)
10461
+ end
10462
+
10463
+ # Update properties of this object
10464
+ def update!(**args)
10465
+ @create_time = args[:create_time] if args.key?(:create_time)
10466
+ @description = args[:description] if args.key?(:description)
10467
+ @display_name = args[:display_name] if args.key?(:display_name)
10468
+ @name = args[:name] if args.key?(:name)
10469
+ end
10470
+ end
10471
+
9355
10472
  # Defines the structure and layout of a type of document data.
9356
10473
  class GoogleCloudDiscoveryengineV1alphaSchema
9357
10474
  include Google::Apis::Core::Hashable
@@ -9525,6 +10642,12 @@ module Google
9525
10642
  # @return [String]
9526
10643
  attr_accessor :language_code
9527
10644
 
10645
+ # Specification to enable natural language understanding capabilities for search
10646
+ # requests.
10647
+ # Corresponds to the JSON property `naturalLanguageQueryUnderstandingSpec`
10648
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchRequestNaturalLanguageQueryUnderstandingSpec]
10649
+ attr_accessor :natural_language_query_understanding_spec
10650
+
9528
10651
  # A 0-indexed integer that specifies the current offset (that is, starting
9529
10652
  # result location, amongst the Documents deemed by the API as relevant) in
9530
10653
  # search results. This field is only considered if page_token is unset. If this
@@ -9583,15 +10706,16 @@ module Google
9583
10706
 
9584
10707
  # The ranking expression controls the customized ranking on retrieval documents.
9585
10708
  # This overrides ServingConfig.ranking_expression. The ranking expression is a
9586
- # single function or multiple functions that are joint by "+". *
10709
+ # single function or multiple functions that are joined by "+". *
9587
10710
  # ranking_expression = function, ` " + ", function `; Supported functions: *
9588
10711
  # double * relevance_score * double * dotProduct(embedding_field_path) Function
9589
- # variables: `relevance_score`: pre-defined keywords, used for measure relevance
9590
- # between query and document. `embedding_field_path`: the document embedding
9591
- # field used with query embedding vector. `dotProduct`: embedding function
9592
- # between embedding_field_path and query embedding vector. Example ranking
9593
- # expression: If document has an embedding field doc_embedding, the ranking
9594
- # expression could be `0.5 * relevance_score + 0.3 * dotProduct(doc_embedding)`.
10712
+ # variables: * `relevance_score`: pre-defined keywords, used for measure
10713
+ # relevance between query and document. * `embedding_field_path`: the document
10714
+ # embedding field used with query embedding vector. * `dotProduct`: embedding
10715
+ # function between embedding_field_path and query embedding vector. Example
10716
+ # ranking expression: If document has an embedding field doc_embedding, the
10717
+ # ranking expression could be `0.5 * relevance_score + 0.3 * dotProduct(
10718
+ # doc_embedding)`.
9595
10719
  # Corresponds to the JSON property `rankingExpression`
9596
10720
  # @return [String]
9597
10721
  attr_accessor :ranking_expression
@@ -9604,12 +10728,62 @@ module Google
9604
10728
  # @return [String]
9605
10729
  attr_accessor :region_code
9606
10730
 
10731
+ # The relevance threshold of the search results. Default to Google defined
10732
+ # threshold, leveraging a balance of precision and recall to deliver both highly
10733
+ # accurate results and comprehensive coverage of relevant information.
10734
+ # Corresponds to the JSON property `relevanceThreshold`
10735
+ # @return [String]
10736
+ attr_accessor :relevance_threshold
10737
+
9607
10738
  # Whether to turn on safe search. This is only supported for website search.
9608
10739
  # Corresponds to the JSON property `safeSearch`
9609
10740
  # @return [Boolean]
9610
10741
  attr_accessor :safe_search
9611
10742
  alias_method :safe_search?, :safe_search
9612
10743
 
10744
+ # Specification for search as you type in search requests.
10745
+ # Corresponds to the JSON property `searchAsYouTypeSpec`
10746
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchRequestSearchAsYouTypeSpec]
10747
+ attr_accessor :search_as_you_type_spec
10748
+
10749
+ # Required. The resource name of the Search serving config, such as `projects/*/
10750
+ # locations/global/collections/default_collection/engines/*/servingConfigs/
10751
+ # default_serving_config`, or `projects/*/locations/global/collections/
10752
+ # default_collection/dataStores/default_data_store/servingConfigs/
10753
+ # default_serving_config`. This field is used to identify the serving
10754
+ # configuration name, set of models used to make the search.
10755
+ # Corresponds to the JSON property `servingConfig`
10756
+ # @return [String]
10757
+ attr_accessor :serving_config
10758
+
10759
+ # The session resource name. Optional. Session allows users to do multi-turn /
10760
+ # search API calls or coordination between /search API calls and /answer API
10761
+ # calls. Example #1 (multi-turn /search API calls): 1. Call /search API with the
10762
+ # auto-session mode (see below). 2. Call /search API with the session ID
10763
+ # generated in the first call. Here, the previous search query gets considered
10764
+ # in query standing. I.e., if the first query is "How did Alphabet do in 2022?"
10765
+ # and the current query is "How about 2023?", the current query will be
10766
+ # interpreted as "How did Alphabet do in 2023?". Example #2 (coordination
10767
+ # between /search API calls and /answer API calls): 1. Call /search API with the
10768
+ # auto-session mode (see below). 2. Call /answer API with the session ID
10769
+ # generated in the first call. Here, the answer generation happens in the
10770
+ # context of the search results from the first search call. Auto-session mode:
10771
+ # when `projects/.../sessions/-` is used, a new session gets automatically
10772
+ # created. Otherwise, users can use the create-session API to create a session
10773
+ # manually. Multi-turn Search feature is currently at private GA stage. Please
10774
+ # use v1alpha or v1beta version instead before we launch this feature to public
10775
+ # GA. Or ask for allowlisting through Google Support team.
10776
+ # Corresponds to the JSON property `session`
10777
+ # @return [String]
10778
+ attr_accessor :session
10779
+
10780
+ # Session specification. Multi-turn Search feature is currently at private GA
10781
+ # stage. Please use v1alpha or v1beta version instead before we launch this
10782
+ # feature to public GA. Or ask for allowlisting through Google Support team.
10783
+ # Corresponds to the JSON property `sessionSpec`
10784
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec]
10785
+ attr_accessor :session_spec
10786
+
9613
10787
  # The specification for query spell correction.
9614
10788
  # Corresponds to the JSON property `spellCorrectionSpec`
9615
10789
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchRequestSpellCorrectionSpec]
@@ -9664,6 +10838,7 @@ module Google
9664
10838
  @filter = args[:filter] if args.key?(:filter)
9665
10839
  @image_query = args[:image_query] if args.key?(:image_query)
9666
10840
  @language_code = args[:language_code] if args.key?(:language_code)
10841
+ @natural_language_query_understanding_spec = args[:natural_language_query_understanding_spec] if args.key?(:natural_language_query_understanding_spec)
9667
10842
  @offset = args[:offset] if args.key?(:offset)
9668
10843
  @order_by = args[:order_by] if args.key?(:order_by)
9669
10844
  @page_size = args[:page_size] if args.key?(:page_size)
@@ -9673,7 +10848,12 @@ module Google
9673
10848
  @query_expansion_spec = args[:query_expansion_spec] if args.key?(:query_expansion_spec)
9674
10849
  @ranking_expression = args[:ranking_expression] if args.key?(:ranking_expression)
9675
10850
  @region_code = args[:region_code] if args.key?(:region_code)
10851
+ @relevance_threshold = args[:relevance_threshold] if args.key?(:relevance_threshold)
9676
10852
  @safe_search = args[:safe_search] if args.key?(:safe_search)
10853
+ @search_as_you_type_spec = args[:search_as_you_type_spec] if args.key?(:search_as_you_type_spec)
10854
+ @serving_config = args[:serving_config] if args.key?(:serving_config)
10855
+ @session = args[:session] if args.key?(:session)
10856
+ @session_spec = args[:session_spec] if args.key?(:session_spec)
9677
10857
  @spell_correction_spec = args[:spell_correction_spec] if args.key?(:spell_correction_spec)
9678
10858
  @user_info = args[:user_info] if args.key?(:user_info)
9679
10859
  @user_labels = args[:user_labels] if args.key?(:user_labels)
@@ -9845,10 +11025,8 @@ module Google
9845
11025
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchRequestContentSearchSpecExtractiveContentSpec]
9846
11026
  attr_accessor :extractive_content_spec
9847
11027
 
9848
- # Specifies the search result mode. If unspecified, the search result mode is
9849
- # based on DataStore.DocumentProcessingConfig.chunking_config: * If DataStore.
9850
- # DocumentProcessingConfig.chunking_config is specified, it defaults to `CHUNKS`.
9851
- # * Otherwise, it defaults to `DOCUMENTS`.
11028
+ # Specifies the search result mode. If unspecified, the search result mode
11029
+ # defaults to `DOCUMENTS`.
9852
11030
  # Corresponds to the JSON property `searchResultMode`
9853
11031
  # @return [String]
9854
11032
  attr_accessor :search_result_mode
@@ -10148,8 +11326,8 @@ module Google
10148
11326
  end
10149
11327
 
10150
11328
  # A struct to define data stores to filter on in a search call and
10151
- # configurations for those data stores. A maximum of 1 DataStoreSpec per
10152
- # data_store is allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.
11329
+ # configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error
11330
+ # is returned.
10153
11331
  class GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec
10154
11332
  include Google::Apis::Core::Hashable
10155
11333
 
@@ -10267,7 +11445,10 @@ module Google
10267
11445
 
10268
11446
  # Maximum facet values that are returned for this facet. If unspecified,
10269
11447
  # defaults to 20. The maximum allowed value is 300. Values above 300 are coerced
10270
- # to 300. If this field is negative, an `INVALID_ARGUMENT` is returned.
11448
+ # to 300. For aggregation in healthcare search, when the [FacetKey.key] is "
11449
+ # healthcare_aggregation_key", the limit will be overridden to 10,000 internally,
11450
+ # regardless of the value set here. If this field is negative, an `
11451
+ # INVALID_ARGUMENT` is returned.
10271
11452
  # Corresponds to the JSON property `limit`
10272
11453
  # @return [Fixnum]
10273
11454
  attr_accessor :limit
@@ -10380,6 +11561,37 @@ module Google
10380
11561
  end
10381
11562
  end
10382
11563
 
11564
+ # Specification to enable natural language understanding capabilities for search
11565
+ # requests.
11566
+ class GoogleCloudDiscoveryengineV1alphaSearchRequestNaturalLanguageQueryUnderstandingSpec
11567
+ include Google::Apis::Core::Hashable
11568
+
11569
+ # The condition under which filter extraction should occur. Default to Condition.
11570
+ # DISABLED.
11571
+ # Corresponds to the JSON property `filterExtractionCondition`
11572
+ # @return [String]
11573
+ attr_accessor :filter_extraction_condition
11574
+
11575
+ # Field names used for location-based filtering, where geolocation filters are
11576
+ # detected in natural language search queries. Only valid when the
11577
+ # FilterExtractionCondition is set to `ENABLED`. If this field is set, it
11578
+ # overrides the field names set in ServingConfig.
11579
+ # geo_search_query_detection_field_names.
11580
+ # Corresponds to the JSON property `geoSearchQueryDetectionFieldNames`
11581
+ # @return [Array<String>]
11582
+ attr_accessor :geo_search_query_detection_field_names
11583
+
11584
+ def initialize(**args)
11585
+ update!(**args)
11586
+ end
11587
+
11588
+ # Update properties of this object
11589
+ def update!(**args)
11590
+ @filter_extraction_condition = args[:filter_extraction_condition] if args.key?(:filter_extraction_condition)
11591
+ @geo_search_query_detection_field_names = args[:geo_search_query_detection_field_names] if args.key?(:geo_search_query_detection_field_names)
11592
+ end
11593
+ end
11594
+
10383
11595
  # Specification to determine under which conditions query expansion should occur.
10384
11596
  class GoogleCloudDiscoveryengineV1alphaSearchRequestQueryExpansionSpec
10385
11597
  include Google::Apis::Core::Hashable
@@ -10409,15 +11621,15 @@ module Google
10409
11621
  end
10410
11622
  end
10411
11623
 
10412
- # The specification for query spell correction.
10413
- class GoogleCloudDiscoveryengineV1alphaSearchRequestSpellCorrectionSpec
11624
+ # Specification for search as you type in search requests.
11625
+ class GoogleCloudDiscoveryengineV1alphaSearchRequestSearchAsYouTypeSpec
10414
11626
  include Google::Apis::Core::Hashable
10415
11627
 
10416
- # The mode under which spell correction replaces the original search query.
10417
- # Defaults to Mode.AUTO.
10418
- # Corresponds to the JSON property `mode`
11628
+ # The condition under which search as you type should occur. Default to
11629
+ # Condition.DISABLED.
11630
+ # Corresponds to the JSON property `condition`
10419
11631
  # @return [String]
10420
- attr_accessor :mode
11632
+ attr_accessor :condition
10421
11633
 
10422
11634
  def initialize(**args)
10423
11635
  update!(**args)
@@ -10425,12 +11637,72 @@ module Google
10425
11637
 
10426
11638
  # Update properties of this object
10427
11639
  def update!(**args)
10428
- @mode = args[:mode] if args.key?(:mode)
11640
+ @condition = args[:condition] if args.key?(:condition)
10429
11641
  end
10430
11642
  end
10431
11643
 
10432
- # Response message for SearchService.Search method.
10433
- class GoogleCloudDiscoveryengineV1alphaSearchResponse
11644
+ # Session specification. Multi-turn Search feature is currently at private GA
11645
+ # stage. Please use v1alpha or v1beta version instead before we launch this
11646
+ # feature to public GA. Or ask for allowlisting through Google Support team.
11647
+ class GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec
11648
+ include Google::Apis::Core::Hashable
11649
+
11650
+ # If set, the search result gets stored to the "turn" specified by this query ID.
11651
+ # Example: Let's say the session looks like this: session ` name: ".../sessions/
11652
+ # xxx" turns ` query ` text: "What is foo?" query_id: ".../questions/yyy" `
11653
+ # answer: "Foo is ..." ` turns ` query ` text: "How about bar then?" query_id: ".
11654
+ # ../questions/zzz" ` ` ` The user can call /search API with a request like this:
11655
+ # session: ".../sessions/xxx" session_spec ` query_id: ".../questions/zzz" `
11656
+ # Then, the API stores the search result, associated with the last turn. The
11657
+ # stored search result can be used by a subsequent /answer API call (with the
11658
+ # session ID and the query ID specified). Also, it is possible to call /search
11659
+ # and /answer in parallel with the same session ID & query ID.
11660
+ # Corresponds to the JSON property `queryId`
11661
+ # @return [String]
11662
+ attr_accessor :query_id
11663
+
11664
+ # The number of top search results to persist. The persisted search results can
11665
+ # be used for the subsequent /answer api call. This field is simliar to the `
11666
+ # summary_result_count` field in SearchRequest.ContentSearchSpec.SummarySpec.
11667
+ # summary_result_count. At most 10 results for documents mode, or 50 for chunks
11668
+ # mode.
11669
+ # Corresponds to the JSON property `searchResultPersistenceCount`
11670
+ # @return [Fixnum]
11671
+ attr_accessor :search_result_persistence_count
11672
+
11673
+ def initialize(**args)
11674
+ update!(**args)
11675
+ end
11676
+
11677
+ # Update properties of this object
11678
+ def update!(**args)
11679
+ @query_id = args[:query_id] if args.key?(:query_id)
11680
+ @search_result_persistence_count = args[:search_result_persistence_count] if args.key?(:search_result_persistence_count)
11681
+ end
11682
+ end
11683
+
11684
+ # The specification for query spell correction.
11685
+ class GoogleCloudDiscoveryengineV1alphaSearchRequestSpellCorrectionSpec
11686
+ include Google::Apis::Core::Hashable
11687
+
11688
+ # The mode under which spell correction replaces the original search query.
11689
+ # Defaults to Mode.AUTO.
11690
+ # Corresponds to the JSON property `mode`
11691
+ # @return [String]
11692
+ attr_accessor :mode
11693
+
11694
+ def initialize(**args)
11695
+ update!(**args)
11696
+ end
11697
+
11698
+ # Update properties of this object
11699
+ def update!(**args)
11700
+ @mode = args[:mode] if args.key?(:mode)
11701
+ end
11702
+ end
11703
+
11704
+ # Response message for SearchService.Search method.
11705
+ class GoogleCloudDiscoveryengineV1alphaSearchResponse
10434
11706
  include Google::Apis::Core::Hashable
10435
11707
 
10436
11708
  # Controls applied as part of the Control service.
@@ -10468,6 +11740,12 @@ module Google
10468
11740
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseGuidedSearchResult]
10469
11741
  attr_accessor :guided_search_result
10470
11742
 
11743
+ # Information describing what natural language understanding was done on the
11744
+ # input query.
11745
+ # Corresponds to the JSON property `naturalLanguageQueryUnderstandingInfo`
11746
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfo]
11747
+ attr_accessor :natural_language_query_understanding_info
11748
+
10471
11749
  # A token that can be sent as SearchRequest.page_token to retrieve the next page.
10472
11750
  # If this field is omitted, there are no subsequent pages.
10473
11751
  # Corresponds to the JSON property `nextPageToken`
@@ -10492,6 +11770,11 @@ module Google
10492
11770
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseSearchResult>]
10493
11771
  attr_accessor :results
10494
11772
 
11773
+ # Information about the session.
11774
+ # Corresponds to the JSON property `sessionInfo`
11775
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseSessionInfo]
11776
+ attr_accessor :session_info
11777
+
10495
11778
  # Summary of the top N search results specified by the summary spec.
10496
11779
  # Corresponds to the JSON property `summary`
10497
11780
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseSummary]
@@ -10516,10 +11799,12 @@ module Google
10516
11799
  @facets = args[:facets] if args.key?(:facets)
10517
11800
  @geo_search_debug_info = args[:geo_search_debug_info] if args.key?(:geo_search_debug_info)
10518
11801
  @guided_search_result = args[:guided_search_result] if args.key?(:guided_search_result)
11802
+ @natural_language_query_understanding_info = args[:natural_language_query_understanding_info] if args.key?(:natural_language_query_understanding_info)
10519
11803
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
10520
11804
  @query_expansion_info = args[:query_expansion_info] if args.key?(:query_expansion_info)
10521
11805
  @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
10522
11806
  @results = args[:results] if args.key?(:results)
11807
+ @session_info = args[:session_info] if args.key?(:session_info)
10523
11808
  @summary = args[:summary] if args.key?(:summary)
10524
11809
  @total_size = args[:total_size] if args.key?(:total_size)
10525
11810
  end
@@ -10666,6 +11951,234 @@ module Google
10666
11951
  end
10667
11952
  end
10668
11953
 
11954
+ # Information describing what natural language understanding was done on the
11955
+ # input query.
11956
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfo
11957
+ include Google::Apis::Core::Hashable
11958
+
11959
+ # The filters that were extracted from the input query.
11960
+ # Corresponds to the JSON property `extractedFilters`
11961
+ # @return [String]
11962
+ attr_accessor :extracted_filters
11963
+
11964
+ # Rewritten input query minus the extracted filters.
11965
+ # Corresponds to the JSON property `rewrittenQuery`
11966
+ # @return [String]
11967
+ attr_accessor :rewritten_query
11968
+
11969
+ # The filters that were extracted from the input query represented in a
11970
+ # structured form.
11971
+ # Corresponds to the JSON property `structuredExtractedFilter`
11972
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilter]
11973
+ attr_accessor :structured_extracted_filter
11974
+
11975
+ def initialize(**args)
11976
+ update!(**args)
11977
+ end
11978
+
11979
+ # Update properties of this object
11980
+ def update!(**args)
11981
+ @extracted_filters = args[:extracted_filters] if args.key?(:extracted_filters)
11982
+ @rewritten_query = args[:rewritten_query] if args.key?(:rewritten_query)
11983
+ @structured_extracted_filter = args[:structured_extracted_filter] if args.key?(:structured_extracted_filter)
11984
+ end
11985
+ end
11986
+
11987
+ # The filters that were extracted from the input query represented in a
11988
+ # structured form.
11989
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilter
11990
+ include Google::Apis::Core::Hashable
11991
+
11992
+ # The expression denoting the filter that was extracted from the input query.
11993
+ # Corresponds to the JSON property `expression`
11994
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterExpression]
11995
+ attr_accessor :expression
11996
+
11997
+ def initialize(**args)
11998
+ update!(**args)
11999
+ end
12000
+
12001
+ # Update properties of this object
12002
+ def update!(**args)
12003
+ @expression = args[:expression] if args.key?(:expression)
12004
+ end
12005
+ end
12006
+
12007
+ # Logical `And` operator.
12008
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterAndExpression
12009
+ include Google::Apis::Core::Hashable
12010
+
12011
+ # The expressions that were ANDed together.
12012
+ # Corresponds to the JSON property `expressions`
12013
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterExpression>]
12014
+ attr_accessor :expressions
12015
+
12016
+ def initialize(**args)
12017
+ update!(**args)
12018
+ end
12019
+
12020
+ # Update properties of this object
12021
+ def update!(**args)
12022
+ @expressions = args[:expressions] if args.key?(:expressions)
12023
+ end
12024
+ end
12025
+
12026
+ # The expression denoting the filter that was extracted from the input query.
12027
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterExpression
12028
+ include Google::Apis::Core::Hashable
12029
+
12030
+ # Logical `And` operator.
12031
+ # Corresponds to the JSON property `andExpr`
12032
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterAndExpression]
12033
+ attr_accessor :and_expr
12034
+
12035
+ # Constraint of a geolocation field. Name of the geolocation field as defined in
12036
+ # the schema.
12037
+ # Corresponds to the JSON property `geolocationConstraint`
12038
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterGeolocationConstraint]
12039
+ attr_accessor :geolocation_constraint
12040
+
12041
+ # Constraint expression of a number field. Example: price < 100.
12042
+ # Corresponds to the JSON property `numberConstraint`
12043
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterNumberConstraint]
12044
+ attr_accessor :number_constraint
12045
+
12046
+ # Logical `Or` operator.
12047
+ # Corresponds to the JSON property `orExpr`
12048
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterOrExpression]
12049
+ attr_accessor :or_expr
12050
+
12051
+ # Constraint expression of a string field.
12052
+ # Corresponds to the JSON property `stringConstraint`
12053
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterStringConstraint]
12054
+ attr_accessor :string_constraint
12055
+
12056
+ def initialize(**args)
12057
+ update!(**args)
12058
+ end
12059
+
12060
+ # Update properties of this object
12061
+ def update!(**args)
12062
+ @and_expr = args[:and_expr] if args.key?(:and_expr)
12063
+ @geolocation_constraint = args[:geolocation_constraint] if args.key?(:geolocation_constraint)
12064
+ @number_constraint = args[:number_constraint] if args.key?(:number_constraint)
12065
+ @or_expr = args[:or_expr] if args.key?(:or_expr)
12066
+ @string_constraint = args[:string_constraint] if args.key?(:string_constraint)
12067
+ end
12068
+ end
12069
+
12070
+ # Constraint of a geolocation field. Name of the geolocation field as defined in
12071
+ # the schema.
12072
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterGeolocationConstraint
12073
+ include Google::Apis::Core::Hashable
12074
+
12075
+ # The reference address that was inferred from the input query. The proximity of
12076
+ # the reference address to the geolocation field will be used to filter the
12077
+ # results.
12078
+ # Corresponds to the JSON property `address`
12079
+ # @return [String]
12080
+ attr_accessor :address
12081
+
12082
+ # The name of the geolocation field as defined in the schema.
12083
+ # Corresponds to the JSON property `fieldName`
12084
+ # @return [String]
12085
+ attr_accessor :field_name
12086
+
12087
+ # The radius in meters around the address. The record is returned if the
12088
+ # location of the geolocation field is within the radius.
12089
+ # Corresponds to the JSON property `radiusInMeters`
12090
+ # @return [Float]
12091
+ attr_accessor :radius_in_meters
12092
+
12093
+ def initialize(**args)
12094
+ update!(**args)
12095
+ end
12096
+
12097
+ # Update properties of this object
12098
+ def update!(**args)
12099
+ @address = args[:address] if args.key?(:address)
12100
+ @field_name = args[:field_name] if args.key?(:field_name)
12101
+ @radius_in_meters = args[:radius_in_meters] if args.key?(:radius_in_meters)
12102
+ end
12103
+ end
12104
+
12105
+ # Constraint expression of a number field. Example: price < 100.
12106
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterNumberConstraint
12107
+ include Google::Apis::Core::Hashable
12108
+
12109
+ # The comparison operation performed between the field value and the value
12110
+ # specified in the constraint.
12111
+ # Corresponds to the JSON property `comparison`
12112
+ # @return [String]
12113
+ attr_accessor :comparison
12114
+
12115
+ # Name of the numerical field as defined in the schema.
12116
+ # Corresponds to the JSON property `fieldName`
12117
+ # @return [String]
12118
+ attr_accessor :field_name
12119
+
12120
+ # The value specified in the numerical constraint.
12121
+ # Corresponds to the JSON property `value`
12122
+ # @return [Float]
12123
+ attr_accessor :value
12124
+
12125
+ def initialize(**args)
12126
+ update!(**args)
12127
+ end
12128
+
12129
+ # Update properties of this object
12130
+ def update!(**args)
12131
+ @comparison = args[:comparison] if args.key?(:comparison)
12132
+ @field_name = args[:field_name] if args.key?(:field_name)
12133
+ @value = args[:value] if args.key?(:value)
12134
+ end
12135
+ end
12136
+
12137
+ # Logical `Or` operator.
12138
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterOrExpression
12139
+ include Google::Apis::Core::Hashable
12140
+
12141
+ # The expressions that were ORed together.
12142
+ # Corresponds to the JSON property `expressions`
12143
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterExpression>]
12144
+ attr_accessor :expressions
12145
+
12146
+ def initialize(**args)
12147
+ update!(**args)
12148
+ end
12149
+
12150
+ # Update properties of this object
12151
+ def update!(**args)
12152
+ @expressions = args[:expressions] if args.key?(:expressions)
12153
+ end
12154
+ end
12155
+
12156
+ # Constraint expression of a string field.
12157
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseNaturalLanguageQueryUnderstandingInfoStructuredExtractedFilterStringConstraint
12158
+ include Google::Apis::Core::Hashable
12159
+
12160
+ # Name of the string field as defined in the schema.
12161
+ # Corresponds to the JSON property `fieldName`
12162
+ # @return [String]
12163
+ attr_accessor :field_name
12164
+
12165
+ # Values of the string field. The record will only be returned if the field
12166
+ # value matches one of the values specified here.
12167
+ # Corresponds to the JSON property `values`
12168
+ # @return [Array<String>]
12169
+ attr_accessor :values
12170
+
12171
+ def initialize(**args)
12172
+ update!(**args)
12173
+ end
12174
+
12175
+ # Update properties of this object
12176
+ def update!(**args)
12177
+ @field_name = args[:field_name] if args.key?(:field_name)
12178
+ @values = args[:values] if args.key?(:values)
12179
+ end
12180
+ end
12181
+
10669
12182
  # Information describing query expansion including whether expansion has
10670
12183
  # occurred.
10671
12184
  class GoogleCloudDiscoveryengineV1alphaSearchResponseQueryExpansionInfo
@@ -10733,6 +12246,35 @@ module Google
10733
12246
  end
10734
12247
  end
10735
12248
 
12249
+ # Information about the session.
12250
+ class GoogleCloudDiscoveryengineV1alphaSearchResponseSessionInfo
12251
+ include Google::Apis::Core::Hashable
12252
+
12253
+ # Name of the session. If the auto-session mode is used (when SearchRequest.
12254
+ # session ends with "-"), this field holds the newly generated session name.
12255
+ # Corresponds to the JSON property `name`
12256
+ # @return [String]
12257
+ attr_accessor :name
12258
+
12259
+ # Query ID that corresponds to this search API call. One session can have
12260
+ # multiple turns, each with a unique query ID. By specifying the session name
12261
+ # and this query ID in the Answer API call, the answer generation happens in the
12262
+ # context of the search results from this search call.
12263
+ # Corresponds to the JSON property `queryId`
12264
+ # @return [String]
12265
+ attr_accessor :query_id
12266
+
12267
+ def initialize(**args)
12268
+ update!(**args)
12269
+ end
12270
+
12271
+ # Update properties of this object
12272
+ def update!(**args)
12273
+ @name = args[:name] if args.key?(:name)
12274
+ @query_id = args[:query_id] if args.key?(:query_id)
12275
+ end
12276
+ end
12277
+
10736
12278
  # Summary of the top N search results specified by the summary spec.
10737
12279
  class GoogleCloudDiscoveryengineV1alphaSearchResponseSummary
10738
12280
  include Google::Apis::Core::Hashable
@@ -11086,12 +12628,13 @@ module Google
11086
12628
  # single function or multiple functions that are joined by "+". *
11087
12629
  # ranking_expression = function, ` " + ", function `; Supported functions: *
11088
12630
  # double * relevance_score * double * dotProduct(embedding_field_path) Function
11089
- # variables: relevance_score: pre-defined keywords, used for measure relevance
11090
- # between query and document. embedding_field_path: the document embedding field
11091
- # used with query embedding vector. dotProduct: embedding function between
11092
- # embedding_field_path and query embedding vector. Example ranking expression:
11093
- # If document has an embedding field doc_embedding, the ranking expression could
11094
- # be 0.5 * relevance_score + 0.3 * dotProduct(doc_embedding).
12631
+ # variables: * `relevance_score`: pre-defined keywords, used for measure
12632
+ # relevance between query and document. * `embedding_field_path`: the document
12633
+ # embedding field used with query embedding vector. * `dotProduct`: embedding
12634
+ # function between embedding_field_path and query embedding vector. Example
12635
+ # ranking expression: If document has an embedding field doc_embedding, the
12636
+ # ranking expression could be `0.5 * relevance_score + 0.3 * dotProduct(
12637
+ # doc_embedding)`.
11095
12638
  # Corresponds to the JSON property `rankingExpression`
11096
12639
  # @return [String]
11097
12640
  attr_accessor :ranking_expression
@@ -11307,6 +12850,85 @@ module Google
11307
12850
  end
11308
12851
  end
11309
12852
 
12853
+ # Metadata related to the progress of the SiteSearchEngineService.
12854
+ # SetUriPatternDocumentData operation. This will be returned by the google.
12855
+ # longrunning.Operation.metadata field.
12856
+ class GoogleCloudDiscoveryengineV1alphaSetUriPatternDocumentDataMetadata
12857
+ include Google::Apis::Core::Hashable
12858
+
12859
+ # Operation create time.
12860
+ # Corresponds to the JSON property `createTime`
12861
+ # @return [String]
12862
+ attr_accessor :create_time
12863
+
12864
+ # Operation last update time. If the operation is done, this is also the finish
12865
+ # time.
12866
+ # Corresponds to the JSON property `updateTime`
12867
+ # @return [String]
12868
+ attr_accessor :update_time
12869
+
12870
+ def initialize(**args)
12871
+ update!(**args)
12872
+ end
12873
+
12874
+ # Update properties of this object
12875
+ def update!(**args)
12876
+ @create_time = args[:create_time] if args.key?(:create_time)
12877
+ @update_time = args[:update_time] if args.key?(:update_time)
12878
+ end
12879
+ end
12880
+
12881
+ # Request message for SiteSearchEngineService.SetUriPatternDocumentData method.
12882
+ class GoogleCloudDiscoveryengineV1alphaSetUriPatternDocumentDataRequest
12883
+ include Google::Apis::Core::Hashable
12884
+
12885
+ # Document data keyed by URI pattern. Each entry must be consistent with the
12886
+ # Schema. For example: Schema = ` "type": "object", "properties": ` "Categories":
12887
+ # ` "type": "array", "items": ` "retrievable": true, "type": "string" ` ` `
12888
+ # document_data_map = ` "www.url1.com/*": ` "Categories": ["category1", "
12889
+ # category2"] `, "www.url2.com/*": ` "Categories": ["category3"] ` `
12890
+ # Corresponds to the JSON property `documentDataMap`
12891
+ # @return [Hash<String,Hash<String,Object>>]
12892
+ attr_accessor :document_data_map
12893
+
12894
+ # If true, clears the document data map. If true,
12895
+ # SetUriPatternDocumentDataRequest.document_data_map must be empty.
12896
+ # Corresponds to the JSON property `emptyDocumentDataMap`
12897
+ # @return [Boolean]
12898
+ attr_accessor :empty_document_data_map
12899
+ alias_method :empty_document_data_map?, :empty_document_data_map
12900
+
12901
+ # Optional. If not provided, the current Schema is used. If provided, validates
12902
+ # and updates the Schema. If validation fails, an error is returned.
12903
+ # Corresponds to the JSON property `schema`
12904
+ # @return [Hash<String,Object>]
12905
+ attr_accessor :schema
12906
+
12907
+ def initialize(**args)
12908
+ update!(**args)
12909
+ end
12910
+
12911
+ # Update properties of this object
12912
+ def update!(**args)
12913
+ @document_data_map = args[:document_data_map] if args.key?(:document_data_map)
12914
+ @empty_document_data_map = args[:empty_document_data_map] if args.key?(:empty_document_data_map)
12915
+ @schema = args[:schema] if args.key?(:schema)
12916
+ end
12917
+ end
12918
+
12919
+ # Response message for SiteSearchEngineService.SetUriPatternDocumentData method.
12920
+ class GoogleCloudDiscoveryengineV1alphaSetUriPatternDocumentDataResponse
12921
+ include Google::Apis::Core::Hashable
12922
+
12923
+ def initialize(**args)
12924
+ update!(**args)
12925
+ end
12926
+
12927
+ # Update properties of this object
12928
+ def update!(**args)
12929
+ end
12930
+ end
12931
+
11310
12932
  # SiteSearchEngine captures DataStore level site search persisting
11311
12933
  # configurations. It is a singleton value per data store.
11312
12934
  class GoogleCloudDiscoveryengineV1alphaSiteSearchEngine
@@ -12526,12 +14148,25 @@ module Google
12526
14148
  end
12527
14149
  end
12528
14150
 
12529
- # Metadata for Create Schema LRO.
12530
- class GoogleCloudDiscoveryengineV1betaCreateSchemaMetadata
14151
+ # Metadata for EvaluationService.CreateEvaluation method.
14152
+ class GoogleCloudDiscoveryengineV1betaCreateEvaluationMetadata
12531
14153
  include Google::Apis::Core::Hashable
12532
14154
 
12533
- # Operation create time.
12534
- # Corresponds to the JSON property `createTime`
14155
+ def initialize(**args)
14156
+ update!(**args)
14157
+ end
14158
+
14159
+ # Update properties of this object
14160
+ def update!(**args)
14161
+ end
14162
+ end
14163
+
14164
+ # Metadata for Create Schema LRO.
14165
+ class GoogleCloudDiscoveryengineV1betaCreateSchemaMetadata
14166
+ include Google::Apis::Core::Hashable
14167
+
14168
+ # Operation create time.
14169
+ # Corresponds to the JSON property `createTime`
12535
14170
  # @return [String]
12536
14171
  attr_accessor :create_time
12537
14172
 
@@ -12594,6 +14229,11 @@ module Google
12594
14229
  # @return [String]
12595
14230
  attr_accessor :display_name
12596
14231
 
14232
+ # The metrics of the trained model.
14233
+ # Corresponds to the JSON property `metrics`
14234
+ # @return [Hash<String,Float>]
14235
+ attr_accessor :metrics
14236
+
12597
14237
  # The state that the model is in (e.g.`TRAINING` or `TRAINING_FAILED`).
12598
14238
  # Corresponds to the JSON property `modelState`
12599
14239
  # @return [String]
@@ -12625,6 +14265,7 @@ module Google
12625
14265
  def update!(**args)
12626
14266
  @create_time = args[:create_time] if args.key?(:create_time)
12627
14267
  @display_name = args[:display_name] if args.key?(:display_name)
14268
+ @metrics = args[:metrics] if args.key?(:metrics)
12628
14269
  @model_state = args[:model_state] if args.key?(:model_state)
12629
14270
  @model_version = args[:model_version] if args.key?(:model_version)
12630
14271
  @name = args[:name] if args.key?(:name)
@@ -12891,9 +14532,10 @@ module Google
12891
14532
  # Map from file type to override the default parsing configuration based on the
12892
14533
  # file type. Supported keys: * `pdf`: Override parsing config for PDF files,
12893
14534
  # either digital parsing, ocr parsing or layout parsing is supported. * `html`:
12894
- # Override parsing config for HTML files, only digital parsing and or layout
14535
+ # Override parsing config for HTML files, only digital parsing and layout
12895
14536
  # parsing are supported. * `docx`: Override parsing config for DOCX files, only
12896
- # digital parsing and or layout parsing are supported.
14537
+ # digital parsing and layout parsing are supported. * `pptx`: Override parsing
14538
+ # config for PPTX files, only digital parsing and layout parsing are supported.
12897
14539
  # Corresponds to the JSON property `parsingConfigOverrides`
12898
14540
  # @return [Hash<String,Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfig>]
12899
14541
  attr_accessor :parsing_config_overrides
@@ -13325,6 +14967,187 @@ module Google
13325
14967
  end
13326
14968
  end
13327
14969
 
14970
+ # An evaluation is a single execution (or run) of an evaluation process. It
14971
+ # encapsulates the state of the evaluation and the resulting data.
14972
+ class GoogleCloudDiscoveryengineV1betaEvaluation
14973
+ include Google::Apis::Core::Hashable
14974
+
14975
+ # Output only. Timestamp the Evaluation was created at.
14976
+ # Corresponds to the JSON property `createTime`
14977
+ # @return [String]
14978
+ attr_accessor :create_time
14979
+
14980
+ # Output only. Timestamp the Evaluation was completed at.
14981
+ # Corresponds to the JSON property `endTime`
14982
+ # @return [String]
14983
+ attr_accessor :end_time
14984
+
14985
+ # The `Status` type defines a logical error model that is suitable for different
14986
+ # programming environments, including REST APIs and RPC APIs. It is used by [
14987
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
14988
+ # data: error code, error message, and error details. You can find out more
14989
+ # about this error model and how to work with it in the [API Design Guide](https:
14990
+ # //cloud.google.com/apis/design/errors).
14991
+ # Corresponds to the JSON property `error`
14992
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus]
14993
+ attr_accessor :error
14994
+
14995
+ # Output only. A sample of errors encountered while processing the request.
14996
+ # Corresponds to the JSON property `errorSamples`
14997
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
14998
+ attr_accessor :error_samples
14999
+
15000
+ # Describes the specification of the evaluation.
15001
+ # Corresponds to the JSON property `evaluationSpec`
15002
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaEvaluationEvaluationSpec]
15003
+ attr_accessor :evaluation_spec
15004
+
15005
+ # Immutable. The full resource name of the Evaluation, in the format of `
15006
+ # projects/`project`/locations/`location`/evaluations/`evaluation``. This field
15007
+ # must be a UTF-8 encoded string with a length limit of 1024 characters.
15008
+ # Corresponds to the JSON property `name`
15009
+ # @return [String]
15010
+ attr_accessor :name
15011
+
15012
+ # Describes the metrics produced by the evaluation.
15013
+ # Corresponds to the JSON property `qualityMetrics`
15014
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaQualityMetrics]
15015
+ attr_accessor :quality_metrics
15016
+
15017
+ # Output only. The state of the evaluation.
15018
+ # Corresponds to the JSON property `state`
15019
+ # @return [String]
15020
+ attr_accessor :state
15021
+
15022
+ def initialize(**args)
15023
+ update!(**args)
15024
+ end
15025
+
15026
+ # Update properties of this object
15027
+ def update!(**args)
15028
+ @create_time = args[:create_time] if args.key?(:create_time)
15029
+ @end_time = args[:end_time] if args.key?(:end_time)
15030
+ @error = args[:error] if args.key?(:error)
15031
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
15032
+ @evaluation_spec = args[:evaluation_spec] if args.key?(:evaluation_spec)
15033
+ @name = args[:name] if args.key?(:name)
15034
+ @quality_metrics = args[:quality_metrics] if args.key?(:quality_metrics)
15035
+ @state = args[:state] if args.key?(:state)
15036
+ end
15037
+ end
15038
+
15039
+ # Describes the specification of the evaluation.
15040
+ class GoogleCloudDiscoveryengineV1betaEvaluationEvaluationSpec
15041
+ include Google::Apis::Core::Hashable
15042
+
15043
+ # Describes the specification of the query set.
15044
+ # Corresponds to the JSON property `querySetSpec`
15045
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaEvaluationEvaluationSpecQuerySetSpec]
15046
+ attr_accessor :query_set_spec
15047
+
15048
+ # Request message for SearchService.Search method.
15049
+ # Corresponds to the JSON property `searchRequest`
15050
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequest]
15051
+ attr_accessor :search_request
15052
+
15053
+ def initialize(**args)
15054
+ update!(**args)
15055
+ end
15056
+
15057
+ # Update properties of this object
15058
+ def update!(**args)
15059
+ @query_set_spec = args[:query_set_spec] if args.key?(:query_set_spec)
15060
+ @search_request = args[:search_request] if args.key?(:search_request)
15061
+ end
15062
+ end
15063
+
15064
+ # Describes the specification of the query set.
15065
+ class GoogleCloudDiscoveryengineV1betaEvaluationEvaluationSpecQuerySetSpec
15066
+ include Google::Apis::Core::Hashable
15067
+
15068
+ # Required. The full resource name of the SampleQuerySet used for the evaluation,
15069
+ # in the format of `projects/`project`/locations/`location`/sampleQuerySets/`
15070
+ # sampleQuerySet``.
15071
+ # Corresponds to the JSON property `sampleQuerySet`
15072
+ # @return [String]
15073
+ attr_accessor :sample_query_set
15074
+
15075
+ def initialize(**args)
15076
+ update!(**args)
15077
+ end
15078
+
15079
+ # Update properties of this object
15080
+ def update!(**args)
15081
+ @sample_query_set = args[:sample_query_set] if args.key?(:sample_query_set)
15082
+ end
15083
+ end
15084
+
15085
+ # Metadata related to the progress of the ImportCompletionSuggestions operation.
15086
+ # This will be returned by the google.longrunning.Operation.metadata field.
15087
+ class GoogleCloudDiscoveryengineV1betaImportCompletionSuggestionsMetadata
15088
+ include Google::Apis::Core::Hashable
15089
+
15090
+ # Operation create time.
15091
+ # Corresponds to the JSON property `createTime`
15092
+ # @return [String]
15093
+ attr_accessor :create_time
15094
+
15095
+ # Count of CompletionSuggestions that failed to be imported.
15096
+ # Corresponds to the JSON property `failureCount`
15097
+ # @return [Fixnum]
15098
+ attr_accessor :failure_count
15099
+
15100
+ # Count of CompletionSuggestions successfully imported.
15101
+ # Corresponds to the JSON property `successCount`
15102
+ # @return [Fixnum]
15103
+ attr_accessor :success_count
15104
+
15105
+ # Operation last update time. If the operation is done, this is also the finish
15106
+ # time.
15107
+ # Corresponds to the JSON property `updateTime`
15108
+ # @return [String]
15109
+ attr_accessor :update_time
15110
+
15111
+ def initialize(**args)
15112
+ update!(**args)
15113
+ end
15114
+
15115
+ # Update properties of this object
15116
+ def update!(**args)
15117
+ @create_time = args[:create_time] if args.key?(:create_time)
15118
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
15119
+ @success_count = args[:success_count] if args.key?(:success_count)
15120
+ @update_time = args[:update_time] if args.key?(:update_time)
15121
+ end
15122
+ end
15123
+
15124
+ # Response of the CompletionService.ImportCompletionSuggestions method. If the
15125
+ # long running operation is done, this message is returned by the google.
15126
+ # longrunning.Operations.response field if the operation is successful.
15127
+ class GoogleCloudDiscoveryengineV1betaImportCompletionSuggestionsResponse
15128
+ include Google::Apis::Core::Hashable
15129
+
15130
+ # Configuration of destination for Import related errors.
15131
+ # Corresponds to the JSON property `errorConfig`
15132
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaImportErrorConfig]
15133
+ attr_accessor :error_config
15134
+
15135
+ # A sample of errors encountered while processing the request.
15136
+ # Corresponds to the JSON property `errorSamples`
15137
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
15138
+ attr_accessor :error_samples
15139
+
15140
+ def initialize(**args)
15141
+ update!(**args)
15142
+ end
15143
+
15144
+ # Update properties of this object
15145
+ def update!(**args)
15146
+ @error_config = args[:error_config] if args.key?(:error_config)
15147
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
15148
+ end
15149
+ end
15150
+
13328
15151
  # Metadata related to the progress of the ImportDocuments operation. This is
13329
15152
  # returned by the google.longrunning.Operation.metadata field.
13330
15153
  class GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata
@@ -13418,6 +15241,78 @@ module Google
13418
15241
  end
13419
15242
  end
13420
15243
 
15244
+ # Metadata related to the progress of the ImportSampleQueries operation. This
15245
+ # will be returned by the google.longrunning.Operation.metadata field.
15246
+ class GoogleCloudDiscoveryengineV1betaImportSampleQueriesMetadata
15247
+ include Google::Apis::Core::Hashable
15248
+
15249
+ # ImportSampleQueries operation create time.
15250
+ # Corresponds to the JSON property `createTime`
15251
+ # @return [String]
15252
+ attr_accessor :create_time
15253
+
15254
+ # Count of SampleQuerys that failed to be imported.
15255
+ # Corresponds to the JSON property `failureCount`
15256
+ # @return [Fixnum]
15257
+ attr_accessor :failure_count
15258
+
15259
+ # Count of SampleQuerys successfully imported.
15260
+ # Corresponds to the JSON property `successCount`
15261
+ # @return [Fixnum]
15262
+ attr_accessor :success_count
15263
+
15264
+ # Total count of SampleQuerys that were processed.
15265
+ # Corresponds to the JSON property `totalCount`
15266
+ # @return [Fixnum]
15267
+ attr_accessor :total_count
15268
+
15269
+ # ImportSampleQueries operation last update time. If the operation is done, this
15270
+ # is also the finish time.
15271
+ # Corresponds to the JSON property `updateTime`
15272
+ # @return [String]
15273
+ attr_accessor :update_time
15274
+
15275
+ def initialize(**args)
15276
+ update!(**args)
15277
+ end
15278
+
15279
+ # Update properties of this object
15280
+ def update!(**args)
15281
+ @create_time = args[:create_time] if args.key?(:create_time)
15282
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
15283
+ @success_count = args[:success_count] if args.key?(:success_count)
15284
+ @total_count = args[:total_count] if args.key?(:total_count)
15285
+ @update_time = args[:update_time] if args.key?(:update_time)
15286
+ end
15287
+ end
15288
+
15289
+ # Response of the SampleQueryService.ImportSampleQueries method. If the long
15290
+ # running operation is done, this message is returned by the google.longrunning.
15291
+ # Operations.response field if the operation is successful.
15292
+ class GoogleCloudDiscoveryengineV1betaImportSampleQueriesResponse
15293
+ include Google::Apis::Core::Hashable
15294
+
15295
+ # Configuration of destination for Import related errors.
15296
+ # Corresponds to the JSON property `errorConfig`
15297
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaImportErrorConfig]
15298
+ attr_accessor :error_config
15299
+
15300
+ # A sample of errors encountered while processing the request.
15301
+ # Corresponds to the JSON property `errorSamples`
15302
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
15303
+ attr_accessor :error_samples
15304
+
15305
+ def initialize(**args)
15306
+ update!(**args)
15307
+ end
15308
+
15309
+ # Update properties of this object
15310
+ def update!(**args)
15311
+ @error_config = args[:error_config] if args.key?(:error_config)
15312
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
15313
+ end
15314
+ end
15315
+
13421
15316
  # Metadata related to the progress of the ImportSuggestionDenyListEntries
13422
15317
  # operation. This is returned by the google.longrunning.Operation.metadata field.
13423
15318
  class GoogleCloudDiscoveryengineV1betaImportSuggestionDenyListEntriesMetadata
@@ -13555,6 +15450,43 @@ module Google
13555
15450
  end
13556
15451
  end
13557
15452
 
15453
+ # A floating point interval.
15454
+ class GoogleCloudDiscoveryengineV1betaInterval
15455
+ include Google::Apis::Core::Hashable
15456
+
15457
+ # Exclusive upper bound.
15458
+ # Corresponds to the JSON property `exclusiveMaximum`
15459
+ # @return [Float]
15460
+ attr_accessor :exclusive_maximum
15461
+
15462
+ # Exclusive lower bound.
15463
+ # Corresponds to the JSON property `exclusiveMinimum`
15464
+ # @return [Float]
15465
+ attr_accessor :exclusive_minimum
15466
+
15467
+ # Inclusive upper bound.
15468
+ # Corresponds to the JSON property `maximum`
15469
+ # @return [Float]
15470
+ attr_accessor :maximum
15471
+
15472
+ # Inclusive lower bound.
15473
+ # Corresponds to the JSON property `minimum`
15474
+ # @return [Float]
15475
+ attr_accessor :minimum
15476
+
15477
+ def initialize(**args)
15478
+ update!(**args)
15479
+ end
15480
+
15481
+ # Update properties of this object
15482
+ def update!(**args)
15483
+ @exclusive_maximum = args[:exclusive_maximum] if args.key?(:exclusive_maximum)
15484
+ @exclusive_minimum = args[:exclusive_minimum] if args.key?(:exclusive_minimum)
15485
+ @maximum = args[:maximum] if args.key?(:maximum)
15486
+ @minimum = args[:minimum] if args.key?(:minimum)
15487
+ end
15488
+ end
15489
+
13558
15490
  # Language info for DataStore.
13559
15491
  class GoogleCloudDiscoveryengineV1betaLanguageInfo
13560
15492
  include Google::Apis::Core::Hashable
@@ -13655,40 +15587,1265 @@ module Google
13655
15587
  end
13656
15588
  end
13657
15589
 
13658
- # Metadata about the terms of service.
13659
- class GoogleCloudDiscoveryengineV1betaProjectServiceTerms
15590
+ # Metadata about the terms of service.
15591
+ class GoogleCloudDiscoveryengineV1betaProjectServiceTerms
15592
+ include Google::Apis::Core::Hashable
15593
+
15594
+ # The last time when the project agreed to the terms of service.
15595
+ # Corresponds to the JSON property `acceptTime`
15596
+ # @return [String]
15597
+ attr_accessor :accept_time
15598
+
15599
+ # The last time when the project declined or revoked the agreement to terms of
15600
+ # service.
15601
+ # Corresponds to the JSON property `declineTime`
15602
+ # @return [String]
15603
+ attr_accessor :decline_time
15604
+
15605
+ # The unique identifier of this terms of service. Available terms: * `
15606
+ # GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-
15607
+ # use-terms). When using this as `id`, the acceptable version to provide is `
15608
+ # 2022-11-23`.
15609
+ # Corresponds to the JSON property `id`
15610
+ # @return [String]
15611
+ attr_accessor :id
15612
+
15613
+ # Whether the project has accepted/rejected the service terms or it is still
15614
+ # pending.
15615
+ # Corresponds to the JSON property `state`
15616
+ # @return [String]
15617
+ attr_accessor :state
15618
+
15619
+ # The version string of the terms of service. For acceptable values, see the
15620
+ # comments for id above.
15621
+ # Corresponds to the JSON property `version`
15622
+ # @return [String]
15623
+ attr_accessor :version
15624
+
15625
+ def initialize(**args)
15626
+ update!(**args)
15627
+ end
15628
+
15629
+ # Update properties of this object
15630
+ def update!(**args)
15631
+ @accept_time = args[:accept_time] if args.key?(:accept_time)
15632
+ @decline_time = args[:decline_time] if args.key?(:decline_time)
15633
+ @id = args[:id] if args.key?(:id)
15634
+ @state = args[:state] if args.key?(:state)
15635
+ @version = args[:version] if args.key?(:version)
15636
+ end
15637
+ end
15638
+
15639
+ # Metadata associated with a project provision operation.
15640
+ class GoogleCloudDiscoveryengineV1betaProvisionProjectMetadata
15641
+ include Google::Apis::Core::Hashable
15642
+
15643
+ def initialize(**args)
15644
+ update!(**args)
15645
+ end
15646
+
15647
+ # Update properties of this object
15648
+ def update!(**args)
15649
+ end
15650
+ end
15651
+
15652
+ # Metadata related to the progress of the PurgeDocuments operation. This will be
15653
+ # returned by the google.longrunning.Operation.metadata field.
15654
+ class GoogleCloudDiscoveryengineV1betaPurgeDocumentsMetadata
15655
+ include Google::Apis::Core::Hashable
15656
+
15657
+ # Operation create time.
15658
+ # Corresponds to the JSON property `createTime`
15659
+ # @return [String]
15660
+ attr_accessor :create_time
15661
+
15662
+ # Count of entries that encountered errors while processing.
15663
+ # Corresponds to the JSON property `failureCount`
15664
+ # @return [Fixnum]
15665
+ attr_accessor :failure_count
15666
+
15667
+ # Count of entries that were ignored as entries were not found.
15668
+ # Corresponds to the JSON property `ignoredCount`
15669
+ # @return [Fixnum]
15670
+ attr_accessor :ignored_count
15671
+
15672
+ # Count of entries that were deleted successfully.
15673
+ # Corresponds to the JSON property `successCount`
15674
+ # @return [Fixnum]
15675
+ attr_accessor :success_count
15676
+
15677
+ # Operation last update time. If the operation is done, this is also the finish
15678
+ # time.
15679
+ # Corresponds to the JSON property `updateTime`
15680
+ # @return [String]
15681
+ attr_accessor :update_time
15682
+
15683
+ def initialize(**args)
15684
+ update!(**args)
15685
+ end
15686
+
15687
+ # Update properties of this object
15688
+ def update!(**args)
15689
+ @create_time = args[:create_time] if args.key?(:create_time)
15690
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
15691
+ @ignored_count = args[:ignored_count] if args.key?(:ignored_count)
15692
+ @success_count = args[:success_count] if args.key?(:success_count)
15693
+ @update_time = args[:update_time] if args.key?(:update_time)
15694
+ end
15695
+ end
15696
+
15697
+ # Response message for DocumentService.PurgeDocuments method. If the long
15698
+ # running operation is successfully done, then this message is returned by the
15699
+ # google.longrunning.Operations.response field.
15700
+ class GoogleCloudDiscoveryengineV1betaPurgeDocumentsResponse
15701
+ include Google::Apis::Core::Hashable
15702
+
15703
+ # The total count of documents purged as a result of the operation.
15704
+ # Corresponds to the JSON property `purgeCount`
15705
+ # @return [Fixnum]
15706
+ attr_accessor :purge_count
15707
+
15708
+ # A sample of document names that will be deleted. Only populated if `force` is
15709
+ # set to false. A max of 100 names will be returned and the names are chosen at
15710
+ # random.
15711
+ # Corresponds to the JSON property `purgeSample`
15712
+ # @return [Array<String>]
15713
+ attr_accessor :purge_sample
15714
+
15715
+ def initialize(**args)
15716
+ update!(**args)
15717
+ end
15718
+
15719
+ # Update properties of this object
15720
+ def update!(**args)
15721
+ @purge_count = args[:purge_count] if args.key?(:purge_count)
15722
+ @purge_sample = args[:purge_sample] if args.key?(:purge_sample)
15723
+ end
15724
+ end
15725
+
15726
+ # Metadata related to the progress of the PurgeSuggestionDenyListEntries
15727
+ # operation. This is returned by the google.longrunning.Operation.metadata field.
15728
+ class GoogleCloudDiscoveryengineV1betaPurgeSuggestionDenyListEntriesMetadata
15729
+ include Google::Apis::Core::Hashable
15730
+
15731
+ # Operation create time.
15732
+ # Corresponds to the JSON property `createTime`
15733
+ # @return [String]
15734
+ attr_accessor :create_time
15735
+
15736
+ # Operation last update time. If the operation is done, this is also the finish
15737
+ # time.
15738
+ # Corresponds to the JSON property `updateTime`
15739
+ # @return [String]
15740
+ attr_accessor :update_time
15741
+
15742
+ def initialize(**args)
15743
+ update!(**args)
15744
+ end
15745
+
15746
+ # Update properties of this object
15747
+ def update!(**args)
15748
+ @create_time = args[:create_time] if args.key?(:create_time)
15749
+ @update_time = args[:update_time] if args.key?(:update_time)
15750
+ end
15751
+ end
15752
+
15753
+ # Response message for CompletionService.PurgeSuggestionDenyListEntries method.
15754
+ class GoogleCloudDiscoveryengineV1betaPurgeSuggestionDenyListEntriesResponse
15755
+ include Google::Apis::Core::Hashable
15756
+
15757
+ # A sample of errors encountered while processing the request.
15758
+ # Corresponds to the JSON property `errorSamples`
15759
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
15760
+ attr_accessor :error_samples
15761
+
15762
+ # Number of suggestion deny list entries purged.
15763
+ # Corresponds to the JSON property `purgeCount`
15764
+ # @return [Fixnum]
15765
+ attr_accessor :purge_count
15766
+
15767
+ def initialize(**args)
15768
+ update!(**args)
15769
+ end
15770
+
15771
+ # Update properties of this object
15772
+ def update!(**args)
15773
+ @error_samples = args[:error_samples] if args.key?(:error_samples)
15774
+ @purge_count = args[:purge_count] if args.key?(:purge_count)
15775
+ end
15776
+ end
15777
+
15778
+ # Describes the metrics produced by the evaluation.
15779
+ class GoogleCloudDiscoveryengineV1betaQualityMetrics
15780
+ include Google::Apis::Core::Hashable
15781
+
15782
+ # Stores the metric values at specific top-k levels.
15783
+ # Corresponds to the JSON property `docNdcg`
15784
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaQualityMetricsTopkMetrics]
15785
+ attr_accessor :doc_ndcg
15786
+
15787
+ # Stores the metric values at specific top-k levels.
15788
+ # Corresponds to the JSON property `docPrecision`
15789
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaQualityMetricsTopkMetrics]
15790
+ attr_accessor :doc_precision
15791
+
15792
+ # Stores the metric values at specific top-k levels.
15793
+ # Corresponds to the JSON property `docRecall`
15794
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaQualityMetricsTopkMetrics]
15795
+ attr_accessor :doc_recall
15796
+
15797
+ # Stores the metric values at specific top-k levels.
15798
+ # Corresponds to the JSON property `pageNdcg`
15799
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaQualityMetricsTopkMetrics]
15800
+ attr_accessor :page_ndcg
15801
+
15802
+ # Stores the metric values at specific top-k levels.
15803
+ # Corresponds to the JSON property `pageRecall`
15804
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaQualityMetricsTopkMetrics]
15805
+ attr_accessor :page_recall
15806
+
15807
+ def initialize(**args)
15808
+ update!(**args)
15809
+ end
15810
+
15811
+ # Update properties of this object
15812
+ def update!(**args)
15813
+ @doc_ndcg = args[:doc_ndcg] if args.key?(:doc_ndcg)
15814
+ @doc_precision = args[:doc_precision] if args.key?(:doc_precision)
15815
+ @doc_recall = args[:doc_recall] if args.key?(:doc_recall)
15816
+ @page_ndcg = args[:page_ndcg] if args.key?(:page_ndcg)
15817
+ @page_recall = args[:page_recall] if args.key?(:page_recall)
15818
+ end
15819
+ end
15820
+
15821
+ # Stores the metric values at specific top-k levels.
15822
+ class GoogleCloudDiscoveryengineV1betaQualityMetricsTopkMetrics
15823
+ include Google::Apis::Core::Hashable
15824
+
15825
+ # The top-1 value.
15826
+ # Corresponds to the JSON property `top1`
15827
+ # @return [Float]
15828
+ attr_accessor :top1
15829
+
15830
+ # The top-10 value.
15831
+ # Corresponds to the JSON property `top10`
15832
+ # @return [Float]
15833
+ attr_accessor :top10
15834
+
15835
+ # The top-3 value.
15836
+ # Corresponds to the JSON property `top3`
15837
+ # @return [Float]
15838
+ attr_accessor :top3
15839
+
15840
+ # The top-5 value.
15841
+ # Corresponds to the JSON property `top5`
15842
+ # @return [Float]
15843
+ attr_accessor :top5
15844
+
15845
+ def initialize(**args)
15846
+ update!(**args)
15847
+ end
15848
+
15849
+ # Update properties of this object
15850
+ def update!(**args)
15851
+ @top1 = args[:top1] if args.key?(:top1)
15852
+ @top10 = args[:top10] if args.key?(:top10)
15853
+ @top3 = args[:top3] if args.key?(:top3)
15854
+ @top5 = args[:top5] if args.key?(:top5)
15855
+ end
15856
+ end
15857
+
15858
+ # Defines the structure and layout of a type of document data.
15859
+ class GoogleCloudDiscoveryengineV1betaSchema
15860
+ include Google::Apis::Core::Hashable
15861
+
15862
+ # The JSON representation of the schema.
15863
+ # Corresponds to the JSON property `jsonSchema`
15864
+ # @return [String]
15865
+ attr_accessor :json_schema
15866
+
15867
+ # Immutable. The full resource name of the schema, in the format of `projects/`
15868
+ # project`/locations/`location`/collections/`collection`/dataStores/`data_store`/
15869
+ # schemas/`schema``. This field must be a UTF-8 encoded string with a length
15870
+ # limit of 1024 characters.
15871
+ # Corresponds to the JSON property `name`
15872
+ # @return [String]
15873
+ attr_accessor :name
15874
+
15875
+ # The structured representation of the schema.
15876
+ # Corresponds to the JSON property `structSchema`
15877
+ # @return [Hash<String,Object>]
15878
+ attr_accessor :struct_schema
15879
+
15880
+ def initialize(**args)
15881
+ update!(**args)
15882
+ end
15883
+
15884
+ # Update properties of this object
15885
+ def update!(**args)
15886
+ @json_schema = args[:json_schema] if args.key?(:json_schema)
15887
+ @name = args[:name] if args.key?(:name)
15888
+ @struct_schema = args[:struct_schema] if args.key?(:struct_schema)
15889
+ end
15890
+ end
15891
+
15892
+ # Request message for SearchService.Search method.
15893
+ class GoogleCloudDiscoveryengineV1betaSearchRequest
15894
+ include Google::Apis::Core::Hashable
15895
+
15896
+ # Boost specification to boost certain documents.
15897
+ # Corresponds to the JSON property `boostSpec`
15898
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpec]
15899
+ attr_accessor :boost_spec
15900
+
15901
+ # The branch resource name, such as `projects/*/locations/global/collections/
15902
+ # default_collection/dataStores/default_data_store/branches/0`. Use `
15903
+ # default_branch` as the branch ID or leave this field empty, to search
15904
+ # documents under the default branch.
15905
+ # Corresponds to the JSON property `branch`
15906
+ # @return [String]
15907
+ attr_accessor :branch
15908
+
15909
+ # The default filter that is applied when a user performs a search without
15910
+ # checking any filters on the search page. The filter applied to every search
15911
+ # request when quality improvement such as query expansion is needed. In the
15912
+ # case a query does not have a sufficient amount of results this filter will be
15913
+ # used to determine whether or not to enable the query expansion flow. The
15914
+ # original filter will still be used for the query expanded search. This field
15915
+ # is strongly recommended to achieve high search quality. For more information
15916
+ # about filter syntax, see SearchRequest.filter.
15917
+ # Corresponds to the JSON property `canonicalFilter`
15918
+ # @return [String]
15919
+ attr_accessor :canonical_filter
15920
+
15921
+ # A specification for configuring the behavior of content search.
15922
+ # Corresponds to the JSON property `contentSearchSpec`
15923
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpec]
15924
+ attr_accessor :content_search_spec
15925
+
15926
+ # Specs defining dataStores to filter on in a search call and configurations for
15927
+ # those dataStores. This is only considered for engines with multiple dataStores
15928
+ # use case. For single dataStore within an engine, they should use the specs at
15929
+ # the top level.
15930
+ # Corresponds to the JSON property `dataStoreSpecs`
15931
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec>]
15932
+ attr_accessor :data_store_specs
15933
+
15934
+ # The specification that uses customized query embedding vector to do semantic
15935
+ # document retrieval.
15936
+ # Corresponds to the JSON property `embeddingSpec`
15937
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec]
15938
+ attr_accessor :embedding_spec
15939
+
15940
+ # Facet specifications for faceted search. If empty, no facets are returned. A
15941
+ # maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is
15942
+ # returned.
15943
+ # Corresponds to the JSON property `facetSpecs`
15944
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestFacetSpec>]
15945
+ attr_accessor :facet_specs
15946
+
15947
+ # The filter syntax consists of an expression language for constructing a
15948
+ # predicate from one or more fields of the documents being filtered. Filter
15949
+ # expression is case-sensitive. If this field is unrecognizable, an `
15950
+ # INVALID_ARGUMENT` is returned. Filtering in Vertex AI Search is done by
15951
+ # mapping the LHS filter key to a key property defined in the Vertex AI Search
15952
+ # backend -- this mapping is defined by the customer in their schema. For
15953
+ # example a media customer might have a field 'name' in their schema. In this
15954
+ # case the filter would look like this: filter --> name:'ANY("king kong")' For
15955
+ # more information about filtering including syntax and filter operators, see [
15956
+ # Filter](https://cloud.google.com/generative-ai-app-builder/docs/filter-search-
15957
+ # metadata)
15958
+ # Corresponds to the JSON property `filter`
15959
+ # @return [String]
15960
+ attr_accessor :filter
15961
+
15962
+ # Specifies the image query input.
15963
+ # Corresponds to the JSON property `imageQuery`
15964
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestImageQuery]
15965
+ attr_accessor :image_query
15966
+
15967
+ # The BCP-47 language code, such as "en-US" or "sr-Latn". For more information,
15968
+ # see [Standard fields](https://cloud.google.com/apis/design/standard_fields).
15969
+ # This field helps to better interpret the query. If a value isn't specified,
15970
+ # the query language code is automatically detected, which may not be accurate.
15971
+ # Corresponds to the JSON property `languageCode`
15972
+ # @return [String]
15973
+ attr_accessor :language_code
15974
+
15975
+ # Specification to enable natural language understanding capabilities for search
15976
+ # requests.
15977
+ # Corresponds to the JSON property `naturalLanguageQueryUnderstandingSpec`
15978
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestNaturalLanguageQueryUnderstandingSpec]
15979
+ attr_accessor :natural_language_query_understanding_spec
15980
+
15981
+ # A 0-indexed integer that specifies the current offset (that is, starting
15982
+ # result location, amongst the Documents deemed by the API as relevant) in
15983
+ # search results. This field is only considered if page_token is unset. If this
15984
+ # field is negative, an `INVALID_ARGUMENT` is returned.
15985
+ # Corresponds to the JSON property `offset`
15986
+ # @return [Fixnum]
15987
+ attr_accessor :offset
15988
+
15989
+ # The order in which documents are returned. Documents can be ordered by a field
15990
+ # in an Document object. Leave it unset if ordered by relevance. `order_by`
15991
+ # expression is case-sensitive. For more information on ordering for retail
15992
+ # search, see [Ordering](https://cloud.google.com/retail/docs/filter-and-order#
15993
+ # order) If this field is unrecognizable, an `INVALID_ARGUMENT` is returned.
15994
+ # Corresponds to the JSON property `orderBy`
15995
+ # @return [String]
15996
+ attr_accessor :order_by
15997
+
15998
+ # Maximum number of Documents to return. The maximum allowed value depends on
15999
+ # the data type. Values above the maximum value are coerced to the maximum value.
16000
+ # * Websites with basic indexing: Default `10`, Maximum `25`. * Websites with
16001
+ # advanced indexing: Default `25`, Maximum `50`. * Other: Default `50`, Maximum `
16002
+ # 100`. If this field is negative, an `INVALID_ARGUMENT` is returned.
16003
+ # Corresponds to the JSON property `pageSize`
16004
+ # @return [Fixnum]
16005
+ attr_accessor :page_size
16006
+
16007
+ # A page token received from a previous SearchService.Search call. Provide this
16008
+ # to retrieve the subsequent page. When paginating, all other parameters
16009
+ # provided to SearchService.Search must match the call that provided the page
16010
+ # token. Otherwise, an `INVALID_ARGUMENT` error is returned.
16011
+ # Corresponds to the JSON property `pageToken`
16012
+ # @return [String]
16013
+ attr_accessor :page_token
16014
+
16015
+ # Additional search parameters. For public website search only, supported values
16016
+ # are: * `user_country_code`: string. Default empty. If set to non-empty,
16017
+ # results are restricted or boosted based on the location provided. For example,
16018
+ # `user_country_code: "au"` For available codes see [Country Codes](https://
16019
+ # developers.google.com/custom-search/docs/json_api_reference#countryCodes) * `
16020
+ # search_type`: double. Default empty. Enables non-webpage searching depending
16021
+ # on the value. The only valid non-default value is 1, which enables image
16022
+ # searching. For example, `search_type: 1`
16023
+ # Corresponds to the JSON property `params`
16024
+ # @return [Hash<String,Object>]
16025
+ attr_accessor :params
16026
+
16027
+ # Raw search query.
16028
+ # Corresponds to the JSON property `query`
16029
+ # @return [String]
16030
+ attr_accessor :query
16031
+
16032
+ # Specification to determine under which conditions query expansion should occur.
16033
+ # Corresponds to the JSON property `queryExpansionSpec`
16034
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestQueryExpansionSpec]
16035
+ attr_accessor :query_expansion_spec
16036
+
16037
+ # The ranking expression controls the customized ranking on retrieval documents.
16038
+ # This overrides ServingConfig.ranking_expression. The ranking expression is a
16039
+ # single function or multiple functions that are joined by "+". *
16040
+ # ranking_expression = function, ` " + ", function `; Supported functions: *
16041
+ # double * relevance_score * double * dotProduct(embedding_field_path) Function
16042
+ # variables: * `relevance_score`: pre-defined keywords, used for measure
16043
+ # relevance between query and document. * `embedding_field_path`: the document
16044
+ # embedding field used with query embedding vector. * `dotProduct`: embedding
16045
+ # function between embedding_field_path and query embedding vector. Example
16046
+ # ranking expression: If document has an embedding field doc_embedding, the
16047
+ # ranking expression could be `0.5 * relevance_score + 0.3 * dotProduct(
16048
+ # doc_embedding)`.
16049
+ # Corresponds to the JSON property `rankingExpression`
16050
+ # @return [String]
16051
+ attr_accessor :ranking_expression
16052
+
16053
+ # The Unicode country/region code (CLDR) of a location, such as "US" and "419".
16054
+ # For more information, see [Standard fields](https://cloud.google.com/apis/
16055
+ # design/standard_fields). If set, then results will be boosted based on the
16056
+ # region_code provided.
16057
+ # Corresponds to the JSON property `regionCode`
16058
+ # @return [String]
16059
+ attr_accessor :region_code
16060
+
16061
+ # Whether to turn on safe search. This is only supported for website search.
16062
+ # Corresponds to the JSON property `safeSearch`
16063
+ # @return [Boolean]
16064
+ attr_accessor :safe_search
16065
+ alias_method :safe_search?, :safe_search
16066
+
16067
+ # Specification for search as you type in search requests.
16068
+ # Corresponds to the JSON property `searchAsYouTypeSpec`
16069
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestSearchAsYouTypeSpec]
16070
+ attr_accessor :search_as_you_type_spec
16071
+
16072
+ # Required. The resource name of the Search serving config, such as `projects/*/
16073
+ # locations/global/collections/default_collection/engines/*/servingConfigs/
16074
+ # default_serving_config`, or `projects/*/locations/global/collections/
16075
+ # default_collection/dataStores/default_data_store/servingConfigs/
16076
+ # default_serving_config`. This field is used to identify the serving
16077
+ # configuration name, set of models used to make the search.
16078
+ # Corresponds to the JSON property `servingConfig`
16079
+ # @return [String]
16080
+ attr_accessor :serving_config
16081
+
16082
+ # The session resource name. Optional. Session allows users to do multi-turn /
16083
+ # search API calls or coordination between /search API calls and /answer API
16084
+ # calls. Example #1 (multi-turn /search API calls): 1. Call /search API with the
16085
+ # auto-session mode (see below). 2. Call /search API with the session ID
16086
+ # generated in the first call. Here, the previous search query gets considered
16087
+ # in query standing. I.e., if the first query is "How did Alphabet do in 2022?"
16088
+ # and the current query is "How about 2023?", the current query will be
16089
+ # interpreted as "How did Alphabet do in 2023?". Example #2 (coordination
16090
+ # between /search API calls and /answer API calls): 1. Call /search API with the
16091
+ # auto-session mode (see below). 2. Call /answer API with the session ID
16092
+ # generated in the first call. Here, the answer generation happens in the
16093
+ # context of the search results from the first search call. Auto-session mode:
16094
+ # when `projects/.../sessions/-` is used, a new session gets automatically
16095
+ # created. Otherwise, users can use the create-session API to create a session
16096
+ # manually. Multi-turn Search feature is currently at private GA stage. Please
16097
+ # use v1alpha or v1beta version instead before we launch this feature to public
16098
+ # GA. Or ask for allowlisting through Google Support team.
16099
+ # Corresponds to the JSON property `session`
16100
+ # @return [String]
16101
+ attr_accessor :session
16102
+
16103
+ # Session specification. Multi-turn Search feature is currently at private GA
16104
+ # stage. Please use v1alpha or v1beta version instead before we launch this
16105
+ # feature to public GA. Or ask for allowlisting through Google Support team.
16106
+ # Corresponds to the JSON property `sessionSpec`
16107
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec]
16108
+ attr_accessor :session_spec
16109
+
16110
+ # The specification for query spell correction.
16111
+ # Corresponds to the JSON property `spellCorrectionSpec`
16112
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestSpellCorrectionSpec]
16113
+ attr_accessor :spell_correction_spec
16114
+
16115
+ # Information of an end user.
16116
+ # Corresponds to the JSON property `userInfo`
16117
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaUserInfo]
16118
+ attr_accessor :user_info
16119
+
16120
+ # The user labels applied to a resource must meet the following requirements: *
16121
+ # Each resource can have multiple labels, up to a maximum of 64. * Each label
16122
+ # must be a key-value pair. * Keys have a minimum length of 1 character and a
16123
+ # maximum length of 63 characters and cannot be empty. Values can be empty and
16124
+ # have a maximum length of 63 characters. * Keys and values can contain only
16125
+ # lowercase letters, numeric characters, underscores, and dashes. All characters
16126
+ # must use UTF-8 encoding, and international characters are allowed. * The key
16127
+ # portion of a label must be unique. However, you can use the same key with
16128
+ # multiple resources. * Keys must start with a lowercase letter or international
16129
+ # character. See [Google Cloud Document](https://cloud.google.com/resource-
16130
+ # manager/docs/creating-managing-labels#requirements) for more details.
16131
+ # Corresponds to the JSON property `userLabels`
16132
+ # @return [Hash<String,String>]
16133
+ attr_accessor :user_labels
16134
+
16135
+ # A unique identifier for tracking visitors. For example, this could be
16136
+ # implemented with an HTTP cookie, which should be able to uniquely identify a
16137
+ # visitor on a single device. This unique identifier should not change if the
16138
+ # visitor logs in or out of the website. This field should NOT have a fixed
16139
+ # value such as `unknown_visitor`. This should be the same identifier as
16140
+ # UserEvent.user_pseudo_id and CompleteQueryRequest.user_pseudo_id The field
16141
+ # must be a UTF-8 encoded string with a length limit of 128 characters.
16142
+ # Otherwise, an `INVALID_ARGUMENT` error is returned.
16143
+ # Corresponds to the JSON property `userPseudoId`
16144
+ # @return [String]
16145
+ attr_accessor :user_pseudo_id
16146
+
16147
+ def initialize(**args)
16148
+ update!(**args)
16149
+ end
16150
+
16151
+ # Update properties of this object
16152
+ def update!(**args)
16153
+ @boost_spec = args[:boost_spec] if args.key?(:boost_spec)
16154
+ @branch = args[:branch] if args.key?(:branch)
16155
+ @canonical_filter = args[:canonical_filter] if args.key?(:canonical_filter)
16156
+ @content_search_spec = args[:content_search_spec] if args.key?(:content_search_spec)
16157
+ @data_store_specs = args[:data_store_specs] if args.key?(:data_store_specs)
16158
+ @embedding_spec = args[:embedding_spec] if args.key?(:embedding_spec)
16159
+ @facet_specs = args[:facet_specs] if args.key?(:facet_specs)
16160
+ @filter = args[:filter] if args.key?(:filter)
16161
+ @image_query = args[:image_query] if args.key?(:image_query)
16162
+ @language_code = args[:language_code] if args.key?(:language_code)
16163
+ @natural_language_query_understanding_spec = args[:natural_language_query_understanding_spec] if args.key?(:natural_language_query_understanding_spec)
16164
+ @offset = args[:offset] if args.key?(:offset)
16165
+ @order_by = args[:order_by] if args.key?(:order_by)
16166
+ @page_size = args[:page_size] if args.key?(:page_size)
16167
+ @page_token = args[:page_token] if args.key?(:page_token)
16168
+ @params = args[:params] if args.key?(:params)
16169
+ @query = args[:query] if args.key?(:query)
16170
+ @query_expansion_spec = args[:query_expansion_spec] if args.key?(:query_expansion_spec)
16171
+ @ranking_expression = args[:ranking_expression] if args.key?(:ranking_expression)
16172
+ @region_code = args[:region_code] if args.key?(:region_code)
16173
+ @safe_search = args[:safe_search] if args.key?(:safe_search)
16174
+ @search_as_you_type_spec = args[:search_as_you_type_spec] if args.key?(:search_as_you_type_spec)
16175
+ @serving_config = args[:serving_config] if args.key?(:serving_config)
16176
+ @session = args[:session] if args.key?(:session)
16177
+ @session_spec = args[:session_spec] if args.key?(:session_spec)
16178
+ @spell_correction_spec = args[:spell_correction_spec] if args.key?(:spell_correction_spec)
16179
+ @user_info = args[:user_info] if args.key?(:user_info)
16180
+ @user_labels = args[:user_labels] if args.key?(:user_labels)
16181
+ @user_pseudo_id = args[:user_pseudo_id] if args.key?(:user_pseudo_id)
16182
+ end
16183
+ end
16184
+
16185
+ # Boost specification to boost certain documents.
16186
+ class GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpec
16187
+ include Google::Apis::Core::Hashable
16188
+
16189
+ # Condition boost specifications. If a document matches multiple conditions in
16190
+ # the specifictions, boost scores from these specifications are all applied and
16191
+ # combined in a non-linear way. Maximum number of specifications is 20.
16192
+ # Corresponds to the JSON property `conditionBoostSpecs`
16193
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpec>]
16194
+ attr_accessor :condition_boost_specs
16195
+
16196
+ def initialize(**args)
16197
+ update!(**args)
16198
+ end
16199
+
16200
+ # Update properties of this object
16201
+ def update!(**args)
16202
+ @condition_boost_specs = args[:condition_boost_specs] if args.key?(:condition_boost_specs)
16203
+ end
16204
+ end
16205
+
16206
+ # Boost applies to documents which match a condition.
16207
+ class GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpec
16208
+ include Google::Apis::Core::Hashable
16209
+
16210
+ # Strength of the condition boost, which should be in [-1, 1]. Negative boost
16211
+ # means demotion. Default is 0.0. Setting to 1.0 gives the document a big
16212
+ # promotion. However, it does not necessarily mean that the boosted document
16213
+ # will be the top result at all times, nor that other documents will be excluded.
16214
+ # Results could still be shown even when none of them matches the condition.
16215
+ # And results that are significantly more relevant to the search query can still
16216
+ # trump your heavily favored but irrelevant documents. Setting to -1.0 gives the
16217
+ # document a big demotion. However, results that are deeply relevant might still
16218
+ # be shown. The document will have an upstream battle to get a fairly high
16219
+ # ranking, but it is not blocked out completely. Setting to 0.0 means no boost
16220
+ # applied. The boosting condition is ignored. Only one of the (condition, boost)
16221
+ # combination or the boost_control_spec below are set. If both are set then the
16222
+ # global boost is ignored and the more fine-grained boost_control_spec is
16223
+ # applied.
16224
+ # Corresponds to the JSON property `boost`
16225
+ # @return [Float]
16226
+ attr_accessor :boost
16227
+
16228
+ # Specification for custom ranking based on customer specified attribute value.
16229
+ # It provides more controls for customized ranking than the simple (condition,
16230
+ # boost) combination above.
16231
+ # Corresponds to the JSON property `boostControlSpec`
16232
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpecBoostControlSpec]
16233
+ attr_accessor :boost_control_spec
16234
+
16235
+ # An expression which specifies a boost condition. The syntax and supported
16236
+ # fields are the same as a filter expression. See SearchRequest.filter for
16237
+ # detail syntax and limitations. Examples: * To boost documents with document ID
16238
+ # "doc_1" or "doc_2", and color "Red" or "Blue": `(document_id: ANY("doc_1", "
16239
+ # doc_2")) AND (color: ANY("Red", "Blue"))`
16240
+ # Corresponds to the JSON property `condition`
16241
+ # @return [String]
16242
+ attr_accessor :condition
16243
+
16244
+ def initialize(**args)
16245
+ update!(**args)
16246
+ end
16247
+
16248
+ # Update properties of this object
16249
+ def update!(**args)
16250
+ @boost = args[:boost] if args.key?(:boost)
16251
+ @boost_control_spec = args[:boost_control_spec] if args.key?(:boost_control_spec)
16252
+ @condition = args[:condition] if args.key?(:condition)
16253
+ end
16254
+ end
16255
+
16256
+ # Specification for custom ranking based on customer specified attribute value.
16257
+ # It provides more controls for customized ranking than the simple (condition,
16258
+ # boost) combination above.
16259
+ class GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpecBoostControlSpec
16260
+ include Google::Apis::Core::Hashable
16261
+
16262
+ # The attribute type to be used to determine the boost amount. The attribute
16263
+ # value can be derived from the field value of the specified field_name. In the
16264
+ # case of numerical it is straightforward i.e. attribute_value =
16265
+ # numerical_field_value. In the case of freshness however, attribute_value = (
16266
+ # time.now() - datetime_field_value).
16267
+ # Corresponds to the JSON property `attributeType`
16268
+ # @return [String]
16269
+ attr_accessor :attribute_type
16270
+
16271
+ # The control points used to define the curve. The monotonic function (defined
16272
+ # through the interpolation_type above) passes through the control points listed
16273
+ # here.
16274
+ # Corresponds to the JSON property `controlPoints`
16275
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpecBoostControlSpecControlPoint>]
16276
+ attr_accessor :control_points
16277
+
16278
+ # The name of the field whose value will be used to determine the boost amount.
16279
+ # Corresponds to the JSON property `fieldName`
16280
+ # @return [String]
16281
+ attr_accessor :field_name
16282
+
16283
+ # The interpolation type to be applied to connect the control points listed
16284
+ # below.
16285
+ # Corresponds to the JSON property `interpolationType`
16286
+ # @return [String]
16287
+ attr_accessor :interpolation_type
16288
+
16289
+ def initialize(**args)
16290
+ update!(**args)
16291
+ end
16292
+
16293
+ # Update properties of this object
16294
+ def update!(**args)
16295
+ @attribute_type = args[:attribute_type] if args.key?(:attribute_type)
16296
+ @control_points = args[:control_points] if args.key?(:control_points)
16297
+ @field_name = args[:field_name] if args.key?(:field_name)
16298
+ @interpolation_type = args[:interpolation_type] if args.key?(:interpolation_type)
16299
+ end
16300
+ end
16301
+
16302
+ # The control points used to define the curve. The curve defined through these
16303
+ # control points can only be monotonically increasing or decreasing(constant
16304
+ # values are acceptable).
16305
+ class GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpecBoostControlSpecControlPoint
16306
+ include Google::Apis::Core::Hashable
16307
+
16308
+ # Can be one of: 1. The numerical field value. 2. The duration spec for
16309
+ # freshness: The value must be formatted as an XSD `dayTimeDuration` value (a
16310
+ # restricted subset of an ISO 8601 duration value). The pattern for this is: `
16311
+ # nDnM]`.
16312
+ # Corresponds to the JSON property `attributeValue`
16313
+ # @return [String]
16314
+ attr_accessor :attribute_value
16315
+
16316
+ # The value between -1 to 1 by which to boost the score if the attribute_value
16317
+ # evaluates to the value specified above.
16318
+ # Corresponds to the JSON property `boostAmount`
16319
+ # @return [Float]
16320
+ attr_accessor :boost_amount
16321
+
16322
+ def initialize(**args)
16323
+ update!(**args)
16324
+ end
16325
+
16326
+ # Update properties of this object
16327
+ def update!(**args)
16328
+ @attribute_value = args[:attribute_value] if args.key?(:attribute_value)
16329
+ @boost_amount = args[:boost_amount] if args.key?(:boost_amount)
16330
+ end
16331
+ end
16332
+
16333
+ # A specification for configuring the behavior of content search.
16334
+ class GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpec
16335
+ include Google::Apis::Core::Hashable
16336
+
16337
+ # Specifies the chunk spec to be returned from the search response. Only
16338
+ # available if the SearchRequest.ContentSearchSpec.search_result_mode is set to
16339
+ # CHUNKS
16340
+ # Corresponds to the JSON property `chunkSpec`
16341
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecChunkSpec]
16342
+ attr_accessor :chunk_spec
16343
+
16344
+ # A specification for configuring the extractive content in a search response.
16345
+ # Corresponds to the JSON property `extractiveContentSpec`
16346
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecExtractiveContentSpec]
16347
+ attr_accessor :extractive_content_spec
16348
+
16349
+ # Specifies the search result mode. If unspecified, the search result mode
16350
+ # defaults to `DOCUMENTS`.
16351
+ # Corresponds to the JSON property `searchResultMode`
16352
+ # @return [String]
16353
+ attr_accessor :search_result_mode
16354
+
16355
+ # A specification for configuring snippets in a search response.
16356
+ # Corresponds to the JSON property `snippetSpec`
16357
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSnippetSpec]
16358
+ attr_accessor :snippet_spec
16359
+
16360
+ # A specification for configuring a summary returned in a search response.
16361
+ # Corresponds to the JSON property `summarySpec`
16362
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSummarySpec]
16363
+ attr_accessor :summary_spec
16364
+
16365
+ def initialize(**args)
16366
+ update!(**args)
16367
+ end
16368
+
16369
+ # Update properties of this object
16370
+ def update!(**args)
16371
+ @chunk_spec = args[:chunk_spec] if args.key?(:chunk_spec)
16372
+ @extractive_content_spec = args[:extractive_content_spec] if args.key?(:extractive_content_spec)
16373
+ @search_result_mode = args[:search_result_mode] if args.key?(:search_result_mode)
16374
+ @snippet_spec = args[:snippet_spec] if args.key?(:snippet_spec)
16375
+ @summary_spec = args[:summary_spec] if args.key?(:summary_spec)
16376
+ end
16377
+ end
16378
+
16379
+ # Specifies the chunk spec to be returned from the search response. Only
16380
+ # available if the SearchRequest.ContentSearchSpec.search_result_mode is set to
16381
+ # CHUNKS
16382
+ class GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecChunkSpec
16383
+ include Google::Apis::Core::Hashable
16384
+
16385
+ # The number of next chunks to be returned of the current chunk. The maximum
16386
+ # allowed value is 3. If not specified, no next chunks will be returned.
16387
+ # Corresponds to the JSON property `numNextChunks`
16388
+ # @return [Fixnum]
16389
+ attr_accessor :num_next_chunks
16390
+
16391
+ # The number of previous chunks to be returned of the current chunk. The maximum
16392
+ # allowed value is 3. If not specified, no previous chunks will be returned.
16393
+ # Corresponds to the JSON property `numPreviousChunks`
16394
+ # @return [Fixnum]
16395
+ attr_accessor :num_previous_chunks
16396
+
16397
+ def initialize(**args)
16398
+ update!(**args)
16399
+ end
16400
+
16401
+ # Update properties of this object
16402
+ def update!(**args)
16403
+ @num_next_chunks = args[:num_next_chunks] if args.key?(:num_next_chunks)
16404
+ @num_previous_chunks = args[:num_previous_chunks] if args.key?(:num_previous_chunks)
16405
+ end
16406
+ end
16407
+
16408
+ # A specification for configuring the extractive content in a search response.
16409
+ class GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecExtractiveContentSpec
16410
+ include Google::Apis::Core::Hashable
16411
+
16412
+ # The maximum number of extractive answers returned in each search result. An
16413
+ # extractive answer is a verbatim answer extracted from the original document,
16414
+ # which provides a precise and contextually relevant answer to the search query.
16415
+ # If the number of matching answers is less than the `
16416
+ # max_extractive_answer_count`, return all of the answers. Otherwise, return the
16417
+ # `max_extractive_answer_count`. At most five answers are returned for each
16418
+ # SearchResult.
16419
+ # Corresponds to the JSON property `maxExtractiveAnswerCount`
16420
+ # @return [Fixnum]
16421
+ attr_accessor :max_extractive_answer_count
16422
+
16423
+ # The max number of extractive segments returned in each search result. Only
16424
+ # applied if the DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED or
16425
+ # DataStore.solution_types is SOLUTION_TYPE_CHAT. An extractive segment is a
16426
+ # text segment extracted from the original document that is relevant to the
16427
+ # search query, and, in general, more verbose than an extractive answer. The
16428
+ # segment could then be used as input for LLMs to generate summaries and answers.
16429
+ # If the number of matching segments is less than `max_extractive_segment_count`
16430
+ # , return all of the segments. Otherwise, return the `
16431
+ # max_extractive_segment_count`.
16432
+ # Corresponds to the JSON property `maxExtractiveSegmentCount`
16433
+ # @return [Fixnum]
16434
+ attr_accessor :max_extractive_segment_count
16435
+
16436
+ # Return at most `num_next_segments` segments after each selected segments.
16437
+ # Corresponds to the JSON property `numNextSegments`
16438
+ # @return [Fixnum]
16439
+ attr_accessor :num_next_segments
16440
+
16441
+ # Specifies whether to also include the adjacent from each selected segments.
16442
+ # Return at most `num_previous_segments` segments before each selected segments.
16443
+ # Corresponds to the JSON property `numPreviousSegments`
16444
+ # @return [Fixnum]
16445
+ attr_accessor :num_previous_segments
16446
+
16447
+ # Specifies whether to return the confidence score from the extractive segments
16448
+ # in each search result. This feature is available only for new or allowlisted
16449
+ # data stores. To allowlist your data store, contact your Customer Engineer. The
16450
+ # default value is `false`.
16451
+ # Corresponds to the JSON property `returnExtractiveSegmentScore`
16452
+ # @return [Boolean]
16453
+ attr_accessor :return_extractive_segment_score
16454
+ alias_method :return_extractive_segment_score?, :return_extractive_segment_score
16455
+
16456
+ def initialize(**args)
16457
+ update!(**args)
16458
+ end
16459
+
16460
+ # Update properties of this object
16461
+ def update!(**args)
16462
+ @max_extractive_answer_count = args[:max_extractive_answer_count] if args.key?(:max_extractive_answer_count)
16463
+ @max_extractive_segment_count = args[:max_extractive_segment_count] if args.key?(:max_extractive_segment_count)
16464
+ @num_next_segments = args[:num_next_segments] if args.key?(:num_next_segments)
16465
+ @num_previous_segments = args[:num_previous_segments] if args.key?(:num_previous_segments)
16466
+ @return_extractive_segment_score = args[:return_extractive_segment_score] if args.key?(:return_extractive_segment_score)
16467
+ end
16468
+ end
16469
+
16470
+ # A specification for configuring snippets in a search response.
16471
+ class GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSnippetSpec
16472
+ include Google::Apis::Core::Hashable
16473
+
16474
+ # [DEPRECATED] This field is deprecated. To control snippet return, use `
16475
+ # return_snippet` field. For backwards compatibility, we will return snippet if
16476
+ # max_snippet_count > 0.
16477
+ # Corresponds to the JSON property `maxSnippetCount`
16478
+ # @return [Fixnum]
16479
+ attr_accessor :max_snippet_count
16480
+
16481
+ # [DEPRECATED] This field is deprecated and will have no affect on the snippet.
16482
+ # Corresponds to the JSON property `referenceOnly`
16483
+ # @return [Boolean]
16484
+ attr_accessor :reference_only
16485
+ alias_method :reference_only?, :reference_only
16486
+
16487
+ # If `true`, then return snippet. If no snippet can be generated, we return "No
16488
+ # snippet is available for this page." A `snippet_status` with `SUCCESS` or `
16489
+ # NO_SNIPPET_AVAILABLE` will also be returned.
16490
+ # Corresponds to the JSON property `returnSnippet`
16491
+ # @return [Boolean]
16492
+ attr_accessor :return_snippet
16493
+ alias_method :return_snippet?, :return_snippet
16494
+
16495
+ def initialize(**args)
16496
+ update!(**args)
16497
+ end
16498
+
16499
+ # Update properties of this object
16500
+ def update!(**args)
16501
+ @max_snippet_count = args[:max_snippet_count] if args.key?(:max_snippet_count)
16502
+ @reference_only = args[:reference_only] if args.key?(:reference_only)
16503
+ @return_snippet = args[:return_snippet] if args.key?(:return_snippet)
16504
+ end
16505
+ end
16506
+
16507
+ # A specification for configuring a summary returned in a search response.
16508
+ class GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSummarySpec
16509
+ include Google::Apis::Core::Hashable
16510
+
16511
+ # Specifies whether to filter out adversarial queries. The default value is `
16512
+ # false`. Google employs search-query classification to detect adversarial
16513
+ # queries. No summary is returned if the search query is classified as an
16514
+ # adversarial query. For example, a user might ask a question regarding negative
16515
+ # comments about the company or submit a query designed to generate unsafe,
16516
+ # policy-violating output. If this field is set to `true`, we skip generating
16517
+ # summaries for adversarial queries and return fallback messages instead.
16518
+ # Corresponds to the JSON property `ignoreAdversarialQuery`
16519
+ # @return [Boolean]
16520
+ attr_accessor :ignore_adversarial_query
16521
+ alias_method :ignore_adversarial_query?, :ignore_adversarial_query
16522
+
16523
+ # Specifies whether to filter out queries that are not summary-seeking. The
16524
+ # default value is `false`. Google employs search-query classification to detect
16525
+ # summary-seeking queries. No summary is returned if the search query is
16526
+ # classified as a non-summary seeking query. For example, `why is the sky blue`
16527
+ # and `Who is the best soccer player in the world?` are summary-seeking queries,
16528
+ # but `SFO airport` and `world cup 2026` are not. They are most likely
16529
+ # navigational queries. If this field is set to `true`, we skip generating
16530
+ # summaries for non-summary seeking queries and return fallback messages instead.
16531
+ # Corresponds to the JSON property `ignoreNonSummarySeekingQuery`
16532
+ # @return [Boolean]
16533
+ attr_accessor :ignore_non_summary_seeking_query
16534
+ alias_method :ignore_non_summary_seeking_query?, :ignore_non_summary_seeking_query
16535
+
16536
+ # Specifies whether to include citations in the summary. The default value is `
16537
+ # false`. When this field is set to `true`, summaries include in-line citation
16538
+ # numbers. Example summary including citations: BigQuery is Google Cloud's fully
16539
+ # managed and completely serverless enterprise data warehouse [1]. BigQuery
16540
+ # supports all data types, works across clouds, and has built-in machine
16541
+ # learning and business intelligence, all within a unified platform [2, 3]. The
16542
+ # citation numbers refer to the returned search results and are 1-indexed. For
16543
+ # example, [1] means that the sentence is attributed to the first search result.
16544
+ # [2, 3] means that the sentence is attributed to both the second and third
16545
+ # search results.
16546
+ # Corresponds to the JSON property `includeCitations`
16547
+ # @return [Boolean]
16548
+ attr_accessor :include_citations
16549
+ alias_method :include_citations?, :include_citations
16550
+
16551
+ # Language code for Summary. Use language tags defined by [BCP47](https://www.
16552
+ # rfc-editor.org/rfc/bcp/bcp47.txt). Note: This is an experimental feature.
16553
+ # Corresponds to the JSON property `languageCode`
16554
+ # @return [String]
16555
+ attr_accessor :language_code
16556
+
16557
+ # Specification of the prompt to use with the model.
16558
+ # Corresponds to the JSON property `modelPromptSpec`
16559
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSummarySpecModelPromptSpec]
16560
+ attr_accessor :model_prompt_spec
16561
+
16562
+ # Specification of the model.
16563
+ # Corresponds to the JSON property `modelSpec`
16564
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSummarySpecModelSpec]
16565
+ attr_accessor :model_spec
16566
+
16567
+ # The number of top results to generate the summary from. If the number of
16568
+ # results returned is less than `summaryResultCount`, the summary is generated
16569
+ # from all of the results. At most 10 results for documents mode, or 50 for
16570
+ # chunks mode, can be used to generate a summary. The chunks mode is used when
16571
+ # SearchRequest.ContentSearchSpec.search_result_mode is set to CHUNKS.
16572
+ # Corresponds to the JSON property `summaryResultCount`
16573
+ # @return [Fixnum]
16574
+ attr_accessor :summary_result_count
16575
+
16576
+ # If true, answer will be generated from most relevant chunks from top search
16577
+ # results. This feature will improve summary quality. Note that with this
16578
+ # feature enabled, not all top search results will be referenced and included in
16579
+ # the reference list, so the citation source index only points to the search
16580
+ # results listed in the reference list.
16581
+ # Corresponds to the JSON property `useSemanticChunks`
16582
+ # @return [Boolean]
16583
+ attr_accessor :use_semantic_chunks
16584
+ alias_method :use_semantic_chunks?, :use_semantic_chunks
16585
+
16586
+ def initialize(**args)
16587
+ update!(**args)
16588
+ end
16589
+
16590
+ # Update properties of this object
16591
+ def update!(**args)
16592
+ @ignore_adversarial_query = args[:ignore_adversarial_query] if args.key?(:ignore_adversarial_query)
16593
+ @ignore_non_summary_seeking_query = args[:ignore_non_summary_seeking_query] if args.key?(:ignore_non_summary_seeking_query)
16594
+ @include_citations = args[:include_citations] if args.key?(:include_citations)
16595
+ @language_code = args[:language_code] if args.key?(:language_code)
16596
+ @model_prompt_spec = args[:model_prompt_spec] if args.key?(:model_prompt_spec)
16597
+ @model_spec = args[:model_spec] if args.key?(:model_spec)
16598
+ @summary_result_count = args[:summary_result_count] if args.key?(:summary_result_count)
16599
+ @use_semantic_chunks = args[:use_semantic_chunks] if args.key?(:use_semantic_chunks)
16600
+ end
16601
+ end
16602
+
16603
+ # Specification of the prompt to use with the model.
16604
+ class GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSummarySpecModelPromptSpec
16605
+ include Google::Apis::Core::Hashable
16606
+
16607
+ # Text at the beginning of the prompt that instructs the assistant. Examples are
16608
+ # available in the user guide.
16609
+ # Corresponds to the JSON property `preamble`
16610
+ # @return [String]
16611
+ attr_accessor :preamble
16612
+
16613
+ def initialize(**args)
16614
+ update!(**args)
16615
+ end
16616
+
16617
+ # Update properties of this object
16618
+ def update!(**args)
16619
+ @preamble = args[:preamble] if args.key?(:preamble)
16620
+ end
16621
+ end
16622
+
16623
+ # Specification of the model.
16624
+ class GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSummarySpecModelSpec
16625
+ include Google::Apis::Core::Hashable
16626
+
16627
+ # The model version used to generate the summary. Supported values are: * `
16628
+ # stable`: string. Default value when no value is specified. Uses a generally
16629
+ # available, fine-tuned model. For more information, see [Answer generation
16630
+ # model versions and lifecycle](https://cloud.google.com/generative-ai-app-
16631
+ # builder/docs/answer-generation-models). * `preview`: string. (Public preview)
16632
+ # Uses a preview model. For more information, see [Answer generation model
16633
+ # versions and lifecycle](https://cloud.google.com/generative-ai-app-builder/
16634
+ # docs/answer-generation-models).
16635
+ # Corresponds to the JSON property `version`
16636
+ # @return [String]
16637
+ attr_accessor :version
16638
+
16639
+ def initialize(**args)
16640
+ update!(**args)
16641
+ end
16642
+
16643
+ # Update properties of this object
16644
+ def update!(**args)
16645
+ @version = args[:version] if args.key?(:version)
16646
+ end
16647
+ end
16648
+
16649
+ # A struct to define data stores to filter on in a search call and
16650
+ # configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error
16651
+ # is returned.
16652
+ class GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec
16653
+ include Google::Apis::Core::Hashable
16654
+
16655
+ # Required. Full resource name of DataStore, such as `projects/`project`/
16656
+ # locations/`location`/collections/`collection_id`/dataStores/`data_store_id``.
16657
+ # Corresponds to the JSON property `dataStore`
16658
+ # @return [String]
16659
+ attr_accessor :data_store
16660
+
16661
+ def initialize(**args)
16662
+ update!(**args)
16663
+ end
16664
+
16665
+ # Update properties of this object
16666
+ def update!(**args)
16667
+ @data_store = args[:data_store] if args.key?(:data_store)
16668
+ end
16669
+ end
16670
+
16671
+ # The specification that uses customized query embedding vector to do semantic
16672
+ # document retrieval.
16673
+ class GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec
16674
+ include Google::Apis::Core::Hashable
16675
+
16676
+ # The embedding vector used for retrieval. Limit to 1.
16677
+ # Corresponds to the JSON property `embeddingVectors`
16678
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpecEmbeddingVector>]
16679
+ attr_accessor :embedding_vectors
16680
+
16681
+ def initialize(**args)
16682
+ update!(**args)
16683
+ end
16684
+
16685
+ # Update properties of this object
16686
+ def update!(**args)
16687
+ @embedding_vectors = args[:embedding_vectors] if args.key?(:embedding_vectors)
16688
+ end
16689
+ end
16690
+
16691
+ # Embedding vector.
16692
+ class GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpecEmbeddingVector
16693
+ include Google::Apis::Core::Hashable
16694
+
16695
+ # Embedding field path in schema.
16696
+ # Corresponds to the JSON property `fieldPath`
16697
+ # @return [String]
16698
+ attr_accessor :field_path
16699
+
16700
+ # Query embedding vector.
16701
+ # Corresponds to the JSON property `vector`
16702
+ # @return [Array<Float>]
16703
+ attr_accessor :vector
16704
+
16705
+ def initialize(**args)
16706
+ update!(**args)
16707
+ end
16708
+
16709
+ # Update properties of this object
16710
+ def update!(**args)
16711
+ @field_path = args[:field_path] if args.key?(:field_path)
16712
+ @vector = args[:vector] if args.key?(:vector)
16713
+ end
16714
+ end
16715
+
16716
+ # A facet specification to perform faceted search.
16717
+ class GoogleCloudDiscoveryengineV1betaSearchRequestFacetSpec
16718
+ include Google::Apis::Core::Hashable
16719
+
16720
+ # Enables dynamic position for this facet. If set to true, the position of this
16721
+ # facet among all facets in the response is determined automatically. If dynamic
16722
+ # facets are enabled, it is ordered together. If set to false, the position of
16723
+ # this facet in the response is the same as in the request, and it is ranked
16724
+ # before the facets with dynamic position enable and all dynamic facets. For
16725
+ # example, you may always want to have rating facet returned in the response,
16726
+ # but it's not necessarily to always display the rating facet at the top. In
16727
+ # that case, you can set enable_dynamic_position to true so that the position of
16728
+ # rating facet in response is determined automatically. Another example,
16729
+ # assuming you have the following facets in the request: * "rating",
16730
+ # enable_dynamic_position = true * "price", enable_dynamic_position = false * "
16731
+ # brands", enable_dynamic_position = false And also you have a dynamic facets
16732
+ # enabled, which generates a facet `gender`. Then the final order of the facets
16733
+ # in the response can be ("price", "brands", "rating", "gender") or ("price", "
16734
+ # brands", "gender", "rating") depends on how API orders "gender" and "rating"
16735
+ # facets. However, notice that "price" and "brands" are always ranked at first
16736
+ # and second position because their enable_dynamic_position is false.
16737
+ # Corresponds to the JSON property `enableDynamicPosition`
16738
+ # @return [Boolean]
16739
+ attr_accessor :enable_dynamic_position
16740
+ alias_method :enable_dynamic_position?, :enable_dynamic_position
16741
+
16742
+ # List of keys to exclude when faceting. By default, FacetKey.key is not
16743
+ # excluded from the filter unless it is listed in this field. Listing a facet
16744
+ # key in this field allows its values to appear as facet results, even when they
16745
+ # are filtered out of search results. Using this field does not affect what
16746
+ # search results are returned. For example, suppose there are 100 documents with
16747
+ # the color facet "Red" and 200 documents with the color facet "Blue". A query
16748
+ # containing the filter "color:ANY("Red")" and having "color" as FacetKey.key
16749
+ # would by default return only "Red" documents in the search results, and also
16750
+ # return "Red" with count 100 as the only color facet. Although there are also
16751
+ # blue documents available, "Blue" would not be shown as an available facet
16752
+ # value. If "color" is listed in "excludedFilterKeys", then the query returns
16753
+ # the facet values "Red" with count 100 and "Blue" with count 200, because the "
16754
+ # color" key is now excluded from the filter. Because this field doesn't affect
16755
+ # search results, the search results are still correctly filtered to return only
16756
+ # "Red" documents. A maximum of 100 values are allowed. Otherwise, an `
16757
+ # INVALID_ARGUMENT` error is returned.
16758
+ # Corresponds to the JSON property `excludedFilterKeys`
16759
+ # @return [Array<String>]
16760
+ attr_accessor :excluded_filter_keys
16761
+
16762
+ # Specifies how a facet is computed.
16763
+ # Corresponds to the JSON property `facetKey`
16764
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaSearchRequestFacetSpecFacetKey]
16765
+ attr_accessor :facet_key
16766
+
16767
+ # Maximum facet values that are returned for this facet. If unspecified,
16768
+ # defaults to 20. The maximum allowed value is 300. Values above 300 are coerced
16769
+ # to 300. For aggregation in healthcare search, when the [FacetKey.key] is "
16770
+ # healthcare_aggregation_key", the limit will be overridden to 10,000 internally,
16771
+ # regardless of the value set here. If this field is negative, an `
16772
+ # INVALID_ARGUMENT` is returned.
16773
+ # Corresponds to the JSON property `limit`
16774
+ # @return [Fixnum]
16775
+ attr_accessor :limit
16776
+
16777
+ def initialize(**args)
16778
+ update!(**args)
16779
+ end
16780
+
16781
+ # Update properties of this object
16782
+ def update!(**args)
16783
+ @enable_dynamic_position = args[:enable_dynamic_position] if args.key?(:enable_dynamic_position)
16784
+ @excluded_filter_keys = args[:excluded_filter_keys] if args.key?(:excluded_filter_keys)
16785
+ @facet_key = args[:facet_key] if args.key?(:facet_key)
16786
+ @limit = args[:limit] if args.key?(:limit)
16787
+ end
16788
+ end
16789
+
16790
+ # Specifies how a facet is computed.
16791
+ class GoogleCloudDiscoveryengineV1betaSearchRequestFacetSpecFacetKey
13660
16792
  include Google::Apis::Core::Hashable
13661
16793
 
13662
- # The last time when the project agreed to the terms of service.
13663
- # Corresponds to the JSON property `acceptTime`
13664
- # @return [String]
13665
- attr_accessor :accept_time
16794
+ # True to make facet keys case insensitive when getting faceting values with
16795
+ # prefixes or contains; false otherwise.
16796
+ # Corresponds to the JSON property `caseInsensitive`
16797
+ # @return [Boolean]
16798
+ attr_accessor :case_insensitive
16799
+ alias_method :case_insensitive?, :case_insensitive
13666
16800
 
13667
- # The last time when the project declined or revoked the agreement to terms of
13668
- # service.
13669
- # Corresponds to the JSON property `declineTime`
13670
- # @return [String]
13671
- attr_accessor :decline_time
16801
+ # Only get facet values that contain the given strings. For example, suppose "
16802
+ # category" has three values "Action > 2022", "Action > 2021" and "Sci-Fi > 2022"
16803
+ # . If set "contains" to "2022", the "category" facet only contains "Action >
16804
+ # 2022" and "Sci-Fi > 2022". Only supported on textual fields. Maximum is 10.
16805
+ # Corresponds to the JSON property `contains`
16806
+ # @return [Array<String>]
16807
+ attr_accessor :contains
13672
16808
 
13673
- # The unique identifier of this terms of service. Available terms: * `
13674
- # GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-
13675
- # use-terms). When using this as `id`, the acceptable version to provide is `
13676
- # 2022-11-23`.
13677
- # Corresponds to the JSON property `id`
13678
- # @return [String]
13679
- attr_accessor :id
16809
+ # Set only if values should be bucketed into intervals. Must be set for facets
16810
+ # with numerical values. Must not be set for facet with text values. Maximum
16811
+ # number of intervals is 30.
16812
+ # Corresponds to the JSON property `intervals`
16813
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaInterval>]
16814
+ attr_accessor :intervals
13680
16815
 
13681
- # Whether the project has accepted/rejected the service terms or it is still
13682
- # pending.
13683
- # Corresponds to the JSON property `state`
16816
+ # Required. Supported textual and numerical facet keys in Document object, over
16817
+ # which the facet values are computed. Facet key is case-sensitive.
16818
+ # Corresponds to the JSON property `key`
13684
16819
  # @return [String]
13685
- attr_accessor :state
16820
+ attr_accessor :key
13686
16821
 
13687
- # The version string of the terms of service. For acceptable values, see the
13688
- # comments for id above.
13689
- # Corresponds to the JSON property `version`
16822
+ # The order in which documents are returned. Allowed values are: * "count desc",
16823
+ # which means order by SearchResponse.Facet.values.count descending. * "value
16824
+ # desc", which means order by SearchResponse.Facet.values.value descending. Only
16825
+ # applies to textual facets. If not set, textual values are sorted in [natural
16826
+ # order](https://en.wikipedia.org/wiki/Natural_sort_order); numerical intervals
16827
+ # are sorted in the order given by FacetSpec.FacetKey.intervals.
16828
+ # Corresponds to the JSON property `orderBy`
13690
16829
  # @return [String]
13691
- attr_accessor :version
16830
+ attr_accessor :order_by
16831
+
16832
+ # Only get facet values that start with the given string prefix. For example,
16833
+ # suppose "category" has three values "Action > 2022", "Action > 2021" and "Sci-
16834
+ # Fi > 2022". If set "prefixes" to "Action", the "category" facet only contains "
16835
+ # Action > 2022" and "Action > 2021". Only supported on textual fields. Maximum
16836
+ # is 10.
16837
+ # Corresponds to the JSON property `prefixes`
16838
+ # @return [Array<String>]
16839
+ attr_accessor :prefixes
16840
+
16841
+ # Only get facet for the given restricted values. Only supported on textual
16842
+ # fields. For example, suppose "category" has three values "Action > 2022", "
16843
+ # Action > 2021" and "Sci-Fi > 2022". If set "restricted_values" to "Action >
16844
+ # 2022", the "category" facet only contains "Action > 2022". Only supported on
16845
+ # textual fields. Maximum is 10.
16846
+ # Corresponds to the JSON property `restrictedValues`
16847
+ # @return [Array<String>]
16848
+ attr_accessor :restricted_values
13692
16849
 
13693
16850
  def initialize(**args)
13694
16851
  update!(**args)
@@ -13696,57 +16853,54 @@ module Google
13696
16853
 
13697
16854
  # Update properties of this object
13698
16855
  def update!(**args)
13699
- @accept_time = args[:accept_time] if args.key?(:accept_time)
13700
- @decline_time = args[:decline_time] if args.key?(:decline_time)
13701
- @id = args[:id] if args.key?(:id)
13702
- @state = args[:state] if args.key?(:state)
13703
- @version = args[:version] if args.key?(:version)
16856
+ @case_insensitive = args[:case_insensitive] if args.key?(:case_insensitive)
16857
+ @contains = args[:contains] if args.key?(:contains)
16858
+ @intervals = args[:intervals] if args.key?(:intervals)
16859
+ @key = args[:key] if args.key?(:key)
16860
+ @order_by = args[:order_by] if args.key?(:order_by)
16861
+ @prefixes = args[:prefixes] if args.key?(:prefixes)
16862
+ @restricted_values = args[:restricted_values] if args.key?(:restricted_values)
13704
16863
  end
13705
16864
  end
13706
16865
 
13707
- # Metadata associated with a project provision operation.
13708
- class GoogleCloudDiscoveryengineV1betaProvisionProjectMetadata
16866
+ # Specifies the image query input.
16867
+ class GoogleCloudDiscoveryengineV1betaSearchRequestImageQuery
13709
16868
  include Google::Apis::Core::Hashable
13710
16869
 
16870
+ # Base64 encoded image bytes. Supported image formats: JPEG, PNG, and BMP.
16871
+ # Corresponds to the JSON property `imageBytes`
16872
+ # @return [String]
16873
+ attr_accessor :image_bytes
16874
+
13711
16875
  def initialize(**args)
13712
16876
  update!(**args)
13713
16877
  end
13714
16878
 
13715
16879
  # Update properties of this object
13716
16880
  def update!(**args)
16881
+ @image_bytes = args[:image_bytes] if args.key?(:image_bytes)
13717
16882
  end
13718
16883
  end
13719
16884
 
13720
- # Metadata related to the progress of the PurgeDocuments operation. This will be
13721
- # returned by the google.longrunning.Operation.metadata field.
13722
- class GoogleCloudDiscoveryengineV1betaPurgeDocumentsMetadata
16885
+ # Specification to enable natural language understanding capabilities for search
16886
+ # requests.
16887
+ class GoogleCloudDiscoveryengineV1betaSearchRequestNaturalLanguageQueryUnderstandingSpec
13723
16888
  include Google::Apis::Core::Hashable
13724
16889
 
13725
- # Operation create time.
13726
- # Corresponds to the JSON property `createTime`
16890
+ # The condition under which filter extraction should occur. Default to Condition.
16891
+ # DISABLED.
16892
+ # Corresponds to the JSON property `filterExtractionCondition`
13727
16893
  # @return [String]
13728
- attr_accessor :create_time
13729
-
13730
- # Count of entries that encountered errors while processing.
13731
- # Corresponds to the JSON property `failureCount`
13732
- # @return [Fixnum]
13733
- attr_accessor :failure_count
16894
+ attr_accessor :filter_extraction_condition
13734
16895
 
13735
- # Count of entries that were ignored as entries were not found.
13736
- # Corresponds to the JSON property `ignoredCount`
13737
- # @return [Fixnum]
13738
- attr_accessor :ignored_count
13739
-
13740
- # Count of entries that were deleted successfully.
13741
- # Corresponds to the JSON property `successCount`
13742
- # @return [Fixnum]
13743
- attr_accessor :success_count
13744
-
13745
- # Operation last update time. If the operation is done, this is also the finish
13746
- # time.
13747
- # Corresponds to the JSON property `updateTime`
13748
- # @return [String]
13749
- attr_accessor :update_time
16896
+ # Field names used for location-based filtering, where geolocation filters are
16897
+ # detected in natural language search queries. Only valid when the
16898
+ # FilterExtractionCondition is set to `ENABLED`. If this field is set, it
16899
+ # overrides the field names set in ServingConfig.
16900
+ # geo_search_query_detection_field_names.
16901
+ # Corresponds to the JSON property `geoSearchQueryDetectionFieldNames`
16902
+ # @return [Array<String>]
16903
+ attr_accessor :geo_search_query_detection_field_names
13750
16904
 
13751
16905
  def initialize(**args)
13752
16906
  update!(**args)
@@ -13754,31 +16908,28 @@ module Google
13754
16908
 
13755
16909
  # Update properties of this object
13756
16910
  def update!(**args)
13757
- @create_time = args[:create_time] if args.key?(:create_time)
13758
- @failure_count = args[:failure_count] if args.key?(:failure_count)
13759
- @ignored_count = args[:ignored_count] if args.key?(:ignored_count)
13760
- @success_count = args[:success_count] if args.key?(:success_count)
13761
- @update_time = args[:update_time] if args.key?(:update_time)
16911
+ @filter_extraction_condition = args[:filter_extraction_condition] if args.key?(:filter_extraction_condition)
16912
+ @geo_search_query_detection_field_names = args[:geo_search_query_detection_field_names] if args.key?(:geo_search_query_detection_field_names)
13762
16913
  end
13763
16914
  end
13764
16915
 
13765
- # Response message for DocumentService.PurgeDocuments method. If the long
13766
- # running operation is successfully done, then this message is returned by the
13767
- # google.longrunning.Operations.response field.
13768
- class GoogleCloudDiscoveryengineV1betaPurgeDocumentsResponse
16916
+ # Specification to determine under which conditions query expansion should occur.
16917
+ class GoogleCloudDiscoveryengineV1betaSearchRequestQueryExpansionSpec
13769
16918
  include Google::Apis::Core::Hashable
13770
16919
 
13771
- # The total count of documents purged as a result of the operation.
13772
- # Corresponds to the JSON property `purgeCount`
13773
- # @return [Fixnum]
13774
- attr_accessor :purge_count
16920
+ # The condition under which query expansion should occur. Default to Condition.
16921
+ # DISABLED.
16922
+ # Corresponds to the JSON property `condition`
16923
+ # @return [String]
16924
+ attr_accessor :condition
13775
16925
 
13776
- # A sample of document names that will be deleted. Only populated if `force` is
13777
- # set to false. A max of 100 names will be returned and the names are chosen at
13778
- # random.
13779
- # Corresponds to the JSON property `purgeSample`
13780
- # @return [Array<String>]
13781
- attr_accessor :purge_sample
16926
+ # Whether to pin unexpanded results. If this field is set to true, unexpanded
16927
+ # products are always at the top of the search results, followed by the expanded
16928
+ # results.
16929
+ # Corresponds to the JSON property `pinUnexpandedResults`
16930
+ # @return [Boolean]
16931
+ attr_accessor :pin_unexpanded_results
16932
+ alias_method :pin_unexpanded_results?, :pin_unexpanded_results
13782
16933
 
13783
16934
  def initialize(**args)
13784
16935
  update!(**args)
@@ -13786,26 +16937,20 @@ module Google
13786
16937
 
13787
16938
  # Update properties of this object
13788
16939
  def update!(**args)
13789
- @purge_count = args[:purge_count] if args.key?(:purge_count)
13790
- @purge_sample = args[:purge_sample] if args.key?(:purge_sample)
16940
+ @condition = args[:condition] if args.key?(:condition)
16941
+ @pin_unexpanded_results = args[:pin_unexpanded_results] if args.key?(:pin_unexpanded_results)
13791
16942
  end
13792
16943
  end
13793
16944
 
13794
- # Metadata related to the progress of the PurgeSuggestionDenyListEntries
13795
- # operation. This is returned by the google.longrunning.Operation.metadata field.
13796
- class GoogleCloudDiscoveryengineV1betaPurgeSuggestionDenyListEntriesMetadata
16945
+ # Specification for search as you type in search requests.
16946
+ class GoogleCloudDiscoveryengineV1betaSearchRequestSearchAsYouTypeSpec
13797
16947
  include Google::Apis::Core::Hashable
13798
16948
 
13799
- # Operation create time.
13800
- # Corresponds to the JSON property `createTime`
13801
- # @return [String]
13802
- attr_accessor :create_time
13803
-
13804
- # Operation last update time. If the operation is done, this is also the finish
13805
- # time.
13806
- # Corresponds to the JSON property `updateTime`
16949
+ # The condition under which search as you type should occur. Default to
16950
+ # Condition.DISABLED.
16951
+ # Corresponds to the JSON property `condition`
13807
16952
  # @return [String]
13808
- attr_accessor :update_time
16953
+ attr_accessor :condition
13809
16954
 
13810
16955
  def initialize(**args)
13811
16956
  update!(**args)
@@ -13813,24 +16958,38 @@ module Google
13813
16958
 
13814
16959
  # Update properties of this object
13815
16960
  def update!(**args)
13816
- @create_time = args[:create_time] if args.key?(:create_time)
13817
- @update_time = args[:update_time] if args.key?(:update_time)
16961
+ @condition = args[:condition] if args.key?(:condition)
13818
16962
  end
13819
16963
  end
13820
16964
 
13821
- # Response message for CompletionService.PurgeSuggestionDenyListEntries method.
13822
- class GoogleCloudDiscoveryengineV1betaPurgeSuggestionDenyListEntriesResponse
16965
+ # Session specification. Multi-turn Search feature is currently at private GA
16966
+ # stage. Please use v1alpha or v1beta version instead before we launch this
16967
+ # feature to public GA. Or ask for allowlisting through Google Support team.
16968
+ class GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec
13823
16969
  include Google::Apis::Core::Hashable
13824
16970
 
13825
- # A sample of errors encountered while processing the request.
13826
- # Corresponds to the JSON property `errorSamples`
13827
- # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleRpcStatus>]
13828
- attr_accessor :error_samples
16971
+ # If set, the search result gets stored to the "turn" specified by this query ID.
16972
+ # Example: Let's say the session looks like this: session ` name: ".../sessions/
16973
+ # xxx" turns ` query ` text: "What is foo?" query_id: ".../questions/yyy" `
16974
+ # answer: "Foo is ..." ` turns ` query ` text: "How about bar then?" query_id: ".
16975
+ # ../questions/zzz" ` ` ` The user can call /search API with a request like this:
16976
+ # session: ".../sessions/xxx" session_spec ` query_id: ".../questions/zzz" `
16977
+ # Then, the API stores the search result, associated with the last turn. The
16978
+ # stored search result can be used by a subsequent /answer API call (with the
16979
+ # session ID and the query ID specified). Also, it is possible to call /search
16980
+ # and /answer in parallel with the same session ID & query ID.
16981
+ # Corresponds to the JSON property `queryId`
16982
+ # @return [String]
16983
+ attr_accessor :query_id
13829
16984
 
13830
- # Number of suggestion deny list entries purged.
13831
- # Corresponds to the JSON property `purgeCount`
16985
+ # The number of top search results to persist. The persisted search results can
16986
+ # be used for the subsequent /answer api call. This field is simliar to the `
16987
+ # summary_result_count` field in SearchRequest.ContentSearchSpec.SummarySpec.
16988
+ # summary_result_count. At most 10 results for documents mode, or 50 for chunks
16989
+ # mode.
16990
+ # Corresponds to the JSON property `searchResultPersistenceCount`
13832
16991
  # @return [Fixnum]
13833
- attr_accessor :purge_count
16992
+ attr_accessor :search_result_persistence_count
13834
16993
 
13835
16994
  def initialize(**args)
13836
16995
  update!(**args)
@@ -13838,32 +16997,20 @@ module Google
13838
16997
 
13839
16998
  # Update properties of this object
13840
16999
  def update!(**args)
13841
- @error_samples = args[:error_samples] if args.key?(:error_samples)
13842
- @purge_count = args[:purge_count] if args.key?(:purge_count)
17000
+ @query_id = args[:query_id] if args.key?(:query_id)
17001
+ @search_result_persistence_count = args[:search_result_persistence_count] if args.key?(:search_result_persistence_count)
13843
17002
  end
13844
17003
  end
13845
17004
 
13846
- # Defines the structure and layout of a type of document data.
13847
- class GoogleCloudDiscoveryengineV1betaSchema
17005
+ # The specification for query spell correction.
17006
+ class GoogleCloudDiscoveryengineV1betaSearchRequestSpellCorrectionSpec
13848
17007
  include Google::Apis::Core::Hashable
13849
17008
 
13850
- # The JSON representation of the schema.
13851
- # Corresponds to the JSON property `jsonSchema`
13852
- # @return [String]
13853
- attr_accessor :json_schema
13854
-
13855
- # Immutable. The full resource name of the schema, in the format of `projects/`
13856
- # project`/locations/`location`/collections/`collection`/dataStores/`data_store`/
13857
- # schemas/`schema``. This field must be a UTF-8 encoded string with a length
13858
- # limit of 1024 characters.
13859
- # Corresponds to the JSON property `name`
17009
+ # The mode under which spell correction replaces the original search query.
17010
+ # Defaults to Mode.AUTO.
17011
+ # Corresponds to the JSON property `mode`
13860
17012
  # @return [String]
13861
- attr_accessor :name
13862
-
13863
- # The structured representation of the schema.
13864
- # Corresponds to the JSON property `structSchema`
13865
- # @return [Hash<String,Object>]
13866
- attr_accessor :struct_schema
17013
+ attr_accessor :mode
13867
17014
 
13868
17015
  def initialize(**args)
13869
17016
  update!(**args)
@@ -13871,9 +17018,7 @@ module Google
13871
17018
 
13872
17019
  # Update properties of this object
13873
17020
  def update!(**args)
13874
- @json_schema = args[:json_schema] if args.key?(:json_schema)
13875
- @name = args[:name] if args.key?(:name)
13876
- @struct_schema = args[:struct_schema] if args.key?(:struct_schema)
17021
+ @mode = args[:mode] if args.key?(:mode)
13877
17022
  end
13878
17023
  end
13879
17024
 
@@ -14189,6 +17334,40 @@ module Google
14189
17334
  end
14190
17335
  end
14191
17336
 
17337
+ # Information of an end user.
17338
+ class GoogleCloudDiscoveryengineV1betaUserInfo
17339
+ include Google::Apis::Core::Hashable
17340
+
17341
+ # User agent as included in the HTTP header. The field must be a UTF-8 encoded
17342
+ # string with a length limit of 1,000 characters. Otherwise, an `
17343
+ # INVALID_ARGUMENT` error is returned. This should not be set when using the
17344
+ # client side event reporting with GTM or JavaScript tag in UserEventService.
17345
+ # CollectUserEvent or if UserEvent.direct_user_request is set.
17346
+ # Corresponds to the JSON property `userAgent`
17347
+ # @return [String]
17348
+ attr_accessor :user_agent
17349
+
17350
+ # Highly recommended for logged-in users. Unique identifier for logged-in user,
17351
+ # such as a user name. Don't set for anonymous users. Always use a hashed value
17352
+ # for this ID. Don't set the field to the same fixed ID for different users.
17353
+ # This mixes the event history of those users together, which results in
17354
+ # degraded model quality. The field must be a UTF-8 encoded string with a length
17355
+ # limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
17356
+ # Corresponds to the JSON property `userId`
17357
+ # @return [String]
17358
+ attr_accessor :user_id
17359
+
17360
+ def initialize(**args)
17361
+ update!(**args)
17362
+ end
17363
+
17364
+ # Update properties of this object
17365
+ def update!(**args)
17366
+ @user_agent = args[:user_agent] if args.key?(:user_agent)
17367
+ @user_id = args[:user_id] if args.key?(:user_id)
17368
+ end
17369
+ end
17370
+
14192
17371
  # The request message for Operations.CancelOperation.
14193
17372
  class GoogleLongrunningCancelOperationRequest
14194
17373
  include Google::Apis::Core::Hashable