@google-cloud/discoveryengine 1.3.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +51 -0
  3. package/build/protos/google/cloud/discoveryengine/v1/common.proto +54 -3
  4. package/build/protos/google/cloud/discoveryengine/v1/completion.proto +52 -0
  5. package/build/protos/google/cloud/discoveryengine/v1/completion_service.proto +51 -4
  6. package/build/protos/google/cloud/discoveryengine/v1/conversation.proto +3 -0
  7. package/build/protos/google/cloud/discoveryengine/v1/conversational_search_service.proto +40 -1
  8. package/build/protos/google/cloud/discoveryengine/v1/data_store.proto +98 -0
  9. package/build/protos/google/cloud/discoveryengine/v1/data_store_service.proto +304 -0
  10. package/build/protos/google/cloud/discoveryengine/v1/document.proto +1 -1
  11. package/build/protos/google/cloud/discoveryengine/v1/engine.proto +215 -0
  12. package/build/protos/google/cloud/discoveryengine/v1/engine_service.proto +242 -0
  13. package/build/protos/google/cloud/discoveryengine/v1/import_config.proto +64 -0
  14. package/build/protos/google/cloud/discoveryengine/v1/purge_config.proto +38 -0
  15. package/build/protos/google/cloud/discoveryengine/v1/search_service.proto +137 -4
  16. package/build/protos/google/cloud/discoveryengine/v1/site_search_engine.proto +170 -0
  17. package/build/protos/google/cloud/discoveryengine/v1/site_search_engine_service.proto +691 -0
  18. package/build/protos/google/cloud/discoveryengine/v1/user_event.proto +3 -3
  19. package/build/protos/google/cloud/discoveryengine/v1beta/common.proto +59 -8
  20. package/build/protos/google/cloud/discoveryengine/v1beta/completion.proto +52 -0
  21. package/build/protos/google/cloud/discoveryengine/v1beta/completion_service.proto +51 -4
  22. package/build/protos/google/cloud/discoveryengine/v1beta/conversation.proto +3 -0
  23. package/build/protos/google/cloud/discoveryengine/v1beta/conversational_search_service.proto +40 -1
  24. package/build/protos/google/cloud/discoveryengine/v1beta/data_store.proto +98 -0
  25. package/build/protos/google/cloud/discoveryengine/v1beta/data_store_service.proto +306 -0
  26. package/build/protos/google/cloud/discoveryengine/v1beta/document.proto +1 -1
  27. package/build/protos/google/cloud/discoveryengine/v1beta/engine.proto +220 -0
  28. package/build/protos/google/cloud/discoveryengine/v1beta/engine_service.proto +244 -0
  29. package/build/protos/google/cloud/discoveryengine/v1beta/import_config.proto +64 -0
  30. package/build/protos/google/cloud/discoveryengine/v1beta/purge_config.proto +38 -0
  31. package/build/protos/google/cloud/discoveryengine/v1beta/recommendation_service.proto +26 -3
  32. package/build/protos/google/cloud/discoveryengine/v1beta/search_service.proto +150 -11
  33. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config.proto +264 -0
  34. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config_service.proto +147 -0
  35. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine.proto +170 -0
  36. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine_service.proto +695 -0
  37. package/build/protos/google/cloud/discoveryengine/v1beta/user_event.proto +4 -3
  38. package/build/protos/protos.d.ts +41157 -23655
  39. package/build/protos/protos.js +103188 -62466
  40. package/build/protos/protos.json +10400 -6075
  41. package/build/src/index.d.ts +10 -1
  42. package/build/src/index.js +10 -1
  43. package/build/src/v1/completion_service_client.d.ts +489 -7
  44. package/build/src/v1/completion_service_client.js +715 -11
  45. package/build/src/v1/completion_service_client_config.json +10 -0
  46. package/build/src/v1/conversational_search_service_client.d.ts +341 -3
  47. package/build/src/v1/conversational_search_service_client.js +466 -9
  48. package/build/src/v1/data_store_service_client.d.ts +1286 -0
  49. package/build/src/v1/data_store_service_client.js +1768 -0
  50. package/build/src/v1/data_store_service_client_config.json +46 -0
  51. package/build/src/v1/document_service_client.d.ts +347 -2
  52. package/build/src/v1/document_service_client.js +506 -9
  53. package/build/src/v1/engine_service_client.d.ts +1211 -0
  54. package/build/src/v1/engine_service_client.js +1731 -0
  55. package/build/src/v1/engine_service_client_config.json +46 -0
  56. package/build/src/v1/index.d.ts +3 -0
  57. package/build/src/v1/index.js +7 -1
  58. package/build/src/v1/schema_service_client.d.ts +272 -2
  59. package/build/src/v1/schema_service_client.js +402 -9
  60. package/build/src/v1/search_service_client.d.ts +515 -11
  61. package/build/src/v1/search_service_client.js +648 -15
  62. package/build/src/v1/site_search_engine_service_client.d.ts +1564 -0
  63. package/build/src/v1/site_search_engine_service_client.js +2075 -0
  64. package/build/src/v1/site_search_engine_service_client_config.json +74 -0
  65. package/build/src/v1/user_event_service_client.d.ts +272 -2
  66. package/build/src/v1/user_event_service_client.js +402 -9
  67. package/build/src/v1alpha/completion_service_client.d.ts +11 -2
  68. package/build/src/v1alpha/completion_service_client.js +37 -10
  69. package/build/src/v1alpha/conversational_search_service_client.d.ts +11 -2
  70. package/build/src/v1alpha/conversational_search_service_client.js +37 -10
  71. package/build/src/v1alpha/data_store_service_client.d.ts +11 -2
  72. package/build/src/v1alpha/data_store_service_client.js +37 -10
  73. package/build/src/v1alpha/document_service_client.d.ts +11 -2
  74. package/build/src/v1alpha/document_service_client.js +37 -10
  75. package/build/src/v1alpha/engine_service_client.d.ts +11 -2
  76. package/build/src/v1alpha/engine_service_client.js +37 -10
  77. package/build/src/v1alpha/index.js +1 -1
  78. package/build/src/v1alpha/recommendation_service_client.d.ts +11 -2
  79. package/build/src/v1alpha/recommendation_service_client.js +37 -10
  80. package/build/src/v1alpha/schema_service_client.d.ts +11 -2
  81. package/build/src/v1alpha/schema_service_client.js +37 -10
  82. package/build/src/v1alpha/search_service_client.d.ts +11 -2
  83. package/build/src/v1alpha/search_service_client.js +37 -10
  84. package/build/src/v1alpha/search_tuning_service_client.d.ts +11 -2
  85. package/build/src/v1alpha/search_tuning_service_client.js +37 -10
  86. package/build/src/v1alpha/site_search_engine_service_client.d.ts +11 -2
  87. package/build/src/v1alpha/site_search_engine_service_client.js +37 -10
  88. package/build/src/v1alpha/user_event_service_client.d.ts +11 -2
  89. package/build/src/v1alpha/user_event_service_client.js +37 -10
  90. package/build/src/v1beta/completion_service_client.d.ts +633 -7
  91. package/build/src/v1beta/completion_service_client.js +911 -11
  92. package/build/src/v1beta/completion_service_client_config.json +10 -0
  93. package/build/src/v1beta/conversational_search_service_client.d.ts +341 -3
  94. package/build/src/v1beta/conversational_search_service_client.js +466 -9
  95. package/build/src/v1beta/data_store_service_client.d.ts +1433 -0
  96. package/build/src/v1beta/data_store_service_client.js +1966 -0
  97. package/build/src/v1beta/data_store_service_client_config.json +46 -0
  98. package/build/src/v1beta/document_service_client.d.ts +491 -2
  99. package/build/src/v1beta/document_service_client.js +706 -11
  100. package/build/src/v1beta/engine_service_client.d.ts +1357 -0
  101. package/build/src/v1beta/engine_service_client.js +1928 -0
  102. package/build/src/v1beta/engine_service_client_config.json +46 -0
  103. package/build/src/v1beta/index.d.ts +4 -0
  104. package/build/src/v1beta/index.js +9 -1
  105. package/build/src/v1beta/recommendation_service_client.d.ts +420 -5
  106. package/build/src/v1beta/recommendation_service_client.js +570 -9
  107. package/build/src/v1beta/schema_service_client.d.ts +416 -2
  108. package/build/src/v1beta/schema_service_client.js +602 -11
  109. package/build/src/v1beta/search_service_client.d.ts +539 -29
  110. package/build/src/v1beta/search_service_client.js +664 -27
  111. package/build/src/v1beta/serving_config_service_client.d.ts +1102 -0
  112. package/build/src/v1beta/serving_config_service_client.js +1563 -0
  113. package/build/src/v1beta/serving_config_service_client_config.json +38 -0
  114. package/build/src/v1beta/site_search_engine_service_client.d.ts +1712 -0
  115. package/build/src/v1beta/site_search_engine_service_client.js +2271 -0
  116. package/build/src/v1beta/site_search_engine_service_client_config.json +74 -0
  117. package/build/src/v1beta/user_event_service_client.d.ts +416 -2
  118. package/build/src/v1beta/user_event_service_client.js +602 -11
  119. package/package.json +2 -2
