@google-cloud/discoveryengine 1.3.1 → 1.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +64 -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/v1alpha/acl_config.proto +49 -0
  20. package/build/protos/google/cloud/discoveryengine/v1alpha/acl_config_service.proto +79 -0
  21. package/build/protos/google/cloud/discoveryengine/v1alpha/chunk.proto +72 -0
  22. package/build/protos/google/cloud/discoveryengine/v1alpha/chunk_service.proto +137 -0
  23. package/build/protos/google/cloud/discoveryengine/v1alpha/common.proto +77 -4
  24. package/build/protos/google/cloud/discoveryengine/v1alpha/completion.proto +52 -0
  25. package/build/protos/google/cloud/discoveryengine/v1alpha/completion_service.proto +44 -2
  26. package/build/protos/google/cloud/discoveryengine/v1alpha/conversational_search_service.proto +6 -1
  27. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store.proto +44 -0
  28. package/build/protos/google/cloud/discoveryengine/v1alpha/data_store_service.proto +80 -1
  29. package/build/protos/google/cloud/discoveryengine/v1alpha/document.proto +83 -0
  30. package/build/protos/google/cloud/discoveryengine/v1alpha/document_processing_config.proto +127 -0
  31. package/build/protos/google/cloud/discoveryengine/v1alpha/document_service.proto +6 -0
  32. package/build/protos/google/cloud/discoveryengine/v1alpha/engine.proto +13 -8
  33. package/build/protos/google/cloud/discoveryengine/v1alpha/engine_service.proto +3 -2
  34. package/build/protos/google/cloud/discoveryengine/v1alpha/estimate_billing_service.proto +130 -0
  35. package/build/protos/google/cloud/discoveryengine/v1alpha/import_config.proto +64 -0
  36. package/build/protos/google/cloud/discoveryengine/v1alpha/purge_config.proto +66 -0
  37. package/build/protos/google/cloud/discoveryengine/v1alpha/recommendation_service.proto +3 -1
  38. package/build/protos/google/cloud/discoveryengine/v1alpha/schema.proto +3 -0
  39. package/build/protos/google/cloud/discoveryengine/v1alpha/search_service.proto +74 -13
  40. package/build/protos/google/cloud/discoveryengine/v1alpha/search_tuning_service.proto +24 -20
  41. package/build/protos/google/cloud/discoveryengine/v1alpha/serving_config.proto +271 -0
  42. package/build/protos/google/cloud/discoveryengine/v1alpha/serving_config_service.proto +147 -0
  43. package/build/protos/google/cloud/discoveryengine/v1alpha/site_search_engine.proto +9 -3
  44. package/build/protos/google/cloud/discoveryengine/v1alpha/site_search_engine_service.proto +7 -4
  45. package/build/protos/google/cloud/discoveryengine/v1alpha/user_event.proto +4 -3
  46. package/build/protos/google/cloud/discoveryengine/v1beta/common.proto +59 -8
  47. package/build/protos/google/cloud/discoveryengine/v1beta/completion.proto +52 -0
  48. package/build/protos/google/cloud/discoveryengine/v1beta/completion_service.proto +51 -4
  49. package/build/protos/google/cloud/discoveryengine/v1beta/conversation.proto +3 -0
  50. package/build/protos/google/cloud/discoveryengine/v1beta/conversational_search_service.proto +45 -1
  51. package/build/protos/google/cloud/discoveryengine/v1beta/data_store.proto +120 -0
  52. package/build/protos/google/cloud/discoveryengine/v1beta/data_store_service.proto +306 -0
  53. package/build/protos/google/cloud/discoveryengine/v1beta/document.proto +10 -1
  54. package/build/protos/google/cloud/discoveryengine/v1beta/document_processing_config.proto +94 -0
  55. package/build/protos/google/cloud/discoveryengine/v1beta/engine.proto +220 -0
  56. package/build/protos/google/cloud/discoveryengine/v1beta/engine_service.proto +244 -0
  57. package/build/protos/google/cloud/discoveryengine/v1beta/import_config.proto +64 -0
  58. package/build/protos/google/cloud/discoveryengine/v1beta/purge_config.proto +41 -0
  59. package/build/protos/google/cloud/discoveryengine/v1beta/recommendation_service.proto +26 -3
  60. package/build/protos/google/cloud/discoveryengine/v1beta/search_service.proto +169 -15
  61. package/build/protos/google/cloud/discoveryengine/v1beta/search_tuning_service.proto +151 -0
  62. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config.proto +265 -0
  63. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config_service.proto +148 -0
  64. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine.proto +170 -0
  65. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine_service.proto +695 -0
  66. package/build/protos/google/cloud/discoveryengine/v1beta/user_event.proto +4 -3
  67. package/build/protos/protos.d.ts +48530 -23682
  68. package/build/protos/protos.js +122429 -63306
  69. package/build/protos/protos.json +13438 -7286
  70. package/build/src/index.d.ts +10 -1
  71. package/build/src/index.js +10 -1
  72. package/build/src/v1/completion_service_client.d.ts +489 -7
  73. package/build/src/v1/completion_service_client.js +715 -11
  74. package/build/src/v1/completion_service_client_config.json +10 -0
  75. package/build/src/v1/conversational_search_service_client.d.ts +341 -3
  76. package/build/src/v1/conversational_search_service_client.js +466 -9
  77. package/build/src/v1/data_store_service_client.d.ts +1286 -0
  78. package/build/src/v1/data_store_service_client.js +1768 -0
  79. package/build/src/v1/data_store_service_client_config.json +46 -0
  80. package/build/src/v1/document_service_client.d.ts +347 -2
  81. package/build/src/v1/document_service_client.js +506 -9
  82. package/build/src/v1/engine_service_client.d.ts +1211 -0
  83. package/build/src/v1/engine_service_client.js +1731 -0
  84. package/build/src/v1/engine_service_client_config.json +46 -0
  85. package/build/src/v1/index.d.ts +3 -0
  86. package/build/src/v1/index.js +7 -1
  87. package/build/src/v1/schema_service_client.d.ts +272 -2
  88. package/build/src/v1/schema_service_client.js +402 -9
  89. package/build/src/v1/search_service_client.d.ts +515 -11
  90. package/build/src/v1/search_service_client.js +648 -15
  91. package/build/src/v1/site_search_engine_service_client.d.ts +1564 -0
  92. package/build/src/v1/site_search_engine_service_client.js +2075 -0
  93. package/build/src/v1/site_search_engine_service_client_config.json +74 -0
  94. package/build/src/v1/user_event_service_client.d.ts +272 -2
  95. package/build/src/v1/user_event_service_client.js +402 -9
  96. package/build/src/v1alpha/acl_config_service_client.d.ts +1233 -0
  97. package/build/src/v1alpha/acl_config_service_client.js +1765 -0
  98. package/build/src/v1alpha/acl_config_service_client_config.json +34 -0
  99. package/build/src/v1alpha/chunk_service_client.d.ts +1350 -0
  100. package/build/src/v1alpha/chunk_service_client.js +1886 -0
  101. package/build/src/v1alpha/chunk_service_client_config.json +34 -0
  102. package/build/src/v1alpha/completion_service_client.d.ts +599 -5
  103. package/build/src/v1alpha/completion_service_client.js +868 -12
  104. package/build/src/v1alpha/completion_service_client_config.json +10 -0
  105. package/build/src/v1alpha/conversational_search_service_client.d.ts +244 -3
  106. package/build/src/v1alpha/conversational_search_service_client.js +353 -10
  107. package/build/src/v1alpha/data_store_service_client.d.ts +462 -5
  108. package/build/src/v1alpha/data_store_service_client.js +599 -12
  109. package/build/src/v1alpha/data_store_service_client_config.json +8 -0
  110. package/build/src/v1alpha/document_service_client.d.ts +393 -2
  111. package/build/src/v1alpha/document_service_client.js +551 -10
  112. package/build/src/v1alpha/engine_service_client.d.ts +386 -4
  113. package/build/src/v1alpha/engine_service_client.js +551 -10
  114. package/build/src/v1alpha/estimate_billing_service_client.d.ts +1367 -0
  115. package/build/src/v1alpha/estimate_billing_service_client.js +2028 -0
  116. package/build/src/v1alpha/estimate_billing_service_client_config.json +30 -0
  117. package/build/src/v1alpha/index.d.ts +4 -0
  118. package/build/src/v1alpha/index.js +10 -2
  119. package/build/src/v1alpha/recommendation_service_client.d.ts +242 -3
  120. package/build/src/v1alpha/recommendation_service_client.js +353 -10
  121. package/build/src/v1alpha/schema_service_client.d.ts +383 -2
  122. package/build/src/v1alpha/schema_service_client.js +551 -10
  123. package/build/src/v1alpha/search_service_client.d.ts +269 -17
  124. package/build/src/v1alpha/search_service_client.js +373 -20
  125. package/build/src/v1alpha/search_tuning_service_client.d.ts +384 -3
  126. package/build/src/v1alpha/search_tuning_service_client.js +551 -10
  127. package/build/src/v1alpha/serving_config_service_client.d.ts +1369 -0
  128. package/build/src/v1alpha/serving_config_service_client.js +1935 -0
  129. package/build/src/v1alpha/serving_config_service_client_config.json +38 -0
  130. package/build/src/v1alpha/site_search_engine_service_client.d.ts +383 -2
  131. package/build/src/v1alpha/site_search_engine_service_client.js +551 -10
  132. package/build/src/v1alpha/user_event_service_client.d.ts +383 -2
  133. package/build/src/v1alpha/user_event_service_client.js +551 -10
  134. package/build/src/v1beta/completion_service_client.d.ts +708 -7
  135. package/build/src/v1beta/completion_service_client.js +1015 -11
  136. package/build/src/v1beta/completion_service_client_config.json +10 -0
  137. package/build/src/v1beta/conversational_search_service_client.d.ts +420 -3
  138. package/build/src/v1beta/conversational_search_service_client.js +570 -9
  139. package/build/src/v1beta/data_store_service_client.d.ts +1508 -0
  140. package/build/src/v1beta/data_store_service_client.js +2070 -0
  141. package/build/src/v1beta/data_store_service_client_config.json +46 -0
  142. package/build/src/v1beta/document_service_client.d.ts +566 -2
  143. package/build/src/v1beta/document_service_client.js +810 -11
  144. package/build/src/v1beta/engine_service_client.d.ts +1432 -0
  145. package/build/src/v1beta/engine_service_client.js +2032 -0
  146. package/build/src/v1beta/engine_service_client_config.json +46 -0
  147. package/build/src/v1beta/index.d.ts +5 -0
  148. package/build/src/v1beta/index.js +11 -1
  149. package/build/src/v1beta/recommendation_service_client.d.ts +495 -5
  150. package/build/src/v1beta/recommendation_service_client.js +674 -9
  151. package/build/src/v1beta/schema_service_client.d.ts +491 -2
  152. package/build/src/v1beta/schema_service_client.js +706 -11
  153. package/build/src/v1beta/search_service_client.d.ts +620 -29
  154. package/build/src/v1beta/search_service_client.js +772 -27
  155. package/build/src/v1beta/search_tuning_service_client.d.ts +1196 -0
  156. package/build/src/v1beta/search_tuning_service_client.js +1781 -0
  157. package/build/src/v1beta/search_tuning_service_client_config.json +30 -0
  158. package/build/src/v1beta/serving_config_service_client.d.ts +1217 -0
  159. package/build/src/v1beta/serving_config_service_client.js +1724 -0
  160. package/build/src/v1beta/serving_config_service_client_config.json +38 -0
  161. package/build/src/v1beta/site_search_engine_service_client.d.ts +1787 -0
  162. package/build/src/v1beta/site_search_engine_service_client.js +2375 -0
  163. package/build/src/v1beta/site_search_engine_service_client_config.json +74 -0
  164. package/build/src/v1beta/user_event_service_client.d.ts +491 -2
  165. package/build/src/v1beta/user_event_service_client.js +706 -11
  166. package/package.json +3 -3
@@ -0,0 +1,220 @@
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/field_behavior.proto";
20
+ import "google/api/resource.proto";
21
+ import "google/cloud/discoveryengine/v1beta/common.proto";
22
+ import "google/protobuf/timestamp.proto";
23
+
24
+ option csharp_namespace = "Google.Cloud.DiscoveryEngine.V1Beta";
25
+ option go_package = "cloud.google.com/go/discoveryengine/apiv1beta/discoveryenginepb;discoveryenginepb";
26
+ option java_multiple_files = true;
27
+ option java_outer_classname = "EngineProto";
28
+ option java_package = "com.google.cloud.discoveryengine.v1beta";
29
+ option objc_class_prefix = "DISCOVERYENGINE";
30
+ option php_namespace = "Google\\Cloud\\DiscoveryEngine\\V1beta";
31
+ option ruby_package = "Google::Cloud::DiscoveryEngine::V1beta";
32
+
33
+ // Metadata that describes the training and serving parameters of an
34
+ // [Engine][google.cloud.discoveryengine.v1beta.Engine].
35
+ message Engine {
36
+ option (google.api.resource) = {
37
+ type: "discoveryengine.googleapis.com/Engine"
38
+ pattern: "projects/{project}/locations/{location}/collections/{collection}/engines/{engine}"
39
+ };
40
+
41
+ // Configurations for a Search Engine.
42
+ message SearchEngineConfig {
43
+ // The search feature tier of this engine.
44
+ //
45
+ // Different tiers might have different
46
+ // pricing. To learn more, please check the pricing documentation.
47
+ //
48
+ // Defaults to
49
+ // [SearchTier.SEARCH_TIER_STANDARD][google.cloud.discoveryengine.v1beta.SearchTier.SEARCH_TIER_STANDARD]
50
+ // if not specified.
51
+ SearchTier search_tier = 1;
52
+
53
+ // The add-on that this search engine enables.
54
+ repeated SearchAddOn search_add_ons = 2;
55
+ }
56
+
57
+ // Configurations for a Chat Engine.
58
+ message ChatEngineConfig {
59
+ // Configurations for generating a Dialogflow agent.
60
+ //
61
+ // Note that these configurations are one-time consumed by
62
+ // and passed to Dialogflow service. It means they cannot be retrieved using
63
+ // [EngineService.GetEngine][google.cloud.discoveryengine.v1beta.EngineService.GetEngine]
64
+ // or
65
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1beta.EngineService.ListEngines]
66
+ // API after engine creation.
67
+ message AgentCreationConfig {
68
+ // Name of the company, organization or other entity that the agent
69
+ // represents. Used for knowledge connector LLM prompt and for knowledge
70
+ // search.
71
+ string business = 1;
72
+
73
+ // Required. The default language of the agent as a language tag.
74
+ // See [Language
75
+ // Support](https://cloud.google.com/dialogflow/docs/reference/language)
76
+ // for a list of the currently supported language codes.
77
+ string default_language_code = 2;
78
+
79
+ // Required. The time zone of the agent from the [time zone
80
+ // database](https://www.iana.org/time-zones), e.g., America/New_York,
81
+ // Europe/Paris.
82
+ string time_zone = 3 [(google.api.field_behavior) = REQUIRED];
83
+
84
+ // Agent location for Agent creation, supported values: global/us/eu.
85
+ // If not provided, us Engine will create Agent using us-central-1 by
86
+ // default; eu Engine will create Agent using eu-west-1 by default.
87
+ string location = 4;
88
+ }
89
+
90
+ // The configurationt generate the Dialogflow agent that is associated to
91
+ // this Engine.
92
+ //
93
+ // Note that these configurations are one-time consumed by
94
+ // and passed to Dialogflow service. It means they cannot be retrieved using
95
+ // [EngineService.GetEngine][google.cloud.discoveryengine.v1beta.EngineService.GetEngine]
96
+ // or
97
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1beta.EngineService.ListEngines]
98
+ // API after engine creation.
99
+ AgentCreationConfig agent_creation_config = 1;
100
+
101
+ // The resource name of an exist Dialogflow agent to link to this Chat
102
+ // Engine. Customers can either provide `agent_creation_config` to create
103
+ // agent or provide an agent name that links the agent with the Chat engine.
104
+ //
105
+ // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
106
+ // ID>`.
107
+ //
108
+ // Note that the `dialogflow_agent_to_link` are one-time consumed by and
109
+ // passed to Dialogflow service. It means they cannot be retrieved using
110
+ // [EngineService.GetEngine][google.cloud.discoveryengine.v1beta.EngineService.GetEngine]
111
+ // or
112
+ // [EngineService.ListEngines][google.cloud.discoveryengine.v1beta.EngineService.ListEngines]
113
+ // API after engine creation. Please use
114
+ // [ChatEngineMetadata.dialogflow_agent][google.cloud.discoveryengine.v1beta.Engine.ChatEngineMetadata.dialogflow_agent]
115
+ // for actual agent association after Engine is created.
116
+ string dialogflow_agent_to_link = 2;
117
+ }
118
+
119
+ // Common configurations for an Engine.
120
+ message CommonConfig {
121
+ // Immutable. The name of the company, business or entity that is associated
122
+ // with the engine. Setting this may help improve LLM related features.
123
+ string company_name = 1 [(google.api.field_behavior) = IMMUTABLE];
124
+ }
125
+
126
+ // Additional information of a Chat Engine.
127
+ // Fields in this message are output only.
128
+ message ChatEngineMetadata {
129
+ // The resource name of a Dialogflow agent, that this Chat Engine refers
130
+ // to.
131
+ //
132
+ // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
133
+ // ID>`.
134
+ string dialogflow_agent = 1;
135
+ }
136
+
137
+ // Additional config specs that defines the behavior of the engine.
138
+ oneof engine_config {
139
+ // Configurations for the Chat Engine. Only applicable if
140
+ // [solution_type][google.cloud.discoveryengine.v1beta.Engine.solution_type]
141
+ // is
142
+ // [SOLUTION_TYPE_CHAT][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_CHAT].
143
+ ChatEngineConfig chat_engine_config = 11;
144
+
145
+ // Configurations for the Search Engine. Only applicable if
146
+ // [solution_type][google.cloud.discoveryengine.v1beta.Engine.solution_type]
147
+ // is
148
+ // [SOLUTION_TYPE_SEARCH][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_SEARCH].
149
+ SearchEngineConfig search_engine_config = 13;
150
+ }
151
+
152
+ // Engine metadata to monitor the status of the engine.
153
+ oneof engine_metadata {
154
+ // Output only. Additional information of the Chat Engine. Only applicable
155
+ // if
156
+ // [solution_type][google.cloud.discoveryengine.v1beta.Engine.solution_type]
157
+ // is
158
+ // [SOLUTION_TYPE_CHAT][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_CHAT].
159
+ ChatEngineMetadata chat_engine_metadata = 12
160
+ [(google.api.field_behavior) = OUTPUT_ONLY];
161
+ }
162
+
163
+ // Immutable. The fully qualified resource name of the engine.
164
+ //
165
+ // This field must be a UTF-8 encoded string with a length limit of 1024
166
+ // characters.
167
+ //
168
+ // Format:
169
+ // `projects/{project_number}/locations/{location}/collections/{collection}/engines/{engine}`
170
+ // engine should be 1-63 characters, and valid characters are
171
+ // /[a-z0-9][a-z0-9-_]*/. Otherwise, an INVALID_ARGUMENT error is returned.
172
+ string name = 1 [(google.api.field_behavior) = IMMUTABLE];
173
+
174
+ // Required. The display name of the engine. Should be human readable. UTF-8
175
+ // encoded string with limit of 1024 characters.
176
+ string display_name = 2 [(google.api.field_behavior) = REQUIRED];
177
+
178
+ // Output only. Timestamp the Recommendation Engine was created at.
179
+ google.protobuf.Timestamp create_time = 3
180
+ [(google.api.field_behavior) = OUTPUT_ONLY];
181
+
182
+ // Output only. Timestamp the Recommendation Engine was last updated.
183
+ google.protobuf.Timestamp update_time = 4
184
+ [(google.api.field_behavior) = OUTPUT_ONLY];
185
+
186
+ // The data stores associated with this engine.
187
+ //
188
+ // For
189
+ // [SOLUTION_TYPE_SEARCH][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_SEARCH]
190
+ // and
191
+ // [SOLUTION_TYPE_RECOMMENDATION][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_RECOMMENDATION]
192
+ // type of engines, they can only associate with at most one data store.
193
+ //
194
+ // If
195
+ // [solution_type][google.cloud.discoveryengine.v1beta.Engine.solution_type]
196
+ // is
197
+ // [SOLUTION_TYPE_CHAT][google.cloud.discoveryengine.v1beta.SolutionType.SOLUTION_TYPE_CHAT],
198
+ // multiple [DataStore][google.cloud.discoveryengine.v1beta.DataStore]s in the
199
+ // same [Collection][google.cloud.discoveryengine.v1beta.Collection] can be
200
+ // associated here.
201
+ //
202
+ // Note that when used in
203
+ // [CreateEngineRequest][google.cloud.discoveryengine.v1beta.CreateEngineRequest],
204
+ // one DataStore id must be provided as the system will use it for necessary
205
+ // initializations.
206
+ repeated string data_store_ids = 5;
207
+
208
+ // Required. The solutions of the engine.
209
+ SolutionType solution_type = 6 [(google.api.field_behavior) = REQUIRED];
210
+
211
+ // The industry vertical that the engine registers.
212
+ // The restriction of the Engine industry vertical is based on
213
+ // [DataStore][google.cloud.discoveryengine.v1beta.DataStore]: If unspecified,
214
+ // default to `GENERIC`. Vertical on Engine has to match vertical of the
215
+ // DataStore liniked to the engine.
216
+ IndustryVertical industry_vertical = 16;
217
+
218
+ // Common config spec that specifies the metadata of the engine.
219
+ CommonConfig common_config = 15;
220
+ }
@@ -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";
@@ -83,4 +84,44 @@ message PurgeDocumentsMetadata {
83
84
 
84
85
  // Count of entries that encountered errors while processing.
85
86
  int64 failure_count = 4;
87
+
88
+ // Count of entries that were ignored as entries were not found.
89
+ int64 ignored_count = 5;
90
+ }
91
+
92
+ // Request message for
93
+ // [CompletionService.PurgeSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.PurgeSuggestionDenyListEntries]
94
+ // method.
95
+ message PurgeSuggestionDenyListEntriesRequest {
96
+ // Required. The parent data store resource name for which to import denylist
97
+ // entries. Follows pattern projects/*/locations/*/collections/*/dataStores/*.
98
+ string parent = 1 [
99
+ (google.api.field_behavior) = REQUIRED,
100
+ (google.api.resource_reference) = {
101
+ type: "discoveryengine.googleapis.com/DataStore"
102
+ }
103
+ ];
104
+ }
105
+
106
+ // Response message for
107
+ // [CompletionService.PurgeSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.PurgeSuggestionDenyListEntries]
108
+ // method.
109
+ message PurgeSuggestionDenyListEntriesResponse {
110
+ // Number of suggestion deny list entries purged.
111
+ int64 purge_count = 1;
112
+
113
+ // A sample of errors encountered while processing the request.
114
+ repeated google.rpc.Status error_samples = 2;
115
+ }
116
+
117
+ // Metadata related to the progress of the PurgeSuggestionDenyListEntries
118
+ // operation. This is returned by the google.longrunning.Operation.metadata
119
+ // field.
120
+ message PurgeSuggestionDenyListEntriesMetadata {
121
+ // Operation create time.
122
+ google.protobuf.Timestamp create_time = 1;
123
+
124
+ // Operation last update time. If the operation is done, this is also the
125
+ // finish time.
126
+ google.protobuf.Timestamp update_time = 2;
86
127
  }
@@ -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: