google-cloud-ces-v1 0.a → 0.1.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 (137) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/cloud/ces/v1/agent_pb.rb +30 -0
  6. data/lib/google/cloud/ces/v1/agent_service/client.rb +5315 -0
  7. data/lib/google/cloud/ces/v1/agent_service/credentials.rb +48 -0
  8. data/lib/google/cloud/ces/v1/agent_service/operations.rb +841 -0
  9. data/lib/google/cloud/ces/v1/agent_service/paths.rb +424 -0
  10. data/lib/google/cloud/ces/v1/agent_service/rest/client.rb +4944 -0
  11. data/lib/google/cloud/ces/v1/agent_service/rest/operations.rb +925 -0
  12. data/lib/google/cloud/ces/v1/agent_service/rest/service_stub.rb +3028 -0
  13. data/lib/google/cloud/ces/v1/agent_service/rest.rb +55 -0
  14. data/lib/google/cloud/ces/v1/agent_service.rb +57 -0
  15. data/lib/google/cloud/ces/v1/agent_service_pb.rb +105 -0
  16. data/lib/google/cloud/ces/v1/agent_service_services_pb.rb +142 -0
  17. data/lib/google/cloud/ces/v1/agent_tool_pb.rb +24 -0
  18. data/lib/google/cloud/ces/v1/agent_transfers_pb.rb +29 -0
  19. data/lib/google/cloud/ces/v1/app_pb.rb +58 -0
  20. data/lib/google/cloud/ces/v1/app_version_pb.rb +32 -0
  21. data/lib/google/cloud/ces/v1/auth_pb.rb +34 -0
  22. data/lib/google/cloud/ces/v1/bigquery_export_pb.rb +23 -0
  23. data/lib/google/cloud/ces/v1/bindings_override.rb +75 -0
  24. data/lib/google/cloud/ces/v1/changelog_pb.rb +26 -0
  25. data/lib/google/cloud/ces/v1/client_function_pb.rb +24 -0
  26. data/lib/google/cloud/ces/v1/common_pb.rb +46 -0
  27. data/lib/google/cloud/ces/v1/connector_tool_pb.rb +27 -0
  28. data/lib/google/cloud/ces/v1/connector_toolset_pb.rb +25 -0
  29. data/lib/google/cloud/ces/v1/conversation_pb.rb +31 -0
  30. data/lib/google/cloud/ces/v1/data_store_pb.rb +27 -0
  31. data/lib/google/cloud/ces/v1/data_store_tool_pb.rb +40 -0
  32. data/lib/google/cloud/ces/v1/deployment_pb.rb +26 -0
  33. data/lib/google/cloud/ces/v1/example_pb.rb +34 -0
  34. data/lib/google/cloud/ces/v1/fakes_pb.rb +24 -0
  35. data/lib/google/cloud/ces/v1/file_search_tool_pb.rb +24 -0
  36. data/lib/google/cloud/ces/v1/google_search_tool_pb.rb +24 -0
  37. data/lib/google/cloud/ces/v1/guardrail_pb.rb +37 -0
  38. data/lib/google/cloud/ces/v1/mcp_tool_pb.rb +26 -0
  39. data/lib/google/cloud/ces/v1/mcp_toolset_pb.rb +25 -0
  40. data/lib/google/cloud/ces/v1/omnichannel_pb.rb +31 -0
  41. data/lib/google/cloud/ces/v1/omnichannel_service_pb.rb +27 -0
  42. data/lib/google/cloud/ces/v1/open_api_tool_pb.rb +25 -0
  43. data/lib/google/cloud/ces/v1/open_api_toolset_pb.rb +25 -0
  44. data/lib/google/cloud/ces/v1/python_function_pb.rb +23 -0
  45. data/lib/google/cloud/ces/v1/rest.rb +41 -0
  46. data/lib/google/cloud/ces/v1/schema_pb.rb +25 -0
  47. data/lib/google/cloud/ces/v1/search_suggestions_pb.rb +22 -0
  48. data/lib/google/cloud/ces/v1/security_settings_pb.rb +27 -0
  49. data/lib/google/cloud/ces/v1/session_service/client.rb +759 -0
  50. data/lib/google/cloud/ces/v1/session_service/credentials.rb +48 -0
  51. data/lib/google/cloud/ces/v1/session_service/paths.rb +117 -0
  52. data/lib/google/cloud/ces/v1/session_service/rest/client.rb +560 -0
  53. data/lib/google/cloud/ces/v1/session_service/rest/service_stub.rb +199 -0
  54. data/lib/google/cloud/ces/v1/session_service/rest.rb +53 -0
  55. data/lib/google/cloud/ces/v1/session_service.rb +55 -0
  56. data/lib/google/cloud/ces/v1/session_service_pb.rb +50 -0
  57. data/lib/google/cloud/ces/v1/session_service_services_pb.rb +119 -0
  58. data/lib/google/cloud/ces/v1/system_tool_pb.rb +23 -0
  59. data/lib/google/cloud/ces/v1/tool_pb.rb +38 -0
  60. data/lib/google/cloud/ces/v1/tool_service/client.rb +723 -0
  61. data/lib/google/cloud/ces/v1/tool_service/credentials.rb +48 -0
  62. data/lib/google/cloud/ces/v1/tool_service/paths.rb +94 -0
  63. data/lib/google/cloud/ces/v1/tool_service/rest/client.rb +667 -0
  64. data/lib/google/cloud/ces/v1/tool_service/rest/service_stub.rb +267 -0
  65. data/lib/google/cloud/ces/v1/tool_service/rest.rb +53 -0
  66. data/lib/google/cloud/ces/v1/tool_service.rb +55 -0
  67. data/lib/google/cloud/ces/v1/tool_service_pb.rb +35 -0
  68. data/lib/google/cloud/ces/v1/tool_service_services_pb.rb +50 -0
  69. data/lib/google/cloud/ces/v1/toolset_pb.rb +30 -0
  70. data/lib/google/cloud/ces/v1/toolset_tool_pb.rb +24 -0
  71. data/lib/google/cloud/ces/v1/version.rb +7 -2
  72. data/lib/google/cloud/ces/v1/widget_service/client.rb +501 -0
  73. data/lib/google/cloud/ces/v1/widget_service/credentials.rb +48 -0
  74. data/lib/google/cloud/ces/v1/widget_service/paths.rb +75 -0
  75. data/lib/google/cloud/ces/v1/widget_service/rest/client.rb +459 -0
  76. data/lib/google/cloud/ces/v1/widget_service/rest/service_stub.rb +143 -0
  77. data/lib/google/cloud/ces/v1/widget_service/rest.rb +53 -0
  78. data/lib/google/cloud/ces/v1/widget_service.rb +55 -0
  79. data/lib/google/cloud/ces/v1/widget_service_pb.rb +28 -0
  80. data/lib/google/cloud/ces/v1/widget_service_services_pb.rb +46 -0
  81. data/lib/google/cloud/ces/v1/widget_tool_pb.rb +29 -0
  82. data/lib/google/cloud/ces/v1.rb +48 -0
  83. data/lib/google-cloud-ces-v1.rb +21 -0
  84. data/proto_docs/README.md +4 -0
  85. data/proto_docs/google/api/client.rb +593 -0
  86. data/proto_docs/google/api/field_behavior.rb +85 -0
  87. data/proto_docs/google/api/launch_stage.rb +71 -0
  88. data/proto_docs/google/api/resource.rb +227 -0
  89. data/proto_docs/google/cloud/ces/v1/agent.rb +224 -0
  90. data/proto_docs/google/cloud/ces/v1/agent_service.rb +1250 -0
  91. data/proto_docs/google/cloud/ces/v1/agent_tool.rb +42 -0
  92. data/proto_docs/google/cloud/ces/v1/agent_transfers.rb +111 -0
  93. data/proto_docs/google/cloud/ces/v1/app.rb +685 -0
  94. data/proto_docs/google/cloud/ces/v1/app_version.rb +83 -0
  95. data/proto_docs/google/cloud/ces/v1/auth.rb +214 -0
  96. data/proto_docs/google/cloud/ces/v1/bigquery_export.rb +45 -0
  97. data/proto_docs/google/cloud/ces/v1/changelog.rb +73 -0
  98. data/proto_docs/google/cloud/ces/v1/client_function.rb +48 -0
  99. data/proto_docs/google/cloud/ces/v1/common.rb +375 -0
  100. data/proto_docs/google/cloud/ces/v1/connector_tool.rb +122 -0
  101. data/proto_docs/google/cloud/ces/v1/connector_toolset.rb +52 -0
  102. data/proto_docs/google/cloud/ces/v1/conversation.rb +152 -0
  103. data/proto_docs/google/cloud/ces/v1/data_store.rb +102 -0
  104. data/proto_docs/google/cloud/ces/v1/data_store_tool.rb +328 -0
  105. data/proto_docs/google/cloud/ces/v1/deployment.rb +62 -0
  106. data/proto_docs/google/cloud/ces/v1/example.rb +244 -0
  107. data/proto_docs/google/cloud/ces/v1/fakes.rb +55 -0
  108. data/proto_docs/google/cloud/ces/v1/file_search_tool.rb +60 -0
  109. data/proto_docs/google/cloud/ces/v1/google_search_tool.rb +76 -0
  110. data/proto_docs/google/cloud/ces/v1/guardrail.rb +324 -0
  111. data/proto_docs/google/cloud/ces/v1/mcp_tool.rb +85 -0
  112. data/proto_docs/google/cloud/ces/v1/mcp_toolset.rb +71 -0
  113. data/proto_docs/google/cloud/ces/v1/omnichannel.rb +163 -0
  114. data/proto_docs/google/cloud/ces/v1/omnichannel_service.rb +45 -0
  115. data/proto_docs/google/cloud/ces/v1/open_api_tool.rb +66 -0
  116. data/proto_docs/google/cloud/ces/v1/open_api_toolset.rb +57 -0
  117. data/proto_docs/google/cloud/ces/v1/python_function.rb +44 -0
  118. data/proto_docs/google/cloud/ces/v1/schema.rb +162 -0
  119. data/proto_docs/google/cloud/ces/v1/search_suggestions.rb +55 -0
  120. data/proto_docs/google/cloud/ces/v1/security_settings.rb +80 -0
  121. data/proto_docs/google/cloud/ces/v1/session_service.rb +464 -0
  122. data/proto_docs/google/cloud/ces/v1/system_tool.rb +38 -0
  123. data/proto_docs/google/cloud/ces/v1/tool.rb +126 -0
  124. data/proto_docs/google/cloud/ces/v1/tool_service.rb +168 -0
  125. data/proto_docs/google/cloud/ces/v1/toolset.rb +80 -0
  126. data/proto_docs/google/cloud/ces/v1/toolset_tool.rb +40 -0
  127. data/proto_docs/google/cloud/ces/v1/widget_service.rb +62 -0
  128. data/proto_docs/google/cloud/ces/v1/widget_tool.rb +146 -0
  129. data/proto_docs/google/longrunning/operations.rb +191 -0
  130. data/proto_docs/google/protobuf/any.rb +145 -0
  131. data/proto_docs/google/protobuf/duration.rb +98 -0
  132. data/proto_docs/google/protobuf/empty.rb +34 -0
  133. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  134. data/proto_docs/google/protobuf/struct.rb +108 -0
  135. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  136. data/proto_docs/google/rpc/status.rb +48 -0
  137. metadata +183 -9