@@ -0,0 +1,244 @@
1
+ // Copyright 2022 Google LLC
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.cloud.discoveryengine.v1beta;
18
+
19
+ import "google/api/annotations.proto";
20
+ import "google/api/client.proto";
21
+ import "google/api/field_behavior.proto";
22
+ import "google/api/resource.proto";
23
+ import "google/cloud/discoveryengine/v1beta/engine.proto";
24
+ import "google/longrunning/operations.proto";
25
+ import "google/protobuf/empty.proto";
26
+ import "google/protobuf/field_mask.proto";
27
+ import "google/protobuf/timestamp.proto";
28
+
29
+ option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Beta";
30
+ option go_package = "cloud.google.com/go/discoveryengine/apiv1beta/discoveryenginepb;discoveryenginepb";
31
+ option java_multiple_files = true;
32
+ option java_outer_classname = "EngineServiceProto";
33
+ option java_package = "com.google.cloud.discoveryengine.v1beta";
34
+ option objc_class_prefix = "DISCOVERYENGINE";
35
+ option php_namespace = "Google\\Cloud\\DiscoveryEngine\\V1beta";
36
+ option ruby_package = "Google::Cloud::DiscoveryEngine::V1beta";
37
+
38
+ // Service for managing [Engine][google.cloud.discoveryengine.v1beta.Engine]
39
+ // configuration.
40
+ service EngineService {
41
+ option (google.api.default_host) = "discoveryengine.googleapis.com";
42
+ option (google.api.oauth_scopes) =
43
+ "https://www.googleapis.com/auth/cloud-platform";
44
+
45
+ // Creates a [Engine][google.cloud.discoveryengine.v1beta.Engine].
46
+ rpc CreateEngine(CreateEngineRequest) returns (google.longrunning.Operation) {
47
+ option (google.api.http) = {
48
+ post: "/v1beta/{parent=projects/*/locations/*/collections/*}/engines"
49
+ body: "engine"
50
+ };
51
+ option (google.api.method_signature) = "parent,engine,engine_id";
52
+ option (google.longrunning.operation_info) = {
53
+ response_type: "google.cloud.discoveryengine.v1beta.Engine"
54
+ metadata_type: "google.cloud.discoveryengine.v1beta.CreateEngineMetadata"
55
+ };
56
+ }
57
+
58
+ // Deletes a [Engine][google.cloud.discoveryengine.v1beta.Engine].
59
+ rpc DeleteEngine(DeleteEngineRequest) returns (google.longrunning.Operation) {
60
+ option (google.api.http) = {
61
+ delete: "/v1beta/{name=projects/*/locations/*/collections/*/engines/*}"
62
+ };
63
+ option (google.api.method_signature) = "name";
64
+ option (google.longrunning.operation_info) = {
65
+ response_type: "google.protobuf.Empty"
66
+ metadata_type: "google.cloud.discoveryengine.v1beta.DeleteEngineMetadata"
67
+ };
68
+ }
69
+
70
+ // Updates an [Engine][google.cloud.discoveryengine.v1beta.Engine]
71
+ rpc UpdateEngine(UpdateEngineRequest) returns (Engine) {
72
+ option (google.api.http) = {
73
+ patch: "/v1beta/{engine.name=projects/*/locations/*/collections/*/engines/*}"
74
+ body: "engine"
75
+ };
76
+ option (google.api.method_signature) = "engine,update_mask";
77
+ }
78
+
79
+ // Gets a [Engine][google.cloud.discoveryengine.v1beta.Engine].
80
+ rpc GetEngine(GetEngineRequest) returns (Engine) {
81
+ option (google.api.http) = {
82
+ get: "/v1beta/{name=projects/*/locations/*/collections/*/engines/*}"
83
+ };
84
+ option (google.api.method_signature) = "name";
85
+ }
86
+
87
+ // Lists all the [Engine][google.cloud.discoveryengine.v1beta.Engine]s
88
+ // associated with the project.
89
+ rpc ListEngines(ListEnginesRequest) returns (ListEnginesResponse) {
90
+ option (google.api.http) = {
91
+ get: "/v1beta/{parent=projects/*/locations/*/collections/*}/engines"
92
+ };
93
+ option (google.api.method_signature) = "parent";
94
+ }
95
+ }
96
+
97
+ // Request for
98
+ // [EngineService.CreateEngine][google.cloud.discoveryengine.v1beta.EngineService.CreateEngine]
99
+ // method.
100
+ message CreateEngineRequest {
101
+ // Required. The parent resource name, such as
102
+ // `projects/{project}/locations/{location}/collections/{collection}`.
103
+ string parent = 1 [
104
+ (google.api.field_behavior) = REQUIRED,
105
+ (google.api.resource_reference) = {
106
+ type: "discoveryengine.googleapis.com/Collection"
107
+ }
108
+ ];
109
+
110
+ // Required. The [Engine][google.cloud.discoveryengine.v1beta.Engine] to
111
+ // create.
112
+ Engine engine = 2 [(google.api.field_behavior) = REQUIRED];
113
+
114
+ // Required. The ID to use for the
115
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine], which will become the
116
+ // final component of the
117
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine]'s resource name.
118
+ //
119
+ // This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034)
120
+ // standard with a length limit of 63 characters. Otherwise, an
121
+ // INVALID_ARGUMENT error is returned.
122
+ string engine_id = 3 [(google.api.field_behavior) = REQUIRED];
123
+ }
124
+
125
+ // Metadata related to the progress of the
126
+ // [EngineService.CreateEngine][google.cloud.discoveryengine.v1beta.EngineService.CreateEngine]
127
+ // operation. This will be returned by the google.longrunning.Operation.metadata
128
+ // field.
129
+ message CreateEngineMetadata {
130
+ // Operation create time.
131
+ google.protobuf.Timestamp create_time = 1;
132
+
133
+ // Operation last update time. If the operation is done, this is also the
134
+ // finish time.
135
+ google.protobuf.Timestamp update_time = 2;
136
+ }
137
+
138
+ // Request message for
139
+ // [EngineService.DeleteEngine][google.cloud.discoveryengine.v1beta.EngineService.DeleteEngine]
140
+ // method.
141
+ message DeleteEngineRequest {
142
+ // Required. Full resource name of
143
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine], such as
144
+ // `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}`.
145
+ //
146
+ // If the caller does not have permission to delete the
147
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine], regardless of whether
148
+ // or not it exists, a PERMISSION_DENIED error is returned.
149
+ //
150
+ // If the [Engine][google.cloud.discoveryengine.v1beta.Engine] to delete does
151
+ // not exist, a NOT_FOUND error is returned.
152
+ string name = 1 [
153
+ (google.api.field_behavior) = REQUIRED,
154
+ (google.api.resource_reference) = {
155
+ type: "discoveryengine.googleapis.com/Engine"
156
+ }
157
+ ];
158
+ }
159
+
160
+ // Metadata related to the progress of the
161
+ // [EngineService.DeleteEngine][google.cloud.discoveryengine.v1beta.EngineService.DeleteEngine]
162
+ // operation. This will be returned by the google.longrunning.Operation.metadata
163
+ // field.
164
+ message DeleteEngineMetadata {
165
+ // Operation create time.
166
+ google.protobuf.Timestamp create_time = 1;
167
+
168
+ // Operation last update time. If the operation is done, this is also the
169
+ // finish time.
170
+ google.protobuf.Timestamp update_time = 2;
171
+ }
172
+
173
+ // Request message for
174
+ // [EngineService.GetEngine][google.cloud.discoveryengine.v1beta.EngineService.GetEngine]
175
+ // method.
176
+ message GetEngineRequest {
177
+ // Required. Full resource name of
178
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine], such as
179
+ // `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}`.
180
+ string name = 1 [
181
+ (google.api.field_behavior) = REQUIRED,
182
+ (google.api.resource_reference) = {
183
+ type: "discoveryengine.googleapis.com/Engine"
184
+ }
185
+ ];
186
+ }
187
+
188
+ // Request message for
189
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1beta.EngineService.ListEngines]
190
+ // method.
191
+ message ListEnginesRequest {
192
+ // Required. The parent resource name, such as
193
+ // `projects/{project}/locations/{location}/collections/{collection_id}`.
194
+ string parent = 1 [
195
+ (google.api.field_behavior) = REQUIRED,
196
+ (google.api.resource_reference) = {
197
+ type: "discoveryengine.googleapis.com/Collection"
198
+ }
199
+ ];
200
+
201
+ // Optional. Not supported.
202
+ int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
203
+
204
+ // Optional. Not supported.
205
+ string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
206
+
207
+ // Optional. Filter by solution type. For example:
208
+ // solution_type=SOLUTION_TYPE_SEARCH
209
+ string filter = 4 [(google.api.field_behavior) = OPTIONAL];
210
+ }
211
+
212
+ // Response message for
213
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1beta.EngineService.ListEngines]
214
+ // method.
215
+ message ListEnginesResponse {
216
+ // All the customer's [Engine][google.cloud.discoveryengine.v1beta.Engine]s.
217
+ repeated Engine engines = 1;
218
+
219
+ // Not supported.
220
+ string next_page_token = 2;
221
+ }
222
+
223
+ // Request message for
224
+ // [EngineService.UpdateEngine][google.cloud.discoveryengine.v1beta.EngineService.UpdateEngine]
225
+ // method.
226
+ message UpdateEngineRequest {
227
+ // Required. The [Engine][google.cloud.discoveryengine.v1beta.Engine] to
228
+ // update.
229
+ //
230
+ // If the caller does not have permission to update the
231
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine], regardless of whether
232
+ // or not it exists, a PERMISSION_DENIED error is returned.
233
+ //
234
+ // If the [Engine][google.cloud.discoveryengine.v1beta.Engine] to update does
235
+ // not exist, a NOT_FOUND error is returned.
236
+ Engine engine = 1 [(google.api.field_behavior) = REQUIRED];
237
+
238
+ // Indicates which fields in the provided
239
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine] to update.
240
+ //
241
+ // If an unsupported or unknown field is provided, an INVALID_ARGUMENT error
242
+ // is returned.
243
+ google.protobuf.FieldMask update_mask = 2;
244
+ }
@@ -18,6 +18,7 @@ package google.cloud.discoveryengine.v1beta;
18
18
 
