@google-cloud/discoveryengine 1.2.0 → 1.3.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 (37) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +13 -0
  3. package/build/protos/google/cloud/discoveryengine/v1alpha/common.proto +39 -4
  4. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store.proto +98 -0
  5. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store_service.proto +307 -0
  6. package/build/protos/google/cloud/discoveryengine/v1alpha/engine.proto +370 -0
  7. package/build/protos/google/cloud/discoveryengine/v1alpha/engine_service.proto +336 -0
  8. package/build/protos/google/cloud/discoveryengine/v1alpha/recommendation_service.proto +9 -3
  9. package/build/protos/google/cloud/discoveryengine/v1alpha/search_service.proto +26 -3
  10. package/build/protos/protos.d.ts +5578 -1800
  11. package/build/protos/protos.js +14034 -5272
  12. package/build/protos/protos.json +1337 -340
  13. package/build/src/v1alpha/completion_service_client.d.ts +42 -0
  14. package/build/src/v1alpha/completion_service_client.js +58 -0
  15. package/build/src/v1alpha/conversational_search_service_client.d.ts +42 -0
  16. package/build/src/v1alpha/conversational_search_service_client.js +58 -0
  17. package/build/src/v1alpha/data_store_service_client.d.ts +1060 -0
  18. package/build/src/v1alpha/data_store_service_client.js +1431 -0
  19. package/build/src/v1alpha/data_store_service_client_config.json +46 -0
  20. package/build/src/v1alpha/document_service_client.d.ts +117 -0
  21. package/build/src/v1alpha/document_service_client.js +162 -0
  22. package/build/src/v1alpha/engine_service_client.d.ts +1079 -0
  23. package/build/src/v1alpha/engine_service_client.js +1481 -0
  24. package/build/src/v1alpha/engine_service_client_config.json +58 -0
  25. package/build/src/v1alpha/index.d.ts +2 -0
  26. package/build/src/v1alpha/index.js +5 -1
  27. package/build/src/v1alpha/recommendation_service_client.d.ts +126 -3
  28. package/build/src/v1alpha/recommendation_service_client.js +162 -0
  29. package/build/src/v1alpha/schema_service_client.d.ts +42 -0
  30. package/build/src/v1alpha/schema_service_client.js +58 -0
  31. package/build/src/v1alpha/search_service_client.d.ts +195 -9
  32. package/build/src/v1alpha/search_service_client.js +214 -6
  33. package/build/src/v1alpha/site_search_engine_service_client.d.ts +117 -0
  34. package/build/src/v1alpha/site_search_engine_service_client.js +162 -0
  35. package/build/src/v1alpha/user_event_service_client.d.ts +42 -0
  36. package/build/src/v1alpha/user_event_service_client.js +58 -0
  37. package/package.json +3 -3
