google-cloud-discovery_engine-v1beta 0.3.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/google/cloud/discovery_engine/v1beta/completion_service/client.rb +21 -3
- data/lib/google/cloud/discovery_engine/v1beta/completion_service/rest/client.rb +21 -3
- data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/client.rb +959 -0
- data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/credentials.rb +47 -0
- data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/paths.rb +176 -0
- data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/rest/client.rb +797 -0
- data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/rest/service_stub.rb +450 -0
- data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/rest.rb +52 -0
- data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service.rb +55 -0
- data/lib/google/cloud/discovery_engine/v1beta/document_service/client.rb +19 -4
- data/lib/google/cloud/discovery_engine/v1beta/document_service/rest/client.rb +19 -4
- data/lib/google/cloud/discovery_engine/v1beta/document_service/rest/operations.rb +42 -0
- data/lib/google/cloud/discovery_engine/v1beta/recommendation_service/client.rb +14 -0
- data/lib/google/cloud/discovery_engine/v1beta/recommendation_service/rest/client.rb +14 -0
- data/lib/google/cloud/discovery_engine/v1beta/rest.rb +2 -1
- data/lib/google/cloud/discovery_engine/v1beta/schema_service/client.rb +14 -0
- data/lib/google/cloud/discovery_engine/v1beta/schema_service/rest/client.rb +14 -0
- data/lib/google/cloud/discovery_engine/v1beta/schema_service/rest/operations.rb +42 -0
- data/lib/google/cloud/discovery_engine/v1beta/search_service/client.rb +57 -12
- data/lib/google/cloud/discovery_engine/v1beta/search_service/rest/client.rb +57 -12
- data/lib/google/cloud/discovery_engine/v1beta/user_event_service/client.rb +16 -2
- data/lib/google/cloud/discovery_engine/v1beta/user_event_service/rest/client.rb +16 -2
- data/lib/google/cloud/discovery_engine/v1beta/user_event_service/rest/operations.rb +42 -0
- data/lib/google/cloud/discovery_engine/v1beta/version.rb +1 -1
- data/lib/google/cloud/discovery_engine/v1beta.rb +2 -1
- data/lib/google/cloud/discoveryengine/v1beta/common_pb.rb +2 -1
- data/lib/google/cloud/discoveryengine/v1beta/completion_service_pb.rb +1 -1
- data/lib/google/cloud/discoveryengine/v1beta/conversation_pb.rb +55 -0
- data/lib/google/cloud/discoveryengine/v1beta/conversational_search_service_pb.rb +61 -0
- data/lib/google/cloud/discoveryengine/v1beta/conversational_search_service_services_pb.rb +67 -0
- data/lib/google/cloud/discoveryengine/v1beta/search_service_pb.rb +7 -1
- data/lib/google/cloud/discoveryengine/v1beta/user_event_pb.rb +1 -1
- data/lib/google/cloud/discoveryengine/v1beta/user_event_service_services_pb.rb +1 -1
- data/proto_docs/google/api/field_behavior.rb +14 -0
- data/proto_docs/google/cloud/discoveryengine/v1beta/common.rb +10 -2
- data/proto_docs/google/cloud/discoveryengine/v1beta/completion_service.rb +13 -2
- data/proto_docs/google/cloud/discoveryengine/v1beta/conversation.rb +138 -0
- data/proto_docs/google/cloud/discoveryengine/v1beta/conversational_search_service.rb +209 -0
- data/proto_docs/google/cloud/discoveryengine/v1beta/document.rb +2 -4
- data/proto_docs/google/cloud/discoveryengine/v1beta/document_service.rb +2 -1
- data/proto_docs/google/cloud/discoveryengine/v1beta/import_config.rb +17 -17
- data/proto_docs/google/cloud/discoveryengine/v1beta/search_service.rb +295 -61
- data/proto_docs/google/cloud/discoveryengine/v1beta/user_event.rb +41 -29
- data/proto_docs/google/cloud/discoveryengine/v1beta/user_event_service.rb +1 -1
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- metadata +36 -3
@@ -40,11 +40,14 @@ module Google
|
|
40
40
|
# @!attribute [rw] query
|
41
41
|
# @return [::String]
|
42
42
|
# Raw search query.
|
43
|
+
# @!attribute [rw] image_query
|
44
|
+
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::ImageQuery]
|
45
|
+
# Raw image query.
|
43
46
|
# @!attribute [rw] page_size
|
44
47
|
# @return [::Integer]
|
45
48
|
# Maximum number of {::Google::Cloud::DiscoveryEngine::V1beta::Document Document}s
|
46
49
|
# to return. If unspecified, defaults to a reasonable value. The maximum
|
47
|
-
# allowed value is 100. Values above 100
|
50
|
+
# allowed value is 100. Values above 100 are coerced to 100.
|
48
51
|
#
|
49
52
|
# If this field is negative, an `INVALID_ARGUMENT` is returned.
|
50
53
|
# @!attribute [rw] page_token
|
@@ -76,17 +79,18 @@ module Google
|
|
76
79
|
# If this field is unrecognizable, an `INVALID_ARGUMENT` is returned.
|
77
80
|
# @!attribute [rw] order_by
|
78
81
|
# @return [::String]
|
79
|
-
# The order in which documents are returned.
|
82
|
+
# The order in which documents are returned. Documents can be ordered by
|
80
83
|
# a field in an {::Google::Cloud::DiscoveryEngine::V1beta::Document Document}
|
81
|
-
# object. Leave it unset if ordered by relevance.
|
84
|
+
# object. Leave it unset if ordered by relevance. `order_by` expression is
|
82
85
|
# case-sensitive.
|
83
86
|
#
|
84
|
-
# If this field is unrecognizable, an
|
87
|
+
# If this field is unrecognizable, an `INVALID_ARGUMENT` is returned.
|
85
88
|
# @!attribute [rw] user_info
|
86
89
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::UserInfo]
|
87
90
|
# Information about the end user.
|
88
|
-
# Highly recommended for analytics.
|
89
|
-
#
|
91
|
+
# Highly recommended for analytics.
|
92
|
+
# {::Google::Cloud::DiscoveryEngine::V1beta::UserInfo#user_agent UserInfo.user_agent}
|
93
|
+
# is used to deduce `device_type` for analytics.
|
90
94
|
# @!attribute [rw] facet_specs
|
91
95
|
# @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::FacetSpec>]
|
92
96
|
# Facet specifications for faceted search. If empty, no facets are returned.
|
@@ -110,11 +114,11 @@ module Google
|
|
110
114
|
# @!attribute [rw] query_expansion_spec
|
111
115
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::QueryExpansionSpec]
|
112
116
|
# The query expansion specification that specifies the conditions under which
|
113
|
-
# query expansion
|
117
|
+
# query expansion occurs.
|
114
118
|
# @!attribute [rw] spell_correction_spec
|
115
119
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::SpellCorrectionSpec]
|
116
120
|
# The spell correction specification that specifies the mode under
|
117
|
-
# which spell correction
|
121
|
+
# which spell correction takes effect.
|
118
122
|
# @!attribute [rw] user_pseudo_id
|
119
123
|
# @return [::String]
|
120
124
|
# A unique identifier for tracking visitors. For example, this could be
|
@@ -133,12 +137,42 @@ module Google
|
|
133
137
|
# characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
|
134
138
|
# @!attribute [rw] content_search_spec
|
135
139
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::ContentSearchSpec]
|
136
|
-
#
|
137
|
-
#
|
140
|
+
# A specification for configuring the behavior of content search.
|
141
|
+
# @!attribute [rw] embedding_spec
|
142
|
+
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::EmbeddingSpec]
|
143
|
+
# Uses the provided embedding to do additional semantic document retrieval.
|
144
|
+
# The retrieval is based on the dot product of
|
145
|
+
# [SearchRequest.embedding_spec.embedding_vectors.vector][] and the document
|
146
|
+
# embedding that is provided in
|
147
|
+
# [SearchRequest.embedding_spec.embedding_vectors.field_path][].
|
148
|
+
#
|
149
|
+
# If [SearchRequest.embedding_spec.embedding_vectors.field_path][] is not
|
150
|
+
# provided, it will use [ServingConfig.embedding_config.field_paths][].
|
151
|
+
# @!attribute [rw] ranking_expression
|
152
|
+
# @return [::String]
|
153
|
+
# The ranking expression controls the customized ranking on retrieval
|
154
|
+
# documents. This overrides [ServingConfig.ranking_expression][].
|
155
|
+
# The ranking expression is a single function or multiple functions that are
|
156
|
+
# joint by "+".
|
157
|
+
# * ranking_expression = function, { " + ", function };
|
158
|
+
# Supported functions:
|
159
|
+
# * double * relevance_score
|
160
|
+
# * double * dotProduct(embedding_field_path)
|
161
|
+
# Function variables:
|
162
|
+
# `relevance_score`: pre-defined keywords, used for measure relevance
|
163
|
+
# between query and document.
|
164
|
+
# `embedding_field_path`: the document embedding field
|
165
|
+
# used with query embedding vector.
|
166
|
+
# `dotProduct`: embedding function between embedding_field_path and query
|
167
|
+
# embedding vector.
|
168
|
+
#
|
169
|
+
# Example ranking expression:
|
170
|
+
# If document has an embedding field doc_embedding, the ranking expression
|
171
|
+
# could be `0.5 * relevance_score + 0.3 * dotProduct(doc_embedding)`.
|
138
172
|
# @!attribute [rw] safe_search
|
139
173
|
# @return [::Boolean]
|
140
174
|
# Whether to turn on safe search. This is only supported for
|
141
|
-
#
|
175
|
+
# website search.
|
142
176
|
# @!attribute [rw] user_labels
|
143
177
|
# @return [::Google::Protobuf::Map{::String => ::String}]
|
144
178
|
# The user labels applied to a resource must meet the following requirements:
|
@@ -162,6 +196,16 @@ module Google
|
|
162
196
|
include ::Google::Protobuf::MessageExts
|
163
197
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
164
198
|
|
199
|
+
# Specifies the image query input.
|
200
|
+
# @!attribute [rw] image_bytes
|
201
|
+
# @return [::String]
|
202
|
+
# Base64 encoded image bytes. Supported image formats: JPEG, PNG, and
|
203
|
+
# BMP.
|
204
|
+
class ImageQuery
|
205
|
+
include ::Google::Protobuf::MessageExts
|
206
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
207
|
+
end
|
208
|
+
|
165
209
|
# A facet specification to perform faceted search.
|
166
210
|
# @!attribute [rw] facet_key
|
167
211
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::FacetSpec::FacetKey]
|
@@ -170,7 +214,7 @@ module Google
|
|
170
214
|
# @return [::Integer]
|
171
215
|
# Maximum of facet values that should be returned for this facet. If
|
172
216
|
# unspecified, defaults to 20. The maximum allowed value is 300. Values
|
173
|
-
# above 300
|
217
|
+
# above 300 are coerced to 300.
|
174
218
|
#
|
175
219
|
# If this field is negative, an `INVALID_ARGUMENT` is returned.
|
176
220
|
# @!attribute [rw] excluded_filter_keys
|
@@ -207,15 +251,15 @@ module Google
|
|
207
251
|
# @return [::Boolean]
|
208
252
|
# Enables dynamic position for this facet. If set to true, the position of
|
209
253
|
# this facet among all facets in the response is determined automatically.
|
210
|
-
#
|
211
|
-
#
|
212
|
-
# response
|
254
|
+
# If dynamic facets are enabled, it is ordered together.
|
255
|
+
# If set to false, the position of this facet in the
|
256
|
+
# response is the same as in the request, and it is ranked before
|
213
257
|
# the facets with dynamic position enable and all dynamic facets.
|
214
258
|
#
|
215
259
|
# For example, you may always want to have rating facet returned in
|
216
260
|
# the response, but it's not necessarily to always display the rating facet
|
217
261
|
# at the top. In that case, you can set enable_dynamic_position to true so
|
218
|
-
# that the position of rating facet in response
|
262
|
+
# that the position of rating facet in response is determined
|
219
263
|
# automatically.
|
220
264
|
#
|
221
265
|
# Another example, assuming you have the following facets in the request:
|
@@ -226,13 +270,13 @@ module Google
|
|
226
270
|
#
|
227
271
|
# * "brands", enable_dynamic_position = false
|
228
272
|
#
|
229
|
-
# And also you have a dynamic facets
|
230
|
-
#
|
273
|
+
# And also you have a dynamic facets enabled, which generates a facet
|
274
|
+
# `gender`. Then the final order of the facets in the response can be
|
231
275
|
# ("price", "brands", "rating", "gender") or ("price", "brands", "gender",
|
232
276
|
# "rating") depends on how API orders "gender" and "rating" facets.
|
233
|
-
# However, notice that "price" and "brands"
|
234
|
-
# ranked at
|
235
|
-
# false.
|
277
|
+
# However, notice that "price" and "brands" are always
|
278
|
+
# ranked at first and second position because their enable_dynamic_position
|
279
|
+
# is false.
|
236
280
|
class FacetSpec
|
237
281
|
include ::Google::Protobuf::MessageExts
|
238
282
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -245,7 +289,7 @@ module Google
|
|
245
289
|
# which the facet values are computed. Facet key is case-sensitive.
|
246
290
|
# @!attribute [rw] intervals
|
247
291
|
# @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Interval>]
|
248
|
-
# Set only if values should be
|
292
|
+
# Set only if values should be bucketed into intervals. Must be set
|
249
293
|
# for facets with numerical values. Must not be set for facet with text
|
250
294
|
# values. Maximum number of intervals is 30.
|
251
295
|
# @!attribute [rw] restricted_values
|
@@ -253,22 +297,22 @@ module Google
|
|
253
297
|
# Only get facet for the given restricted values. Only supported on
|
254
298
|
# textual fields. For example, suppose "category" has three values
|
255
299
|
# "Action > 2022", "Action > 2021" and "Sci-Fi > 2022". If set
|
256
|
-
# "restricted_values" to "Action > 2022", the "category" facet
|
257
|
-
#
|
300
|
+
# "restricted_values" to "Action > 2022", the "category" facet only
|
301
|
+
# contains "Action > 2022". Only supported on textual fields. Maximum
|
258
302
|
# is 10.
|
259
303
|
# @!attribute [rw] prefixes
|
260
304
|
# @return [::Array<::String>]
|
261
305
|
# Only get facet values that start with the given string prefix. For
|
262
306
|
# example, suppose "category" has three values "Action > 2022",
|
263
307
|
# "Action > 2021" and "Sci-Fi > 2022". If set "prefixes" to "Action", the
|
264
|
-
# "category" facet
|
308
|
+
# "category" facet only contains "Action > 2022" and "Action > 2021".
|
265
309
|
# Only supported on textual fields. Maximum is 10.
|
266
310
|
# @!attribute [rw] contains
|
267
311
|
# @return [::Array<::String>]
|
268
312
|
# Only get facet values that contains the given strings. For example,
|
269
313
|
# suppose "category" has three values "Action > 2022",
|
270
314
|
# "Action > 2021" and "Sci-Fi > 2022". If set "contains" to "2022", the
|
271
|
-
# "category" facet
|
315
|
+
# "category" facet only contains "Action > 2022" and "Sci-Fi > 2022".
|
272
316
|
# Only supported on textual fields. Maximum is 10.
|
273
317
|
# @!attribute [rw] case_insensitive
|
274
318
|
# @return [::Boolean]
|
@@ -355,6 +399,11 @@ module Google
|
|
355
399
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::QueryExpansionSpec::Condition]
|
356
400
|
# The condition under which query expansion should occur. Default to
|
357
401
|
# {::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::QueryExpansionSpec::Condition::DISABLED Condition.DISABLED}.
|
402
|
+
# @!attribute [rw] pin_unexpanded_results
|
403
|
+
# @return [::Boolean]
|
404
|
+
# Whether to pin unexpanded results. If this field is set to true,
|
405
|
+
# unexpanded products are always at the top of the search results, followed
|
406
|
+
# by the expanded results.
|
358
407
|
class QueryExpansionSpec
|
359
408
|
include ::Google::Protobuf::MessageExts
|
360
409
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -405,15 +454,14 @@ module Google
|
|
405
454
|
end
|
406
455
|
end
|
407
456
|
|
408
|
-
#
|
409
|
-
# search.
|
457
|
+
# A specification for configuring the behavior of content search.
|
410
458
|
# @!attribute [rw] snippet_spec
|
411
459
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::ContentSearchSpec::SnippetSpec]
|
412
|
-
# If
|
413
|
-
# search
|
460
|
+
# If `snippetSpec` is not specified, snippets are not included in the
|
461
|
+
# search response.
|
414
462
|
# @!attribute [rw] summary_spec
|
415
463
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::ContentSearchSpec::SummarySpec]
|
416
|
-
# If
|
464
|
+
# If `summarySpec` is not specified, summaries are not included in the
|
417
465
|
# search response.
|
418
466
|
# @!attribute [rw] extractive_content_spec
|
419
467
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::ContentSearchSpec::ExtractiveContentSpec]
|
@@ -423,74 +471,166 @@ module Google
|
|
423
471
|
include ::Google::Protobuf::MessageExts
|
424
472
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
425
473
|
|
426
|
-
#
|
474
|
+
# A specification for configuring snippets in a search response.
|
427
475
|
# @!attribute [rw] max_snippet_count
|
428
476
|
# @return [::Integer]
|
429
|
-
#
|
430
|
-
#
|
431
|
-
#
|
432
|
-
# UI rendering.
|
433
|
-
#
|
434
|
-
# If the matching snippets is less than the max_snippet_count, return all
|
435
|
-
# of the snippets; otherwise, return the max_snippet_count.
|
436
|
-
#
|
437
|
-
# At most 5 snippets will be returned for each SearchResult.
|
477
|
+
# [DEPRECATED] This field is deprecated. To control snippet return, use
|
478
|
+
# `return_snippet` field. For backwards compatibility, we will return
|
479
|
+
# snippet if max_snippet_count > 0.
|
438
480
|
# @!attribute [rw] reference_only
|
439
481
|
# @return [::Boolean]
|
440
|
-
#
|
482
|
+
# [DEPRECATED] This field is deprecated and will have no affect on the
|
483
|
+
# snippet.
|
484
|
+
# @!attribute [rw] return_snippet
|
485
|
+
# @return [::Boolean]
|
486
|
+
# If `true`, then return snippet. If no snippet can be generated, we
|
487
|
+
# return "No snippet is available for this page." A `snippet_status` with
|
488
|
+
# `SUCCESS` or `NO_SNIPPET_AVAILABLE` will also be returned.
|
441
489
|
class SnippetSpec
|
442
490
|
include ::Google::Protobuf::MessageExts
|
443
491
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
444
492
|
end
|
445
493
|
|
446
|
-
#
|
494
|
+
# A specification for configuring a summary returned in a search
|
495
|
+
# response.
|
447
496
|
# @!attribute [rw] summary_result_count
|
448
497
|
# @return [::Integer]
|
449
|
-
# The number of top results the summary
|
450
|
-
#
|
451
|
-
#
|
452
|
-
#
|
498
|
+
# The number of top results to generate the summary from. If the number
|
499
|
+
# of results returned is less than `summaryResultCount`, the summary is
|
500
|
+
# generated from all of the results.
|
501
|
+
#
|
502
|
+
# At most five results can be used to generate a summary.
|
503
|
+
# @!attribute [rw] include_citations
|
504
|
+
# @return [::Boolean]
|
505
|
+
# Specifies whether to include citations in the summary. The default
|
506
|
+
# value is `false`.
|
507
|
+
#
|
508
|
+
# When this field is set to `true`, summaries include in-line citation
|
509
|
+
# numbers.
|
510
|
+
#
|
511
|
+
# Example summary including citations:
|
512
|
+
#
|
513
|
+
# BigQuery is Google Cloud's fully managed and completely serverless
|
514
|
+
# enterprise data warehouse [1]. BigQuery supports all data types, works
|
515
|
+
# across clouds, and has built-in machine learning and business
|
516
|
+
# intelligence, all within a unified platform [2, 3].
|
517
|
+
#
|
518
|
+
# The citation numbers refer to the returned search results and are
|
519
|
+
# 1-indexed. For example, [1] means that the sentence is attributed to
|
520
|
+
# the first search result. [2, 3] means that the sentence is attributed
|
521
|
+
# to both the second and third search results.
|
522
|
+
# @!attribute [rw] ignore_adversarial_query
|
523
|
+
# @return [::Boolean]
|
524
|
+
# Specifies whether to filter out adversarial queries. The default value
|
525
|
+
# is `false`.
|
526
|
+
#
|
527
|
+
# Google employs search-query classification to detect adversarial
|
528
|
+
# queries. No summary is returned if the search query is classified as an
|
529
|
+
# adversarial query. For example, a user might ask a question regarding
|
530
|
+
# negative comments about the company or submit a query designed to
|
531
|
+
# generate unsafe, policy-violating output. If this field is set to
|
532
|
+
# `true`, we skip generating summaries for adversarial queries and return
|
533
|
+
# fallback messages instead.
|
534
|
+
# @!attribute [rw] ignore_non_summary_seeking_query
|
535
|
+
# @return [::Boolean]
|
536
|
+
# Specifies whether to filter out queries that are not summary-seeking.
|
537
|
+
# The default value is `false`.
|
453
538
|
#
|
454
|
-
#
|
539
|
+
# Google employs search-query classification to detect summary-seeking
|
540
|
+
# queries. No summary is returned if the search query is classified as a
|
541
|
+
# non-summary seeking query. For example, `why is the sky blue` and `Who
|
542
|
+
# is the best soccer player in the world?` are summary-seeking queries,
|
543
|
+
# but `SFO airport` and `world cup 2026` are not. They are most likely
|
544
|
+
# navigational queries. If this field is set to `true`, we skip
|
545
|
+
# generating summaries for non-summary seeking queries and return
|
546
|
+
# fallback messages instead.
|
547
|
+
# @!attribute [rw] language_code
|
548
|
+
# @return [::String]
|
549
|
+
# Language code for Summary. Use language tags defined by
|
550
|
+
# [BCP47][https://www.rfc-editor.org/rfc/bcp/bcp47.txt].
|
455
551
|
class SummarySpec
|
456
552
|
include ::Google::Protobuf::MessageExts
|
457
553
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
458
554
|
end
|
459
555
|
|
460
|
-
#
|
556
|
+
# A specification for configuring the extractive content in a search
|
557
|
+
# response.
|
461
558
|
# @!attribute [rw] max_extractive_answer_count
|
462
559
|
# @return [::Integer]
|
463
|
-
# The
|
560
|
+
# The maximum number of extractive answers returned in each search
|
561
|
+
# result.
|
464
562
|
#
|
465
563
|
# An extractive answer is a verbatim answer extracted from the original
|
466
|
-
# document, which provides precise and contextually relevant answer to
|
564
|
+
# document, which provides a precise and contextually relevant answer to
|
467
565
|
# the search query.
|
468
566
|
#
|
469
567
|
# If the number of matching answers is less than the
|
470
|
-
#
|
471
|
-
# the
|
568
|
+
# `max_extractive_answer_count`, return all of the answers. Otherwise,
|
569
|
+
# return the `max_extractive_answer_count`.
|
472
570
|
#
|
473
|
-
# At most
|
571
|
+
# At most one answer is returned for each
|
572
|
+
# {::Google::Cloud::DiscoveryEngine::V1beta::SearchResponse::SearchResult SearchResult}.
|
474
573
|
# @!attribute [rw] max_extractive_segment_count
|
475
574
|
# @return [::Integer]
|
476
575
|
# The max number of extractive segments returned in each search result.
|
576
|
+
# Only applied if the
|
577
|
+
# [DataStore][google.cloud.discoveryengine.v1beta.DataStore] is set to
|
578
|
+
# [DataStore.ContentConfig.CONTENT_REQUIRED][google.cloud.discoveryengine.v1beta.DataStore.ContentConfig.CONTENT_REQUIRED]
|
579
|
+
# or
|
580
|
+
# [DataStore.solution_types][google.cloud.discoveryengine.v1beta.DataStore.solution_types]
|
581
|
+
# is
|
582
|
+
# [SOLUTION_TYPE_CHAT][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_CHAT].
|
477
583
|
#
|
478
584
|
# An extractive segment is a text segment extracted from the original
|
479
|
-
# document
|
480
|
-
# verbose than an
|
585
|
+
# document that is relevant to the search query, and, in general, more
|
586
|
+
# verbose than an extractive answer. The segment could then be used as
|
481
587
|
# input for LLMs to generate summaries and answers.
|
482
588
|
#
|
483
|
-
# If the number of matching segments is less than
|
484
|
-
# max_extractive_segment_count
|
485
|
-
# return the max_extractive_segment_count
|
486
|
-
#
|
487
|
-
#
|
589
|
+
# If the number of matching segments is less than
|
590
|
+
# `max_extractive_segment_count`, return all of the segments. Otherwise,
|
591
|
+
# return the `max_extractive_segment_count`.
|
592
|
+
# @!attribute [rw] return_extractive_segment_score
|
593
|
+
# @return [::Boolean]
|
594
|
+
# Specifies whether to return the confidence score from the extractive
|
595
|
+
# segments in each search result. The default value is `false`.
|
596
|
+
# @!attribute [rw] num_previous_segments
|
597
|
+
# @return [::Integer]
|
598
|
+
# Specifies whether to also include the adjacent from each selected
|
599
|
+
# segments.
|
600
|
+
# Return at most `num_previous_segments` segments before each selected
|
601
|
+
# segments.
|
602
|
+
# @!attribute [rw] num_next_segments
|
603
|
+
# @return [::Integer]
|
604
|
+
# Return at most `num_next_segments` segments after each selected
|
605
|
+
# segments.
|
488
606
|
class ExtractiveContentSpec
|
489
607
|
include ::Google::Protobuf::MessageExts
|
490
608
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
491
609
|
end
|
492
610
|
end
|
493
611
|
|
612
|
+
# The specification that uses customized query embedding vector to do
|
613
|
+
# semantic document retrieval.
|
614
|
+
# @!attribute [rw] embedding_vectors
|
615
|
+
# @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::EmbeddingSpec::EmbeddingVector>]
|
616
|
+
# The embedding vector used for retrieval. Limit to 1.
|
617
|
+
class EmbeddingSpec
|
618
|
+
include ::Google::Protobuf::MessageExts
|
619
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
620
|
+
|
621
|
+
# Embedding vector.
|
622
|
+
# @!attribute [rw] field_path
|
623
|
+
# @return [::String]
|
624
|
+
# Embedding field path in schema.
|
625
|
+
# @!attribute [rw] vector
|
626
|
+
# @return [::Array<::Float>]
|
627
|
+
# Query embedding vector.
|
628
|
+
class EmbeddingVector
|
629
|
+
include ::Google::Protobuf::MessageExts
|
630
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
631
|
+
end
|
632
|
+
end
|
633
|
+
|
494
634
|
# @!attribute [rw] key
|
495
635
|
# @return [::String]
|
496
636
|
# @!attribute [rw] value
|
@@ -564,6 +704,9 @@ module Google
|
|
564
704
|
# @!attribute [rw] applied_controls
|
565
705
|
# @return [::Array<::String>]
|
566
706
|
# Controls applied as part of the Control service.
|
707
|
+
# @!attribute [rw] query_expansion_info
|
708
|
+
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchResponse::QueryExpansionInfo]
|
709
|
+
# Query expansion information for the returned results.
|
567
710
|
class SearchResponse
|
568
711
|
include ::Google::Protobuf::MessageExts
|
569
712
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -577,9 +720,21 @@ module Google
|
|
577
720
|
# @return [::Google::Cloud::DiscoveryEngine::V1beta::Document]
|
578
721
|
# The document data snippet in the search response. Only fields that are
|
579
722
|
# marked as retrievable are populated.
|
723
|
+
# @!attribute [rw] model_scores
|
724
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::DiscoveryEngine::V1beta::DoubleList}]
|
725
|
+
# Google provided available scores.
|
580
726
|
class SearchResult
|
581
727
|
include ::Google::Protobuf::MessageExts
|
582
728
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
729
|
+
|
730
|
+
# @!attribute [rw] key
|
731
|
+
# @return [::String]
|
732
|
+
# @!attribute [rw] value
|
733
|
+
# @return [::Google::Cloud::DiscoveryEngine::V1beta::DoubleList]
|
734
|
+
class ModelScoresEntry
|
735
|
+
include ::Google::Protobuf::MessageExts
|
736
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
737
|
+
end
|
583
738
|
end
|
584
739
|
|
585
740
|
# A facet result.
|
@@ -620,6 +775,9 @@ module Google
|
|
620
775
|
# @!attribute [rw] refinement_attributes
|
621
776
|
# @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::SearchResponse::GuidedSearchResult::RefinementAttribute>]
|
622
777
|
# A list of ranked refinement attributes.
|
778
|
+
# @!attribute [rw] follow_up_questions
|
779
|
+
# @return [::Array<::String>]
|
780
|
+
# Suggested follow-up questions.
|
623
781
|
class GuidedSearchResult
|
624
782
|
include ::Google::Protobuf::MessageExts
|
625
783
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -641,9 +799,85 @@ module Google
|
|
641
799
|
# @!attribute [rw] summary_text
|
642
800
|
# @return [::String]
|
643
801
|
# The summary content.
|
802
|
+
# @!attribute [rw] summary_skipped_reasons
|
803
|
+
# @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::SearchResponse::Summary::SummarySkippedReason>]
|
804
|
+
# Additional summary-skipped reasons. This provides the reason for ignored
|
805
|
+
# cases. If nothing is skipped, this field is not set.
|
806
|
+
# @!attribute [rw] safety_attributes
|
807
|
+
# @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchResponse::Summary::SafetyAttributes]
|
808
|
+
# A collection of Safety Attribute categories and their associated
|
809
|
+
# confidence scores.
|
644
810
|
class Summary
|
645
811
|
include ::Google::Protobuf::MessageExts
|
646
812
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
813
|
+
|
814
|
+
# Safety Attribute categories and their associated confidence scores.
|
815
|
+
# @!attribute [rw] categories
|
816
|
+
# @return [::Array<::String>]
|
817
|
+
# The display names of Safety Attribute categories associated with the
|
818
|
+
# generated content. Order matches the Scores.
|
819
|
+
# @!attribute [rw] scores
|
820
|
+
# @return [::Array<::Float>]
|
821
|
+
# The confidence scores of the each category, higher
|
822
|
+
# value means higher confidence. Order matches the Categories.
|
823
|
+
class SafetyAttributes
|
824
|
+
include ::Google::Protobuf::MessageExts
|
825
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
826
|
+
end
|
827
|
+
|
828
|
+
# An Enum for summary-skipped reasons.
|
829
|
+
module SummarySkippedReason
|
830
|
+
# Default value. The summary skipped reason is not specified.
|
831
|
+
SUMMARY_SKIPPED_REASON_UNSPECIFIED = 0
|
832
|
+
|
833
|
+
# The adversarial query ignored case.
|
834
|
+
#
|
835
|
+
# Only populated when
|
836
|
+
# {::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::ContentSearchSpec::SummarySpec#ignore_adversarial_query SummarySpec.ignore_adversarial_query}
|
837
|
+
# is set to `true`.
|
838
|
+
ADVERSARIAL_QUERY_IGNORED = 1
|
839
|
+
|
840
|
+
# The non-summary seeking query ignored case.
|
841
|
+
#
|
842
|
+
# Only populated when
|
843
|
+
# {::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::ContentSearchSpec::SummarySpec#ignore_non_summary_seeking_query SummarySpec.ignore_non_summary_seeking_query}
|
844
|
+
# is set to `true`.
|
845
|
+
NON_SUMMARY_SEEKING_QUERY_IGNORED = 2
|
846
|
+
|
847
|
+
# The out-of-domain query ignored case.
|
848
|
+
#
|
849
|
+
# Google skips the summary if there are no high-relevance search results.
|
850
|
+
# For example, the data store contains facts about company A but the
|
851
|
+
# user query is asking questions about company B.
|
852
|
+
OUT_OF_DOMAIN_QUERY_IGNORED = 3
|
853
|
+
|
854
|
+
# The potential policy violation case.
|
855
|
+
#
|
856
|
+
# Google skips the summary if there is a potential policy violation
|
857
|
+
# detected. This includes content that may be violent or toxic.
|
858
|
+
POTENTIAL_POLICY_VIOLATION = 4
|
859
|
+
|
860
|
+
# The LLM addon not enabled case.
|
861
|
+
#
|
862
|
+
# Google skips the summary if the LLM addon is not enabled.
|
863
|
+
LLM_ADDON_NOT_ENABLED = 5
|
864
|
+
end
|
865
|
+
end
|
866
|
+
|
867
|
+
# Information describing query expansion including whether expansion has
|
868
|
+
# occurred.
|
869
|
+
# @!attribute [rw] expanded_query
|
870
|
+
# @return [::Boolean]
|
871
|
+
# Bool describing whether query expansion has occurred.
|
872
|
+
# @!attribute [rw] pinned_result_count
|
873
|
+
# @return [::Integer]
|
874
|
+
# Number of pinned results. This field will only be set when expansion
|
875
|
+
# happens and
|
876
|
+
# {::Google::Cloud::DiscoveryEngine::V1beta::SearchRequest::QueryExpansionSpec#pin_unexpanded_results SearchRequest.QueryExpansionSpec.pin_unexpanded_results}
|
877
|
+
# is set to true.
|
878
|
+
class QueryExpansionInfo
|
879
|
+
include ::Google::Protobuf::MessageExts
|
880
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
647
881
|
end
|
648
882
|
end
|
649
883
|
end
|