google-cloud-ces-v1beta 0.a → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) 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/v1beta/agent_card_pb.rb +26 -0
  6. data/lib/google/cloud/ces/v1beta/agent_pb.rb +30 -0
  7. data/lib/google/cloud/ces/v1beta/agent_service/client.rb +5641 -0
  8. data/lib/google/cloud/ces/v1beta/agent_service/credentials.rb +48 -0
  9. data/lib/google/cloud/ces/v1beta/agent_service/operations.rb +843 -0
  10. data/lib/google/cloud/ces/v1beta/agent_service/paths.rb +481 -0
  11. data/lib/google/cloud/ces/v1beta/agent_service/rest/client.rb +5249 -0
  12. data/lib/google/cloud/ces/v1beta/agent_service/rest/operations.rb +927 -0
  13. data/lib/google/cloud/ces/v1beta/agent_service/rest/service_stub.rb +3213 -0
  14. data/lib/google/cloud/ces/v1beta/agent_service/rest.rb +55 -0
  15. data/lib/google/cloud/ces/v1beta/agent_service.rb +57 -0
  16. data/lib/google/cloud/ces/v1beta/agent_service_pb.rb +132 -0
  17. data/lib/google/cloud/ces/v1beta/agent_service_services_pb.rb +148 -0
  18. data/lib/google/cloud/ces/v1beta/agent_tool_pb.rb +24 -0
  19. data/lib/google/cloud/ces/v1beta/agent_transfers_pb.rb +29 -0
  20. data/lib/google/cloud/ces/v1beta/app_pb.rb +70 -0
  21. data/lib/google/cloud/ces/v1beta/app_version_pb.rb +32 -0
  22. data/lib/google/cloud/ces/v1beta/auth_pb.rb +34 -0
  23. data/lib/google/cloud/ces/v1beta/bigquery_export_pb.rb +23 -0
  24. data/lib/google/cloud/ces/v1beta/bindings_override.rb +75 -0
  25. data/lib/google/cloud/ces/v1beta/changelog_pb.rb +26 -0
  26. data/lib/google/cloud/ces/v1beta/client_function_pb.rb +24 -0
  27. data/lib/google/cloud/ces/v1beta/common_pb.rb +46 -0
  28. data/lib/google/cloud/ces/v1beta/connector_tool_pb.rb +27 -0
  29. data/lib/google/cloud/ces/v1beta/connector_toolset_pb.rb +25 -0
  30. data/lib/google/cloud/ces/v1beta/conversation_pb.rb +31 -0
  31. data/lib/google/cloud/ces/v1beta/data_store_pb.rb +27 -0
  32. data/lib/google/cloud/ces/v1beta/data_store_tool_pb.rb +40 -0
  33. data/lib/google/cloud/ces/v1beta/deployment_pb.rb +30 -0
  34. data/lib/google/cloud/ces/v1beta/evaluation_metrics_config_pb.rb +31 -0
  35. data/lib/google/cloud/ces/v1beta/evaluation_pb.rb +99 -0
  36. data/lib/google/cloud/ces/v1beta/evaluation_service/client.rb +4050 -0
  37. data/lib/google/cloud/ces/v1beta/evaluation_service/credentials.rb +48 -0
  38. data/lib/google/cloud/ces/v1beta/evaluation_service/operations.rb +843 -0
  39. data/lib/google/cloud/ces/v1beta/evaluation_service/paths.rb +306 -0
  40. data/lib/google/cloud/ces/v1beta/evaluation_service/rest/client.rb +3770 -0
  41. data/lib/google/cloud/ces/v1beta/evaluation_service/rest/operations.rb +927 -0
  42. data/lib/google/cloud/ces/v1beta/evaluation_service/rest/service_stub.rb +2233 -0
  43. data/lib/google/cloud/ces/v1beta/evaluation_service/rest.rb +54 -0
  44. data/lib/google/cloud/ces/v1beta/evaluation_service.rb +56 -0
  45. data/lib/google/cloud/ces/v1beta/evaluation_service_pb.rb +93 -0
  46. data/lib/google/cloud/ces/v1beta/evaluation_service_services_pb.rb +116 -0
  47. data/lib/google/cloud/ces/v1beta/example_pb.rb +34 -0
  48. data/lib/google/cloud/ces/v1beta/fakes_pb.rb +25 -0
  49. data/lib/google/cloud/ces/v1beta/file_context_pb.rb +24 -0
  50. data/lib/google/cloud/ces/v1beta/file_search_tool_pb.rb +24 -0
  51. data/lib/google/cloud/ces/v1beta/golden_run_pb.rb +21 -0
  52. data/lib/google/cloud/ces/v1beta/google_search_tool_pb.rb +24 -0
  53. data/lib/google/cloud/ces/v1beta/guardrail_pb.rb +37 -0
  54. data/lib/google/cloud/ces/v1beta/mcp_tool_pb.rb +27 -0
  55. data/lib/google/cloud/ces/v1beta/mcp_toolset_pb.rb +28 -0
  56. data/lib/google/cloud/ces/v1beta/mocks_pb.rb +26 -0
  57. data/lib/google/cloud/ces/v1beta/omnichannel_pb.rb +31 -0
  58. data/lib/google/cloud/ces/v1beta/omnichannel_service_pb.rb +27 -0
  59. data/lib/google/cloud/ces/v1beta/open_api_tool_pb.rb +25 -0
  60. data/lib/google/cloud/ces/v1beta/open_api_toolset_pb.rb +25 -0
  61. data/lib/google/cloud/ces/v1beta/python_function_pb.rb +24 -0
  62. data/lib/google/cloud/ces/v1beta/rest.rb +42 -0
  63. data/lib/google/cloud/ces/v1beta/schema_pb.rb +25 -0
  64. data/lib/google/cloud/ces/v1beta/search_suggestions_pb.rb +22 -0
  65. data/lib/google/cloud/ces/v1beta/security_settings_pb.rb +27 -0
  66. data/lib/google/cloud/ces/v1beta/session_service/client.rb +762 -0
  67. data/lib/google/cloud/ces/v1beta/session_service/credentials.rb +48 -0
  68. data/lib/google/cloud/ces/v1beta/session_service/paths.rb +117 -0
  69. data/lib/google/cloud/ces/v1beta/session_service/rest/client.rb +562 -0
  70. data/lib/google/cloud/ces/v1beta/session_service/rest/service_stub.rb +199 -0
  71. data/lib/google/cloud/ces/v1beta/session_service/rest.rb +53 -0
  72. data/lib/google/cloud/ces/v1beta/session_service.rb +55 -0
  73. data/lib/google/cloud/ces/v1beta/session_service_pb.rb +54 -0
  74. data/lib/google/cloud/ces/v1beta/session_service_services_pb.rb +120 -0
  75. data/lib/google/cloud/ces/v1beta/system_tool_pb.rb +23 -0
  76. data/lib/google/cloud/ces/v1beta/tool_pb.rb +40 -0
  77. data/lib/google/cloud/ces/v1beta/tool_service/client.rb +733 -0
  78. data/lib/google/cloud/ces/v1beta/tool_service/credentials.rb +48 -0
  79. data/lib/google/cloud/ces/v1beta/tool_service/paths.rb +94 -0
  80. data/lib/google/cloud/ces/v1beta/tool_service/rest/client.rb +677 -0
  81. data/lib/google/cloud/ces/v1beta/tool_service/rest/service_stub.rb +267 -0
  82. data/lib/google/cloud/ces/v1beta/tool_service/rest.rb +53 -0
  83. data/lib/google/cloud/ces/v1beta/tool_service.rb +55 -0
  84. data/lib/google/cloud/ces/v1beta/tool_service_pb.rb +37 -0
  85. data/lib/google/cloud/ces/v1beta/tool_service_services_pb.rb +50 -0
  86. data/lib/google/cloud/ces/v1beta/toolset_pb.rb +30 -0
  87. data/lib/google/cloud/ces/v1beta/toolset_tool_pb.rb +24 -0
  88. data/lib/google/cloud/ces/v1beta/version.rb +7 -2
  89. data/lib/google/cloud/ces/v1beta/widget_service/client.rb +503 -0
  90. data/lib/google/cloud/ces/v1beta/widget_service/credentials.rb +48 -0
  91. data/lib/google/cloud/ces/v1beta/widget_service/paths.rb +75 -0
  92. data/lib/google/cloud/ces/v1beta/widget_service/rest/client.rb +461 -0
  93. data/lib/google/cloud/ces/v1beta/widget_service/rest/service_stub.rb +143 -0
  94. data/lib/google/cloud/ces/v1beta/widget_service/rest.rb +53 -0
  95. data/lib/google/cloud/ces/v1beta/widget_service.rb +55 -0
  96. data/lib/google/cloud/ces/v1beta/widget_service_pb.rb +28 -0
  97. data/lib/google/cloud/ces/v1beta/widget_service_services_pb.rb +46 -0
  98. data/lib/google/cloud/ces/v1beta/widget_tool_pb.rb +31 -0
  99. data/lib/google/cloud/ces/v1beta.rb +49 -0
  100. data/lib/google-cloud-ces-v1beta.rb +21 -0
  101. data/proto_docs/README.md +4 -0
  102. data/proto_docs/google/api/client.rb +593 -0
  103. data/proto_docs/google/api/field_behavior.rb +85 -0
  104. data/proto_docs/google/api/launch_stage.rb +71 -0
  105. data/proto_docs/google/api/resource.rb +227 -0
  106. data/proto_docs/google/cloud/ces/v1beta/agent.rb +233 -0
  107. data/proto_docs/google/cloud/ces/v1beta/agent_card.rb +122 -0
  108. data/proto_docs/google/cloud/ces/v1beta/agent_service.rb +1682 -0
  109. data/proto_docs/google/cloud/ces/v1beta/agent_tool.rb +48 -0
  110. data/proto_docs/google/cloud/ces/v1beta/agent_transfers.rb +111 -0
  111. data/proto_docs/google/cloud/ces/v1beta/app.rb +883 -0
  112. data/proto_docs/google/cloud/ces/v1beta/app_version.rb +83 -0
  113. data/proto_docs/google/cloud/ces/v1beta/auth.rb +214 -0
  114. data/proto_docs/google/cloud/ces/v1beta/bigquery_export.rb +45 -0
  115. data/proto_docs/google/cloud/ces/v1beta/changelog.rb +73 -0
  116. data/proto_docs/google/cloud/ces/v1beta/client_function.rb +48 -0
  117. data/proto_docs/google/cloud/ces/v1beta/common.rb +375 -0
  118. data/proto_docs/google/cloud/ces/v1beta/connector_tool.rb +122 -0
  119. data/proto_docs/google/cloud/ces/v1beta/connector_toolset.rb +52 -0
  120. data/proto_docs/google/cloud/ces/v1beta/conversation.rb +159 -0
  121. data/proto_docs/google/cloud/ces/v1beta/data_store.rb +102 -0
  122. data/proto_docs/google/cloud/ces/v1beta/data_store_tool.rb +328 -0
  123. data/proto_docs/google/cloud/ces/v1beta/deployment.rb +123 -0
  124. data/proto_docs/google/cloud/ces/v1beta/evaluation.rb +1687 -0
  125. data/proto_docs/google/cloud/ces/v1beta/evaluation_metrics_config.rb +151 -0
  126. data/proto_docs/google/cloud/ces/v1beta/evaluation_service.rb +1087 -0
  127. data/proto_docs/google/cloud/ces/v1beta/example.rb +245 -0
  128. data/proto_docs/google/cloud/ces/v1beta/fakes.rb +67 -0
  129. data/proto_docs/google/cloud/ces/v1beta/file_context.rb +50 -0
  130. data/proto_docs/google/cloud/ces/v1beta/file_search_tool.rb +60 -0
  131. data/proto_docs/google/cloud/ces/v1beta/golden_run.rb +40 -0
  132. data/proto_docs/google/cloud/ces/v1beta/google_search_tool.rb +76 -0
  133. data/proto_docs/google/cloud/ces/v1beta/guardrail.rb +324 -0
  134. data/proto_docs/google/cloud/ces/v1beta/mcp_tool.rb +110 -0
  135. data/proto_docs/google/cloud/ces/v1beta/mcp_toolset.rb +118 -0
  136. data/proto_docs/google/cloud/ces/v1beta/mocks.rb +60 -0
  137. data/proto_docs/google/cloud/ces/v1beta/omnichannel.rb +163 -0
  138. data/proto_docs/google/cloud/ces/v1beta/omnichannel_service.rb +45 -0
  139. data/proto_docs/google/cloud/ces/v1beta/open_api_tool.rb +66 -0
  140. data/proto_docs/google/cloud/ces/v1beta/open_api_toolset.rb +57 -0
  141. data/proto_docs/google/cloud/ces/v1beta/python_function.rb +47 -0
  142. data/proto_docs/google/cloud/ces/v1beta/schema.rb +162 -0
  143. data/proto_docs/google/cloud/ces/v1beta/search_suggestions.rb +55 -0
  144. data/proto_docs/google/cloud/ces/v1beta/security_settings.rb +80 -0
  145. data/proto_docs/google/cloud/ces/v1beta/session_service.rb +493 -0
  146. data/proto_docs/google/cloud/ces/v1beta/system_tool.rb +38 -0
  147. data/proto_docs/google/cloud/ces/v1beta/tool.rb +136 -0
  148. data/proto_docs/google/cloud/ces/v1beta/tool_service.rb +185 -0
  149. data/proto_docs/google/cloud/ces/v1beta/toolset.rb +80 -0
  150. data/proto_docs/google/cloud/ces/v1beta/toolset_tool.rb +40 -0
  151. data/proto_docs/google/cloud/ces/v1beta/widget_service.rb +62 -0
  152. data/proto_docs/google/cloud/ces/v1beta/widget_tool.rb +182 -0
  153. data/proto_docs/google/longrunning/operations.rb +191 -0
  154. data/proto_docs/google/protobuf/any.rb +145 -0
  155. data/proto_docs/google/protobuf/duration.rb +98 -0
  156. data/proto_docs/google/protobuf/empty.rb +34 -0
  157. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  158. data/proto_docs/google/protobuf/struct.rb +108 -0
  159. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  160. data/proto_docs/google/rpc/status.rb +48 -0
  161. metadata +208 -9