@@ -0,0 +1,685 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Ces
23
+ module V1
24
+ # An app serves as a top-level container for a group of agents, including the
25
+ # root agent and its sub-agents, along with their associated configurations.
26
+ # These agents work together to achieve specific goals within the app's
27
+ # context.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # Identifier. The unique identifier of the app.
31
+ # Format: `projects/{project}/locations/{location}/apps/{app}`
32
+ # @!attribute [rw] display_name
33
+ # @return [::String]
34
+ # Required. Display name of the app.
35
+ # @!attribute [rw] description
36
+ # @return [::String]
37
+ # Optional. Human-readable description of the app.
38
+ # @!attribute [rw] pinned
39
+ # @return [::Boolean]
40
+ # Optional. Whether the app is pinned in the app list.
41
+ # @!attribute [rw] root_agent
42
+ # @return [::String]
43
+ # Optional. The root agent is the entry point of the app.
44
+ # Format: `projects/{project}/locations/{location}/apps/{app}/agents/{agent}`
45
+ # @!attribute [rw] language_settings
46
+ # @return [::Google::Cloud::Ces::V1::LanguageSettings]
47
+ # Optional. Language settings of the app.
48
+ # @!attribute [rw] time_zone_settings
49
+ # @return [::Google::Cloud::Ces::V1::TimeZoneSettings]
50
+ # Optional. TimeZone settings of the app.
51
+ # @!attribute [rw] audio_processing_config
52
+ # @return [::Google::Cloud::Ces::V1::AudioProcessingConfig]
53
+ # Optional. Audio processing configuration of the app.
54
+ # @!attribute [rw] logging_settings
55
+ # @return [::Google::Cloud::Ces::V1::LoggingSettings]
56
+ # Optional. Logging settings of the app.
57
+ # @!attribute [rw] error_handling_settings
58
+ # @return [::Google::Cloud::Ces::V1::ErrorHandlingSettings]
59
+ # Optional. Error handling settings of the app.
60
+ # @!attribute [rw] model_settings
61
+ # @return [::Google::Cloud::Ces::V1::ModelSettings]
62
+ # Optional. The default LLM model settings for the app.
63
+ # Individual resources (e.g. agents, guardrails) can override these
64
+ # configurations as needed.
65
+ # @!attribute [rw] tool_execution_mode
66
+ # @return [::Google::Cloud::Ces::V1::App::ToolExecutionMode]
67
+ # Optional. The tool execution mode for the app. If not provided, will
68
+ # default to PARALLEL.
69
+ # @!attribute [rw] evaluation_metrics_thresholds
70
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds]
71
+ # Optional. The evaluation thresholds for the app.
72
+ # @!attribute [rw] variable_declarations
73
+ # @return [::Array<::Google::Cloud::Ces::V1::App::VariableDeclaration>]
74
+ # Optional. The declarations of the variables.
75
+ # @!attribute [r] predefined_variable_declarations
76
+ # @return [::Array<::Google::Cloud::Ces::V1::App::VariableDeclaration>]
77
+ # Output only. The declarations of predefined variables for the app.
78
+ # @!attribute [rw] global_instruction
79
+ # @return [::String]
80
+ # Optional. Instructions for all the agents in the app.
81
+ # You can use this instruction to set up a stable identity or personality
82
+ # across all the agents.
83
+ # @!attribute [rw] guardrails
84
+ # @return [::Array<::String>]
85
+ # Optional. List of guardrails for the app.
86
+ # Format:
87
+ # `projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}`
88
+ # @!attribute [rw] data_store_settings
89
+ # @return [::Google::Cloud::Ces::V1::DataStoreSettings]
90
+ # Optional. The data store settings for the app.
91
+ # @!attribute [rw] default_channel_profile
92
+ # @return [::Google::Cloud::Ces::V1::ChannelProfile]
93
+ # Optional. The default channel profile used by the app.
94
+ # @!attribute [rw] metadata
95
+ # @return [::Google::Protobuf::Map{::String => ::String}]
96
+ # Optional. Metadata about the app. This field can be used to store
97
+ # additional information relevant to the app's details or intended usages.
98
+ # @!attribute [r] create_time
99
+ # @return [::Google::Protobuf::Timestamp]
100
+ # Output only. Timestamp when the app was created.
101
+ # @!attribute [r] update_time
102
+ # @return [::Google::Protobuf::Timestamp]
103
+ # Output only. Timestamp when the app was last updated.
104
+ # @!attribute [r] etag
105
+ # @return [::String]
106
+ # Output only. Etag used to ensure the object hasn't changed during a
107
+ # read-modify-write operation. If the etag is empty, the update will
108
+ # overwrite any concurrent changes.
109
+ # @!attribute [r] deployment_count
110
+ # @return [::Integer]
111
+ # Output only. Number of deployments in the app.
112
+ # @!attribute [rw] client_certificate_settings
113
+ # @return [::Google::Cloud::Ces::V1::ClientCertificateSettings]
114
+ # Optional. The default client certificate settings for the app.
115
+ # @!attribute [rw] locked
116
+ # @return [::Boolean]
117
+ # Optional. Indicates whether the app is locked for changes. If the app is
118
+ # locked, modifications to the app resources will be rejected.
119
+ class App
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+
123
+ # Defines the structure and metadata for a variable.
124
+ # @!attribute [rw] name
125
+ # @return [::String]
126
+ # Required. The name of the variable. The name must start with a letter or
127
+ # underscore and contain only letters, numbers, or underscores.
128
+ # @!attribute [rw] description
129
+ # @return [::String]
130
+ # Required. The description of the variable.
131
+ # @!attribute [rw] schema
132
+ # @return [::Google::Cloud::Ces::V1::Schema]
133
+ # Required. The schema of the variable.
134
+ class VariableDeclaration
135
+ include ::Google::Protobuf::MessageExts
136
+ extend ::Google::Protobuf::MessageExts::ClassMethods
137
+ end
138
+
139
+ # @!attribute [rw] key
140
+ # @return [::String]
141
+ # @!attribute [rw] value
142
+ # @return [::String]
143
+ class MetadataEntry
144
+ include ::Google::Protobuf::MessageExts
145
+ extend ::Google::Protobuf::MessageExts::ClassMethods
146
+ end
147
+
148
+ # Defines the tool execution behavior if there are **multiple** tools being
149
+ # selected by the agent **at the same time**.
150
+ module ToolExecutionMode
151
+ # Unspecified tool execution mode. Default to PARALLEL.
152
+ TOOL_EXECUTION_MODE_UNSPECIFIED = 0
153
+
154
+ # If there are multiple tools being selected, they will be executed in
155
+ # parallel, with the same
156
+ # [ToolContext](https://google.github.io/adk-docs/context/#the-different-types-of-context).
157
+ PARALLEL = 1
158
+
159
+ # If there are multiple tools being selected, they will be executed
160
+ # sequentially. The next tool will only be executed after the previous tool
161
+ # completes and it can see updated
162
+ # [ToolContext](https://google.github.io/adk-docs/context/#the-different-types-of-context)
163
+ # from the previous tool.
164
+ SEQUENTIAL = 2
165
+ end
166
+ end
167
+
168
+ # TimeZone settings of the app.
169
+ # @!attribute [rw] time_zone
170
+ # @return [::String]
171
+ # Optional. The time zone of the app from the [time zone
172
+ # database](https://www.iana.org/time-zones), e.g., America/Los_Angeles,
173
+ # Europe/Paris.
174
+ class TimeZoneSettings
175
+ include ::Google::Protobuf::MessageExts
176
+ extend ::Google::Protobuf::MessageExts::ClassMethods
177
+ end
178
+
179
+ # Language settings of the app.
180
+ # @!attribute [rw] default_language_code
181
+ # @return [::String]
182
+ # Optional. The default language code of the app.
183
+ # @!attribute [rw] supported_language_codes
184
+ # @return [::Array<::String>]
185
+ # Optional. List of languages codes supported by the app, in addition to the
186
+ # `default_language_code`.
187
+ # @!attribute [rw] enable_multilingual_support
188
+ # @return [::Boolean]
189
+ # Optional. Enables multilingual support. If true, agents in the app will use
190
+ # pre-built instructions to improve handling of multilingual input.
191
+ # @!attribute [rw] fallback_action
192
+ # @deprecated This field is deprecated and may be removed in the next major version update.
193
+ # @return [::String]
194
+ # Optional. Deprecated: This feature is no longer supported. Use
195
+ # `enable_multilingual_support` instead to improve handling of multilingual
196
+ # input.
197
+ # The action to perform when an agent receives input in an unsupported
198
+ # language.
199
+ #
200
+ # This can be a predefined action or a custom tool call.
201
+ # Valid values are:
202
+ # - A tool's full resource name, which triggers a specific tool execution.
203
+ # - A predefined system action, such as "escalate" or "exit", which triggers
204
+ # an {::Google::Cloud::Ces::V1::EndSession EndSession} signal with corresponding
205
+ # {::Google::Cloud::Ces::V1::EndSession#metadata metadata} to terminate the
206
+ # conversation.
207
+ class LanguageSettings
208
+ include ::Google::Protobuf::MessageExts
209
+ extend ::Google::Protobuf::MessageExts::ClassMethods
210
+ end
211
+
212
+ # Configuration for how the input and output audio should be processed and
213
+ # delivered.
214
+ # @!attribute [rw] synthesize_speech_configs
215
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Ces::V1::SynthesizeSpeechConfig}]
216
+ # Optional. Configuration of how the agent response should be synthesized,
217
+ # mapping from the language code to
218
+ # {::Google::Cloud::Ces::V1::SynthesizeSpeechConfig SynthesizeSpeechConfig}.
219
+ #
220
+ # If the configuration for the specified language code is not found, the
221
+ # configuration for the root language code will be used. For example, if the
222
+ # map contains "en-us" and "en", and the specified language code is "en-gb",
223
+ # then "en" configuration will be used.
224
+ #
225
+ # Note: Language code is case-insensitive.
226
+ # @!attribute [rw] barge_in_config
227
+ # @return [::Google::Cloud::Ces::V1::BargeInConfig]
228
+ # Optional. Configures the agent behavior for the user barge-in activities.
229
+ # @!attribute [rw] inactivity_timeout
230
+ # @return [::Google::Protobuf::Duration]
231
+ # Optional. The duration of user inactivity (no speech or interaction) before
232
+ # the agent prompts the user for reengagement. If not set, the agent will not
233
+ # prompt the user for reengagement.
234
+ # @!attribute [rw] ambient_sound_config
235
+ # @return [::Google::Cloud::Ces::V1::AmbientSoundConfig]
236
+ # Optional. Configuration for the ambient sound to be played with the
237
+ # synthesized agent response, to enhance the naturalness of the conversation.
238
+ class AudioProcessingConfig
239
+ include ::Google::Protobuf::MessageExts
240
+ extend ::Google::Protobuf::MessageExts::ClassMethods
241
+
242
+ # @!attribute [rw] key
243
+ # @return [::String]
244
+ # @!attribute [rw] value
245
+ # @return [::Google::Cloud::Ces::V1::SynthesizeSpeechConfig]
246
+ class SynthesizeSpeechConfigsEntry
247
+ include ::Google::Protobuf::MessageExts
248
+ extend ::Google::Protobuf::MessageExts::ClassMethods
249
+ end
250
+ end
251
+
252
+ # Configuration for the ambient sound to be played with the synthesized agent
253
+ # response, to enhance the naturalness of the conversation.
254
+ # @!attribute [rw] prebuilt_ambient_noise
255
+ # @deprecated This field is deprecated and may be removed in the next major version update.
256
+ # @return [::Google::Cloud::Ces::V1::AmbientSoundConfig::PrebuiltAmbientNoise]
257
+ # Optional. Deprecated: `prebuilt_ambient_noise` is deprecated in favor of
258
+ # `prebuilt_ambient_sound`.
259
+ #
260
+ # Note: The following fields are mutually exclusive: `prebuilt_ambient_noise`, `gcs_uri`, `prebuilt_ambient_sound`. If a field in that set is populated, all other fields in the set will automatically be cleared.
261
+ # @!attribute [rw] gcs_uri
262
+ # @return [::String]
263
+ # Optional. Ambient noise as a mono-channel, 16kHz WAV file stored in
264
+ # [Cloud Storage](https://cloud.google.com/storage).
265
+ #
266
+ # Note: Please make sure the CES service agent
267
+ # `service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com` has
268
+ # `storage.objects.get` permission to the Cloud Storage object.
269
+ #
270
+ # Note: The following fields are mutually exclusive: `gcs_uri`, `prebuilt_ambient_noise`, `prebuilt_ambient_sound`. If a field in that set is populated, all other fields in the set will automatically be cleared.
271
+ # @!attribute [rw] prebuilt_ambient_sound
272
+ # @return [::String]
273
+ # Optional. Name of the prebuilt ambient sound.
274
+ # Valid values are:
275
+ # - "coffee_shop"
276
+ # - "keyboard"
277
+ # - "keypad"
278
+ # - "hum"
279
+ # - "office_1"
280
+ # - "office_2"
281
+ # - "office_3"
282
+ # - "room_1"
283
+ # - "room_2"
284
+ # - "room_3"
285
+ # - "room_4"
286
+ # - "room_5"
287
+ # - "air_conditioner"
288
+ #
289
+ # Note: The following fields are mutually exclusive: `prebuilt_ambient_sound`, `prebuilt_ambient_noise`, `gcs_uri`. If a field in that set is populated, all other fields in the set will automatically be cleared.
290
+ # @!attribute [rw] volume_gain_db
291
+ # @return [::Float]
292
+ # Optional. Volume gain (in dB) of the normal native volume supported by
293
+ # ambient noise, in the range [-96.0, 16.0]. If unset, or set to a value of
294
+ # 0.0 (dB), will play at normal native signal amplitude. A value of -6.0 (dB)
295
+ # will play at approximately half the amplitude of the normal native signal
296
+ # amplitude. A value of +6.0 (dB) will play at approximately twice the
297
+ # amplitude of the normal native signal amplitude. We strongly recommend not
298
+ # to exceed +10 (dB) as there's usually no effective increase in loudness for
299
+ # any value greater than that.
300
+ class AmbientSoundConfig
301
+ include ::Google::Protobuf::MessageExts
302
+ extend ::Google::Protobuf::MessageExts::ClassMethods
303
+
304
+ # Prebuilt ambient noise.
305
+ module PrebuiltAmbientNoise
306
+ # Not specified.
307
+ PREBUILT_AMBIENT_NOISE_UNSPECIFIED = 0
308
+
309
+ # Ambient noise of a retail store.
310
+ RETAIL_STORE = 1
311
+
312
+ # Ambient noise of a convention hall.
313
+ CONVENTION_HALL = 2
314
+
315
+ # Ambient noise of a street.
316
+ OUTDOOR = 3
317
+ end
318
+ end
319
+
320
+ # Configuration for how the user barge-in activities should be handled.
321
+ # @!attribute [rw] disable_barge_in
322
+ # @deprecated This field is deprecated and may be removed in the next major version update.
323
+ # @return [::Boolean]
324
+ # Optional. Disables user barge-in while the agent is speaking. If true, user
325
+ # input during agent response playback will be ignored.
326
+ #
327
+ # Deprecated: `disable_barge_in` is deprecated in favor of
328
+ # {::Google::Cloud::Ces::V1::ChannelProfile#disable_barge_in_control `disable_barge_in_control`}
329
+ # in ChannelProfile.
330
+ # @!attribute [rw] barge_in_awareness
331
+ # @return [::Boolean]
332
+ # Optional. If enabled, the agent will adapt its next response based on the
333
+ # assumption that the user hasn't heard the full preceding agent message.
334
+ # This should not be used in scenarios where agent responses are displayed
335
+ # visually.
336
+ class BargeInConfig
337
+ include ::Google::Protobuf::MessageExts
338
+ extend ::Google::Protobuf::MessageExts::ClassMethods
339
+ end
340
+
341
+ # Configuration for how the agent response should be synthesized.
342
+ # @!attribute [rw] voice
343
+ # @return [::String]
344
+ # Optional. The name of the voice. If not set, the service will choose a
345
+ # voice based on the other parameters such as language_code.
346
+ #
347
+ # For the list of available voices, please refer to [Supported voices and
348
+ # languages](https://cloud.google.com/text-to-speech/docs/voices) from Cloud
349
+ # Text-to-Speech.
350
+ # @!attribute [rw] speaking_rate
351
+ # @return [::Float]
352
+ # Optional. The speaking rate/speed in the range [0.25, 2.0]. 1.0 is the
353
+ # normal native speed supported by the specific voice. 2.0 is twice as fast,
354
+ # and 0.5 is half as fast. Values outside of the range [0.25, 2.0] will
355
+ # return an error.
356
+ class SynthesizeSpeechConfig
357
+ include ::Google::Protobuf::MessageExts
358
+ extend ::Google::Protobuf::MessageExts::ClassMethods
359
+ end
360
+
361
+ # Settings to describe the conversation data collection behaviors for LLM
362
+ # analysis metrics pipeline.
363
+ # @!attribute [rw] llm_metrics_opted_out
364
+ # @return [::Boolean]
365
+ # Optional. Whether to collect conversation data for llm analysis metrics. If
366
+ # true, conversation data will not be collected for llm analysis metrics;
367
+ # otherwise, conversation data will be collected.
368
+ class MetricAnalysisSettings
369
+ include ::Google::Protobuf::MessageExts
370
+ extend ::Google::Protobuf::MessageExts::ClassMethods
371
+ end
372
+
373
+ # Settings to describe the logging behaviors for the app.
374
+ # @!attribute [rw] redaction_config
375
+ # @return [::Google::Cloud::Ces::V1::RedactionConfig]
376
+ # Optional. Configuration for how sensitive data should be redacted.
377
+ # @!attribute [rw] audio_recording_config
378
+ # @return [::Google::Cloud::Ces::V1::AudioRecordingConfig]
379
+ # Optional. Configuration for how audio interactions should be recorded.
380
+ # @!attribute [rw] bigquery_export_settings
381
+ # @return [::Google::Cloud::Ces::V1::BigQueryExportSettings]
382
+ # Optional. Settings to describe the BigQuery export behaviors for the app.
383
+ # The conversation data will be exported to BigQuery tables if it is enabled.
384
+ # @!attribute [rw] cloud_logging_settings
385
+ # @return [::Google::Cloud::Ces::V1::CloudLoggingSettings]
386
+ # Optional. Settings to describe the Cloud Logging behaviors for the app.
387
+ # @!attribute [rw] conversation_logging_settings
388
+ # @return [::Google::Cloud::Ces::V1::ConversationLoggingSettings]
389
+ # Optional. Settings to describe the conversation logging behaviors for the
390
+ # app.
391
+ # @!attribute [rw] evaluation_audio_recording_config
392
+ # @return [::Google::Cloud::Ces::V1::AudioRecordingConfig]
393
+ # Optional. Configuration for how audio interactions should be recorded for
394
+ # the evaluation. By default, audio recording is not enabled for evaluation
395
+ # sessions.
396
+ # @!attribute [rw] metric_analysis_settings
397
+ # @return [::Google::Cloud::Ces::V1::MetricAnalysisSettings]
398
+ # Optional. Settings to describe the conversation data collection behaviors
399
+ # for the LLM analysis pipeline for the app.
400
+ class LoggingSettings
401
+ include ::Google::Protobuf::MessageExts
402
+ extend ::Google::Protobuf::MessageExts::ClassMethods
403
+ end
404
+
405
+ # Settings to describe how errors should be handled in the app.
406
+ # @!attribute [rw] error_handling_strategy
407
+ # @return [::Google::Cloud::Ces::V1::ErrorHandlingSettings::ErrorHandlingStrategy]
408
+ # Optional. The strategy to use for error handling.
409
+ class ErrorHandlingSettings
410
+ include ::Google::Protobuf::MessageExts
411
+ extend ::Google::Protobuf::MessageExts::ClassMethods
412
+
413
+ # Defines the strategy for handling errors.
414
+ module ErrorHandlingStrategy
415
+ # Unspecified error handling strategy.
416
+ ERROR_HANDLING_STRATEGY_UNSPECIFIED = 0
417
+
418
+ # No specific handling is enabled.
419
+ NONE = 1
420
+
421
+ # A fallback message will be returned to the user in case of
422
+ # system errors (e.g. LLM errors).
423
+ FALLBACK_RESPONSE = 2
424
+
425
+ # An {::Google::Cloud::Ces::V1::EndSession EndSession} signal will be emitted in
426
+ # case of system errors (e.g. LLM errors).
427
+ END_SESSION = 3
428
+ end
429
+ end
430
+
431
+ # Threshold settings for metrics in an Evaluation.
432
+ # @!attribute [rw] golden_evaluation_metrics_thresholds
433
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds]
434
+ # Optional. The golden evaluation metrics thresholds.
435
+ # @!attribute [rw] hallucination_metric_behavior
436
+ # @deprecated This field is deprecated and may be removed in the next major version update.
437
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::HallucinationMetricBehavior]
438
+ # Optional. Deprecated: Use `golden_hallucination_metric_behavior` instead.
439
+ # The hallucination metric behavior is currently used for golden evaluations.
440
+ # @!attribute [rw] golden_hallucination_metric_behavior
441
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::HallucinationMetricBehavior]
442
+ # Optional. The hallucination metric behavior for golden evaluations.
443
+ # @!attribute [rw] scenario_hallucination_metric_behavior
444
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::HallucinationMetricBehavior]
445
+ # Optional. The hallucination metric behavior for scenario evaluations.
446
+ class EvaluationMetricsThresholds
447
+ include ::Google::Protobuf::MessageExts
448
+ extend ::Google::Protobuf::MessageExts::ClassMethods
449
+
450
+ # Settings for golden evaluations.
451
+ # @!attribute [rw] turn_level_metrics_thresholds
452
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::TurnLevelMetricsThresholds]
453
+ # Optional. The turn level metrics thresholds.
454
+ # @!attribute [rw] expectation_level_metrics_thresholds
455
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::ExpectationLevelMetricsThresholds]
456
+ # Optional. The expectation level metrics thresholds.
457
+ # @!attribute [rw] tool_matching_settings
458
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::ToolMatchingSettings]
459
+ # Optional. The tool matching settings. An
460
+ # extra tool call is a tool call that is present in the execution but does
461
+ # not match any tool call in the golden expectation.
462
+ class GoldenEvaluationMetricsThresholds
463
+ include ::Google::Protobuf::MessageExts
464
+ extend ::Google::Protobuf::MessageExts::ClassMethods
465
+
466
+ # Turn level metrics thresholds.
467
+ # @!attribute [rw] semantic_similarity_success_threshold
468
+ # @return [::Integer]
469
+ # Optional. The success threshold for semantic similarity. Must be an
470
+ # integer between 0 and 4. Default is >= 3.
471
+ # @!attribute [rw] overall_tool_invocation_correctness_threshold
472
+ # @return [::Float]
473
+ # Optional. The success threshold for overall tool invocation
474
+ # correctness. Must be a float between 0 and 1. Default is 1.0.
475
+ # @!attribute [rw] semantic_similarity_channel
476
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::TurnLevelMetricsThresholds::SemanticSimilarityChannel]
477
+ # Optional. The semantic similarity channel to use for evaluation.
478
+ class TurnLevelMetricsThresholds
479
+ include ::Google::Protobuf::MessageExts
480
+ extend ::Google::Protobuf::MessageExts::ClassMethods
481
+
482
+ # Semantic similarity channel to use.
483
+ module SemanticSimilarityChannel
484
+ # Metric unspecified. Defaults to TEXT.
485
+ SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED = 0
486
+
487
+ # Use text semantic similarity.
488
+ TEXT = 1
489
+
490
+ # Use audio semantic similarity.
491
+ AUDIO = 2
492
+ end
493
+ end
494
+
495
+ # Expectation level metrics thresholds.
496
+ # @!attribute [rw] tool_invocation_parameter_correctness_threshold
497
+ # @return [::Float]
498
+ # Optional. The success threshold for individual tool invocation
499
+ # parameter correctness. Must be a float between 0 and 1. Default is 1.0.
500
+ class ExpectationLevelMetricsThresholds
501
+ include ::Google::Protobuf::MessageExts
502
+ extend ::Google::Protobuf::MessageExts::ClassMethods
503
+ end
504
+ end
505
+
506
+ # Settings for matching tool calls.
507
+ # @!attribute [rw] extra_tool_call_behavior
508
+ # @return [::Google::Cloud::Ces::V1::EvaluationMetricsThresholds::ToolMatchingSettings::ExtraToolCallBehavior]
509
+ # Optional. Behavior for extra tool calls.
510
+ # Defaults to FAIL.
511
+ class ToolMatchingSettings
512
+ include ::Google::Protobuf::MessageExts
513
+ extend ::Google::Protobuf::MessageExts::ClassMethods
514
+
515
+ # Defines the behavior when an extra tool call is encountered. An extra
516
+ # tool call is a tool call that is present in the execution but does not
517
+ # match any tool call in the golden expectation.
518
+ module ExtraToolCallBehavior
519
+ # Unspecified behavior. Defaults to FAIL.
520
+ EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED = 0
521
+
522
+ # Fail the evaluation if an extra tool call is encountered.
523
+ FAIL = 1
524
+
525
+ # Allow the extra tool call.
526
+ ALLOW = 2
527
+ end
528
+ end
529
+
530
+ # The hallucination metric behavior. Regardless of the behavior, the metric
531
+ # will always be calculated. The difference is that when disabled, the
532
+ # metric is not used to calculate the overall evaluation score.
533
+ module HallucinationMetricBehavior
534
+ # Unspecified hallucination metric behavior.
535
+ HALLUCINATION_METRIC_BEHAVIOR_UNSPECIFIED = 0
536
+
537
+ # Disable hallucination metric.
538
+ DISABLED = 1
539
+
540
+ # Enable hallucination metric.
541
+ ENABLED = 2
542
+ end
543
+ end
544
+
545
+ # Settings for custom client certificates.
546
+ # @!attribute [rw] tls_certificate
547
+ # @return [::String]
548
+ # Required. The TLS certificate encoded in PEM format. This string must
549
+ # include the begin header and end footer lines.
550
+ # @!attribute [rw] private_key
551
+ # @return [::String]
552
+ # Required. The name of the SecretManager secret version resource storing the
553
+ # private key encoded in PEM format.
554
+ # Format: `projects/{project}/secrets/{secret}/versions/{version}`
555
+ # @!attribute [rw] passphrase
556
+ # @return [::String]
557
+ # Optional. The name of the SecretManager secret version resource storing the
558
+ # passphrase to decrypt the private key. Should be left unset if the private
559
+ # key is not encrypted.
560
+ # Format: `projects/{project}/secrets/{secret}/versions/{version}`
561
+ class ClientCertificateSettings
562
+ include ::Google::Protobuf::MessageExts
563
+ extend ::Google::Protobuf::MessageExts::ClassMethods
564
+ end
565
+
566
+ # Settings to describe the conversation logging behaviors for the app.
567
+ # @!attribute [rw] disable_conversation_logging
568
+ # @return [::Boolean]
569
+ # Optional. Whether to disable conversation logging for the sessions.
570
+ class ConversationLoggingSettings
571
+ include ::Google::Protobuf::MessageExts
572
+ extend ::Google::Protobuf::MessageExts::ClassMethods
573
+ end
574
+
575
+ # Settings to describe the Cloud Logging behaviors for the app.
576
+ # @!attribute [rw] enable_cloud_logging
577
+ # @return [::Boolean]
578
+ # Optional. Whether to enable Cloud Logging for the sessions.
579
+ class CloudLoggingSettings
580
+ include ::Google::Protobuf::MessageExts
581
+ extend ::Google::Protobuf::MessageExts::ClassMethods
582
+ end
583
+
584
+ # Configuration for how the audio interactions should be recorded.
585
+ # @!attribute [rw] gcs_bucket
586
+ # @return [::String]
587
+ # Optional. The [Cloud Storage](https://cloud.google.com/storage) bucket to
588
+ # store the session audio recordings. The URI must start with "gs://".
589
+ #
590
+ # Please choose a bucket location that meets your data residency
591
+ # requirements.
592
+ #
593
+ # Note: If the Cloud Storage bucket is in a different project from the app,
594
+ # you should grant `storage.objects.create` permission to the CES service
595
+ # agent `service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com`.
596
+ # @!attribute [rw] gcs_path_prefix
597
+ # @return [::String]
598
+ # Optional. The Cloud Storage path prefix for audio recordings.
599
+ #
600
+ # This prefix can include the following placeholders, which will be
601
+ # dynamically substituted at serving time:
602
+ # - $project: project ID
603
+ # - $location: app location
604
+ # - $app: app ID
605
+ # - $date: session date in YYYY-MM-DD format
606
+ # - $session: session ID
607
+ #
608
+ # If the path prefix is not specified, the default prefix
609
+ # `$project/$location/$app/$date/$session/` will be used.
610
+ class AudioRecordingConfig
611
+ include ::Google::Protobuf::MessageExts
612
+ extend ::Google::Protobuf::MessageExts::ClassMethods
613
+ end
614
+
615
+ # Configuration to instruct how sensitive data should be handled.
616
+ # @!attribute [rw] enable_redaction
617
+ # @return [::Boolean]
618
+ # Optional. If true, redaction will be applied in various logging scenarios,
619
+ # including conversation history, Cloud Logging and audio recording.
620
+ # @!attribute [rw] inspect_template
621
+ # @return [::String]
622
+ # Optional. [DLP](https://cloud.google.com/dlp/docs) inspect template name to
623
+ # configure detection of sensitive data types.
624
+ #
625
+ # Format:
626
+ # `projects/{project}/locations/{location}/inspectTemplates/{inspect_template}`
627
+ # @!attribute [rw] deidentify_template
628
+ # @return [::String]
629
+ # Optional. [DLP](https://cloud.google.com/dlp/docs) deidentify template name
630
+ # to instruct on how to de-identify content.
631
+ #
632
+ # Format:
633
+ # `projects/{project}/locations/{location}/deidentifyTemplates/{deidentify_template}`
634
+ class RedactionConfig
635
+ include ::Google::Protobuf::MessageExts
636
+ extend ::Google::Protobuf::MessageExts::ClassMethods
637
+ end
638
+
639
+ # Data store related settings for the app.
640
+ # @!attribute [r] engines
641
+ # @return [::Array<::Google::Cloud::Ces::V1::DataStoreSettings::Engine>]
642
+ # Output only. The engines for the app.
643
+ class DataStoreSettings
644
+ include ::Google::Protobuf::MessageExts
645
+ extend ::Google::Protobuf::MessageExts::ClassMethods
646
+
647
+ # An engine to which the data stores are connected.
648
+ # See Vertex AI Search:
649
+ # https://cloud.google.com/generative-ai-app-builder/docs/enterprise-search-introduction.
650
+ # @!attribute [r] name
651
+ # @return [::String]
652
+ # Output only. The resource name of the engine.
653
+ # Format:
654
+ # `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}`
655
+ # @!attribute [r] type
656
+ # @return [::Google::Cloud::Ces::V1::DataStoreSettings::Engine::Type]
657
+ # Output only. The type of the engine.
658
+ class Engine
659
+ include ::Google::Protobuf::MessageExts
660
+ extend ::Google::Protobuf::MessageExts::ClassMethods
661
+
662
+ # The type of the engine.
663
+ # See the documentation available at
664
+ # https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/SolutionType
665
+ # and
666
+ # https://cloud.google.com/generative-ai-app-builder/docs/create-datastore-ingest.
667
+ module Type
668
+ # Unspecified engine type.
669
+ TYPE_UNSPECIFIED = 0
670
+
671
+ # The SOLUTION_TYPE_SEARCH engine for the app. All connector data stores
672
+ # added to the app will be added to this engine.
673
+ ENGINE_TYPE_SEARCH = 1
674
+
675
+ # Chat engine type.
676
+ # The SOLUTION_TYPE_CHAT engine for the app. All connector data stores
677
+ # added to the app will be added to this engine.
678
+ ENGINE_TYPE_CHAT = 2
679
+ end
680
+ end
681
+ end
682
+ end
683
+ end
684
+ end
685
+ end