@google-cloud/discoveryengine 2.0.1 → 2.2.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 (167) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +7 -2
  3. package/build/protos/google/cloud/discoveryengine/v1/answer.proto +54 -2
  4. package/build/protos/google/cloud/discoveryengine/v1/chunk.proto +2 -1
  5. package/build/protos/google/cloud/discoveryengine/v1/common.proto +35 -6
  6. package/build/protos/google/cloud/discoveryengine/v1/control.proto +113 -2
  7. package/build/protos/google/cloud/discoveryengine/v1/conversational_search_service.proto +168 -2
  8. package/build/protos/google/cloud/discoveryengine/v1/data_store.proto +23 -4
  9. package/build/protos/google/cloud/discoveryengine/v1/document.proto +7 -2
  10. package/build/protos/google/cloud/discoveryengine/v1/document_service.proto +1 -1
  11. package/build/protos/google/cloud/discoveryengine/v1/engine.proto +16 -3
  12. package/build/protos/google/cloud/discoveryengine/v1/grounded_generation_service.proto +70 -9
  13. package/build/protos/google/cloud/discoveryengine/v1/import_config.proto +20 -1
  14. package/build/protos/google/cloud/discoveryengine/v1/purge_config.proto +9 -5
  15. package/build/protos/google/cloud/discoveryengine/v1/rank_service.proto +3 -1
  16. package/build/protos/google/cloud/discoveryengine/v1/recommendation_service.proto +2 -2
  17. package/build/protos/google/cloud/discoveryengine/v1/safety.proto +107 -0
  18. package/build/protos/google/cloud/discoveryengine/v1/search_service.proto +96 -8
  19. package/build/protos/google/cloud/discoveryengine/v1/serving_config.proto +271 -0
  20. package/build/protos/google/cloud/discoveryengine/v1/serving_config_service.proto +75 -0
  21. package/build/protos/google/cloud/discoveryengine/v1/session.proto +19 -0
  22. package/build/protos/google/cloud/discoveryengine/v1/site_search_engine.proto +27 -3
  23. package/build/protos/google/cloud/discoveryengine/v1/site_search_engine_service.proto +184 -5
  24. package/build/protos/google/cloud/discoveryengine/v1/user_event.proto +34 -0
  25. package/build/protos/google/cloud/discoveryengine/v1/user_event_service.proto +16 -4
  26. package/build/protos/protos.d.ts +4390 -300
  27. package/build/protos/protos.js +13785 -2922
  28. package/build/protos/protos.json +1355 -14
  29. package/build/src/index.d.ts +4 -1
  30. package/build/src/index.js +4 -21
  31. package/build/src/v1/completion_service_client.d.ts +313 -76
  32. package/build/src/v1/completion_service_client.js +451 -262
  33. package/build/src/v1/completion_service_proto_list.json +3 -0
  34. package/build/src/v1/control_service_client.d.ts +318 -81
  35. package/build/src/v1/control_service_client.js +422 -132
  36. package/build/src/v1/control_service_proto_list.json +3 -0
  37. package/build/src/v1/conversational_search_service_client.d.ts +341 -134
  38. package/build/src/v1/conversational_search_service_client.js +395 -223
  39. package/build/src/v1/conversational_search_service_client_config.json +5 -0
  40. package/build/src/v1/conversational_search_service_proto_list.json +3 -0
  41. package/build/src/v1/data_store_service_client.d.ts +359 -122
  42. package/build/src/v1/data_store_service_client.js +460 -280
  43. package/build/src/v1/data_store_service_proto_list.json +3 -0
  44. package/build/src/v1/document_service_client.d.ts +364 -121
  45. package/build/src/v1/document_service_client.js +469 -300
  46. package/build/src/v1/document_service_proto_list.json +3 -0
  47. package/build/src/v1/engine_service_client.d.ts +340 -103
  48. package/build/src/v1/engine_service_client.js +460 -279
  49. package/build/src/v1/engine_service_proto_list.json +3 -0
  50. package/build/src/v1/gapic_metadata.json +59 -0
  51. package/build/src/v1/grounded_generation_service_client.d.ts +286 -51
  52. package/build/src/v1/grounded_generation_service_client.js +405 -100
  53. package/build/src/v1/grounded_generation_service_proto_list.json +3 -0
  54. package/build/src/v1/index.d.ts +1 -0
  55. package/build/src/v1/index.js +3 -1
  56. package/build/src/v1/project_service_client.d.ts +313 -76
  57. package/build/src/v1/project_service_client.js +434 -222
  58. package/build/src/v1/project_service_proto_list.json +3 -0
  59. package/build/src/v1/rank_service_client.d.ts +285 -48
  60. package/build/src/v1/rank_service_client.js +398 -85
  61. package/build/src/v1/rank_service_proto_list.json +3 -0
  62. package/build/src/v1/recommendation_service_client.d.ts +142 -49
  63. package/build/src/v1/recommendation_service_client.js +198 -82
  64. package/build/src/v1/recommendation_service_proto_list.json +3 -0
  65. package/build/src/v1/schema_service_client.d.ts +348 -111
  66. package/build/src/v1/schema_service_client.js +457 -273
  67. package/build/src/v1/schema_service_proto_list.json +3 -0
  68. package/build/src/v1/search_service_client.d.ts +748 -559
  69. package/build/src/v1/search_service_client.js +302 -133
  70. package/build/src/v1/search_service_proto_list.json +3 -0
  71. package/build/src/v1/search_tuning_service_client.d.ts +314 -77
  72. package/build/src/v1/search_tuning_service_client.js +439 -235
  73. package/build/src/v1/search_tuning_service_proto_list.json +3 -0
  74. package/build/src/v1/serving_config_service_client.d.ts +1851 -0
  75. package/build/src/v1/serving_config_service_client.js +2642 -0
  76. package/build/src/v1/serving_config_service_client_config.json +30 -0
  77. package/build/src/v1/serving_config_service_proto_list.json +39 -0
  78. package/build/src/v1/site_search_engine_service_client.d.ts +504 -151
  79. package/build/src/v1/site_search_engine_service_client.js +625 -351
  80. package/build/src/v1/site_search_engine_service_client_config.json +12 -0
  81. package/build/src/v1/site_search_engine_service_proto_list.json +3 -0
  82. package/build/src/v1/user_event_service_client.d.ts +335 -86
  83. package/build/src/v1/user_event_service_client.js +447 -253
  84. package/build/src/v1/user_event_service_proto_list.json +3 -0
  85. package/build/src/v1alpha/acl_config_service_client.d.ts +49 -49
  86. package/build/src/v1alpha/acl_config_service_client.js +82 -106
  87. package/build/src/v1alpha/chunk_service_client.d.ts +88 -88
  88. package/build/src/v1alpha/chunk_service_client.js +92 -120
  89. package/build/src/v1alpha/completion_service_client.d.ts +77 -77
  90. package/build/src/v1alpha/completion_service_client.js +134 -280
  91. package/build/src/v1alpha/control_service_client.d.ts +85 -85
  92. package/build/src/v1alpha/control_service_client.js +105 -151
  93. package/build/src/v1alpha/conversational_search_service_client.d.ts +143 -143
  94. package/build/src/v1alpha/conversational_search_service_client.js +145 -237
  95. package/build/src/v1alpha/data_store_service_client.d.ts +126 -126
  96. package/build/src/v1alpha/data_store_service_client.js +151 -316
  97. package/build/src/v1alpha/document_service_client.d.ts +126 -126
  98. package/build/src/v1alpha/document_service_client.js +156 -328
  99. package/build/src/v1alpha/engine_service_client.d.ts +106 -106
  100. package/build/src/v1alpha/engine_service_client.js +155 -325
  101. package/build/src/v1alpha/estimate_billing_service_client.d.ts +76 -76
  102. package/build/src/v1alpha/estimate_billing_service_client.js +118 -243
  103. package/build/src/v1alpha/evaluation_service_client.d.ts +161 -161
  104. package/build/src/v1alpha/evaluation_service_client.js +143 -295
  105. package/build/src/v1alpha/grounded_generation_service_client.d.ts +48 -48
  106. package/build/src/v1alpha/grounded_generation_service_client.js +79 -100
  107. package/build/src/v1alpha/project_service_client.d.ts +78 -78
  108. package/build/src/v1alpha/project_service_client.js +126 -262
  109. package/build/src/v1alpha/rank_service_client.d.ts +47 -47
  110. package/build/src/v1alpha/rank_service_client.js +81 -104
  111. package/build/src/v1alpha/recommendation_service_client.d.ts +47 -47
  112. package/build/src/v1alpha/recommendation_service_client.js +79 -100
  113. package/build/src/v1alpha/sample_query_service_client.d.ts +123 -123
  114. package/build/src/v1alpha/sample_query_service_client.js +144 -301
  115. package/build/src/v1alpha/sample_query_set_service_client.d.ts +94 -94
  116. package/build/src/v1alpha/sample_query_set_service_client.js +106 -153
  117. package/build/src/v1alpha/schema_service_client.d.ts +112 -112
  118. package/build/src/v1alpha/schema_service_client.js +140 -292
  119. package/build/src/v1alpha/search_service_client.d.ts +327 -327
  120. package/build/src/v1alpha/search_service_client.js +88 -112
  121. package/build/src/v1alpha/search_tuning_service_client.d.ts +77 -77
  122. package/build/src/v1alpha/search_tuning_service_client.js +122 -253
  123. package/build/src/v1alpha/serving_config_service_client.d.ts +75 -75
  124. package/build/src/v1alpha/serving_config_service_client.js +97 -133
  125. package/build/src/v1alpha/site_search_engine_service_client.d.ts +151 -151
  126. package/build/src/v1alpha/site_search_engine_service_client.js +184 -387
  127. package/build/src/v1alpha/user_event_service_client.d.ts +78 -78
  128. package/build/src/v1alpha/user_event_service_client.js +130 -271
  129. package/build/src/v1beta/completion_service_client.d.ts +78 -78
  130. package/build/src/v1beta/completion_service_client.js +136 -279
  131. package/build/src/v1beta/control_service_client.d.ts +84 -84
  132. package/build/src/v1beta/control_service_client.js +103 -147
  133. package/build/src/v1beta/conversational_search_service_client.d.ts +142 -142
  134. package/build/src/v1beta/conversational_search_service_client.js +143 -233
  135. package/build/src/v1beta/data_store_service_client.d.ts +124 -124
  136. package/build/src/v1beta/data_store_service_client.js +141 -288
  137. package/build/src/v1beta/document_service_client.d.ts +124 -124
  138. package/build/src/v1beta/document_service_client.js +150 -309
  139. package/build/src/v1beta/engine_service_client.d.ts +106 -106
  140. package/build/src/v1beta/engine_service_client.js +153 -315
  141. package/build/src/v1beta/evaluation_service_client.d.ts +161 -161
  142. package/build/src/v1beta/evaluation_service_client.js +141 -285
  143. package/build/src/v1beta/grounded_generation_service_client.d.ts +49 -49
  144. package/build/src/v1beta/grounded_generation_service_client.js +86 -114
  145. package/build/src/v1beta/project_service_client.d.ts +76 -76
  146. package/build/src/v1beta/project_service_client.js +115 -231
  147. package/build/src/v1beta/rank_service_client.d.ts +47 -47
  148. package/build/src/v1beta/rank_service_client.js +79 -99
  149. package/build/src/v1beta/recommendation_service_client.d.ts +47 -47
  150. package/build/src/v1beta/recommendation_service_client.js +77 -96
  151. package/build/src/v1beta/sample_query_service_client.d.ts +123 -123
  152. package/build/src/v1beta/sample_query_service_client.js +142 -291
  153. package/build/src/v1beta/sample_query_set_service_client.d.ts +94 -94
  154. package/build/src/v1beta/sample_query_set_service_client.js +104 -149
  155. package/build/src/v1beta/schema_service_client.d.ts +111 -111
  156. package/build/src/v1beta/schema_service_client.js +138 -282
  157. package/build/src/v1beta/search_service_client.d.ts +665 -665
  158. package/build/src/v1beta/search_service_client.js +97 -128
  159. package/build/src/v1beta/search_tuning_service_client.d.ts +77 -77
  160. package/build/src/v1beta/search_tuning_service_client.js +120 -243
  161. package/build/src/v1beta/serving_config_service_client.d.ts +75 -75
  162. package/build/src/v1beta/serving_config_service_client.js +95 -129
  163. package/build/src/v1beta/site_search_engine_service_client.d.ts +151 -151
  164. package/build/src/v1beta/site_search_engine_service_client.js +186 -386
  165. package/build/src/v1beta/user_event_service_client.d.ts +78 -78
  166. package/build/src/v1beta/user_event_service_client.js +128 -261
  167. package/package.json +4 -4