19
19
  import "google/api/field_behavior.proto";
20
20
  import "google/api/resource.proto";
21
+ import "google/cloud/discoveryengine/v1beta/completion.proto";
21
22
  import "google/cloud/discoveryengine/v1beta/document.proto";
22
23
  import "google/cloud/discoveryengine/v1beta/user_event.proto";
23
24
  import "google/protobuf/timestamp.proto";
@@ -340,3 +341,66 @@ message ImportDocumentsResponse {
340
341
  // Echoes the destination for the complete errors in the request if set.
341
342
  ImportErrorConfig error_config = 2;
342
343
  }
344
+
345
+ // Request message for
346
+ // [CompletionService.ImportSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.ImportSuggestionDenyListEntries]
347
+ // method.
348
+ message ImportSuggestionDenyListEntriesRequest {
349
+ // The inline source for SuggestionDenyListEntry.
350
+ message InlineSource {
351
+ // Required. A list of all denylist entries to import. Max of 1000 items.
352
+ repeated SuggestionDenyListEntry entries = 1
353
+ [(google.api.field_behavior) = REQUIRED];
354
+ }
355
+
356
+ // The source of the updated SuggestionDenyList.
357
+ oneof source {
358
+ // The Inline source for the input content for suggestion deny list entries.
359
+ InlineSource inline_source = 2;
360
+
361
+ // Cloud Storage location for the input content.
362
+ //
363
+ // Only 1 file can be specified that contains all entries to import.
364
+ // Supported values `gcs_source.schema` for autocomplete suggestion deny
365
+ // list entry imports:
366
+ //
367
+ // * `suggestion_deny_list` (default): One JSON [SuggestionDenyListEntry]
368
+ // per line.
369
+ GcsSource gcs_source = 3;
370
+ }
371
+
372
+ // Required. The parent data store resource name for which to import denylist
373
+ // entries. Follows pattern projects/*/locations/*/collections/*/dataStores/*.
374
+ string parent = 1 [
375
+ (google.api.field_behavior) = REQUIRED,
376
+ (google.api.resource_reference) = {
377
+ type: "discoveryengine.googleapis.com/DataStore"
378
+ }
379
+ ];
380
+ }
381
+
382
+ // Response message for
383
+ // [CompletionService.ImportSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.ImportSuggestionDenyListEntries]
384
+ // method.
385
+ message ImportSuggestionDenyListEntriesResponse {
386
+ // A sample of errors encountered while processing the request.
387
+ repeated google.rpc.Status error_samples = 1;
388
+
389
+ // Count of deny list entries successfully imported.
390
+ int64 imported_entries_count = 2;
391
+
392
+ // Count of deny list entries that failed to be imported.
393
+ int64 failed_entries_count = 3;
394
+ }
395
+
396
+ // Metadata related to the progress of the ImportSuggestionDenyListEntries
397
+ // operation. This is returned by the google.longrunning.Operation.metadata
398
+ // field.
399
+ message ImportSuggestionDenyListEntriesMetadata {
400
+ // Operation create time.
401
+ google.protobuf.Timestamp create_time = 1;
402
+
403
+ // Operation last update time. If the operation is done, this is also the
404
+ // finish time.
405
+ google.protobuf.Timestamp update_time = 2;
406
+ }
@@ -19,6 +19,7 @@ package google.cloud.discoveryengine.v1beta;
19
19
  import "google/api/field_behavior.proto";