@@ -0,0 +1,336 @@
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.v1alpha;
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/v1alpha/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.V1Alpha";
30
+ option go_package = "cloud.google.com/go/discoveryengine/apiv1alpha/discoveryenginepb;discoveryenginepb";
31
+ option java_multiple_files = true;
32
+ option java_outer_classname = "EngineServiceProto";
33
+ option java_package = "com.google.cloud.discoveryengine.v1alpha";
34
+ option objc_class_prefix = "DISCOVERYENGINE";
35
+ option php_namespace = "Google\\Cloud\\DiscoveryEngine\\V1alpha";
36
+ option ruby_package = "Google::Cloud::DiscoveryEngine::V1alpha";
37
+
38
+ // Service for managing [Engine][google.cloud.discoveryengine.v1alpha.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.v1alpha.Engine].
46
+ rpc CreateEngine(CreateEngineRequest) returns (google.longrunning.Operation) {
47
+ option (google.api.http) = {
48
+ post: "/v1alpha/{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.v1alpha.Engine"
54
+ metadata_type: "google.cloud.discoveryengine.v1alpha.CreateEngineMetadata"
55
+ };
56
+ }
57
+
58
+ // Deletes a [Engine][google.cloud.discoveryengine.v1alpha.Engine].
59
+ rpc DeleteEngine(DeleteEngineRequest) returns (google.longrunning.Operation) {
60
+ option (google.api.http) = {
61
+ delete: "/v1alpha/{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.v1alpha.DeleteEngineMetadata"
67
+ };
68
+ }
69
+
70
+ // Updates an [Engine][google.cloud.discoveryengine.v1alpha.Engine]
71
+ rpc UpdateEngine(UpdateEngineRequest) returns (Engine) {
72
+ option (google.api.http) = {
73
+ patch: "/v1alpha/{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.v1alpha.Engine].
80
+ rpc GetEngine(GetEngineRequest) returns (Engine) {
81
+ option (google.api.http) = {
82
+ get: "/v1alpha/{name=projects/*/locations/*/collections/*/engines/*}"
83
+ };
84
+ option (google.api.method_signature) = "name";
85
+ }
86
+
87
+ // Lists all the [Engine][google.cloud.discoveryengine.v1alpha.Engine]s
88
+ // associated with the project.
89
+ rpc ListEngines(ListEnginesRequest) returns (ListEnginesResponse) {
90
+ option (google.api.http) = {
91
+ get: "/v1alpha/{parent=projects/*/locations/*/collections/*}/engines"
92
+ };
93
+ option (google.api.method_signature) = "parent";
94
+ }
95
+
96
+ // Pauses the training of an existing engine. Only applicable if
97
+ // [solution_type][] is
98
+ // [SOLUTION_TYPE_RECOMMENDATION][google.cloud.discoveryengine.v1alpha.SolutionType.SOLUTION_TYPE_RECOMMENDATION].
99
+ rpc PauseEngine(PauseEngineRequest) returns (Engine) {
100
+ option (google.api.http) = {
101
+ post: "/v1alpha/{name=projects/*/locations/*/collections/*/engines/*}:pause"
102
+ body: "*"
103
+ };
104
+ option (google.api.method_signature) = "name";
105
+ }
106
+
107
+ // Resumes the training of an existing engine. Only applicable if
108
+ // [solution_type][] is
109
+ // [SOLUTION_TYPE_RECOMMENDATION][google.cloud.discoveryengine.v1alpha.SolutionType.SOLUTION_TYPE_RECOMMENDATION].
110
+ rpc ResumeEngine(ResumeEngineRequest) returns (Engine) {
111
+ option (google.api.http) = {
112
+ post: "/v1alpha/{name=projects/*/locations/*/collections/*/engines/*}:resume"
113
+ body: "*"
114
+ };
115
+ option (google.api.method_signature) = "name";
116
+ }
117
+
118
+ // Tunes an existing engine. Only applicable if [solution_type][] is
119
+ // [SOLUTION_TYPE_RECOMMENDATION][google.cloud.discoveryengine.v1alpha.SolutionType.SOLUTION_TYPE_RECOMMENDATION].
120
+ rpc TuneEngine(TuneEngineRequest) returns (google.longrunning.Operation) {
121
+ option (google.api.http) = {
122
+ post: "/v1alpha/{name=projects/*/locations/*/collections/*/engines/*}:tune"
123
+ body: "*"
124
+ };
125
+ option (google.api.method_signature) = "name";
126
+ option (google.longrunning.operation_info) = {
127
+ response_type: "TuneEngineResponse"
128
+ metadata_type: "TuneEngineMetadata"
129
+ };
130
+ }
131
+ }
132
+
133
+ // Request for
134
+ // [EngineService.CreateEngine][google.cloud.discoveryengine.v1alpha.EngineService.CreateEngine]
135
+ // method.
136
+ message CreateEngineRequest {
137
+ // Required. The parent resource name, such as
138
+ // `projects/{project}/locations/{location}/collections/{collection}`.
139
+ string parent = 1 [
140
+ (google.api.field_behavior) = REQUIRED,
141
+ (google.api.resource_reference) = {
142
+ type: "discoveryengine.googleapis.com/Collection"
143
+ }
144
+ ];
145
+
146
+ // Required. The [Engine][google.cloud.discoveryengine.v1alpha.Engine] to
147
+ // create.
148
+ Engine engine = 2 [(google.api.field_behavior) = REQUIRED];
149
+
150
+ // Required. The ID to use for the
151
+ // [Engine][google.cloud.discoveryengine.v1alpha.Engine], which will become
152
+ // the final component of the
153
+ // [Engine][google.cloud.discoveryengine.v1alpha.Engine]'s resource name.
154
+ //
155
+ // This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034)
156
+ // standard with a length limit of 63 characters. Otherwise, an
157
+ // INVALID_ARGUMENT error is returned.
158
+ string engine_id = 3 [(google.api.field_behavior) = REQUIRED];
159
+ }
160
+
161
+ // Metadata related to the progress of the
162
+ // [EngineService.CreateEngine][google.cloud.discoveryengine.v1alpha.EngineService.CreateEngine]
163
+ // operation. This will be returned by the google.longrunning.Operation.metadata
164
+ // field.
165
+ message CreateEngineMetadata {
166
+ // Operation create time.
167
+ google.protobuf.Timestamp create_time = 1;
168
+
169
+ // Operation last update time. If the operation is done, this is also the
170
+ // finish time.
171
+ google.protobuf.Timestamp update_time = 2;
172
+ }
173
+
174
+ // Request message for
175
+ // [EngineService.DeleteEngine][google.cloud.discoveryengine.v1alpha.EngineService.DeleteEngine]
176
+ // method.
177
+ message DeleteEngineRequest {
178
+ // Required. Full resource name of
179
+ // [Engine][google.cloud.discoveryengine.v1alpha.Engine], such as
180
+ // `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}`.
181
+ //
182
+ // If the caller does not have permission to delete the
183
+ // [Engine][google.cloud.discoveryengine.v1alpha.Engine], regardless of
184
+ // whether or not it exists, a PERMISSION_DENIED error is returned.
185
+ //
186
+ // If the [Engine][google.cloud.discoveryengine.v1alpha.Engine] to delete does
187
+ // not exist, a NOT_FOUND error is returned.
188
+ string name = 1 [
189
+ (google.api.field_behavior) = REQUIRED,
190
+ (google.api.resource_reference) = {
191
+ type: "discoveryengine.googleapis.com/Engine"
192
+ }
193
+ ];
194
+ }
195
+
196
+ // Metadata related to the progress of the
197
+ // [EngineService.DeleteEngine][google.cloud.discoveryengine.v1alpha.EngineService.DeleteEngine]
198
+ // operation. This will be returned by the google.longrunning.Operation.metadata
199
+ // field.
200
+ message DeleteEngineMetadata {
201
+ // Operation create time.
202
+ google.protobuf.Timestamp create_time = 1;
203
+
204
+ // Operation last update time. If the operation is done, this is also the
205
+ // finish time.
206
+ google.protobuf.Timestamp update_time = 2;
207
+ }
208
+
209
+ // Request message for
210
+ // [EngineService.GetEngine][google.cloud.discoveryengine.v1alpha.EngineService.GetEngine]
211
+ // method.
212
+ message GetEngineRequest {
213
+ // Required. Full resource name of
214
+ // [Engine][google.cloud.discoveryengine.v1alpha.Engine], such as
215
+ // `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}`.
216
+ string name = 1 [
217
+ (google.api.field_behavior) = REQUIRED,
218
+ (google.api.resource_reference) = {
219
+ type: "discoveryengine.googleapis.com/Engine"
220
+ }
221
+ ];
222
+ }
223
+
224
+ // Request message for
225
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1alpha.EngineService.ListEngines]
226
+ // method.
227
+ message ListEnginesRequest {
228
+ // Required. The parent resource name, such as
229
+ // `projects/{project}/locations/{location}/collections/{collection_id}`.
230
+ string parent = 1 [
231
+ (google.api.field_behavior) = REQUIRED,
232
+ (google.api.resource_reference) = {
233
+ type: "discoveryengine.googleapis.com/Collection"
234
+ }
235
+ ];
236
+
237
+ // Optional. Not supported.
238
+ int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
239
+
240
+ // Optional. Not supported.
241
+ string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
242
+
243
+ // Optional. Filter by solution type. For example:
244
+ // solution_type=SOLUTION_TYPE_SEARCH
245
+ string filter = 4 [(google.api.field_behavior) = OPTIONAL];
246
+ }
247
+
248
+ // Response message for
249
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1alpha.EngineService.ListEngines]
250
+ // method.
251
+ message ListEnginesResponse {
252
+ // All the customer's [Engine][google.cloud.discoveryengine.v1alpha.Engine]s.
253
+ repeated Engine engines = 1;
254
+
255
+ // Not supported.
256
+ string next_page_token = 2;
257
+ }
258
+
259
+ // Request message for
260
+ // [EngineService.UpdateEngine][google.cloud.discoveryengine.v1alpha.EngineService.UpdateEngine]
261
+ // method.
262
+ message UpdateEngineRequest {
263
+ // Required. The [Engine][google.cloud.discoveryengine.v1alpha.Engine] to
264
+ // update.
265
+ //
266
+ // If the caller does not have permission to update the
267
+ // [Engine][google.cloud.discoveryengine.v1alpha.Engine], regardless of
268
+ // whether or not it exists, a PERMISSION_DENIED error is returned.
269
+ //
270
+ // If the [Engine][google.cloud.discoveryengine.v1alpha.Engine] to update does
271
+ // not exist, a NOT_FOUND error is returned.
272
+ Engine engine = 1 [(google.api.field_behavior) = REQUIRED];
273
+
274
+ // Indicates which fields in the provided
275
+ // [Engine][google.cloud.discoveryengine.v1alpha.Engine] to update.
276
+ //
277
+ // If an unsupported or unknown field is provided, an INVALID_ARGUMENT error
278
+ // is returned.
279
+ google.protobuf.FieldMask update_mask = 2;
280
+ }
281
+
282
+ // Request for pausing training of an engine.
283
+ message PauseEngineRequest {
284
+ // Required. The name of the engine to pause.
285
+ // Format:
286
+ // `projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}`
287
+ string name = 1 [
288
+ (google.api.field_behavior) = REQUIRED,
289
+ (google.api.resource_reference) = {
290
+ type: "discoveryengine.googleapis.com/Engine"
291
+ }
292
+ ];
293
+ }
294
+
295
+ // Request for resuming training of an engine.
296
+ message ResumeEngineRequest {
297
+ // Required. The name of the engine to resume.
298
+ // Format:
299
+ // `projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}`
300
+ string name = 1 [
301
+ (google.api.field_behavior) = REQUIRED,
302
+ (google.api.resource_reference) = {
303
+ type: "discoveryengine.googleapis.com/Engine"
304
+ }
305
+ ];
306
+ }
307
+
308
+ // Request to manually start a tuning process now (instead of waiting for
309
+ // the periodically scheduled tuning to happen).
310
+ message TuneEngineRequest {
311
+ // Required. The resource name of the engine to tune.
312
+ // Format:
313
+ // `projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}`
314
+ string name = 1 [
315
+ (google.api.field_behavior) = REQUIRED,
316
+ (google.api.resource_reference) = {
317
+ type: "discoveryengine.googleapis.com/Engine"
318
+ }
319
+ ];
320
+ }
321
+
322
+ // Metadata associated with a tune operation.
323
+ message TuneEngineMetadata {
324
+ // Required. The resource name of the engine that this tune applies to.
325
+ // Format:
326
+ // `projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}`
327
+ string engine = 1 [
328
+ (google.api.field_behavior) = REQUIRED,
329
+ (google.api.resource_reference) = {
330
+ type: "discoveryengine.googleapis.com/Engine"
331
+ }
332
+ ];
333
+ }
334
+
335
+ // Response associated with a tune operation.
336
+ message TuneEngineResponse {}
@@ -58,11 +58,17 @@ service RecommendationService {
58
58
 
59
59
  // Request message for Recommend method.
60
60
  message RecommendRequest {
61
- // Required. Full resource name of the format:
61
+ // Required. Full resource name of a
62
+ // [ServingConfig][google.cloud.discoveryengine.v1alpha.ServingConfig]:
63
+ // `projects/*/locations/global/collections/*/engines/*/servingConfigs/*`, or
62
64
  // `projects/*/locations/global/collections/*/dataStores/*/servingConfigs/*`
63
65
  //
64
- // Before you can request recommendations from your model, you must create at
65
- // 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 [Recommend][] requests.
66
72
  string serving_config = 1 [
67
73
  (google.api.field_behavior) = REQUIRED,
68
74
  (google.api.resource_reference) = {
@@ -463,6 +463,8 @@ message SearchRequest {
463
463
  }
464
464
 
465
465
  // Required. The resource name of the Search serving config, such as
466
+ // `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`,
467
+ // or
466
468
  // `projects/*/locations/global/collections/default_collection/dataStores/default_data_store/servingConfigs/default_serving_config`.
467
469
  // This field is used to identify the serving configuration name, set
468
470
  // of models used to make the search.
@@ -521,12 +523,23 @@ message SearchRequest {
521
523
  // expression is case-sensitive.
522
524
  //
523
525
  // If this field is unrecognizable, an `INVALID_ARGUMENT` is returned.
526
+ //
527
+ // Filtering in Vertex AI Search is done by mapping the LHS filter key to a
528
+ // key property defined in the Vertex AI Search backend -- this mapping is
529
+ // defined by the customer in their schema. For example a media customer might
530
+ // have a field 'name' in their schema. In this case the filter would look
531
+ // like this: filter --> name:'ANY("king kong")'
532
+ //
533
+ // For more information about filtering including syntax and filter
534
+ // operators, see
535
+ // [Filter](https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata)
524
536
  string filter = 7;
525
537
 
526
538
  // The order in which documents are returned. Documents can be ordered by
527
539
  // a field in an [Document][google.cloud.discoveryengine.v1alpha.Document]
528
540
  // object. Leave it unset if ordered by relevance. `order_by` expression is
529
- // case-sensitive.
541
+ // case-sensitive. For more information on ordering, see
542
+ // [Ordering](https://cloud.google.com/retail/docs/filter-and-order#order)
530
543
  //
531
544
  // If this field is unrecognizable, an `INVALID_ARGUMENT` is returned.
532
545
  string order_by = 8;
@@ -544,6 +557,8 @@ message SearchRequest {
544
557
  repeated FacetSpec facet_specs = 9;
545
558
 
546
559
  // Boost specification to boost certain documents.
560
+ // For more information on boosting, see
561
+ // [Boosting](https://cloud.google.com/retail/docs/boosting#boost)
547
562
  BoostSpec boost_spec = 10;
548
563
 
549
564
  // Additional search parameters.
@@ -552,9 +567,17 @@ message SearchRequest {
552
567
  //
553
568
  // * `user_country_code`: string. Default empty. If set to non-empty, results
554
569
  // are restricted or boosted based on the location provided.
570
+ // Example:
571
+ // user_country_code: "au"
572
+ //
573
+ // For available codes see [Country
574
+ // Codes](https://developers.google.com/custom-search/docs/json_api_reference#countryCodes)
575
+ //
555
576
  // * `search_type`: double. Default empty. Enables non-webpage searching
556
- // depending on the value. The only valid non-default value is 1,
557
- // which enables image searching.
577
+ // depending on the value. The only valid non-default value is 1,
578
+ // which enables image searching.
579
+ // Example:
580
+ // search_type: 1
558
581
  map<string, google.protobuf.Value> params = 11;
559
582
 
560
583
  // The query expansion specification that specifies the conditions under which