@google-cloud/discoveryengine 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +63 -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/common.proto +0 -5
  20. package/build/protos/google/cloud/discoveryengine/v1alpha/conversation.proto +3 -0
  21. package/build/protos/google/cloud/discoveryengine/v1alpha/conversational_search_service.proto +39 -0
  22. package/build/protos/google/cloud/discoveryengine/v1alpha/document.proto +1 -1
  23. package/build/protos/google/cloud/discoveryengine/v1alpha/engine_service.proto +1 -1
  24. package/build/protos/google/cloud/discoveryengine/v1alpha/search_service.proto +97 -0
  25. package/build/protos/google/cloud/discoveryengine/v1alpha/search_tuning_service.proto +147 -0
  26. package/build/protos/google/cloud/discoveryengine/v1alpha/site_search_engine.proto +164 -0
  27. package/build/protos/google/cloud/discoveryengine/v1alpha/site_search_engine_service.proto +540 -0
  28. package/build/protos/google/cloud/discoveryengine/v1beta/common.proto +59 -8
  29. package/build/protos/google/cloud/discoveryengine/v1beta/completion.proto +52 -0
  30. package/build/protos/google/cloud/discoveryengine/v1beta/completion_service.proto +51 -4
  31. package/build/protos/google/cloud/discoveryengine/v1beta/conversation.proto +3 -0
  32. package/build/protos/google/cloud/discoveryengine/v1beta/conversational_search_service.proto +40 -1
  33. package/build/protos/google/cloud/discoveryengine/v1beta/data_store.proto +98 -0
  34. package/build/protos/google/cloud/discoveryengine/v1beta/data_store_service.proto +306 -0
  35. package/build/protos/google/cloud/discoveryengine/v1beta/document.proto +1 -1
  36. package/build/protos/google/cloud/discoveryengine/v1beta/engine.proto +220 -0
  37. package/build/protos/google/cloud/discoveryengine/v1beta/engine_service.proto +244 -0
  38. package/build/protos/google/cloud/discoveryengine/v1beta/import_config.proto +64 -0
  39. package/build/protos/google/cloud/discoveryengine/v1beta/purge_config.proto +38 -0
  40. package/build/protos/google/cloud/discoveryengine/v1beta/recommendation_service.proto +26 -3
  41. package/build/protos/google/cloud/discoveryengine/v1beta/search_service.proto +150 -11
  42. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config.proto +264 -0
  43. package/build/protos/google/cloud/discoveryengine/v1beta/serving_config_service.proto +147 -0
  44. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine.proto +170 -0
  45. package/build/protos/google/cloud/discoveryengine/v1beta/site_search_engine_service.proto +695 -0
  46. package/build/protos/google/cloud/discoveryengine/v1beta/user_event.proto +4 -3
  47. package/build/protos/protos.d.ts +42822 -21397
  48. package/build/protos/protos.js +110509 -61572
  49. package/build/protos/protos.json +11779 -6752
  50. package/build/src/index.d.ts +10 -1
  51. package/build/src/index.js +11 -2
  52. package/build/src/v1/completion_service_client.d.ts +489 -7
  53. package/build/src/v1/completion_service_client.js +716 -12
  54. package/build/src/v1/completion_service_client_config.json +10 -0
  55. package/build/src/v1/conversational_search_service_client.d.ts +341 -3
  56. package/build/src/v1/conversational_search_service_client.js +467 -10
  57. package/build/src/v1/data_store_service_client.d.ts +1286 -0
  58. package/build/src/v1/data_store_service_client.js +1768 -0
  59. package/build/src/v1/data_store_service_client_config.json +46 -0
  60. package/build/src/v1/document_service_client.d.ts +347 -2
  61. package/build/src/v1/document_service_client.js +507 -10
  62. package/build/src/v1/engine_service_client.d.ts +1211 -0
  63. package/build/src/v1/engine_service_client.js +1731 -0
  64. package/build/src/v1/engine_service_client_config.json +46 -0
  65. package/build/src/v1/index.d.ts +3 -0
  66. package/build/src/v1/index.js +8 -2
  67. package/build/src/v1/schema_service_client.d.ts +272 -2
  68. package/build/src/v1/schema_service_client.js +403 -10
  69. package/build/src/v1/search_service_client.d.ts +515 -11
  70. package/build/src/v1/search_service_client.js +649 -16
  71. package/build/src/v1/site_search_engine_service_client.d.ts +1564 -0
  72. package/build/src/v1/site_search_engine_service_client.js +2075 -0
  73. package/build/src/v1/site_search_engine_service_client_config.json +74 -0
  74. package/build/src/v1/user_event_service_client.d.ts +272 -2
  75. package/build/src/v1/user_event_service_client.js +403 -10
  76. package/build/src/v1alpha/completion_service_client.d.ts +230 -2
  77. package/build/src/v1alpha/completion_service_client.js +339 -10
  78. package/build/src/v1alpha/conversational_search_service_client.d.ts +247 -2
  79. package/build/src/v1alpha/conversational_search_service_client.js +339 -10
  80. package/build/src/v1alpha/data_store_service_client.d.ts +230 -2
  81. package/build/src/v1alpha/data_store_service_client.js +347 -12
  82. package/build/src/v1alpha/document_service_client.d.ts +230 -2
  83. package/build/src/v1alpha/document_service_client.js +347 -12
  84. package/build/src/v1alpha/engine_service_client.d.ts +231 -3
  85. package/build/src/v1alpha/engine_service_client.js +347 -12
  86. package/build/src/v1alpha/index.d.ts +1 -0
  87. package/build/src/v1alpha/index.js +4 -2
  88. package/build/src/v1alpha/recommendation_service_client.d.ts +230 -2
  89. package/build/src/v1alpha/recommendation_service_client.js +339 -10
  90. package/build/src/v1alpha/schema_service_client.d.ts +230 -2
  91. package/build/src/v1alpha/schema_service_client.js +347 -12
  92. package/build/src/v1alpha/search_service_client.d.ts +269 -2
  93. package/build/src/v1alpha/search_service_client.js +365 -10
  94. package/build/src/v1alpha/search_tuning_service_client.d.ts +977 -0
  95. package/build/src/v1alpha/search_tuning_service_client.js +1479 -0
  96. package/build/src/v1alpha/search_tuning_service_client_config.json +30 -0
  97. package/build/src/v1alpha/site_search_engine_service_client.d.ts +750 -3
  98. package/build/src/v1alpha/site_search_engine_service_client.js +838 -14
  99. package/build/src/v1alpha/site_search_engine_service_client_config.json +44 -0
  100. package/build/src/v1alpha/user_event_service_client.d.ts +230 -2
  101. package/build/src/v1alpha/user_event_service_client.js +347 -12
  102. package/build/src/v1beta/completion_service_client.d.ts +633 -7
  103. package/build/src/v1beta/completion_service_client.js +912 -12
  104. package/build/src/v1beta/completion_service_client_config.json +10 -0
  105. package/build/src/v1beta/conversational_search_service_client.d.ts +341 -3
  106. package/build/src/v1beta/conversational_search_service_client.js +467 -10
  107. package/build/src/v1beta/data_store_service_client.d.ts +1433 -0
  108. package/build/src/v1beta/data_store_service_client.js +1966 -0
  109. package/build/src/v1beta/data_store_service_client_config.json +46 -0
  110. package/build/src/v1beta/document_service_client.d.ts +491 -2
  111. package/build/src/v1beta/document_service_client.js +707 -12
  112. package/build/src/v1beta/engine_service_client.d.ts +1357 -0
  113. package/build/src/v1beta/engine_service_client.js +1928 -0
  114. package/build/src/v1beta/engine_service_client_config.json +46 -0
  115. package/build/src/v1beta/index.d.ts +4 -0
  116. package/build/src/v1beta/index.js +10 -2
  117. package/build/src/v1beta/recommendation_service_client.d.ts +420 -5
  118. package/build/src/v1beta/recommendation_service_client.js +571 -10
  119. package/build/src/v1beta/schema_service_client.d.ts +416 -2
  120. package/build/src/v1beta/schema_service_client.js +603 -12
  121. package/build/src/v1beta/search_service_client.d.ts +539 -29
  122. package/build/src/v1beta/search_service_client.js +665 -28
  123. package/build/src/v1beta/serving_config_service_client.d.ts +1102 -0
  124. package/build/src/v1beta/serving_config_service_client.js +1563 -0
  125. package/build/src/v1beta/serving_config_service_client_config.json +38 -0
  126. package/build/src/v1beta/site_search_engine_service_client.d.ts +1712 -0
  127. package/build/src/v1beta/site_search_engine_service_client.js +2271 -0
  128. package/build/src/v1beta/site_search_engine_service_client_config.json +74 -0
  129. package/build/src/v1beta/user_event_service_client.d.ts +416 -2
  130. package/build/src/v1beta/user_event_service_client.js +603 -12
  131. 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";