@@ -0,0 +1,883 @@
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 V1beta
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::V1beta::LanguageSettings]
47
+ # Optional. Language settings of the app.
48
+ # @!attribute [rw] time_zone_settings
49
+ # @return [::Google::Cloud::Ces::V1beta::TimeZoneSettings]
50
+ # Optional. TimeZone settings of the app.
51
+ # @!attribute [rw] audio_processing_config
52
+ # @return [::Google::Cloud::Ces::V1beta::AudioProcessingConfig]
53
+ # Optional. Audio processing configuration of the app.
54
+ # @!attribute [rw] logging_settings
55
+ # @return [::Google::Cloud::Ces::V1beta::LoggingSettings]
56
+ # Optional. Logging settings of the app.
57
+ # @!attribute [rw] error_handling_settings
58
+ # @return [::Google::Cloud::Ces::V1beta::ErrorHandlingSettings]
59
+ # Optional. Error handling settings of the app.
60
+ # @!attribute [rw] model_settings
61
+ # @return [::Google::Cloud::Ces::V1beta::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::V1beta::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::V1beta::EvaluationMetricsThresholds]
71
+ # Optional. The evaluation thresholds for the app.
72
+ # @!attribute [rw] variable_declarations
73
+ # @return [::Array<::Google::Cloud::Ces::V1beta::App::VariableDeclaration>]
74
+ # Optional. The declarations of the variables.
75
+ # @!attribute [r] predefined_variable_declarations
76
+ # @return [::Array<::Google::Cloud::Ces::V1beta::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::V1beta::DataStoreSettings]
90
+ # Optional. The data store settings for the app.
91
+ # @!attribute [rw] default_channel_profile
92
+ # @return [::Google::Cloud::Ces::V1beta::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::V1beta::ClientCertificateSettings]
114
+ # Optional. The default client certificate settings for the app.
115
+ # @!attribute [rw] vpc_sc_settings
116
+ # @return [::Google::Cloud::Ces::V1beta::VpcScSettings]
117
+ # Optional. VPC-SC settings for the app.
118
+ # @!attribute [rw] locked
119
+ # @return [::Boolean]
120
+ # Optional. Indicates whether the app is locked for changes. If the app is
121
+ # locked, modifications to the app resources will be rejected.
122
+ # @!attribute [rw] evaluation_personas
123
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationPersona>]
124
+ # Optional. The evaluation personas for the app. This field is used to define
125
+ # the personas that can be used for evaluation. Maximum of 30 personas can be
126
+ # defined.
127
+ # @!attribute [rw] evaluation_settings
128
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationSettings]
129
+ # Optional. The evaluation settings for the app.
130
+ # @!attribute [r] validation_errors
131
+ # @return [::Array<::String>]
132
+ # Output only. Misconfigurations or warnings in the app.
133
+ class App
134
+ include ::Google::Protobuf::MessageExts
135
+ extend ::Google::Protobuf::MessageExts::ClassMethods
136
+
137
+ # Defines the structure and metadata for a variable.
138
+ # @!attribute [rw] name
139
+ # @return [::String]
140
+ # Required. The name of the variable. The name must start with a letter or
141
+ # underscore and contain only letters, numbers, or underscores.
142
+ # @!attribute [rw] description
143
+ # @return [::String]
144
+ # Required. The description of the variable.
145
+ # @!attribute [rw] schema
146
+ # @return [::Google::Cloud::Ces::V1beta::Schema]
147
+ # Required. The schema of the variable.
148
+ class VariableDeclaration
149
+ include ::Google::Protobuf::MessageExts
150
+ extend ::Google::Protobuf::MessageExts::ClassMethods
151
+ end
152
+
153
+ # @!attribute [rw] key
154
+ # @return [::String]
155
+ # @!attribute [rw] value
156
+ # @return [::String]
157
+ class MetadataEntry
158
+ include ::Google::Protobuf::MessageExts
159
+ extend ::Google::Protobuf::MessageExts::ClassMethods
160
+ end
161
+
162
+ # Defines the tool execution behavior if there are **multiple** tools being
163
+ # selected by the agent **at the same time**.
164
+ module ToolExecutionMode
165
+ # Unspecified tool execution mode. Default to PARALLEL.
166
+ TOOL_EXECUTION_MODE_UNSPECIFIED = 0
167
+
168
+ # If there are multiple tools being selected, they will be executed in
169
+ # parallel, with the same
170
+ # [ToolContext](https://google.github.io/adk-docs/context/#the-different-types-of-context).
171
+ PARALLEL = 1
172
+
173
+ # If there are multiple tools being selected, they will be executed
174
+ # sequentially. The next tool will only be executed after the previous tool
175
+ # completes and it can see updated
176
+ # [ToolContext](https://google.github.io/adk-docs/context/#the-different-types-of-context)
177
+ # from the previous tool.
178
+ SEQUENTIAL = 2
179
+ end
180
+ end
181
+
182
+ # TimeZone settings of the app.
183
+ # @!attribute [rw] time_zone
184
+ # @return [::String]
185
+ # Optional. The time zone of the app from the [time zone
186
+ # database](https://www.iana.org/time-zones), e.g., America/Los_Angeles,
187
+ # Europe/Paris.
188
+ class TimeZoneSettings
189
+ include ::Google::Protobuf::MessageExts
190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+
193
+ # Language settings of the app.
194
+ # @!attribute [rw] default_language_code
195
+ # @return [::String]
196
+ # Optional. The default language code of the app.
197
+ # @!attribute [rw] supported_language_codes
198
+ # @return [::Array<::String>]
199
+ # Optional. List of languages codes supported by the app, in addition to the
200
+ # `default_language_code`.
201
+ # @!attribute [rw] enable_multilingual_support
202
+ # @return [::Boolean]
203
+ # Optional. Enables multilingual support. If true, agents in the app will use
204
+ # pre-built instructions to improve handling of multilingual input.
205
+ # @!attribute [rw] fallback_action
206
+ # @deprecated This field is deprecated and may be removed in the next major version update.
207
+ # @return [::String]
208
+ # Optional. Deprecated: This feature is no longer supported. Use
209
+ # `enable_multilingual_support` instead to improve handling of multilingual
210
+ # input.
211
+ # The action to perform when an agent receives input in an unsupported
212
+ # language.
213
+ #
214
+ # This can be a predefined action or a custom tool call.
215
+ # Valid values are:
216
+ # - A tool's full resource name, which triggers a specific tool execution.
217
+ # - A predefined system action, such as "escalate" or "exit", which triggers
218
+ # an {::Google::Cloud::Ces::V1beta::EndSession EndSession} signal with
219
+ # corresponding {::Google::Cloud::Ces::V1beta::EndSession#metadata metadata} to
220
+ # terminate the conversation.
221
+ class LanguageSettings
222
+ include ::Google::Protobuf::MessageExts
223
+ extend ::Google::Protobuf::MessageExts::ClassMethods
224
+ end
225
+
226
+ # Configuration for how the input and output audio should be processed and
227
+ # delivered.
228
+ # @!attribute [rw] synthesize_speech_configs
229
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Ces::V1beta::SynthesizeSpeechConfig}]
230
+ # Optional. Configuration of how the agent response should be synthesized,
231
+ # mapping from the language code to
232
+ # {::Google::Cloud::Ces::V1beta::SynthesizeSpeechConfig SynthesizeSpeechConfig}.
233
+ #
234
+ # If the configuration for the specified language code is not found, the
235
+ # configuration for the root language code will be used. For example, if the
236
+ # map contains "en-us" and "en", and the specified language code is "en-gb",
237
+ # then "en" configuration will be used.
238
+ #
239
+ # Note: Language code is case-insensitive.
240
+ # @!attribute [rw] barge_in_config
241
+ # @return [::Google::Cloud::Ces::V1beta::BargeInConfig]
242
+ # Optional. Configures the agent behavior for the user barge-in activities.
243
+ # @!attribute [rw] inactivity_timeout
244
+ # @return [::Google::Protobuf::Duration]
245
+ # Optional. The duration of user inactivity (no speech or interaction) before
246
+ # the agent prompts the user for reengagement. If not set, the agent will not
247
+ # prompt the user for reengagement.
248
+ # @!attribute [rw] ambient_sound_config
249
+ # @return [::Google::Cloud::Ces::V1beta::AmbientSoundConfig]
250
+ # Optional. Configuration for the ambient sound to be played with the
251
+ # synthesized agent response, to enhance the naturalness of the conversation.
252
+ class AudioProcessingConfig
253
+ include ::Google::Protobuf::MessageExts
254
+ extend ::Google::Protobuf::MessageExts::ClassMethods
255
+
256
+ # @!attribute [rw] key
257
+ # @return [::String]
258
+ # @!attribute [rw] value
259
+ # @return [::Google::Cloud::Ces::V1beta::SynthesizeSpeechConfig]
260
+ class SynthesizeSpeechConfigsEntry
261
+ include ::Google::Protobuf::MessageExts
262
+ extend ::Google::Protobuf::MessageExts::ClassMethods
263
+ end
264
+ end
265
+
266
+ # Configuration for the ambient sound to be played with the synthesized agent
267
+ # response, to enhance the naturalness of the conversation.
268
+ # @!attribute [rw] prebuilt_ambient_noise
269
+ # @deprecated This field is deprecated and may be removed in the next major version update.
270
+ # @return [::Google::Cloud::Ces::V1beta::AmbientSoundConfig::PrebuiltAmbientNoise]
271
+ # Optional. Deprecated: `prebuilt_ambient_noise` is deprecated in favor of
272
+ # `prebuilt_ambient_sound`.
273
+ #
274
+ # 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.
275
+ # @!attribute [rw] gcs_uri
276
+ # @return [::String]
277
+ # Optional. Ambient noise as a mono-channel, 16kHz WAV file stored in
278
+ # [Cloud Storage](https://cloud.google.com/storage).
279
+ #
280
+ # Note: Please make sure the CES service agent
281
+ # `service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com` has
282
+ # `storage.objects.get` permission to the Cloud Storage object.
283
+ #
284
+ # 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.
285
+ # @!attribute [rw] prebuilt_ambient_sound
286
+ # @return [::String]
287
+ # Optional. Name of the prebuilt ambient sound.
288
+ # Valid values are:
289
+ # - "coffee_shop"
290
+ # - "keyboard"
291
+ # - "keypad"
292
+ # - "hum"
293
+ # - "office_1"
294
+ # - "office_2"
295
+ # - "office_3"
296
+ # - "room_1"
297
+ # - "room_2"
298
+ # - "room_3"
299
+ # - "room_4"
300
+ # - "room_5"
301
+ # - "air_conditioner"
302
+ #
303
+ # 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.
304
+ # @!attribute [rw] volume_gain_db
305
+ # @return [::Float]
306
+ # Optional. Volume gain (in dB) of the normal native volume supported by
307
+ # ambient noise, in the range [-96.0, 16.0]. If unset, or set to a value of
308
+ # 0.0 (dB), will play at normal native signal amplitude. A value of -6.0 (dB)
309
+ # will play at approximately half the amplitude of the normal native signal
310
+ # amplitude. A value of +6.0 (dB) will play at approximately twice the
311
+ # amplitude of the normal native signal amplitude. We strongly recommend not
312
+ # to exceed +10 (dB) as there's usually no effective increase in loudness for
313
+ # any value greater than that.
314
+ class AmbientSoundConfig
315
+ include ::Google::Protobuf::MessageExts
316
+ extend ::Google::Protobuf::MessageExts::ClassMethods
317
+
318
+ # Prebuilt ambient noise.
319
+ module PrebuiltAmbientNoise
320
+ # Not specified.
321
+ PREBUILT_AMBIENT_NOISE_UNSPECIFIED = 0
322
+
323
+ # Ambient noise of a retail store.
324
+ RETAIL_STORE = 1
325
+
326
+ # Ambient noise of a convention hall.
327
+ CONVENTION_HALL = 2
328
+
329
+ # Ambient noise of a street.
330
+ OUTDOOR = 3
331
+ end
332
+ end
333
+
334
+ # Configuration for how the user barge-in activities should be handled.
335
+ # @!attribute [rw] disable_barge_in
336
+ # @deprecated This field is deprecated and may be removed in the next major version update.
337
+ # @return [::Boolean]
338
+ # Optional. Disables user barge-in while the agent is speaking. If true, user
339
+ # input during agent response playback will be ignored.
340
+ #
341
+ # Deprecated: `disable_barge_in` is deprecated in favor of
342
+ # {::Google::Cloud::Ces::V1beta::ChannelProfile#disable_barge_in_control `disable_barge_in_control`}
343
+ # in ChannelProfile.
344
+ # @!attribute [rw] barge_in_awareness
345
+ # @return [::Boolean]
346
+ # Optional. If enabled, the agent will adapt its next response based on the
347
+ # assumption that the user hasn't heard the full preceding agent message.
348
+ # This should not be used in scenarios where agent responses are displayed
349
+ # visually.
350
+ class BargeInConfig
351
+ include ::Google::Protobuf::MessageExts
352
+ extend ::Google::Protobuf::MessageExts::ClassMethods
353
+ end
354
+
355
+ # Configuration for how the agent response should be synthesized.
356
+ # @!attribute [rw] voice
357
+ # @return [::String]
358
+ # Optional. The name of the voice. If not set, the service will choose a
359
+ # voice based on the other parameters such as language_code.
360
+ #
361
+ # For the list of available voices, please refer to [Supported voices and
362
+ # languages](https://cloud.google.com/text-to-speech/docs/voices) from Cloud
363
+ # Text-to-Speech.
364
+ # @!attribute [rw] speaking_rate
365
+ # @return [::Float]
366
+ # Optional. The speaking rate/speed in the range [0.25, 2.0]. 1.0 is the
367
+ # normal native speed supported by the specific voice. 2.0 is twice as fast,
368
+ # and 0.5 is half as fast. Values outside of the range [0.25, 2.0] will
369
+ # return an error.
370
+ class SynthesizeSpeechConfig
371
+ include ::Google::Protobuf::MessageExts
372
+ extend ::Google::Protobuf::MessageExts::ClassMethods
373
+ end
374
+
375
+ # Settings to describe the conversation data collection behaviors for LLM
376
+ # analysis metrics pipeline.
377
+ # @!attribute [rw] llm_metrics_opted_out
378
+ # @return [::Boolean]
379
+ # Optional. Whether to collect conversation data for llm analysis metrics. If
380
+ # true, conversation data will not be collected for llm analysis metrics;
381
+ # otherwise, conversation data will be collected.
382
+ class MetricAnalysisSettings
383
+ include ::Google::Protobuf::MessageExts
384
+ extend ::Google::Protobuf::MessageExts::ClassMethods
385
+ end
386
+
387
+ # Settings to describe the logging behaviors for the app.
388
+ # @!attribute [rw] redaction_config
389
+ # @return [::Google::Cloud::Ces::V1beta::RedactionConfig]
390
+ # Optional. Configuration for how sensitive data should be redacted.
391
+ # @!attribute [rw] audio_recording_config
392
+ # @return [::Google::Cloud::Ces::V1beta::AudioRecordingConfig]
393
+ # Optional. Configuration for how audio interactions should be recorded. The
394
+ # audio is subject to redaction as configured in
395
+ # {::Google::Cloud::Ces::V1beta::LoggingSettings#redaction_config RedactionConfig}.
396
+ # @!attribute [rw] unredacted_audio_recording_config
397
+ # @return [::Google::Cloud::Ces::V1beta::AudioRecordingConfig]
398
+ # Optional. Configures an additional recording of unredacted audio. This can
399
+ # be used to maintain a raw audio copy when audio redaction is
400
+ # {::Google::Cloud::Ces::V1beta::RedactionConfig#enable_redaction enabled},
401
+ # typically for auditing or monitoring purposes.
402
+ # @!attribute [rw] bigquery_export_settings
403
+ # @return [::Google::Cloud::Ces::V1beta::BigQueryExportSettings]
404
+ # Optional. Configures the BigQuery export behaviors for the app. The
405
+ # conversation data is subject to redaction as configured in
406
+ # {::Google::Cloud::Ces::V1beta::LoggingSettings#redaction_config RedactionConfig}.
407
+ # @!attribute [rw] cloud_logging_settings
408
+ # @return [::Google::Cloud::Ces::V1beta::CloudLoggingSettings]
409
+ # Optional. Settings to describe the Cloud Logging behaviors for the app.
410
+ # @!attribute [rw] conversation_logging_settings
411
+ # @return [::Google::Cloud::Ces::V1beta::ConversationLoggingSettings]
412
+ # Optional. Settings to describe the conversation logging behaviors for the
413
+ # app.
414
+ # @!attribute [rw] evaluation_audio_recording_config
415
+ # @return [::Google::Cloud::Ces::V1beta::AudioRecordingConfig]
416
+ # Optional. Configuration for how audio interactions should be recorded for
417
+ # the evaluation. By default, audio recording is not enabled for evaluation
418
+ # sessions.
419
+ # @!attribute [rw] metric_analysis_settings
420
+ # @return [::Google::Cloud::Ces::V1beta::MetricAnalysisSettings]
421
+ # Optional. Settings to describe the conversation data collection behaviors
422
+ # for the LLM analysis pipeline for the app.
423
+ class LoggingSettings
424
+ include ::Google::Protobuf::MessageExts
425
+ extend ::Google::Protobuf::MessageExts::ClassMethods
426
+ end
427
+
428
+ # Settings to describe how errors should be handled in the app.
429
+ # @!attribute [rw] error_handling_strategy
430
+ # @return [::Google::Cloud::Ces::V1beta::ErrorHandlingSettings::ErrorHandlingStrategy]
431
+ # Optional. The strategy to use for error handling.
432
+ # @!attribute [rw] fallback_response_config
433
+ # @return [::Google::Cloud::Ces::V1beta::ErrorHandlingSettings::FallbackResponseConfig]
434
+ # Optional. Configuration for handling fallback responses.
435
+ # @!attribute [rw] end_session_config
436
+ # @return [::Google::Cloud::Ces::V1beta::ErrorHandlingSettings::EndSessionConfig]
437
+ # Optional. Configuration for ending the session in case of system errors
438
+ # (e.g. LLM errors).
439
+ class ErrorHandlingSettings
440
+ include ::Google::Protobuf::MessageExts
441
+ extend ::Google::Protobuf::MessageExts::ClassMethods
442
+
443
+ # Configuration for handling fallback responses.
444
+ # @!attribute [rw] custom_fallback_messages
445
+ # @return [::Google::Protobuf::Map{::String => ::String}]
446
+ # Optional. The fallback messages in case of system errors (e.g. LLM
447
+ # errors), mapped by [supported language
448
+ # code](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference/language).
449
+ # @!attribute [rw] max_fallback_attempts
450
+ # @return [::Integer]
451
+ # Optional. The maximum number of fallback attempts to make before the
452
+ # agent emitting {::Google::Cloud::Ces::V1beta::EndSession EndSession} Signal.
453
+ class FallbackResponseConfig
454
+ include ::Google::Protobuf::MessageExts
455
+ extend ::Google::Protobuf::MessageExts::ClassMethods
456
+
457
+ # @!attribute [rw] key
458
+ # @return [::String]
459
+ # @!attribute [rw] value
460
+ # @return [::String]
461
+ class CustomFallbackMessagesEntry
462
+ include ::Google::Protobuf::MessageExts
463
+ extend ::Google::Protobuf::MessageExts::ClassMethods
464
+ end
465
+ end
466
+
467
+ # Configuration for ending the session in case of system errors (e.g. LLM
468
+ # errors).
469
+ # @!attribute [rw] escalate_session
470
+ # @return [::Boolean]
471
+ # Optional. Whether to escalate the session in
472
+ # {::Google::Cloud::Ces::V1beta::EndSession EndSession}. If session is
473
+ # escalated, [metadata in
474
+ # EndSession][google.cloud.ces.v1beta.EndSession.metadata] will contain
475
+ # `session_escalated = true`. See
476
+ # https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/deploy/google-telephony-platform#transfer_a_call_to_a_human_agent
477
+ # for details.
478
+ class EndSessionConfig
479
+ include ::Google::Protobuf::MessageExts
480
+ extend ::Google::Protobuf::MessageExts::ClassMethods
481
+ end
482
+
483
+ # Defines the strategy for handling errors.
484
+ module ErrorHandlingStrategy
485
+ # Unspecified error handling strategy.
486
+ ERROR_HANDLING_STRATEGY_UNSPECIFIED = 0
487
+
488
+ # No specific handling is enabled.
489
+ NONE = 1
490
+
491
+ # A fallback message will be returned to the user in case of
492
+ # system errors (e.g. LLM errors).
493
+ FALLBACK_RESPONSE = 2
494
+
495
+ # An {::Google::Cloud::Ces::V1beta::EndSession EndSession} signal will be
496
+ # emitted in case of system errors (e.g. LLM errors).
497
+ END_SESSION = 3
498
+ end
499
+ end
500
+
501
+ # Threshold settings for metrics in an Evaluation.
502
+ # @!attribute [rw] golden_evaluation_metrics_thresholds
503
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds]
504
+ # Optional. The golden evaluation metrics thresholds.
505
+ # @!attribute [rw] hallucination_metric_behavior
506
+ # @deprecated This field is deprecated and may be removed in the next major version update.
507
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::HallucinationMetricBehavior]
508
+ # Optional. Deprecated: Use `golden_hallucination_metric_behavior` instead.
509
+ # The hallucination metric behavior is currently used for golden evaluations.
510
+ # @!attribute [rw] golden_hallucination_metric_behavior
511
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::HallucinationMetricBehavior]
512
+ # Optional. The hallucination metric behavior for golden evaluations.
513
+ # @!attribute [rw] scenario_hallucination_metric_behavior
514
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::HallucinationMetricBehavior]
515
+ # Optional. The hallucination metric behavior for scenario evaluations.
516
+ class EvaluationMetricsThresholds
517
+ include ::Google::Protobuf::MessageExts
518
+ extend ::Google::Protobuf::MessageExts::ClassMethods
519
+
520
+ # Settings for golden evaluations.
521
+ # @!attribute [rw] turn_level_metrics_thresholds
522
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::TurnLevelMetricsThresholds]
523
+ # Optional. The turn level metrics thresholds.
524
+ # @!attribute [rw] expectation_level_metrics_thresholds
525
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::ExpectationLevelMetricsThresholds]
526
+ # Optional. The expectation level metrics thresholds.
527
+ # @!attribute [rw] tool_matching_settings
528
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::ToolMatchingSettings]
529
+ # Optional. The tool matching settings. An
530
+ # extra tool call is a tool call that is present in the execution but does
531
+ # not match any tool call in the golden expectation.
532
+ class GoldenEvaluationMetricsThresholds
533
+ include ::Google::Protobuf::MessageExts
534
+ extend ::Google::Protobuf::MessageExts::ClassMethods
535
+
536
+ # Turn level metrics thresholds.
537
+ # @!attribute [rw] semantic_similarity_success_threshold
538
+ # @return [::Integer]
539
+ # Optional. The success threshold for semantic similarity. Must be an
540
+ # integer between 0 and 4. Default is >= 3.
541
+ # @!attribute [rw] overall_tool_invocation_correctness_threshold
542
+ # @return [::Float]
543
+ # Optional. The success threshold for overall tool invocation
544
+ # correctness. Must be a float between 0 and 1. Default is 1.0.
545
+ # @!attribute [rw] semantic_similarity_channel
546
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::TurnLevelMetricsThresholds::SemanticSimilarityChannel]
547
+ # Optional. The semantic similarity channel to use for evaluation.
548
+ class TurnLevelMetricsThresholds
549
+ include ::Google::Protobuf::MessageExts
550
+ extend ::Google::Protobuf::MessageExts::ClassMethods
551
+
552
+ # Semantic similarity channel to use.
553
+ module SemanticSimilarityChannel
554
+ # Metric unspecified. Defaults to TEXT.
555
+ SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED = 0
556
+
557
+ # Use text semantic similarity.
558
+ TEXT = 1
559
+
560
+ # Use audio semantic similarity.
561
+ AUDIO = 2
562
+ end
563
+ end
564
+
565
+ # Expectation level metrics thresholds.
566
+ # @!attribute [rw] tool_invocation_parameter_correctness_threshold
567
+ # @return [::Float]
568
+ # Optional. The success threshold for individual tool invocation
569
+ # parameter correctness. Must be a float between 0 and 1. Default is 1.0.
570
+ class ExpectationLevelMetricsThresholds
571
+ include ::Google::Protobuf::MessageExts
572
+ extend ::Google::Protobuf::MessageExts::ClassMethods
573
+ end
574
+ end
575
+
576
+ # Settings for matching tool calls.
577
+ # @!attribute [rw] extra_tool_call_behavior
578
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::ToolMatchingSettings::ExtraToolCallBehavior]
579
+ # Optional. Behavior for extra tool calls.
580
+ # Defaults to FAIL.
581
+ class ToolMatchingSettings
582
+ include ::Google::Protobuf::MessageExts
583
+ extend ::Google::Protobuf::MessageExts::ClassMethods
584
+
585
+ # Defines the behavior when an extra tool call is encountered. An extra
586
+ # tool call is a tool call that is present in the execution but does not
587
+ # match any tool call in the golden expectation.
588
+ module ExtraToolCallBehavior
589
+ # Unspecified behavior. Defaults to FAIL.
590
+ EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED = 0
591
+
592
+ # Fail the evaluation if an extra tool call is encountered.
593
+ FAIL = 1
594
+
595
+ # Allow the extra tool call.
596
+ ALLOW = 2
597
+ end
598
+ end
599
+
600
+ # The hallucination metric behavior. Regardless of the behavior, the metric
601
+ # will always be calculated. The difference is that when disabled, the
602
+ # metric is not used to calculate the overall evaluation score.
603
+ module HallucinationMetricBehavior
604
+ # Unspecified hallucination metric behavior.
605
+ HALLUCINATION_METRIC_BEHAVIOR_UNSPECIFIED = 0
606
+
607
+ # Disable hallucination metric.
608
+ DISABLED = 1
609
+
610
+ # Enable hallucination metric.
611
+ ENABLED = 2
612
+ end
613
+ end
614
+
615
+ # Settings for evaluation.
616
+ # @!attribute [rw] scenario_conversation_initiator
617
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationSettings::ScenarioConversationInitiator]
618
+ # Optional. Who starts the conversation in a scenario evaluation.
619
+ # @!attribute [rw] golden_run_method
620
+ # @return [::Google::Cloud::Ces::V1beta::GoldenRunMethod]
621
+ # Optional. The default method used to run golden evaluations. This will be
622
+ # used if no golden_run_method is specified in the RunEvaluationRequest.
623
+ # @!attribute [rw] golden_evaluation_tool_call_behaviour
624
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationToolCallBehaviour]
625
+ # Optional. Configures the default tool call behaviour for golden
626
+ # evaluations.
627
+ # @!attribute [rw] scenario_evaluation_tool_call_behaviour
628
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationToolCallBehaviour]
629
+ # Optional. Configures the default tool call behaviour for scenario
630
+ # evaluations.
631
+ # @!attribute [rw] metrics_config
632
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsConfig]
633
+ # Optional. Configures the default metrics for evaluations.
634
+ # @!attribute [rw] scenario_execution_mode
635
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationSettings::ScenarioExecutionMode]
636
+ # Optional. The execution mode for scenario evaluations. If not provided,
637
+ # will default to QUALITY_OPTIMIZED.
638
+ class EvaluationSettings
639
+ include ::Google::Protobuf::MessageExts
640
+ extend ::Google::Protobuf::MessageExts::ClassMethods
641
+
642
+ # Determines who starts the conversation in a scenario evaluation session.
643
+ module ScenarioConversationInitiator
644
+ # Unspecified. Defaults to USER.
645
+ SCENARIO_CONVERSATION_INITIATOR_UNSPECIFIED = 0
646
+
647
+ # The user starts the conversation.
648
+ USER = 1
649
+
650
+ # The agent starts the conversation.
651
+ AGENT = 2
652
+ end
653
+
654
+ # The execution mode for scenario evaluations.
655
+ module ScenarioExecutionMode
656
+ # Unspecified execution mode. Defaults to QUALITY_OPTIMIZED.
657
+ SCENARIO_EXECUTION_MODE_UNSPECIFIED = 0
658
+
659
+ # Quality optimized mode.
660
+ QUALITY_OPTIMIZED = 1
661
+
662
+ # Speed optimized mode.
663
+ SPEED_OPTIMIZED = 2
664
+ end
665
+ end
666
+
667
+ # Settings for custom client certificates.
668
+ # @!attribute [rw] tls_certificate
669
+ # @return [::String]
670
+ # Required. The TLS certificate encoded in PEM format. This string must
671
+ # include the begin header and end footer lines.
672
+ # @!attribute [rw] private_key
673
+ # @return [::String]
674
+ # Required. The name of the SecretManager secret version resource storing the
675
+ # private key encoded in PEM format.
676
+ # Format: `projects/{project}/secrets/{secret}/versions/{version}`
677
+ # @!attribute [rw] passphrase
678
+ # @return [::String]
679
+ # Optional. The name of the SecretManager secret version resource storing the
680
+ # passphrase to decrypt the private key. Should be left unset if the private
681
+ # key is not encrypted.
682
+ # Format: `projects/{project}/secrets/{secret}/versions/{version}`
683
+ class ClientCertificateSettings
684
+ include ::Google::Protobuf::MessageExts
685
+ extend ::Google::Protobuf::MessageExts::ClassMethods
686
+ end
687
+
688
+ # VPC-SC settings for the app.
689
+ # @!attribute [rw] allowed_origins
690
+ # @return [::Array<::String>]
691
+ # Optional. The allowed HTTP(s) origins that OpenAPI tools in the App are
692
+ # able to directly call when VPC Service Controls are enabled. These strings
693
+ # must match the origin exactly, including the port if specified. For
694
+ # example, "https://example.com" or "https://example.com:443". This list does
695
+ # not yet apply to Python tools that may make direct HTTP calls.
696
+ class VpcScSettings
697
+ include ::Google::Protobuf::MessageExts
698
+ extend ::Google::Protobuf::MessageExts::ClassMethods
699
+ end
700
+
701
+ # Settings to describe the conversation logging behaviors for the app.
702
+ # @!attribute [rw] disable_conversation_logging
703
+ # @return [::Boolean]
704
+ # Optional. Whether to disable conversation logging for the sessions.
705
+ # @!attribute [rw] retention_window
706
+ # @return [::Google::Protobuf::Duration]
707
+ # Optional. Controls the retention window for the conversation.
708
+ # If not set, the conversation will be retained for 365 days.
709
+ class ConversationLoggingSettings
710
+ include ::Google::Protobuf::MessageExts
711
+ extend ::Google::Protobuf::MessageExts::ClassMethods
712
+ end
713
+
714
+ # Settings to describe the Cloud Logging behaviors for the app.
715
+ # @!attribute [rw] enable_cloud_logging
716
+ # @return [::Boolean]
717
+ # Optional. Whether to enable Cloud Logging for the sessions.
718
+ class CloudLoggingSettings
719
+ include ::Google::Protobuf::MessageExts
720
+ extend ::Google::Protobuf::MessageExts::ClassMethods
721
+ end
722
+
723
+ # Configuration for how the audio interactions should be recorded.
724
+ # @!attribute [rw] gcs_bucket
725
+ # @return [::String]
726
+ # Optional. The [Cloud Storage](https://cloud.google.com/storage) bucket to
727
+ # store the session audio recordings. The URI must start with "gs://".
728
+ #
729
+ # Please choose a bucket location that meets your data residency
730
+ # requirements.
731
+ #
732
+ # Note: If the Cloud Storage bucket is in a different project from the app,
733
+ # you should grant `storage.objects.create` permission to the CES service
734
+ # agent `service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com`.
735
+ # @!attribute [rw] gcs_path_prefix
736
+ # @return [::String]
737
+ # Optional. The Cloud Storage path prefix for audio recordings.
738
+ #
739
+ # This prefix can include the following placeholders, which will be
740
+ # dynamically substituted at serving time:
741
+ # - $project: project ID
742
+ # - $location: app location
743
+ # - $app: app ID
744
+ # - $date: session date in YYYY-MM-DD format
745
+ # - $session: session ID
746
+ #
747
+ # If the path prefix is not specified, the default prefix
748
+ # `$project/$location/$app/$date/$session/` will be used.
749
+ class AudioRecordingConfig
750
+ include ::Google::Protobuf::MessageExts
751
+ extend ::Google::Protobuf::MessageExts::ClassMethods
752
+ end
753
+
754
+ # Configuration to instruct how sensitive data should be handled.
755
+ # @!attribute [rw] enable_redaction
756
+ # @return [::Boolean]
757
+ # Optional. If true, redaction will be applied in various logging scenarios,
758
+ # including conversation history, Cloud Logging and audio recording.
759
+ # @!attribute [rw] inspect_template
760
+ # @return [::String]
761
+ # Optional. [DLP](https://cloud.google.com/dlp/docs) inspect template name to
762
+ # configure detection of sensitive data types.
763
+ #
764
+ # Format:
765
+ # `projects/{project}/locations/{location}/inspectTemplates/{inspect_template}`
766
+ # @!attribute [rw] deidentify_template
767
+ # @return [::String]
768
+ # Optional. [DLP](https://cloud.google.com/dlp/docs) deidentify template name
769
+ # to instruct on how to de-identify content.
770
+ #
771
+ # Format:
772
+ # `projects/{project}/locations/{location}/deidentifyTemplates/{deidentify_template}`
773
+ class RedactionConfig
774
+ include ::Google::Protobuf::MessageExts
775
+ extend ::Google::Protobuf::MessageExts::ClassMethods
776
+ end
777
+
778
+ # Data store related settings for the app.
779
+ # @!attribute [r] engines
780
+ # @return [::Array<::Google::Cloud::Ces::V1beta::DataStoreSettings::Engine>]
781
+ # Output only. The engines for the app.
782
+ class DataStoreSettings
783
+ include ::Google::Protobuf::MessageExts
784
+ extend ::Google::Protobuf::MessageExts::ClassMethods
785
+
786
+ # An engine to which the data stores are connected.
787
+ # See Vertex AI Search:
788
+ # https://cloud.google.com/generative-ai-app-builder/docs/enterprise-search-introduction.
789
+ # @!attribute [r] name
790
+ # @return [::String]
791
+ # Output only. The resource name of the engine.
792
+ # Format:
793
+ # `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}`
794
+ # @!attribute [r] type
795
+ # @return [::Google::Cloud::Ces::V1beta::DataStoreSettings::Engine::Type]
796
+ # Output only. The type of the engine.
797
+ class Engine
798
+ include ::Google::Protobuf::MessageExts
799
+ extend ::Google::Protobuf::MessageExts::ClassMethods
800
+
801
+ # The type of the engine.
802
+ # See the documentation available at
803
+ # https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/SolutionType
804
+ # and
805
+ # https://cloud.google.com/generative-ai-app-builder/docs/create-datastore-ingest.
806
+ module Type
807
+ # Unspecified engine type.
808
+ TYPE_UNSPECIFIED = 0
809
+
810
+ # The SOLUTION_TYPE_SEARCH engine for the app. All connector data stores
811
+ # added to the app will be added to this engine.
812
+ ENGINE_TYPE_SEARCH = 1
813
+
814
+ # Chat engine type.
815
+ # The SOLUTION_TYPE_CHAT engine for the app. All connector data stores
816
+ # added to the app will be added to this engine.
817
+ ENGINE_TYPE_CHAT = 2
818
+ end
819
+ end
820
+ end
821
+
822
+ # A persona represents an end user in an evaluation.
823
+ # @!attribute [rw] name
824
+ # @return [::String]
825
+ # Required. The unique identifier of the persona.
826
+ # Format:
827
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationPersonas/{evaluationPersona}`
828
+ # @!attribute [rw] description
829
+ # @return [::String]
830
+ # Optional. The description of the persona.
831
+ # @!attribute [rw] display_name
832
+ # @return [::String]
833
+ # Required. The display name of the persona. Unique within an app.
834
+ # @!attribute [rw] personality
835
+ # @return [::String]
836
+ # Required. An instruction for the agent on how to behave in the evaluation.
837
+ # @!attribute [rw] speech_config
838
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationPersona::SpeechConfig]
839
+ # Optional. Configuration for how the persona sounds (TTS settings).
840
+ class EvaluationPersona
841
+ include ::Google::Protobuf::MessageExts
842
+ extend ::Google::Protobuf::MessageExts::ClassMethods
843
+
844
+ # Configuration for Text-to-Speech generation.
845
+ # @!attribute [rw] speaking_rate
846
+ # @return [::Float]
847
+ # Optional. The speaking rate. 1.0 is normal.
848
+ # Lower is slower (e.g., 0.8), higher is faster (e.g., 1.5).
849
+ # Useful for testing how the agent handles fast talkers.
850
+ # @!attribute [rw] environment
851
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationPersona::SpeechConfig::BackgroundEnvironment]
852
+ # Optional. The simulated audio environment.
853
+ # @!attribute [rw] voice_id
854
+ # @return [::String]
855
+ # Optional. The specific voice identifier/accent to use.
856
+ # Example: "en-US-Wavenet-D" or "en-GB-Standard-A"
857
+ class SpeechConfig
858
+ include ::Google::Protobuf::MessageExts
859
+ extend ::Google::Protobuf::MessageExts::ClassMethods
860
+
861
+ # Simulated audio environment.
862
+ module BackgroundEnvironment
863
+ # Background environment unspecified.
864
+ BACKGROUND_ENVIRONMENT_UNSPECIFIED = 0
865
+
866
+ # Call center environment.
867
+ CALL_CENTER = 3
868
+
869
+ # Traffic noise environment.
870
+ TRAFFIC = 4
871
+
872
+ # Kids noise environment.
873
+ KIDS_NOISE = 5
874
+
875
+ # Cafe environment.
876
+ CAFE = 6
877
+ end
878
+ end
879
+ end
880
+ end
881
+ end
882
+ end
883
+ end