@@ -110,7 +110,7 @@ message DataStore {
110
110
  repeated SolutionType solution_types = 5;
111
111
 
112
112
  // Output only. The id of the default
113
- // [Schema][google.cloud.discoveryengine.v1.Schema] asscociated to this data
113
+ // [Schema][google.cloud.discoveryengine.v1.Schema] associated to this data
114
114
  // store.
115
115
  string default_schema_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
116
116
 
@@ -124,6 +124,10 @@ message DataStore {
124
124
  google.protobuf.Timestamp create_time = 4
125
125
  [(google.api.field_behavior) = OUTPUT_ONLY];
126
126
 
127
+ // Optional. Configuration for advanced site search.
128
+ AdvancedSiteSearchConfig advanced_site_search_config = 12
129
+ [(google.api.field_behavior) = OPTIONAL];
130
+
127
131
  // Output only. Data size estimation for billing.
128
132
  BillingEstimation billing_estimation = 23
129
133
  [(google.api.field_behavior) = OUTPUT_ONLY];
@@ -142,9 +146,12 @@ message DataStore {
142
146
  // [DataStore][google.cloud.discoveryengine.v1.DataStore] when provisioning
143
147
  // it. If unset, a default vertical specialized schema will be used.
144
148
  //
145
- // This field is only used by [CreateDataStore][] API, and will be ignored if
146
- // used in other APIs. This field will be omitted from all API responses
147
- // including [CreateDataStore][] API. To retrieve a schema of a
149
+ // This field is only used by
150
+ // [CreateDataStore][google.cloud.discoveryengine.v1.DataStoreService.CreateDataStore]
151
+ // API, and will be ignored if used in other APIs. This field will be omitted
152
+ // from all API responses including
153
+ // [CreateDataStore][google.cloud.discoveryengine.v1.DataStoreService.CreateDataStore]
154
+ // API. To retrieve a schema of a
148
155
  // [DataStore][google.cloud.discoveryengine.v1.DataStore], use
149
156
  // [SchemaService.GetSchema][google.cloud.discoveryengine.v1.SchemaService.GetSchema]
150
157
  // API instead.
@@ -155,6 +162,15 @@ message DataStore {
155
162
  Schema starting_schema = 28;
156
163
  }
157
164
 
165
+ // Configuration data for advance site search.
166
+ message AdvancedSiteSearchConfig {
167
+ // If set true, initial indexing is disabled for the DataStore.
168
+ optional bool disable_initial_index = 3;
169
+
170
+ // If set true, automatic refresh is disabled for the DataStore.
171
+ optional bool disable_automatic_refresh = 4;
172
+ }
173
+
158
174
  // Config to store data store type configuration for workspace data
159
175
  message WorkspaceConfig {
160
176
  // Specifies the type of Workspace App supported by this DataStore
@@ -182,6 +198,9 @@ message WorkspaceConfig {
182
198
 
183
199
  // Workspace Data Store contains Keep data
184
200
  GOOGLE_KEEP = 7;
201
+
202
+ // Workspace Data Store contains People data
203
+ GOOGLE_PEOPLE = 8;
185
204
  }
186
205
 
187
206
  // The Google Workspace data source.
@@ -80,6 +80,10 @@ message Document {
80
80
  // A sample of errors encountered while indexing the document.
81
81
  // If this field is populated, the document is not indexed due to errors.
82
82
  repeated google.rpc.Status error_samples = 2;
83
+
84
+ // Immutable. The message indicates the document index is in progress.
85
+ // If this field is populated, the document index is pending.
86
+ string pending_message = 3 [(google.api.field_behavior) = IMMUTABLE];
83
87
  }
84
88
 
85
89
  // Data representation. One of
@@ -109,7 +113,7 @@ message Document {
109
113
  // Immutable. The identifier of the document.
110
114
  //
111
115
  // Id should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034)
112
- // standard with a length limit of 63 characters.
116
+ // standard with a length limit of 128 characters.
113
117
  string id = 2 [(google.api.field_behavior) = IMMUTABLE];
114
118
 
115
119
  // The identifier of the schema located in the same data store.
@@ -145,6 +149,7 @@ message Document {
145
149
  // * If document is indexed successfully, the index_time field is populated.
146
150
  // * Otherwise, if document is not indexed due to errors, the error_samples
147
151
  // field is populated.
148
- // * Otherwise, index_status is unset.
152
+ // * Otherwise, if document's index is in progress, the pending_message field
153
+ // is populated.
149
154
  IndexStatus index_status = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
150
155
  }
@@ -281,7 +281,7 @@ message CreateDocumentRequest {
281
281
  // Otherwise, an `ALREADY_EXISTS` error is returned.
282
282
  //
283
283
  // This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034)
284
- // standard with a length limit of 63 characters. Otherwise, an
284
+ // standard with a length limit of 128 characters. Otherwise, an
285
285
  // `INVALID_ARGUMENT` error is returned.
286
286
  string document_id = 3 [(google.api.field_behavior) = REQUIRED];
287
287
  }
@@ -114,6 +114,20 @@ message Engine {
114
114
  // [ChatEngineMetadata.dialogflow_agent][google.cloud.discoveryengine.v1.Engine.ChatEngineMetadata.dialogflow_agent]
115
115
  // for actual agent association after Engine is created.
116
116
  string dialogflow_agent_to_link = 2;
117
+
118
+ // Optional. If the flag set to true, we allow the agent and engine are in
119
+ // different locations, otherwise the agent and engine are required to be in
120
+ // the same location. The flag is set to false by default.
121
+ //
122
+ // Note that the `allow_cross_region` are one-time consumed by and
123
+ // passed to
124
+ // [EngineService.CreateEngine][google.cloud.discoveryengine.v1.EngineService.CreateEngine].
125
+ // It means they cannot be retrieved using
126
+ // [EngineService.GetEngine][google.cloud.discoveryengine.v1.EngineService.GetEngine]
127
+ // or
128
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1.EngineService.ListEngines]
129
+ // API after engine creation.
130
+ bool allow_cross_region = 3 [(google.api.field_behavior) = OPTIONAL];
117
131
  }
118
132
 
119
133
  // Common configurations for an Engine.
@@ -205,9 +219,8 @@ message Engine {
205
219
 
206
220
  // The industry vertical that the engine registers.
207
221
  // The restriction of the Engine industry vertical is based on
208
- // [DataStore][google.cloud.discoveryengine.v1.DataStore]: If unspecified,
209
- // default to `GENERIC`. Vertical on Engine has to match vertical of the
210
- // DataStore linked to the engine.
222
+ // [DataStore][google.cloud.discoveryengine.v1.DataStore]: Vertical on Engine
223
+ // has to match vertical of the DataStore linked to the engine.
211
224
  IndustryVertical industry_vertical = 16;
212
225
 
213
226
  // Common config spec that specifies the metadata of the engine.
@@ -109,6 +109,9 @@ message GenerateGroundedContentRequest {
109
109
  // If specified, custom value for frequency penalty will be used.
110
110
  optional float frequency_penalty = 8;
111
111
 
112
+ // If specified, custom value for the seed will be used.
113
+ optional int32 seed = 12;
114
+
112
115
  // If specified, custom value for presence penalty will be used.
113
116
  optional float presence_penalty = 9;
114
117
 
@@ -188,6 +191,9 @@ message GenerateGroundedContentRequest {
188
191
  [(google.api.field_behavior) = OPTIONAL];
189
192
  }
190
193
 
194
+ // Params for using enterprise web retrieval as grounding source.
195
+ message EnterpriseWebRetrievalSource {}
196
+
191
197
  // Sources.
192
198
  oneof source {
193
199
  // If set, grounding is performed with inline content.
@@ -198,6 +204,9 @@ message GenerateGroundedContentRequest {
198
204
 
199
205
  // If set, grounding is performed with Google Search.
200
206
  GoogleSearchSource google_search_source = 3;
207
+
208
+ // If set, grounding is performed with enterprise web retrieval.
209
+ EnterpriseWebRetrievalSource enterprise_web_retrieval_source = 8;
201
210
  }
202
211
  }
203
212
 
@@ -228,8 +237,6 @@ message GenerateGroundedContentRequest {
228
237
  // For single-turn queries, this is a single instance. For multi-turn queries,
229
238
  // this is a repeated field that contains conversation history + latest
230
239
  // request.
231
- //
232
- // Only a single-turn query is supported currently.
233
240
  repeated GroundedGenerationContent contents = 2;
234
241
 
235
242
  // Content generation specification.
@@ -258,6 +265,7 @@ message GenerateGroundedContentRequest {
258
265
  map<string, string> user_labels = 6;
259
266
  }
260
267
 
268
+ // Response for the `GenerateGroundedContent` method.
261
269
  message GenerateGroundedContentResponse {
262
270
  // A response candidate generated from the model.
263
271
  message Candidate {
@@ -347,6 +355,39 @@ message GenerateGroundedContentResponse {
347
355
  optional float support_score = 2;
348
356
  }
349
357
 
358
+ // Metadata about an image from the web search.
359
+ message ImageMetadata {
360
+ // Metadata about the website that the image is from.
361
+ message WebsiteInfo {
362
+ // The url of the website.
363
+ string uri = 1;
364
+
365
+ // The title of the website.
366
+ string title = 2;
367
+ }
368
+
369
+ // Metadata about the image.
370
+ message Image {
371
+ // The url of the image.
372
+ string uri = 1;
373
+
374
+ // The width of the image in pixels.
375
+ int32 width = 2;
376
+
377
+ // The height of the image in pixels.
378
+ int32 height = 3;
379
+ }
380
+
381
+ // Metadata about the full size image.
382
+ Image image = 1;
383
+
384
+ // Metadata about the thumbnail.
385
+ Image thumbnail = 2;
386
+
387
+ // The details about the website that the image is from.
388
+ WebsiteInfo source = 3;
389
+ }
390
+
350
391
  // Retrieval metadata to provide an understanding in the
351
392
  // retrieval steps performed by the model. There can be multiple such
352
393
  // messages which can correspond to different parts of the retrieval. This
@@ -367,6 +408,9 @@ message GenerateGroundedContentResponse {
367
408
  // An support to a fact indicates that the claim is supported by
368
409
  // the fact.
369
410
  repeated GroundingSupport grounding_support = 2;
411
+
412
+ // Images from the web search.
413
+ repeated ImageMetadata images = 9;
370
414
  }
371
415
 
372
416
  // Index of the candidate.
@@ -409,7 +453,7 @@ message CheckGroundingRequest {
409
453
  }
410
454
  ];
411
455
 
412
- // Answer candidate to check. Can have a maximum length of 1024 characters.
456
+ // Answer candidate to check. It can have a maximum length of 4096 tokens.
413
457
  string answer_candidate = 2;
414
458
 
415
459
  // List of facts for the grounding check.
@@ -443,14 +487,30 @@ message CheckGroundingRequest {
443
487
  // [GroundedGenerationService.CheckGrounding][google.cloud.discoveryengine.v1.GroundedGenerationService.CheckGrounding]
444
488
  // method.
445
489
  message CheckGroundingResponse {
490
+ // Fact chunk for grounding check.
491
+ message CheckGroundingFactChunk {
492
+ // Text content of the fact chunk. Can be at most 10K characters long.
493
+ string chunk_text = 1;
494
+ }
495
+
446
496
  // Text and citation info for a claim in the answer candidate.
447
497
  message Claim {
448
498
  // Position indicating the start of the claim in the answer candidate,
449
- // measured in bytes.
499
+ // measured in bytes. Note that this is not measured in characters and,
500
+ // therefore, must be rendered in the user interface keeping in mind that
501
+ // some characters may take more than one byte. For example,
502
+ // if the claim text contains non-ASCII characters, the start and end
503
+ // positions vary when measured in characters
504
+ // (programming-language-dependent) and when measured in bytes
505
+ // (programming-language-independent).
450
506
  optional int32 start_pos = 1;
451
507
 
452
508
  // Position indicating the end of the claim in the answer candidate,
453
- // exclusive.
509
+ // exclusive, in bytes. Note that this is not measured in characters and,
510
+ // therefore, must be rendered as such. For example, if the claim text
511
+ // contains non-ASCII characters, the start and end positions vary when
512
+ // measured in characters (programming-language-dependent) and when measured
513
+ // in bytes (programming-language-independent).
454
514
  optional int32 end_pos = 2;
455
515
 
456
516
  // Text for the claim in the answer candidate. Always provided regardless of
@@ -468,10 +528,7 @@ message CheckGroundingResponse {
468
528
  // decided this claim doesn't require attribution/grounding check, this
469
529
  // field will be set to false. In that case, no grounding check was done for
470
530
  // the claim and therefore
471
- // [citation_indices][google.cloud.discoveryengine.v1.CheckGroundingResponse.Claim.citation_indices],
472
- // [anti_citation_indices][google.cloud.discoveryengine.v1.CheckGroundingResponse.Claim.anti_citation_indices],
473
- // and
474
- // [score][google.cloud.discoveryengine.v1.CheckGroundingResponse.Claim.score]
531
+ // [citation_indices][google.cloud.discoveryengine.v1.CheckGroundingResponse.Claim.citation_indices]
475
532
  // should not be returned.
476
533
  optional bool grounding_check_required = 6;
477
534
  }
@@ -485,6 +542,10 @@ message CheckGroundingResponse {
485
542
  // These are derived from the facts supplied in the request.
486
543
  repeated FactChunk cited_chunks = 3;
487
544
 
545
+ // List of facts cited across all claims in the answer candidate.
546
+ // These are derived from the facts supplied in the request.
547
+ repeated CheckGroundingFactChunk cited_facts = 6;
548
+
488
549
  // Claim texts and citation info across all claims in the answer candidate.
489
550
  repeated Claim claims = 4;
490
551
  }
@@ -206,7 +206,7 @@ message BigtableOptions {
206
206
  // The type of values in a Bigtable column or column family.
207
207
  // The values are expected to be encoded using
208
208
  // [HBase
209
- // Bytes.toBytes](https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/util/Bytes.html)
209
+ // Bytes.toBytes](https://hbase.apache.org/1.4/apidocs/org/apache/hadoop/hbase/util/Bytes.html)
210
210
  // function when the encoding value is set to `BINARY`.
211
211
  enum Type {
212
212
  // The type is unspecified.
@@ -296,6 +296,18 @@ message FhirStoreSource {
296
296
  // types](https://cloud.google.com/generative-ai-app-builder/docs/fhir-schema-reference#resource-level-specification).
297
297
  // Default to all supported FHIR resource types if empty.
298
298
  repeated string resource_types = 3;
299
+
300
+ // Optional. Whether to update the DataStore schema to the latest predefined
301
+ // schema.
302
+ //
303
+ // If true, the DataStore schema will be updated to include any FHIR fields
304
+ // or resource types that have been added since the last import and
305
+ // corresponding FHIR resources will be imported from the FHIR store.
306
+ //
307
+ // Note this field cannot be used in conjunction with `resource_types`. It
308
+ // should be used after initial import.
309
+ bool update_from_latest_predefined_schema = 4
310
+ [(google.api.field_behavior) = OPTIONAL];
299
311
  }
300
312
 
301
313
  // Cloud SQL source import data from.
@@ -627,6 +639,13 @@ message ImportDocumentsRequest {
627
639
  // * [FirestoreSource][google.cloud.discoveryengine.v1.FirestoreSource].
628
640
  // * [BigtableSource][google.cloud.discoveryengine.v1.BigtableSource].
629
641
  string id_field = 9;
642
+
643
+ // Optional. Whether to force refresh the unstructured content of the
644
+ // documents.
645
+ //
646
+ // If set to `true`, the content part of the documents will be refreshed
647
+ // regardless of the update status of the referencing content.
648
+ bool force_refresh_content = 16 [(google.api.field_behavior) = OPTIONAL];
630
649
  }
631
650
 
632
651
  // Response of the
@@ -55,16 +55,20 @@ message PurgeUserEventsRequest {
55
55
  // * `userId`: Double quoted string. Specifying this will delete all events
56
56
  // associated with a user.
57
57
  //
58
+ // Note: This API only supports purging a max range of 30 days.
59
+ //
58
60
  // Examples:
59
61
  //
60
62
  // * Deleting all events in a time range:
61
63
  // `eventTime > "2012-04-23T18:25:43.511Z"
62
64
  // eventTime < "2012-04-23T18:30:43.511Z"`
63
- // * Deleting specific eventType:
64
- // `eventType = "search"`
65
- // * Deleting all events for a specific visitor:
66
- // `userPseudoId = "visitor1024"`
67
- // * Deleting all events inside a DataStore:
65
+ // * Deleting specific eventType in a time range:
66
+ // `eventTime > "2012-04-23T18:25:43.511Z"
67
+ // eventTime < "2012-04-23T18:30:43.511Z" eventType = "search"`
68
+ // * Deleting all events for a specific visitor in a time range:
69
+ // `eventTime > "2012-04-23T18:25:43.511Z"
70
+ // eventTime < "2012-04-23T18:30:43.511Z" userPseudoId = "visitor1024"`
71
+ // * Deleting the past 30 days of events inside a DataStore:
68
72
  // `*`
69
73
  //
70
74
  // The filtering fields are assumed to have an implicit AND.
@@ -66,6 +66,8 @@ message RankingRecord {
66
66
  string content = 3;
67
67
 
68
68
  // The score of this record based on the given query and selected model.
69
+ // The score will be rounded to 2 decimal places. If the score is close to 0,
70
+ // it will be rounded to 0.0001 to avoid returning unset.
69
71
  float score = 4;
70
72
  }
71
73
 
@@ -83,7 +85,7 @@ message RankRequest {
83
85
 
84
86
  // The identifier of the model to use. It is one of:
85
87
  //
86
- // * `semantic-ranker-512@latest`: Semantic ranking model with maxiumn input
88
+ // * `semantic-ranker-512@latest`: Semantic ranking model with maximum input
87
89
  // token size 512.
88
90
  //
89
91
  // It is set to `semantic-ranker-512@latest` by default if unspecified.
@@ -116,9 +116,9 @@ message RecommendRequest {
116
116
  // attribute-based expressions are expected instead of the above described
117
117
  // tag-based syntax. Examples:
118
118
  //
119
- // * (launguage: ANY("en", "es")) AND NOT (categories: ANY("Movie"))
119
+ // * (language: ANY("en", "es")) AND NOT (categories: ANY("Movie"))
120
120
  // * (available: true) AND
121
- // (launguage: ANY("en", "es")) OR (categories: ANY("Movie"))
121
+ // (language: ANY("en", "es")) OR (categories: ANY("Movie"))
122
122
  //
123
123
  // If your filter blocks all results, the API returns generic
124
124
  // (unfiltered) popular Documents. If you only want results strictly matching
@@ -0,0 +1,107 @@
1
+ // Copyright 2025 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.v1;
18
+
19
+ import "google/api/field_behavior.proto";
20
+
21
+ option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1";
22
+ option go_package = "cloud.google.com/go/discoveryengine/apiv1/discoveryenginepb;discoveryenginepb";
23
+ option java_multiple_files = true;
24
+ option java_outer_classname = "SafetyProto";
25
+ option java_package = "com.google.cloud.discoveryengine.v1";
26
+ option objc_class_prefix = "DISCOVERYENGINE";
27
+ option php_namespace = "Google\\Cloud\\DiscoveryEngine\\V1";
28
+ option ruby_package = "Google::Cloud::DiscoveryEngine::V1";
29
+
30
+ // Harm categories that will block the content.
31
+ enum HarmCategory {
32
+ // The harm category is unspecified.
33
+ HARM_CATEGORY_UNSPECIFIED = 0;
34
+
35
+ // The harm category is hate speech.
36
+ HARM_CATEGORY_HATE_SPEECH = 1;
37
+
38
+ // The harm category is dangerous content.
39
+ HARM_CATEGORY_DANGEROUS_CONTENT = 2;
40
+
41
+ // The harm category is harassment.
42
+ HARM_CATEGORY_HARASSMENT = 3;
43
+
44
+ // The harm category is sexually explicit content.
45
+ HARM_CATEGORY_SEXUALLY_EXPLICIT = 4;
46
+
47
+ // The harm category is civic integrity.
48
+ HARM_CATEGORY_CIVIC_INTEGRITY = 5;
49
+ }
50
+
51
+ // Safety rating corresponding to the generated content.
52
+ message SafetyRating {
53
+ // Harm probability levels in the content.
54
+ enum HarmProbability {
55
+ // Harm probability unspecified.
56
+ HARM_PROBABILITY_UNSPECIFIED = 0;
57
+
58
+ // Negligible level of harm.
59
+ NEGLIGIBLE = 1;
60
+
61
+ // Low level of harm.
62
+ LOW = 2;
63
+
64
+ // Medium level of harm.
65
+ MEDIUM = 3;
66
+
67
+ // High level of harm.
68
+ HIGH = 4;
69
+ }
70
+
71
+ // Harm severity levels.
72
+ enum HarmSeverity {
73
+ // Harm severity unspecified.
74
+ HARM_SEVERITY_UNSPECIFIED = 0;
75
+
76
+ // Negligible level of harm severity.
77
+ HARM_SEVERITY_NEGLIGIBLE = 1;
78
+
79
+ // Low level of harm severity.
80
+ HARM_SEVERITY_LOW = 2;
81
+
82
+ // Medium level of harm severity.
83
+ HARM_SEVERITY_MEDIUM = 3;
84
+
85
+ // High level of harm severity.
86
+ HARM_SEVERITY_HIGH = 4;
87
+ }
88
+
89
+ // Output only. Harm category.
90
+ HarmCategory category = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
91
+
92
+ // Output only. Harm probability levels in the content.
93
+ HarmProbability probability = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
94
+
95
+ // Output only. Harm probability score.
96
+ float probability_score = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
97
+
98
+ // Output only. Harm severity levels in the content.
99
+ HarmSeverity severity = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
100
+
101
+ // Output only. Harm severity score.
102
+ float severity_score = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
103
+
104
+ // Output only. Indicates whether the content was filtered out because of this
105
+ // rating.
106
+ bool blocked = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
107
+ }