@@ -84,3 +85,40 @@ message PurgeDocumentsMetadata {
84
85
  // Count of entries that encountered errors while processing.
85
86
  int64 failure_count = 4;
86
87
  }
88
+
89
+ // Request message for
90
+ // [CompletionService.PurgeSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.PurgeSuggestionDenyListEntries]
91
+ // method.
92
+ message PurgeSuggestionDenyListEntriesRequest {
93
+ // Required. The parent data store resource name for which to import denylist
94
+ // entries. Follows pattern projects/*/locations/*/collections/*/dataStores/*.
95
+ string parent = 1 [
96
+ (google.api.field_behavior) = REQUIRED,
97
+ (google.api.resource_reference) = {
98
+ type: "discoveryengine.googleapis.com/DataStore"
99
+ }
100
+ ];
101
+ }
102
+
103
+ // Response message for
104
+ // [CompletionService.PurgeSuggestionDenyListEntries][google.cloud.discoveryengine.v1beta.CompletionService.PurgeSuggestionDenyListEntries]
105
+ // method.
106
+ message PurgeSuggestionDenyListEntriesResponse {
107
+ // Number of suggestion deny list entries purged.
108
+ int64 purge_count = 1;
109
+
110
+ // A sample of errors encountered while processing the request.
111
+ repeated google.rpc.Status error_samples = 2;
112
+ }
113
+
114
+ // Metadata related to the progress of the PurgeSuggestionDenyListEntries
115
+ // operation. This is returned by the google.longrunning.Operation.metadata
116
+ // field.
117
+ message PurgeSuggestionDenyListEntriesMetadata {
118
+ // Operation create time.
119
+ google.protobuf.Timestamp create_time = 1;
120
+
121
+ // Operation last update time. If the operation is done, this is also the
122
+ // finish time.
123
+ google.protobuf.Timestamp update_time = 2;
124
+ }
@@ -48,17 +48,29 @@ service RecommendationService {
48
48
  post: "/v1beta/{serving_config=projects/*/locations/*/collections/*/dataStores/*/servingConfigs/*}:recommend"
49
49
  body: "*"
50
50
  }