20
20
  import "google/api/resource.proto";
21
21
  import "google/protobuf/timestamp.proto";
22
+ import "google/rpc/status.proto";
22
23
 
23
24
  option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Beta";
24
25
  option go_package = "cloud.google.com/go/discoveryengine/apiv1beta/discoveryenginepb;discoveryenginepb";
@@ -84,3 +85,40 @@ message PurgeDocumentsMetadata {
84
85
  // Count of entries that encountered errors while processing.
85
86
  int64 failure_count = 4;
86
87
  }
88
+
89
+ // Request message for
90
+ // [CompletionService.PurgeSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.PurgeSuggestionDenyListEntries]
91
+ // method.
92
+ message PurgeSuggestionDenyListEntriesRequest {
93
+ // Required. The parent data store resource name for which to import denylist
94
+ // entries. Follows pattern projects/*/locations/*/collections/*/dataStores/*.
95
+ string parent = 1 [
96
+ (google.api.field_behavior) = REQUIRED,
97
+ (google.api.resource_reference) = {
98
+ type: "discoveryengine.googleapis.com/DataStore"
99
+ }
100
+ ];
101
+ }
102
+
103
+ // Response message for
104
+ // [CompletionService.PurgeSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.PurgeSuggestionDenyListEntries]
105
+ // method.
106
+ message PurgeSuggestionDenyListEntriesResponse {
107
+ // Number of suggestion deny list entries purged.
108
+ int64 purge_count = 1;
109
+
110
+ // A sample of errors encountered while processing the request.
111
+ repeated google.rpc.Status error_samples = 2;
112
+ }
113
+
114
+ // Metadata related to the progress of the PurgeSuggestionDenyListEntries
115
+ // operation. This is returned by the google.longrunning.Operation.metadata
116
+ // field.
117
+ message PurgeSuggestionDenyListEntriesMetadata {
118
+ // Operation create time.
119
+ google.protobuf.Timestamp create_time = 1;
120
+
121
+ // Operation last update time. If the operation is done, this is also the
122
+ // finish time.
123
+ google.protobuf.Timestamp update_time = 2;
124
+ }
@@ -48,17 +48,29 @@ service RecommendationService {
48
48
  post: "/v1beta/{serving_config=projects/*/locations/*/collections/*/dataStores/*/servingConfigs/*}:recommend"
49
49
  body: "*"
50
50
  }
51
+ additional_bindings {
52
+ post: "/v1beta/{serving_config=projects/*/locations/*/collections/*/engines/*/servingConfigs/*}:recommend"
53
+ body: "*"
54
+ }
51
55
  };
52
56
  }
53
57
  }
54
58
 
55
59
  // Request message for Recommend method.
56
60
  message RecommendRequest {
57
- // Required. Full resource name of the format:
61
+ // Required. Full resource name of a
62
+ // [ServingConfig][google.cloud.discoveryengine.v1beta.ServingConfig]:
63
+ // `projects/*/locations/global/collections/*/engines/*/servingConfigs/*`, or
58
64
  // `projects/*/locations/global/collections/*/dataStores/*/servingConfigs/*`
59
65
  //
60
- // Before you can request recommendations from your model, you must create at
61
- // least one serving config for it.
66
+ // One default serving config is created along with your recommendation engine
67
+ // creation. The engine ID will be used as the ID of the default serving
68
+ // config. For example, for Engine
69
+ // `projects/*/locations/global/collections/*/engines/my-engine`, you can use
70
+ // `projects/*/locations/global/collections/*/engines/my-engine/servingConfigs/my-engine`
71
+ // for your
72
+ // [RecommendationService.Recommend][google.cloud.discoveryengine.v1beta.RecommendationService.Recommend]
73
+ // requests.
62
74
  string serving_config = 1 [
63
75
  (google.api.field_behavior) = REQUIRED,
64
76
  (google.api.resource_reference) = {
@@ -100,6 +112,14 @@ message RecommendRequest {
100
112
  // * `(filter_tags: ANY("Red", "Blue") OR filter_tags: ANY("Hot", "Cold"))`
101
113
  // * `(filter_tags: ANY("Red", "Blue")) AND NOT (filter_tags: ANY("Green"))`
102
114
  //
115
+ // If `attributeFilteringSyntax` is set to true under the `params` field, then
116
+ // attribute-based expressions are expected instead of the above described
117
+ // tag-based syntax. Examples:
118
+ //
119
+ // * (launguage: ANY("en", "es")) AND NOT (categories: ANY("Movie"))
120
+ // * (available: true) AND
121
+ // (launguage: ANY("en", "es")) OR (categories: ANY("Movie"))
122
+ //
103
123
  // If your filter blocks all results, the API will return generic
104
124
  // (unfiltered) popular Documents. If you only want results strictly matching
105
125
  // the filters, set `strictFiltering` to True in
@@ -141,6 +161,9 @@ message RecommendRequest {
141
161
  // * `auto-diversity`
142
162
  // This gives request-level control and adjusts recommendation results
143
163
  // based on Document category.
164
+ // * `attributeFilteringSyntax`: Boolean. False by default. If set to true,
165
+ // the `filter` field is interpreted according to the new,
166
+ // attribute-based syntax.
144
167
  map<string, google.protobuf.Value> params = 6;
145
168
 
146
169
  // The user labels applied to a resource must meet the following requirements:
@@ -48,6 +48,10 @@ service SearchService {
48
48
  post: "/v1beta/{serving_config=projects/*/locations/*/collections/*/dataStores/*/servingConfigs/*}:search"
49
49
  body: "*"
50
50
  }
51
+ additional_bindings {
52
+ post: "/v1beta/{serving_config=projects/*/locations/*/collections/*/engines/*/servingConfigs/*}:search"
53
+ body: "*"
54
+ }
51
55
  };
52
56
  }
53
57
  }
@@ -317,6 +321,28 @@ message SearchRequest {
317
321
  // A specification for configuring a summary returned in a search
318
322
  // response.
319
323
  message SummarySpec {
324
+ // Specification of the prompt to use with the model.
325
+ message ModelPromptSpec {
326
+ // Text at the beginning of the prompt that instructs the assistant.
327
+ // Examples are available in the user guide.
328
+ string preamble = 1;
329
+ }
330
+
331
+ // Specification of the model.
332
+ message ModelSpec {
333
+ // The model version used to generate the summary.
334
+ //
335
+ // Supported values are:
336
+ //
337
+ // * `stable`: string. Default value when no value is specified. Uses a
338
+ // generally available, fine-tuned version of the text-bison@001
339
+ // model.
340
+ // * `preview`: string. (Public preview) Uses a fine-tuned version of
341
+ // the text-bison@002 model. This model works only for summaries in
342
+ // English.
343
+ string version = 1;
344
+ }
345
+
320
346
  // The number of top results to generate the summary from. If the number
321
347
  // of results returned is less than `summaryResultCount`, the summary is
322
348
  // generated from all of the results.
@@ -368,9 +394,18 @@ message SearchRequest {
368
394
  // fallback messages instead.
369
395
  bool ignore_non_summary_seeking_query = 4;
370
396
 
397
+ // If specified, the spec will be used to modify the prompt provided to
398
+ // the LLM.
399
+ ModelPromptSpec model_prompt_spec = 5;
400
+
371
401
  // Language code for Summary. Use language tags defined by
372
- // [BCP47][https://www.rfc-editor.org/rfc/bcp/bcp47.txt].
402
+ // [BCP47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt).
403
+ // Note: This is an experimental feature.
373
404
  string language_code = 6;
405
+
406
+ // If specified, the spec will be used to modify the model specification
407
+ // provided to the LLM.
408
+ ModelSpec model_spec = 7;
374
409
  }
375
410
 
376
411
  // A specification for configuring the extractive content in a search
@@ -387,7 +422,7 @@ message SearchRequest {
387
422
  // `max_extractive_answer_count`, return all of the answers. Otherwise,
388
423
  // return the `max_extractive_answer_count`.
389
424
  //
390
- // At most one answer is returned for each
425
+ // At most five answers are returned for each
391
426
  // [SearchResult][google.cloud.discoveryengine.v1beta.SearchResponse.SearchResult].
392
427
  int32 max_extractive_answer_count = 1;
393
428
 
@@ -412,6 +447,9 @@ message SearchRequest {
412
447
 
413
448
  // Specifies whether to return the confidence score from the extractive
414
449
  // segments in each search result. The default value is `false`.
450
+ //
451
+ // Note: this is a priavte preview feature and only works for allowlisted
452
+ // users, please reach out to Cloud Support team if you want to use it.
415
453
  bool return_extractive_segment_score = 3;
416
454
 
417
455
  // Specifies whether to also include the adjacent from each selected
@@ -455,6 +493,8 @@ message SearchRequest {
455
493
  }
456
494
 
457
495
  // Required. The resource name of the Search serving config, such as
496
+ // `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`,
497
+ // or
458
498
  // `projects/*/locations/global/collections/default_collection/dataStores/default_data_store/servingConfigs/default_serving_config`.
459
499
  // This field is used to identify the serving configuration name, set
460
500
  // of models used to make the search.
@@ -512,12 +552,37 @@ message SearchRequest {
512
552
  // expression is case-sensitive.
513
553
  //
514
554
  // If this field is unrecognizable, an `INVALID_ARGUMENT` is returned.
555
+ //
556
+ // Filtering in Vertex AI Search is done by mapping the LHS filter key to a
557
+ // key property defined in the Vertex AI Search backend -- this mapping is
558
+ // defined by the customer in their schema. For example a media customer might
559
+ // have a field 'name' in their schema. In this case the filter would look
560
+ // like this: filter --> name:'ANY("king kong")'
561
+ //
562
+ // For more information about filtering including syntax and filter
563
+ // operators, see
564
+ // [Filter](https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata)
515
565
  string filter = 7;
516
566
 
567
+ // The default filter that is applied when a user performs a search without
568
+ // checking any filters on the search page.
569
+ //
570
+ // The filter applied to every search request when quality improvement such as
571
+ // query expansion is needed. In the case a query does not have a sufficient
572
+ // amount of results this filter will be used to determine whether or not to
573
+ // enable the query expansion flow. The original filter will still be used for
574
+ // the query expanded search.
575
+ // This field is strongly recommended to achieve high search quality.
576
+ //
577
+ // For more information about filter syntax, see
578
+ // [SearchRequest.filter][google.cloud.discoveryengine.v1beta.SearchRequest.filter].
579
+ string canonical_filter = 29;
580
+
517
581
  // The order in which documents are returned. Documents can be ordered by
518
582
  // a field in an [Document][google.cloud.discoveryengine.v1beta.Document]
519
583
  // object. Leave it unset if ordered by relevance. `order_by` expression is
520
- // case-sensitive.
584
+ // case-sensitive. For more information on ordering, see
585
+ // [Ordering](https://cloud.google.com/retail/docs/filter-and-order#order)
521
586
  //
522
587
  // If this field is unrecognizable, an `INVALID_ARGUMENT` is returned.
523
588
  string order_by = 8;
@@ -535,6 +600,8 @@ message SearchRequest {
535
600
  repeated FacetSpec facet_specs = 9;
536
601
 
537
602
  // Boost specification to boost certain documents.
603
+ // For more information on boosting, see
604
+ // [Boosting](https://cloud.google.com/retail/docs/boosting#boost)
538
605
  BoostSpec boost_spec = 10;
539
606
 
540
607
  // Additional search parameters.
@@ -543,9 +610,17 @@ message SearchRequest {
543
610
  //
544
611
  // * `user_country_code`: string. Default empty. If set to non-empty, results
545
612
  // are restricted or boosted based on the location provided.
613
+ // Example:
614
+ // user_country_code: "au"
615
+ //
616
+ // For available codes see [Country
617
+ // Codes](https://developers.google.com/custom-search/docs/json_api_reference#countryCodes)
618
+ //
546
619
  // * `search_type`: double. Default empty. Enables non-webpage searching
547
- // depending on the value. The only valid non-default value is 1,
548
- // which enables image searching.
620
+ // depending on the value. The only valid non-default value is 1,
621
+ // which enables image searching.
622
+ // Example:
623
+ // search_type: 1
549
624
  map<string, google.protobuf.Value> params = 11;
550
625
 
551
626
  // The query expansion specification that specifies the conditions under which
@@ -577,16 +652,18 @@ message SearchRequest {
577
652
 
578
653
  // Uses the provided embedding to do additional semantic document retrieval.
579
654
  // The retrieval is based on the dot product of
580
- // [SearchRequest.embedding_spec.embedding_vectors.vector][] and the document
581
- // embedding that is provided in
582
- // [SearchRequest.embedding_spec.embedding_vectors.field_path][].
655
+ // [SearchRequest.EmbeddingSpec.EmbeddingVector.vector][google.cloud.discoveryengine.v1beta.SearchRequest.EmbeddingSpec.EmbeddingVector.vector]
656
+ // and the document embedding that is provided in
657
+ // [SearchRequest.EmbeddingSpec.EmbeddingVector.field_path][google.cloud.discoveryengine.v1beta.SearchRequest.EmbeddingSpec.EmbeddingVector.field_path].
583
658
  //
584
- // If [SearchRequest.embedding_spec.embedding_vectors.field_path][] is not
585
- // provided, it will use [ServingConfig.embedding_config.field_paths][].
659
+ // If
660
+ // [SearchRequest.EmbeddingSpec.EmbeddingVector.field_path][google.cloud.discoveryengine.v1beta.SearchRequest.EmbeddingSpec.EmbeddingVector.field_path]
661
+ // is not provided, it will use [ServingConfig.EmbeddingConfig.field_path][].
586
662
  EmbeddingSpec embedding_spec = 23;
587
663
 
588
664
  // The ranking expression controls the customized ranking on retrieval
589
- // documents. This overrides [ServingConfig.ranking_expression][].
665
+ // documents. This overrides
666
+ // [ServingConfig.ranking_expression][google.cloud.discoveryengine.v1beta.ServingConfig.ranking_expression].
590
667
  // The ranking expression is a single function or multiple functions that are
591
668
  // joint by "+".
592
669
  // * ranking_expression = function, { " + ", function };
@@ -710,6 +787,65 @@ message SearchResponse {
710
787
  repeated float scores = 2;
711
788
  }
712
789
 
790
+ // Citation metadata.
791
+ message CitationMetadata {
792
+ // Citations for segments.
793
+ repeated Citation citations = 1;
794
+ }
795
+
796
+ // Citation info for a segment.
797
+ message Citation {
798
+ // Index indicates the start of the segment, measured in bytes/unicode.
799
+ int64 start_index = 1;
800
+
801
+ // End of the attributed segment, exclusive.
802
+ int64 end_index = 2;
803
+
804
+ // Citation sources for the attributed segment.
805
+ repeated CitationSource sources = 3;
806
+ }
807
+
808
+ // Citation source.
809
+ message CitationSource {
810
+ // Document reference index from SummaryWithMetadata.references.
811
+ // It is 0-indexed and the value will be zero if the reference_index is
812
+ // not set explicitly.
813
+ int64 reference_index = 4;
814
+ }
815
+
816
+ // Document reference.
817
+ message Reference {
818
+ // Title of the document.
819
+ string title = 1;
820
+
821
+ // Required.
822
+ // [Document.name][google.cloud.discoveryengine.v1beta.Document.name] of
823
+ // the document. Full resource name of the referenced document, in the
824
+ // format
825
+ // `projects/*/locations/*/collections/*/dataStores/*/branches/*/documents/*`.
826
+ string document = 2 [
827
+ (google.api.field_behavior) = REQUIRED,
828
+ (google.api.resource_reference) = {
829
+ type: "discoveryengine.googleapis.com/Document"
830
+ }
831
+ ];
832
+
833
+ // Cloud Storage or HTTP uri for the document.
834
+ string uri = 3;
835
+ }
836
+
837
+ // Summary with metadata information.
838
+ message SummaryWithMetadata {
839
+ // Summary text with no citation information.
840
+ string summary = 1;
841
+
842
+ // Citation metadata for given summary.
843
+ CitationMetadata citation_metadata = 2;
844
+
845
+ // Document References.
846
+ repeated Reference references = 3;
847
+ }
848
+
713
849
  // An Enum for summary-skipped reasons.
714
850
  enum SummarySkippedReason {
715
851
  // Default value. The summary skipped reason is not specified.
@@ -758,6 +894,9 @@ message SearchResponse {
758
894
  // A collection of Safety Attribute categories and their associated
759
895
  // confidence scores.
760
896
  SafetyAttributes safety_attributes = 3;
897
+
898
+ // Summary with metadata information.
899
+ SummaryWithMetadata summary_with_metadata = 4;
761
900
  }
762
901
 
763
902
  // Information describing query expansion including whether expansion has