51
+ additional_bindings {
52
+ post: "/v1beta/{serving_config=projects/*/locations/*/collections/*/engines/*/servingConfigs/*}:recommend"
53
+ body: "*"
54
+ }
51
55
  };
52
56
  }
53
57
  }
54
58
 
55
59
  // Request message for Recommend method.
56
60
  message RecommendRequest {
57
- // Required. Full resource name of the format:
61
+ // Required. Full resource name of a
62
+ // [ServingConfig][google.cloud.discoveryengine.v1beta.ServingConfig]:
63
+ // `projects/*/locations/global/collections/*/engines/*/servingConfigs/*`, or
58
64
  // `projects/*/locations/global/collections/*/dataStores/*/servingConfigs/*`
59
65
  //
60
- // Before you can request recommendations from your model, you must create at
61
- // least one serving config for it.
66
+ // One default serving config is created along with your recommendation engine
67
+ // creation. The engine ID will be used as the ID of the default serving
68
+ // config. For example, for Engine
69
+ // `projects/*/locations/global/collections/*/engines/my-engine`, you can use
70
+ // `projects/*/locations/global/collections/*/engines/my-engine/servingConfigs/my-engine`
71
+ // for your
72
+ // [RecommendationService.Recommend][google.cloud.discoveryengine.v1beta.RecommendationService.Recommend]
73
+ // requests.
62
74
  string serving_config = 1 [
63
75
  (google.api.field_behavior) = REQUIRED,
64
76
  (google.api.resource_reference) = {
@@ -100,6 +112,14 @@ message RecommendRequest {
100
112
  // * `(filter_tags: ANY("Red", "Blue") OR filter_tags: ANY("Hot", "Cold"))`
101
113
  // * `(filter_tags: ANY("Red", "Blue")) AND NOT (filter_tags: ANY("Green"))`
102
114
  //
115
+ // If `attributeFilteringSyntax` is set to true under the `params` field, then
116
+ // attribute-based expressions are expected instead of the above described
117
+ // tag-based syntax. Examples:
118
+ //
119
+ // * (launguage: ANY("en", "es")) AND NOT (categories: ANY("Movie"))
120
+ // * (available: true) AND
121
+ // (launguage: ANY("en", "es")) OR (categories: ANY("Movie"))
122
+ //
103
123
  // If your filter blocks all results, the API will return generic
104
124
  // (unfiltered) popular Documents. If you only want results strictly matching
105
125
  // the filters, set `strictFiltering` to True in
@@ -141,6 +161,9 @@ message RecommendRequest {
141
161
  // * `auto-diversity`
142
162
  // This gives request-level control and adjusts recommendation results
143
163
  // based on Document category.
164
+ // * `attributeFilteringSyntax`: Boolean. False by default. If set to true,
165
+ // the `filter` field is interpreted according to the new,
166
+ // attribute-based syntax.
144
167
  map<string, google.protobuf.Value> params = 6;
145
168
 
146
169
  // The user labels applied to a resource must meet the following requirements: