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,1687 @@
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
+ # Aggregated metrics for an evaluation or evaluation dataset.
25
+ # @!attribute [r] metrics_by_app_version
26
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::MetricsByAppVersion>]
27
+ # Output only. Aggregated metrics, grouped by app version ID.
28
+ class AggregatedMetrics
29
+ include ::Google::Protobuf::MessageExts
30
+ extend ::Google::Protobuf::MessageExts::ClassMethods
31
+
32
+ # Metrics for a single tool.
33
+ # @!attribute [r] tool
34
+ # @return [::String]
35
+ # Output only. The name of the tool.
36
+ # @!attribute [r] pass_count
37
+ # @return [::Integer]
38
+ # Output only. The number of times the tool passed.
39
+ # @!attribute [r] fail_count
40
+ # @return [::Integer]
41
+ # Output only. The number of times the tool failed.
42
+ class ToolMetrics
43
+ include ::Google::Protobuf::MessageExts
44
+ extend ::Google::Protobuf::MessageExts::ClassMethods
45
+ end
46
+
47
+ # Metrics for turn latency.
48
+ # @!attribute [r] average_latency
49
+ # @return [::Google::Protobuf::Duration]
50
+ # Output only. The average latency of the turns.
51
+ class TurnLatencyMetrics
52
+ include ::Google::Protobuf::MessageExts
53
+ extend ::Google::Protobuf::MessageExts::ClassMethods
54
+ end
55
+
56
+ # Metrics for tool call latency.
57
+ # @!attribute [r] tool
58
+ # @return [::String]
59
+ # Output only. The name of the tool.
60
+ # @!attribute [r] average_latency
61
+ # @return [::Google::Protobuf::Duration]
62
+ # Output only. The average latency of the tool calls.
63
+ class ToolCallLatencyMetrics
64
+ include ::Google::Protobuf::MessageExts
65
+ extend ::Google::Protobuf::MessageExts::ClassMethods
66
+ end
67
+
68
+ # Metrics for semantic similarity results.
69
+ # @!attribute [r] score
70
+ # @return [::Float]
71
+ # Output only. The average semantic similarity score (0-4).
72
+ class SemanticSimilarityMetrics
73
+ include ::Google::Protobuf::MessageExts
74
+ extend ::Google::Protobuf::MessageExts::ClassMethods
75
+ end
76
+
77
+ # Metrics for hallucination results.
78
+ # @!attribute [r] score
79
+ # @return [::Float]
80
+ # Output only. The average hallucination score (0 to 1).
81
+ class HallucinationMetrics
82
+ include ::Google::Protobuf::MessageExts
83
+ extend ::Google::Protobuf::MessageExts::ClassMethods
84
+ end
85
+
86
+ # Metrics aggregated per app version.
87
+ # @!attribute [r] app_version_id
88
+ # @return [::String]
89
+ # Output only. The app version ID.
90
+ # @!attribute [r] tool_metrics
91
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::ToolMetrics>]
92
+ # Output only. Metrics for each tool within this app version.
93
+ # @!attribute [r] semantic_similarity_metrics
94
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::SemanticSimilarityMetrics>]
95
+ # Output only. Metrics for semantic similarity within this app version.
96
+ # @!attribute [r] hallucination_metrics
97
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::HallucinationMetrics>]
98
+ # Output only. Metrics for hallucination within this app version.
99
+ # @!attribute [r] tool_call_latency_metrics
100
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::ToolCallLatencyMetrics>]
101
+ # Output only. Metrics for tool call latency within this app version.
102
+ # @!attribute [r] turn_latency_metrics
103
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::TurnLatencyMetrics>]
104
+ # Output only. Metrics for turn latency within this app version.
105
+ # @!attribute [r] pass_count
106
+ # @return [::Integer]
107
+ # Output only. The number of times the evaluation passed.
108
+ # @!attribute [r] fail_count
109
+ # @return [::Integer]
110
+ # Output only. The number of times the evaluation failed.
111
+ # @!attribute [r] metrics_by_turn
112
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::MetricsByTurn>]
113
+ # Output only. Metrics aggregated per turn within this app version.
114
+ class MetricsByAppVersion
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+ end
118
+
119
+ # Metrics aggregated per turn.
120
+ # @!attribute [r] turn_index
121
+ # @return [::Integer]
122
+ # Output only. The turn index (0-based).
123
+ # @!attribute [r] tool_metrics
124
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::ToolMetrics>]
125
+ # Output only. Metrics for each tool within this turn.
126
+ # @!attribute [r] semantic_similarity_metrics
127
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::SemanticSimilarityMetrics>]
128
+ # Output only. Metrics for semantic similarity within this turn.
129
+ # @!attribute [r] hallucination_metrics
130
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::HallucinationMetrics>]
131
+ # Output only. Metrics for hallucination within this turn.
132
+ # @!attribute [r] tool_call_latency_metrics
133
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::ToolCallLatencyMetrics>]
134
+ # Output only. Metrics for tool call latency within this turn.
135
+ # @!attribute [r] turn_latency_metrics
136
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AggregatedMetrics::TurnLatencyMetrics>]
137
+ # Output only. Metrics for turn latency within this turn.
138
+ class MetricsByTurn
139
+ include ::Google::Protobuf::MessageExts
140
+ extend ::Google::Protobuf::MessageExts::ClassMethods
141
+ end
142
+ end
143
+
144
+ # An evaluation represents all of the information needed to simulate and
145
+ # evaluate an agent.
146
+ # @!attribute [rw] golden
147
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::Golden]
148
+ # Optional. The golden steps to be evaluated.
149
+ #
150
+ # Note: The following fields are mutually exclusive: `golden`, `scenario`. If a field in that set is populated, all other fields in the set will automatically be cleared.
151
+ # @!attribute [rw] scenario
152
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::Scenario]
153
+ # Optional. The config for a scenario.
154
+ #
155
+ # Note: The following fields are mutually exclusive: `scenario`, `golden`. If a field in that set is populated, all other fields in the set will automatically be cleared.
156
+ # @!attribute [rw] name
157
+ # @return [::String]
158
+ # Identifier. The unique identifier of this evaluation.
159
+ # Format:
160
+ # `projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}`
161
+ # @!attribute [rw] display_name
162
+ # @return [::String]
163
+ # Required. User-defined display name of the evaluation. Unique within an
164
+ # App.
165
+ # @!attribute [rw] description
166
+ # @return [::String]
167
+ # Optional. User-defined description of the evaluation.
168
+ # @!attribute [rw] tags
169
+ # @return [::Array<::String>]
170
+ # Optional. User defined tags to categorize the evaluation.
171
+ # @!attribute [r] evaluation_datasets
172
+ # @return [::Array<::String>]
173
+ # Output only. List of evaluation datasets the evaluation belongs to.
174
+ # Format:
175
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}`
176
+ # @!attribute [r] create_time
177
+ # @return [::Google::Protobuf::Timestamp]
178
+ # Output only. Timestamp when the evaluation was created.
179
+ # @!attribute [r] created_by
180
+ # @return [::String]
181
+ # Output only. The user who created the evaluation.
182
+ # @!attribute [r] update_time
183
+ # @return [::Google::Protobuf::Timestamp]
184
+ # Output only. Timestamp when the evaluation was last updated.
185
+ # @!attribute [r] last_updated_by
186
+ # @return [::String]
187
+ # Output only. The user who last updated the evaluation.
188
+ # @!attribute [r] evaluation_runs
189
+ # @return [::Array<::String>]
190
+ # Output only. The EvaluationRuns that this Evaluation is associated with.
191
+ # @!attribute [r] etag
192
+ # @return [::String]
193
+ # Output only. Etag used to ensure the object hasn't changed during a
194
+ # read-modify-write operation. If the etag is empty, the update will
195
+ # overwrite any concurrent changes.
196
+ # @!attribute [r] aggregated_metrics
197
+ # @return [::Google::Cloud::Ces::V1beta::AggregatedMetrics]
198
+ # Output only. The aggregated metrics for this evaluation across all runs.
199
+ # @!attribute [r] last_completed_result
200
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult]
201
+ # Output only. The latest evaluation result for this evaluation.
202
+ # @!attribute [r] invalid
203
+ # @return [::Boolean]
204
+ # Output only. Whether the evaluation is invalid. This can happen if an
205
+ # evaluation is referencing a tool, toolset, or agent that has since been
206
+ # deleted.
207
+ # @!attribute [r] last_ten_results
208
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult>]
209
+ # Output only. The last 10 evaluation results for this evaluation. This is
210
+ # only populated if include_last_ten_results is set to true in the
211
+ # ListEvaluationsRequest or GetEvaluationRequest.
212
+ # @!attribute [rw] evaluation_metrics_threshold_override
213
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds]
214
+ # Optional. Overrides metrics thresholds for this specific evaluation.
215
+ # @!attribute [rw] evaluation_metrics_config_override
216
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsConfig]
217
+ # Optional. Overrides metrics config for this specific evaluation.
218
+ class Evaluation
219
+ include ::Google::Protobuf::MessageExts
220
+ extend ::Google::Protobuf::MessageExts::ClassMethods
221
+
222
+ # Represents a single, checkable requirement.
223
+ # @!attribute [rw] tool_call
224
+ # @return [::Google::Cloud::Ces::V1beta::ToolCall]
225
+ # Optional. Check that a specific tool was called with the parameters.
226
+ #
227
+ # Note: The following fields are mutually exclusive: `tool_call`, `tool_response`, `agent_response`, `agent_transfer`, `updated_variables`, `mock_tool_response`, `no_tool_calls`. If a field in that set is populated, all other fields in the set will automatically be cleared.
228
+ # @!attribute [rw] tool_response
229
+ # @return [::Google::Cloud::Ces::V1beta::ToolResponse]
230
+ # Optional. Check that a specific tool had the expected response.
231
+ #
232
+ # Note: The following fields are mutually exclusive: `tool_response`, `tool_call`, `agent_response`, `agent_transfer`, `updated_variables`, `mock_tool_response`, `no_tool_calls`. If a field in that set is populated, all other fields in the set will automatically be cleared.
233
+ # @!attribute [rw] agent_response
234
+ # @return [::Google::Cloud::Ces::V1beta::Message]
235
+ # Optional. Check that the agent responded with the correct response. The
236
+ # role "agent" is implied.
237
+ #
238
+ # Note: The following fields are mutually exclusive: `agent_response`, `tool_call`, `tool_response`, `agent_transfer`, `updated_variables`, `mock_tool_response`, `no_tool_calls`. If a field in that set is populated, all other fields in the set will automatically be cleared.
239
+ # @!attribute [rw] agent_transfer
240
+ # @return [::Google::Cloud::Ces::V1beta::AgentTransfer]
241
+ # Optional. Check that the agent transferred the conversation to a
242
+ # different agent.
243
+ #
244
+ # Note: The following fields are mutually exclusive: `agent_transfer`, `tool_call`, `tool_response`, `agent_response`, `updated_variables`, `mock_tool_response`, `no_tool_calls`. If a field in that set is populated, all other fields in the set will automatically be cleared.
245
+ # @!attribute [rw] updated_variables
246
+ # @return [::Google::Protobuf::Struct]
247
+ # Optional. Check that the agent updated the session variables to the
248
+ # expected values. Used to also capture agent variable updates for golden
249
+ # evals.
250
+ #
251
+ # Note: The following fields are mutually exclusive: `updated_variables`, `tool_call`, `tool_response`, `agent_response`, `agent_transfer`, `mock_tool_response`, `no_tool_calls`. If a field in that set is populated, all other fields in the set will automatically be cleared.
252
+ # @!attribute [rw] mock_tool_response
253
+ # @return [::Google::Cloud::Ces::V1beta::ToolResponse]
254
+ # Optional. The tool response to mock, with the parameters of interest
255
+ # specified. Any parameters not specified will be hallucinated by the
256
+ # LLM.
257
+ #
258
+ # Note: The following fields are mutually exclusive: `mock_tool_response`, `tool_call`, `tool_response`, `agent_response`, `agent_transfer`, `updated_variables`, `no_tool_calls`. If a field in that set is populated, all other fields in the set will automatically be cleared.
259
+ # @!attribute [rw] no_tool_calls
260
+ # @return [::Boolean]
261
+ # Optional. Check that no tools were called during this turn.
262
+ #
263
+ # Note: The following fields are mutually exclusive: `no_tool_calls`, `tool_call`, `tool_response`, `agent_response`, `agent_transfer`, `updated_variables`, `mock_tool_response`. If a field in that set is populated, all other fields in the set will automatically be cleared.
264
+ # @!attribute [rw] note
265
+ # @return [::String]
266
+ # Optional. A note for this requirement, useful in reporting when specific
267
+ # checks fail. E.g., "Check_Payment_Tool_Called".
268
+ # @!attribute [rw] skip_evaluation
269
+ # @return [::Boolean]
270
+ # Optional. If set to true, this specific expectation will not be
271
+ # evaluated.
272
+ # @!attribute [rw] expectation_level_metrics_thresholds_override
273
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::ExpectationLevelMetricsThresholds]
274
+ # Optional. Overrides metrics at the step level.
275
+ # @!attribute [rw] agent_response_semantic_similarity_metrics_config_override
276
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsConfig::SemanticSimilarityMetricsConfig]
277
+ # Optional. Overrides for agent_response semantic similarity metrics.
278
+ # @!attribute [rw] agent_response_hallucination_metrics_config_override
279
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsConfig::HallucinationMetricsConfig]
280
+ # Optional. Overrides for agent_response hallucination metrics.
281
+ # @!attribute [rw] comparison_type
282
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsConfig::ComparisonType]
283
+ # Optional. The comparison type to use for the expectation check.
284
+ class GoldenExpectation
285
+ include ::Google::Protobuf::MessageExts
286
+ extend ::Google::Protobuf::MessageExts::ClassMethods
287
+ end
288
+
289
+ # A step defines a singular action to happen during the evaluation.
290
+ # @!attribute [rw] user_input
291
+ # @return [::Google::Cloud::Ces::V1beta::SessionInput]
292
+ # Optional. User input for the conversation.
293
+ #
294
+ # Note: The following fields are mutually exclusive: `user_input`, `agent_transfer`, `expectation`. If a field in that set is populated, all other fields in the set will automatically be cleared.
295
+ # @!attribute [rw] agent_transfer
296
+ # @return [::Google::Cloud::Ces::V1beta::AgentTransfer]
297
+ # Optional. Transfer the conversation to a different agent.
298
+ #
299
+ # Note: The following fields are mutually exclusive: `agent_transfer`, `user_input`, `expectation`. If a field in that set is populated, all other fields in the set will automatically be cleared.
300
+ # @!attribute [rw] expectation
301
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::GoldenExpectation]
302
+ # Optional. Executes an expectation on the current turn.
303
+ #
304
+ # Note: The following fields are mutually exclusive: `expectation`, `user_input`, `agent_transfer`. If a field in that set is populated, all other fields in the set will automatically be cleared.
305
+ class Step
306
+ include ::Google::Protobuf::MessageExts
307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
308
+ end
309
+
310
+ # A golden turn defines a single turn in a golden conversation.
311
+ # @!attribute [rw] steps
312
+ # @return [::Array<::Google::Cloud::Ces::V1beta::Evaluation::Step>]
313
+ # Required. The steps required to replay a golden conversation.
314
+ # @!attribute [rw] root_span
315
+ # @return [::Google::Cloud::Ces::V1beta::Span]
316
+ # Optional. The root span of the golden turn for processing and maintaining
317
+ # audio information. The uri for the audio must contain audio saved in
318
+ # 16Khz sample rate.
319
+ # @!attribute [rw] turn_level_metrics_thresholds_override
320
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::GoldenEvaluationMetricsThresholds::TurnLevelMetricsThresholds]
321
+ # Optional. Overrides for turn-level metric thresholds.
322
+ # @!attribute [rw] hallucination_metric_behavior_override
323
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds::HallucinationMetricBehavior]
324
+ # Optional. Override for turn-level hallucination metric behavior.
325
+ class GoldenTurn
326
+ include ::Google::Protobuf::MessageExts
327
+ extend ::Google::Protobuf::MessageExts::ClassMethods
328
+ end
329
+
330
+ # The steps required to replay a golden conversation.
331
+ # @!attribute [rw] turns
332
+ # @return [::Array<::Google::Cloud::Ces::V1beta::Evaluation::GoldenTurn>]
333
+ # Required. The golden turns required to replay a golden conversation.
334
+ # The maximum number of allowed turns is 100.
335
+ # @!attribute [rw] evaluation_expectations
336
+ # @return [::Array<::String>]
337
+ # Optional. The evaluation expectations to evaluate the replayed
338
+ # conversation against. Format:
339
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluationExpectation}`
340
+ class Golden
341
+ include ::Google::Protobuf::MessageExts
342
+ extend ::Google::Protobuf::MessageExts::ClassMethods
343
+ end
344
+
345
+ # The expectation to evaluate the conversation produced by the simulation.
346
+ # @!attribute [rw] tool_expectation
347
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::ScenarioExpectation::ToolExpectation]
348
+ # Optional. The tool call and response pair to be evaluated.
349
+ #
350
+ # Note: The following fields are mutually exclusive: `tool_expectation`, `agent_response`. If a field in that set is populated, all other fields in the set will automatically be cleared.
351
+ # @!attribute [rw] agent_response
352
+ # @return [::Google::Cloud::Ces::V1beta::Message]
353
+ # Optional. The agent response to be evaluated.
354
+ #
355
+ # Note: The following fields are mutually exclusive: `agent_response`, `tool_expectation`. If a field in that set is populated, all other fields in the set will automatically be cleared.
356
+ class ScenarioExpectation
357
+ include ::Google::Protobuf::MessageExts
358
+ extend ::Google::Protobuf::MessageExts::ClassMethods
359
+
360
+ # The tool call and response pair to be evaluated.
361
+ # @!attribute [rw] expected_tool_call
362
+ # @return [::Google::Cloud::Ces::V1beta::ToolCall]
363
+ # Required. The expected tool call, with the parameters of interest
364
+ # specified. Any parameters not specified will be hallucinated by the
365
+ # LLM.
366
+ # @!attribute [rw] mock_tool_response
367
+ # @return [::Google::Cloud::Ces::V1beta::ToolResponse]
368
+ # Required. The tool response to mock, with the parameters of interest
369
+ # specified. Any parameters not specified will be hallucinated by the
370
+ # LLM.
371
+ class ToolExpectation
372
+ include ::Google::Protobuf::MessageExts
373
+ extend ::Google::Protobuf::MessageExts::ClassMethods
374
+ end
375
+ end
376
+
377
+ # The config for a scenario
378
+ # @!attribute [rw] task
379
+ # @return [::String]
380
+ # Required. The task to be targeted by the scenario.
381
+ # @!attribute [rw] user_facts
382
+ # @return [::Array<::Google::Cloud::Ces::V1beta::Evaluation::Scenario::UserFact>]
383
+ # Optional. The user facts to be used by the scenario.
384
+ # @!attribute [rw] max_turns
385
+ # @return [::Integer]
386
+ # Optional. The maximum number of turns to simulate. The maximum allowed
387
+ # value is 100. The default value is 100.
388
+ # @!attribute [rw] rubrics
389
+ # @return [::Array<::String>]
390
+ # Required. The rubrics to score the scenario against.
391
+ # @!attribute [rw] scenario_expectations
392
+ # @return [::Array<::Google::Cloud::Ces::V1beta::Evaluation::ScenarioExpectation>]
393
+ # Required. The ScenarioExpectations to evaluate the conversation produced
394
+ # by the user simulation.
395
+ # @!attribute [rw] variable_overrides
396
+ # @return [::Google::Protobuf::Struct]
397
+ # Optional. Variables / Session Parameters as context for the session,
398
+ # keyed by variable names. Members of this struct will override any default
399
+ # values set by the system.
400
+ #
401
+ # Note, these are different from user facts, which are facts known to the
402
+ # user. Variables are parameters known to the agent: i.e. MDN (phone
403
+ # number) passed by the telephony system.
404
+ # @!attribute [rw] task_completion_behavior
405
+ # @deprecated This field is deprecated and may be removed in the next major version update.
406
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::Scenario::TaskCompletionBehavior]
407
+ # Optional. Deprecated. Use user_goal_behavior instead.
408
+ # @!attribute [rw] user_goal_behavior
409
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::Scenario::UserGoalBehavior]
410
+ # Optional. The expected behavior of the user goal.
411
+ # @!attribute [rw] evaluation_expectations
412
+ # @return [::Array<::String>]
413
+ # Optional. The evaluation expectations to evaluate the conversation
414
+ # produced by the simulation against. Format:
415
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluationExpectation}`
416
+ # @!attribute [rw] scenario_execution_mode
417
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationSettings::ScenarioExecutionMode]
418
+ # Optional. The execution mode for scenario evaluations.
419
+ class Scenario
420
+ include ::Google::Protobuf::MessageExts
421
+ extend ::Google::Protobuf::MessageExts::ClassMethods
422
+
423
+ # Facts about the user as a key value pair.
424
+ # @!attribute [rw] name
425
+ # @return [::String]
426
+ # Required. The name of the user fact.
427
+ # @!attribute [rw] value
428
+ # @return [::String]
429
+ # Required. The value of the user fact.
430
+ class UserFact
431
+ include ::Google::Protobuf::MessageExts
432
+ extend ::Google::Protobuf::MessageExts::ClassMethods
433
+ end
434
+
435
+ # The expected behavior of the user task. This is used to determine whether
436
+ # the scenario is successful.
437
+ module TaskCompletionBehavior
438
+ # Behavior unspecified. Will default to TASK_SATISFIED.
439
+ TASK_COMPLETION_BEHAVIOR_UNSPECIFIED = 0
440
+
441
+ # The user task should be completed successfully.
442
+ TASK_SATISFIED = 1
443
+
444
+ # The user task should be rejected.
445
+ TASK_REJECTED = 2
446
+ end
447
+
448
+ # The expected behavior of the user goal. This is used to determine whether
449
+ # the scenario is successful.
450
+ module UserGoalBehavior
451
+ # Behavior unspecified. Will default to USER_GOAL_SATISFIED.
452
+ USER_GOAL_BEHAVIOR_UNSPECIFIED = 0
453
+
454
+ # The user goal should be completed successfully.
455
+ USER_GOAL_SATISFIED = 1
456
+
457
+ # The user goal should be rejected.
458
+ USER_GOAL_REJECTED = 2
459
+
460
+ # Ignore the user goal status.
461
+ USER_GOAL_IGNORED = 3
462
+ end
463
+ end
464
+ end
465
+
466
+ # An evaluation dataset represents a set of evaluations that are grouped
467
+ # together basaed on shared tags.
468
+ # @!attribute [rw] name
469
+ # @return [::String]
470
+ # Identifier. The unique identifier of this evaluation dataset.
471
+ # Format:
472
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}`
473
+ # @!attribute [rw] display_name
474
+ # @return [::String]
475
+ # Required. User-defined display name of the evaluation dataset. Unique
476
+ # within an App.
477
+ # @!attribute [rw] evaluations
478
+ # @return [::Array<::String>]
479
+ # Optional. Evaluations that are included in this dataset.
480
+ # @!attribute [r] create_time
481
+ # @return [::Google::Protobuf::Timestamp]
482
+ # Output only. Timestamp when the evaluation dataset was created.
483
+ # @!attribute [r] update_time
484
+ # @return [::Google::Protobuf::Timestamp]
485
+ # Output only. Timestamp when the evaluation dataset was last updated.
486
+ # @!attribute [r] etag
487
+ # @return [::String]
488
+ # Output only. Etag used to ensure the object hasn't changed during a
489
+ # read-modify-write operation. If the etag is empty, the update will
490
+ # overwrite any concurrent changes.
491
+ # @!attribute [r] created_by
492
+ # @return [::String]
493
+ # Output only. The user who created the evaluation dataset.
494
+ # @!attribute [r] last_updated_by
495
+ # @return [::String]
496
+ # Output only. The user who last updated the evaluation dataset.
497
+ # @!attribute [r] aggregated_metrics
498
+ # @return [::Google::Cloud::Ces::V1beta::AggregatedMetrics]
499
+ # Output only. The aggregated metrics for this evaluation dataset across all
500
+ # runs.
501
+ class EvaluationDataset
502
+ include ::Google::Protobuf::MessageExts
503
+ extend ::Google::Protobuf::MessageExts::ClassMethods
504
+ end
505
+
506
+ # An evaluation result represents the output of running an Evaluation.
507
+ # @!attribute [r] golden_result
508
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::GoldenResult]
509
+ # Output only. The outcome of a golden evaluation.
510
+ #
511
+ # Note: The following fields are mutually exclusive: `golden_result`, `scenario_result`. If a field in that set is populated, all other fields in the set will automatically be cleared.
512
+ # @!attribute [r] scenario_result
513
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::ScenarioResult]
514
+ # Output only. The outcome of a scenario evaluation.
515
+ #
516
+ # Note: The following fields are mutually exclusive: `scenario_result`, `golden_result`. If a field in that set is populated, all other fields in the set will automatically be cleared.
517
+ # @!attribute [rw] name
518
+ # @return [::String]
519
+ # Identifier. The unique identifier of the evaluation result.
520
+ # Format:
521
+ # `projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{result}`
522
+ # @!attribute [rw] display_name
523
+ # @return [::String]
524
+ # Required. Display name of the Evaluation Result. Unique within an
525
+ # Evaluation. By default, it has the following format:
526
+ # "<evaluation-display-name> result
527
+ # - <timestamp>".
528
+ # @!attribute [r] create_time
529
+ # @return [::Google::Protobuf::Timestamp]
530
+ # Output only. Timestamp when the evaluation result was created.
531
+ # @!attribute [r] evaluation_status
532
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::Outcome]
533
+ # Output only. The outcome of the evaluation. Only populated if
534
+ # execution_state is COMPLETE.
535
+ # @!attribute [r] evaluation_run
536
+ # @return [::String]
537
+ # Output only. The evaluation run that produced this result.
538
+ # Format:
539
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationRuns/{evaluationRun}`
540
+ # @!attribute [r] persona
541
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationPersona]
542
+ # Output only. The persona used to generate the conversation for the
543
+ # evaluation result.
544
+ # @!attribute [r] error_info
545
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationErrorInfo]
546
+ # Output only. Error information for the evaluation result.
547
+ # @!attribute [r] error
548
+ # @deprecated This field is deprecated and may be removed in the next major version update.
549
+ # @return [::Google::Rpc::Status]
550
+ # Output only. Deprecated: Use `error_info` instead. Errors encountered
551
+ # during execution.
552
+ # @!attribute [r] initiated_by
553
+ # @return [::String]
554
+ # Output only. The user who initiated the evaluation run that resulted in
555
+ # this result.
556
+ # @!attribute [r] app_version
557
+ # @return [::String]
558
+ # Output only. The app version used to generate the conversation that
559
+ # resulted in this result. Format:
560
+ # `projects/{project}/locations/{location}/apps/{app}/versions/{version}`
561
+ # @!attribute [r] app_version_display_name
562
+ # @return [::String]
563
+ # Output only. The display name of the `app_version` that the evaluation ran
564
+ # against.
565
+ # @!attribute [r] changelog
566
+ # @return [::String]
567
+ # Output only. The changelog of the app version that the evaluation ran
568
+ # against. This is populated if user runs evaluation on latest/draft.
569
+ # @!attribute [r] changelog_create_time
570
+ # @return [::Google::Protobuf::Timestamp]
571
+ # Output only. The create time of the changelog of the app version that the
572
+ # evaluation ran against. This is populated if user runs evaluation on
573
+ # latest/draft.
574
+ # @!attribute [r] execution_state
575
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::ExecutionState]
576
+ # Output only. The state of the evaluation result execution.
577
+ # @!attribute [r] evaluation_metrics_thresholds
578
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationMetricsThresholds]
579
+ # Output only. The evaluation thresholds for the result.
580
+ # @!attribute [r] config
581
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationConfig]
582
+ # Output only. The configuration used in the evaluation run that resulted in
583
+ # this result.
584
+ # @!attribute [r] golden_run_method
585
+ # @return [::Google::Cloud::Ces::V1beta::GoldenRunMethod]
586
+ # Output only. The method used to run the golden evaluation.
587
+ class EvaluationResult
588
+ include ::Google::Protobuf::MessageExts
589
+ extend ::Google::Protobuf::MessageExts::ClassMethods
590
+
591
+ # Specifies the expectation and the result of that expectation.
592
+ # @!attribute [r] observed_tool_call
593
+ # @return [::Google::Cloud::Ces::V1beta::ToolCall]
594
+ # Output only. The result of the tool call expectation.
595
+ #
596
+ # Note: The following fields are mutually exclusive: `observed_tool_call`, `observed_tool_response`, `observed_agent_response`, `observed_agent_transfer`, `observed_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
597
+ # @!attribute [r] observed_tool_response
598
+ # @return [::Google::Cloud::Ces::V1beta::ToolResponse]
599
+ # Output only. The result of the tool response expectation.
600
+ #
601
+ # Note: The following fields are mutually exclusive: `observed_tool_response`, `observed_tool_call`, `observed_agent_response`, `observed_agent_transfer`, `observed_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
602
+ # @!attribute [r] observed_agent_response
603
+ # @return [::Google::Cloud::Ces::V1beta::Message]
604
+ # Output only. The result of the agent response expectation.
605
+ #
606
+ # Note: The following fields are mutually exclusive: `observed_agent_response`, `observed_tool_call`, `observed_tool_response`, `observed_agent_transfer`, `observed_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
607
+ # @!attribute [r] observed_agent_transfer
608
+ # @return [::Google::Cloud::Ces::V1beta::AgentTransfer]
609
+ # Output only. The result of the agent transfer expectation.
610
+ #
611
+ # Note: The following fields are mutually exclusive: `observed_agent_transfer`, `observed_tool_call`, `observed_tool_response`, `observed_agent_response`, `observed_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
612
+ # @!attribute [r] observed_payload
613
+ # @return [::Google::Protobuf::Struct]
614
+ # Output only. An observed custom payload.
615
+ # There are no expectations for custom payloads. This is only used for
616
+ # metrics calculation. The outcome is always SKIPPED.
617
+ #
618
+ # Note: The following fields are mutually exclusive: `observed_payload`, `observed_tool_call`, `observed_tool_response`, `observed_agent_response`, `observed_agent_transfer`. If a field in that set is populated, all other fields in the set will automatically be cleared.
619
+ # @!attribute [r] expectation
620
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::GoldenExpectation]
621
+ # Output only. The expectation that was evaluated.
622
+ # @!attribute [r] outcome
623
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::Outcome]
624
+ # Output only. The outcome of the expectation.
625
+ # @!attribute [r] semantic_similarity_result
626
+ # @deprecated This field is deprecated and may be removed in the next major version update.
627
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::SemanticSimilarityResult]
628
+ # Output only. The result of the semantic similarity check.
629
+ # @!attribute [r] tool_invocation_result
630
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::GoldenExpectationOutcome::ToolInvocationResult]
631
+ # Output only. The result of the tool invocation check.
632
+ class GoldenExpectationOutcome
633
+ include ::Google::Protobuf::MessageExts
634
+ extend ::Google::Protobuf::MessageExts::ClassMethods
635
+
636
+ # The result of the tool invocation check.
637
+ # @!attribute [r] parameter_correctness_score
638
+ # @return [::Float]
639
+ # Output only. The tool invocation parameter correctness score. This
640
+ # indicates the percent of parameters from the expected tool call that
641
+ # were also present in the actual tool call.
642
+ # @!attribute [r] outcome
643
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::Outcome]
644
+ # Output only. The outcome of the tool invocation check. This is
645
+ # determined by comparing the parameter_correctness_score to the
646
+ # threshold. If the score is equal to or above the threshold, the outcome
647
+ # will be PASS. Otherwise, the outcome will be FAIL.
648
+ # @!attribute [r] explanation
649
+ # @return [::String]
650
+ # Output only. A free text explanation for the tool invocation result.
651
+ class ToolInvocationResult
652
+ include ::Google::Protobuf::MessageExts
653
+ extend ::Google::Protobuf::MessageExts::ClassMethods
654
+ end
655
+ end
656
+
657
+ # The result of a single evaluation expectation.
658
+ # @!attribute [r] evaluation_expectation
659
+ # @return [::String]
660
+ # Output only. The evaluation expectation.
661
+ # Format:
662
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluation_expectation}`
663
+ # @!attribute [r] prompt
664
+ # @return [::String]
665
+ # Output only. The prompt that was used for the evaluation.
666
+ # @!attribute [r] outcome
667
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::Outcome]
668
+ # Output only. The outcome of the evaluation expectation.
669
+ # @!attribute [r] explanation
670
+ # @return [::String]
671
+ # Output only. The explanation for the result.
672
+ class EvaluationExpectationResult
673
+ include ::Google::Protobuf::MessageExts
674
+ extend ::Google::Protobuf::MessageExts::ClassMethods
675
+ end
676
+
677
+ # The result of a golden evaluation.
678
+ # @!attribute [r] turn_replay_results
679
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::GoldenResult::TurnReplayResult>]
680
+ # Output only. The result of running each turn of the golden conversation.
681
+ # @!attribute [r] evaluation_expectation_results
682
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::EvaluationExpectationResult>]
683
+ # Output only. The results of the evaluation expectations.
684
+ class GoldenResult
685
+ include ::Google::Protobuf::MessageExts
686
+ extend ::Google::Protobuf::MessageExts::ClassMethods
687
+
688
+ # The result of running a single turn of the golden conversation.
689
+ # @!attribute [r] conversation
690
+ # @return [::String]
691
+ # Output only. The conversation that was generated for this turn.
692
+ # @!attribute [r] expectation_outcome
693
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::GoldenExpectationOutcome>]
694
+ # Output only. The outcome of each expectation.
695
+ # @!attribute [r] hallucination_result
696
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::HallucinationResult]
697
+ # Output only. The result of the hallucination check.
698
+ # @!attribute [r] tool_invocation_score
699
+ # @deprecated This field is deprecated and may be removed in the next major version update.
700
+ # @return [::Float]
701
+ # Output only. Deprecated. Use OverallToolInvocationResult instead.
702
+ # @!attribute [r] tool_ordered_invocation_score
703
+ # @return [::Float]
704
+ # Output only. The overall tool ordered invocation score for this turn.
705
+ # This indicates the overall percent of tools from the expected turn that
706
+ # were actually invoked in the expected order.
707
+ # @!attribute [r] turn_latency
708
+ # @return [::Google::Protobuf::Duration]
709
+ # Output only. Duration of the turn.
710
+ # @!attribute [r] tool_call_latencies
711
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::ToolCallLatency>]
712
+ # Output only. The latency of each tool call in the turn.
713
+ # @!attribute [r] semantic_similarity_result
714
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::SemanticSimilarityResult]
715
+ # Output only. The result of the semantic similarity check.
716
+ # @!attribute [r] overall_tool_invocation_result
717
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::OverallToolInvocationResult]
718
+ # Output only. The result of the overall tool invocation check.
719
+ # @!attribute [r] error_info
720
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationErrorInfo]
721
+ # Output only. Information about the error that occurred during this
722
+ # turn.
723
+ # @!attribute [r] span_latencies
724
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::SpanLatency>]
725
+ # Output only. The latency of spans in the turn.
726
+ class TurnReplayResult
727
+ include ::Google::Protobuf::MessageExts
728
+ extend ::Google::Protobuf::MessageExts::ClassMethods
729
+ end
730
+ end
731
+
732
+ # The outcome of the evaluation against the rubric.
733
+ # @!attribute [r] rubric
734
+ # @return [::String]
735
+ # Output only. The rubric that was used to evaluate the conversation.
736
+ # @!attribute [r] score
737
+ # @return [::Float]
738
+ # Output only. The score of the conversation against the rubric.
739
+ # @!attribute [r] score_explanation
740
+ # @return [::String]
741
+ # Output only. The rater's response to the rubric.
742
+ class ScenarioRubricOutcome
743
+ include ::Google::Protobuf::MessageExts
744
+ extend ::Google::Protobuf::MessageExts::ClassMethods
745
+ end
746
+
747
+ # The outcome of a scenario expectation.
748
+ # @!attribute [r] observed_tool_call
749
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::ScenarioExpectationOutcome::ObservedToolCall]
750
+ # Output only. The observed tool call.
751
+ #
752
+ # Note: The following fields are mutually exclusive: `observed_tool_call`, `observed_agent_response`. If a field in that set is populated, all other fields in the set will automatically be cleared.
753
+ # @!attribute [r] observed_agent_response
754
+ # @return [::Google::Cloud::Ces::V1beta::Message]
755
+ # Output only. The observed agent response.
756
+ #
757
+ # Note: The following fields are mutually exclusive: `observed_agent_response`, `observed_tool_call`. If a field in that set is populated, all other fields in the set will automatically be cleared.
758
+ # @!attribute [r] expectation
759
+ # @return [::Google::Cloud::Ces::V1beta::Evaluation::ScenarioExpectation]
760
+ # Output only. The expectation that was evaluated.
761
+ # @!attribute [r] outcome
762
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::Outcome]
763
+ # Output only. The outcome of the ScenarioExpectation.
764
+ class ScenarioExpectationOutcome
765
+ include ::Google::Protobuf::MessageExts
766
+ extend ::Google::Protobuf::MessageExts::ClassMethods
767
+
768
+ # The observed tool call and response.
769
+ # @!attribute [r] tool_call
770
+ # @return [::Google::Cloud::Ces::V1beta::ToolCall]
771
+ # Output only. The observed tool call.
772
+ # @!attribute [r] tool_response
773
+ # @return [::Google::Cloud::Ces::V1beta::ToolResponse]
774
+ # Output only. The observed tool response.
775
+ class ObservedToolCall
776
+ include ::Google::Protobuf::MessageExts
777
+ extend ::Google::Protobuf::MessageExts::ClassMethods
778
+ end
779
+ end
780
+
781
+ # The outcome of a scenario evaluation.
782
+ # @!attribute [r] conversation
783
+ # @return [::String]
784
+ # Output only. The conversation that was generated in the scenario.
785
+ # @!attribute [r] task
786
+ # @return [::String]
787
+ # Output only. The task that was used when running the scenario for this
788
+ # result.
789
+ # @!attribute [r] user_facts
790
+ # @return [::Array<::Google::Cloud::Ces::V1beta::Evaluation::Scenario::UserFact>]
791
+ # Output only. The user facts that were used by the scenario for this
792
+ # result.
793
+ # @!attribute [r] expectation_outcomes
794
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::ScenarioExpectationOutcome>]
795
+ # Output only. The outcome of each expectation.
796
+ # @!attribute [r] rubric_outcomes
797
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::ScenarioRubricOutcome>]
798
+ # Output only. The outcome of the rubric.
799
+ # @!attribute [r] hallucination_result
800
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::HallucinationResult>]
801
+ # Output only. The result of the hallucination check.
802
+ # There will be one hallucination result for each turn in the conversation.
803
+ # @!attribute [r] task_completion_result
804
+ # @deprecated This field is deprecated and may be removed in the next major version update.
805
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::TaskCompletionResult]
806
+ # Output only. The result of the task completion check.
807
+ # @!attribute [r] tool_call_latencies
808
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::ToolCallLatency>]
809
+ # Output only. The latency of each tool call execution in the conversation.
810
+ # @!attribute [r] user_goal_satisfaction_result
811
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::UserGoalSatisfactionResult]
812
+ # Output only. The result of the user goal satisfaction check.
813
+ # @!attribute [r] all_expectations_satisfied
814
+ # @return [::Boolean]
815
+ # Output only. Whether all expectations were satisfied for this turn.
816
+ # @!attribute [r] task_completed
817
+ # @return [::Boolean]
818
+ # Output only. Whether the task was completed for this turn. This is a
819
+ # composite of all expectations satisfied, no hallucinations, and user goal
820
+ # satisfaction.
821
+ # @!attribute [r] span_latencies
822
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::SpanLatency>]
823
+ # Output only. The latency of spans in the conversation.
824
+ # @!attribute [r] evaluation_expectation_results
825
+ # @return [::Array<::Google::Cloud::Ces::V1beta::EvaluationResult::EvaluationExpectationResult>]
826
+ # Output only. The results of the evaluation expectations.
827
+ class ScenarioResult
828
+ include ::Google::Protobuf::MessageExts
829
+ extend ::Google::Protobuf::MessageExts::ClassMethods
830
+ end
831
+
832
+ # The latency of a span execution.
833
+ # @!attribute [r] resource
834
+ # @return [::String]
835
+ # Output only. The resource name of the guardrail or tool spans.
836
+ #
837
+ # Note: The following fields are mutually exclusive: `resource`, `toolset`, `model`, `callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
838
+ # @!attribute [r] toolset
839
+ # @return [::Google::Cloud::Ces::V1beta::ToolsetTool]
840
+ # Output only. The toolset tool identifier.
841
+ #
842
+ # Note: The following fields are mutually exclusive: `toolset`, `resource`, `model`, `callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
843
+ # @!attribute [r] model
844
+ # @return [::String]
845
+ # Output only. The name of the LLM span.
846
+ #
847
+ # Note: The following fields are mutually exclusive: `model`, `resource`, `toolset`, `callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
848
+ # @!attribute [r] callback
849
+ # @return [::String]
850
+ # Output only. The name of the user callback span.
851
+ #
852
+ # Note: The following fields are mutually exclusive: `callback`, `resource`, `toolset`, `model`. If a field in that set is populated, all other fields in the set will automatically be cleared.
853
+ # @!attribute [r] type
854
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::SpanLatency::Type]
855
+ # Output only. The type of span.
856
+ # @!attribute [r] display_name
857
+ # @return [::String]
858
+ # Output only. The display name of the span. Applicable to tool and
859
+ # guardrail spans.
860
+ # @!attribute [r] start_time
861
+ # @return [::Google::Protobuf::Timestamp]
862
+ # Output only. The start time of span.
863
+ # @!attribute [r] end_time
864
+ # @return [::Google::Protobuf::Timestamp]
865
+ # Output only. The end time of span.
866
+ # @!attribute [r] execution_latency
867
+ # @return [::Google::Protobuf::Duration]
868
+ # Output only. The latency of span.
869
+ class SpanLatency
870
+ include ::Google::Protobuf::MessageExts
871
+ extend ::Google::Protobuf::MessageExts::ClassMethods
872
+
873
+ # The type of span.
874
+ # Additional values may be added in the future.
875
+ module Type
876
+ # Default value. This value is unused.
877
+ TYPE_UNSPECIFIED = 0
878
+
879
+ # Tool call span.
880
+ TOOL = 1
881
+
882
+ # User callback span.
883
+ USER_CALLBACK = 2
884
+
885
+ # Guardrail span.
886
+ GUARDRAIL = 3
887
+
888
+ # LLM span.
889
+ LLM = 4
890
+ end
891
+ end
892
+
893
+ # The latency of a tool call execution.
894
+ # @!attribute [r] tool
895
+ # @return [::String]
896
+ # Output only. The name of the tool that got executed.
897
+ # Format:
898
+ # `projects/{project}/locations/{location}/apps/{app}/tools/{tool}`.
899
+ # @!attribute [r] display_name
900
+ # @return [::String]
901
+ # Output only. The display name of the tool.
902
+ # @!attribute [r] start_time
903
+ # @return [::Google::Protobuf::Timestamp]
904
+ # Output only. The start time of the tool call execution.
905
+ # @!attribute [r] end_time
906
+ # @return [::Google::Protobuf::Timestamp]
907
+ # Output only. The end time of the tool call execution.
908
+ # @!attribute [r] execution_latency
909
+ # @return [::Google::Protobuf::Duration]
910
+ # Output only. The latency of the tool call execution.
911
+ class ToolCallLatency
912
+ include ::Google::Protobuf::MessageExts
913
+ extend ::Google::Protobuf::MessageExts::ClassMethods
914
+ end
915
+
916
+ # The result of the hallucination check for a single turn.
917
+ # @!attribute [r] score
918
+ # @return [::Integer]
919
+ # Output only. The hallucination score. Can be -1, 0, 1.
920
+ # @!attribute [r] label
921
+ # @return [::String]
922
+ # Output only. The label associated with each score.
923
+ # Score 1: Justified
924
+ # Score 0: Not Justified
925
+ # Score -1: No Claim To Assess
926
+ # @!attribute [r] explanation
927
+ # @return [::String]
928
+ # Output only. The explanation for the hallucination score.
929
+ class HallucinationResult
930
+ include ::Google::Protobuf::MessageExts
931
+ extend ::Google::Protobuf::MessageExts::ClassMethods
932
+ end
933
+
934
+ # The result of a user goal satisfaction check for a conversation.
935
+ # @!attribute [r] score
936
+ # @return [::Integer]
937
+ # Output only. The user task satisfaction score. Can be -1, 0, 1.
938
+ # @!attribute [r] label
939
+ # @return [::String]
940
+ # Output only. The label associated with each score.
941
+ # Score 1: User Task Satisfied
942
+ # Score 0: User Task Not Satisfied
943
+ # Score -1: User Task Unspecified
944
+ # @!attribute [r] explanation
945
+ # @return [::String]
946
+ # Output only. The explanation for the user task satisfaction score.
947
+ class UserGoalSatisfactionResult
948
+ include ::Google::Protobuf::MessageExts
949
+ extend ::Google::Protobuf::MessageExts::ClassMethods
950
+ end
951
+
952
+ # The result of the semantic similarity check.
953
+ # @!attribute [r] score
954
+ # @return [::Integer]
955
+ # Output only. The semantic similarity score. Can be 0, 1, 2, 3, or 4.
956
+ # @!attribute [r] label
957
+ # @return [::String]
958
+ # Output only. The label associated with each score.
959
+ # Score 4: Fully Consistent
960
+ # Score 3: Mostly Consistent
961
+ # Score 2: Partially Consistent (Minor Omissions)
962
+ # Score 1: Largely Inconsistent (Major Omissions)
963
+ # Score 0: Completely Inconsistent / Contradictory
964
+ # @!attribute [r] explanation
965
+ # @return [::String]
966
+ # Output only. The explanation for the semantic similarity score.
967
+ # @!attribute [r] outcome
968
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::Outcome]
969
+ # Output only. The outcome of the semantic similarity check. This is
970
+ # determined by comparing the score to the
971
+ # semantic_similarity_success_threshold. If the score is equal to or above
972
+ # the threshold, the outcome will be PASS. Otherwise, the outcome will be
973
+ # FAIL.
974
+ class SemanticSimilarityResult
975
+ include ::Google::Protobuf::MessageExts
976
+ extend ::Google::Protobuf::MessageExts::ClassMethods
977
+ end
978
+
979
+ # The result of the overall tool invocation check.
980
+ # @!attribute [rw] tool_invocation_score
981
+ # @return [::Float]
982
+ # The overall tool invocation score for this turn. This indicates the
983
+ # overall percent of tools from the expected turn that were actually
984
+ # invoked.
985
+ # @!attribute [r] outcome
986
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::Outcome]
987
+ # Output only. The outcome of the tool invocation check. This is determined
988
+ # by comparing the tool_invocation_score to the
989
+ # overall_tool_invocation_correctness_threshold. If the
990
+ # score is equal to or above the threshold, the outcome will be PASS.
991
+ # Otherwise, the outcome will be FAIL.
992
+ class OverallToolInvocationResult
993
+ include ::Google::Protobuf::MessageExts
994
+ extend ::Google::Protobuf::MessageExts::ClassMethods
995
+ end
996
+
997
+ # The result of the task completion check for the conversation.
998
+ # @!attribute [r] score
999
+ # @return [::Integer]
1000
+ # Output only. The task completion score. Can be -1, 0, 1
1001
+ # @!attribute [r] label
1002
+ # @return [::String]
1003
+ # Output only. The label associated with each score.
1004
+ # Score 1: Task Completed
1005
+ # Score 0: Task Not Completed
1006
+ # Score -1: User Goal Undefined
1007
+ # @!attribute [r] explanation
1008
+ # @return [::String]
1009
+ # Output only. The explanation for the task completion score.
1010
+ class TaskCompletionResult
1011
+ include ::Google::Protobuf::MessageExts
1012
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1013
+ end
1014
+
1015
+ # The outcome of the evaluation or expectation.
1016
+ module Outcome
1017
+ # Evaluation outcome is not specified.
1018
+ OUTCOME_UNSPECIFIED = 0
1019
+
1020
+ # Evaluation/Expectation passed. In the case of an evaluation, this means
1021
+ # that all expectations were met.
1022
+ PASS = 1
1023
+
1024
+ # Evaluation/Expectation failed. In the case of an evaluation, this means
1025
+ # that at least one expectation was not met.
1026
+ FAIL = 2
1027
+
1028
+ # Evaluation/Expectation was skipped.
1029
+ SKIPPED = 3
1030
+ end
1031
+
1032
+ # The state of the evaluation result execution.
1033
+ module ExecutionState
1034
+ # Evaluation result execution state is not specified.
1035
+ EXECUTION_STATE_UNSPECIFIED = 0
1036
+
1037
+ # Evaluation result execution is queued.
1038
+ QUEUED = 5
1039
+
1040
+ # Evaluation result execution is running.
1041
+ RUNNING = 1
1042
+
1043
+ # Evaluation result execution has completed.
1044
+ COMPLETED = 2
1045
+
1046
+ # Evaluation result execution failed due to an internal error.
1047
+ ERROR = 3
1048
+
1049
+ # Evaluation result execution was cancelled.
1050
+ CANCELLED = 4
1051
+ end
1052
+ end
1053
+
1054
+ # An evaluation run represents an all the evaluation results from an
1055
+ # evaluation execution.
1056
+ # @!attribute [rw] name
1057
+ # @return [::String]
1058
+ # Identifier. The unique identifier of the evaluation run.
1059
+ # Format:
1060
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationRuns/{evaluationRun}`
1061
+ # @!attribute [rw] display_name
1062
+ # @return [::String]
1063
+ # Optional. User-defined display name of the evaluation run.
1064
+ # default: "<evaluation-dataset-display-name> run - <timestamp>".
1065
+ # @!attribute [r] evaluation_results
1066
+ # @return [::Array<::String>]
1067
+ # Output only. The evaluation results that are part of this run.
1068
+ # Format:
1069
+ # `projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{result}`
1070
+ # @!attribute [r] create_time
1071
+ # @return [::Google::Protobuf::Timestamp]
1072
+ # Output only. Timestamp when the evaluation run was created.
1073
+ # @!attribute [r] initiated_by
1074
+ # @return [::String]
1075
+ # Output only. The user who initiated the evaluation run.
1076
+ # @!attribute [r] app_version
1077
+ # @return [::String]
1078
+ # Output only. The app version to evaluate.
1079
+ # Format:
1080
+ # `projects/{project}/locations/{location}/apps/{app}/versions/{version}`
1081
+ # @!attribute [r] app_version_display_name
1082
+ # @return [::String]
1083
+ # Output only. The display name of the `app_version` that the evaluation ran
1084
+ # against.
1085
+ # @!attribute [r] changelog
1086
+ # @return [::String]
1087
+ # Output only. The changelog of the app version that the evaluation ran
1088
+ # against. This is populated if user runs evaluation on latest/draft.
1089
+ # @!attribute [r] changelog_create_time
1090
+ # @return [::Google::Protobuf::Timestamp]
1091
+ # Output only. The create time of the changelog of the app version that the
1092
+ # evaluation ran against. This is populated if user runs evaluation on
1093
+ # latest/draft.
1094
+ # @!attribute [r] evaluations
1095
+ # @return [::Array<::String>]
1096
+ # Output only. The evaluations that are part of this run. The list may
1097
+ # contain evaluations of either type. This field is mutually exclusive with
1098
+ # `evaluation_dataset`.
1099
+ # Format:
1100
+ # `projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}`
1101
+ # @!attribute [r] evaluation_dataset
1102
+ # @return [::String]
1103
+ # Output only. The evaluation dataset that this run is associated with. This
1104
+ # field is mutually exclusive with `evaluations`. Format:
1105
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}`
1106
+ # @!attribute [r] evaluation_type
1107
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationRun::EvaluationType]
1108
+ # Output only. The type of the evaluations in this run.
1109
+ # @!attribute [r] state
1110
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationRun::EvaluationRunState]
1111
+ # Output only. The state of the evaluation run.
1112
+ # @!attribute [r] progress
1113
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationRun::Progress]
1114
+ # Output only. The progress of the evaluation run.
1115
+ # @!attribute [r] config
1116
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationConfig]
1117
+ # Output only. The configuration used in the run.
1118
+ # @!attribute [r] error
1119
+ # @deprecated This field is deprecated and may be removed in the next major version update.
1120
+ # @return [::Google::Rpc::Status]
1121
+ # Output only. Deprecated: Use error_info instead. Errors encountered during
1122
+ # execution.
1123
+ # @!attribute [r] error_info
1124
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationErrorInfo]
1125
+ # Output only. Error information for the evaluation run.
1126
+ # @!attribute [r] evaluation_run_summaries
1127
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Ces::V1beta::EvaluationRun::EvaluationRunSummary}]
1128
+ # Output only. Map of evaluation name to EvaluationRunSummary.
1129
+ # @!attribute [r] latency_report
1130
+ # @return [::Google::Cloud::Ces::V1beta::LatencyReport]
1131
+ # Output only. Latency report for the evaluation run.
1132
+ # @!attribute [r] run_count
1133
+ # @return [::Integer]
1134
+ # Output only. The number of times the evaluations inside the run were run.
1135
+ # @!attribute [r] persona_run_configs
1136
+ # @return [::Array<::Google::Cloud::Ces::V1beta::PersonaRunConfig>]
1137
+ # Output only. The configuration to use for the run per persona.
1138
+ # @!attribute [rw] optimization_config
1139
+ # @return [::Google::Cloud::Ces::V1beta::OptimizationConfig]
1140
+ # Optional. Configuration for running the optimization step after the
1141
+ # evaluation run. If not set, the optimization step will not be run.
1142
+ # @!attribute [r] scheduled_evaluation_run
1143
+ # @return [::String]
1144
+ # Output only. The scheduled evaluation run resource name that created this
1145
+ # evaluation run. This field is only set if the evaluation run was created
1146
+ # by a scheduled evaluation run.
1147
+ # Format:
1148
+ # `projects/{project}/locations/{location}/apps/{app}/scheduledEvaluationRuns/{scheduled_evaluation_run}`
1149
+ # @!attribute [r] golden_run_method
1150
+ # @return [::Google::Cloud::Ces::V1beta::GoldenRunMethod]
1151
+ # Output only. The method used to run the evaluation.
1152
+ # @!attribute [r] operation
1153
+ # @return [::String]
1154
+ # Output only. The operation that created this evaluation run.
1155
+ # Format:
1156
+ # `projects/{project}/locations/{location}/operations/{operation}`
1157
+ class EvaluationRun
1158
+ include ::Google::Protobuf::MessageExts
1159
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1160
+
1161
+ # The progress of the evaluation run.
1162
+ # @!attribute [r] total_count
1163
+ # @return [::Integer]
1164
+ # Output only. Total number of evaluation results in this run.
1165
+ # @!attribute [r] failed_count
1166
+ # @return [::Integer]
1167
+ # Output only. Number of completed evaluation results with an outcome of
1168
+ # FAIL. (EvaluationResult.execution_state is COMPLETED and
1169
+ # EvaluationResult.evaluation_status is FAIL).
1170
+ # @!attribute [r] error_count
1171
+ # @return [::Integer]
1172
+ # Output only. Number of evaluation results that failed to execute.
1173
+ # (EvaluationResult.execution_state is ERROR).
1174
+ # @!attribute [r] completed_count
1175
+ # @return [::Integer]
1176
+ # Output only. Number of evaluation results that finished successfully.
1177
+ # (EvaluationResult.execution_state is COMPLETED).
1178
+ # @!attribute [r] passed_count
1179
+ # @return [::Integer]
1180
+ # Output only. Number of completed evaluation results with an outcome of
1181
+ # PASS. (EvaluationResult.execution_state is COMPLETED and
1182
+ # EvaluationResult.evaluation_status is PASS).
1183
+ # @!attribute [r] cancelled_count
1184
+ # @return [::Integer]
1185
+ # Output only. Number of evaluation results that were cancelled.
1186
+ # (EvaluationResult.execution_state is CANCELLED).
1187
+ class Progress
1188
+ include ::Google::Protobuf::MessageExts
1189
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1190
+ end
1191
+
1192
+ # Contains the summary of passed and failed result counts for a specific
1193
+ # evaluation in an evaluation run.
1194
+ # @!attribute [r] passed_count
1195
+ # @return [::Integer]
1196
+ # Output only. Number of passed results for the associated Evaluation in
1197
+ # this run.
1198
+ # @!attribute [r] failed_count
1199
+ # @return [::Integer]
1200
+ # Output only. Number of failed results for the associated Evaluation in
1201
+ # this run.
1202
+ # @!attribute [r] error_count
1203
+ # @return [::Integer]
1204
+ # Output only. Number of error results for the associated Evaluation in
1205
+ # this run.
1206
+ class EvaluationRunSummary
1207
+ include ::Google::Protobuf::MessageExts
1208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1209
+ end
1210
+
1211
+ # @!attribute [rw] key
1212
+ # @return [::String]
1213
+ # @!attribute [rw] value
1214
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationRun::EvaluationRunSummary]
1215
+ class EvaluationRunSummariesEntry
1216
+ include ::Google::Protobuf::MessageExts
1217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1218
+ end
1219
+
1220
+ # The type of the evaluations in this run.
1221
+ # Additional values may be added in the future.
1222
+ module EvaluationType
1223
+ # Evaluation type is not specified.
1224
+ EVALUATION_TYPE_UNSPECIFIED = 0
1225
+
1226
+ # Golden evaluation.
1227
+ GOLDEN = 1
1228
+
1229
+ # Scenario evaluation.
1230
+ SCENARIO = 2
1231
+
1232
+ # Indicates the run includes a mix of golden and scenario evaluations.
1233
+ MIXED = 3
1234
+ end
1235
+
1236
+ # The state of the evaluation run.
1237
+ module EvaluationRunState
1238
+ # Evaluation run state is not specified.
1239
+ EVALUATION_RUN_STATE_UNSPECIFIED = 0
1240
+
1241
+ # Indicates the evaluation run is queued.
1242
+ QUEUED = 5
1243
+
1244
+ # Evaluation run is running.
1245
+ RUNNING = 1
1246
+
1247
+ # Evaluation run has completed.
1248
+ COMPLETED = 2
1249
+
1250
+ # The evaluation run has an error.
1251
+ ERROR = 3
1252
+
1253
+ # Evaluation run was cancelled.
1254
+ CANCELLED = 4
1255
+ end
1256
+ end
1257
+
1258
+ # Latency report for the evaluation run.
1259
+ # @!attribute [r] tool_latencies
1260
+ # @return [::Array<::Google::Cloud::Ces::V1beta::LatencyReport::ToolLatency>]
1261
+ # Output only. Unordered list. Latency metrics for each tool.
1262
+ # @!attribute [r] callback_latencies
1263
+ # @return [::Array<::Google::Cloud::Ces::V1beta::LatencyReport::CallbackLatency>]
1264
+ # Output only. Unordered list. Latency metrics for each callback.
1265
+ # @!attribute [r] guardrail_latencies
1266
+ # @return [::Array<::Google::Cloud::Ces::V1beta::LatencyReport::GuardrailLatency>]
1267
+ # Output only. Unordered list. Latency metrics for each guardrail.
1268
+ # @!attribute [r] llm_call_latencies
1269
+ # @return [::Array<::Google::Cloud::Ces::V1beta::LatencyReport::LlmCallLatency>]
1270
+ # Output only. Unordered list. Latency metrics for each LLM call.
1271
+ # @!attribute [r] session_count
1272
+ # @return [::Integer]
1273
+ # Output only. The total number of sessions considered in the latency report.
1274
+ class LatencyReport
1275
+ include ::Google::Protobuf::MessageExts
1276
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1277
+
1278
+ # Latency metrics for a component.
1279
+ # @!attribute [r] p50_latency
1280
+ # @return [::Google::Protobuf::Duration]
1281
+ # Output only. The 50th percentile latency.
1282
+ # @!attribute [r] p90_latency
1283
+ # @return [::Google::Protobuf::Duration]
1284
+ # Output only. The 90th percentile latency.
1285
+ # @!attribute [r] p99_latency
1286
+ # @return [::Google::Protobuf::Duration]
1287
+ # Output only. The 99th percentile latency.
1288
+ # @!attribute [r] call_count
1289
+ # @return [::Integer]
1290
+ # Output only. The number of times the resource was called.
1291
+ class LatencyMetrics
1292
+ include ::Google::Protobuf::MessageExts
1293
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1294
+ end
1295
+
1296
+ # Latency metrics for a single tool.
1297
+ # @!attribute [r] tool
1298
+ # @return [::String]
1299
+ # Output only. Format:
1300
+ # `projects/{project}/locations/{location}/apps/{app}/tools/{tool}`.
1301
+ #
1302
+ # Note: The following fields are mutually exclusive: `tool`, `toolset_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1303
+ # @!attribute [r] toolset_tool
1304
+ # @return [::Google::Cloud::Ces::V1beta::ToolsetTool]
1305
+ # Output only. The toolset tool identifier.
1306
+ #
1307
+ # Note: The following fields are mutually exclusive: `toolset_tool`, `tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1308
+ # @!attribute [r] tool_display_name
1309
+ # @return [::String]
1310
+ # Output only. The display name of the tool.
1311
+ # @!attribute [r] latency_metrics
1312
+ # @return [::Google::Cloud::Ces::V1beta::LatencyReport::LatencyMetrics]
1313
+ # Output only. The latency metrics for the tool.
1314
+ class ToolLatency
1315
+ include ::Google::Protobuf::MessageExts
1316
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1317
+ end
1318
+
1319
+ # Latency metrics for a single callback.
1320
+ # @!attribute [r] stage
1321
+ # @return [::String]
1322
+ # Output only. The stage of the callback.
1323
+ # @!attribute [r] latency_metrics
1324
+ # @return [::Google::Cloud::Ces::V1beta::LatencyReport::LatencyMetrics]
1325
+ # Output only. The latency metrics for the callback.
1326
+ class CallbackLatency
1327
+ include ::Google::Protobuf::MessageExts
1328
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1329
+ end
1330
+
1331
+ # Latency metrics for a single guardrail.
1332
+ # @!attribute [r] guardrail
1333
+ # @return [::String]
1334
+ # Output only. The name of the guardrail.
1335
+ # Format:
1336
+ # `projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}`.
1337
+ # @!attribute [r] guardrail_display_name
1338
+ # @return [::String]
1339
+ # Output only. The display name of the guardrail.
1340
+ # @!attribute [r] latency_metrics
1341
+ # @return [::Google::Cloud::Ces::V1beta::LatencyReport::LatencyMetrics]
1342
+ # Output only. The latency metrics for the guardrail.
1343
+ class GuardrailLatency
1344
+ include ::Google::Protobuf::MessageExts
1345
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1346
+ end
1347
+
1348
+ # Latency metrics for a single LLM call.
1349
+ # @!attribute [r] model
1350
+ # @return [::String]
1351
+ # Output only. The name of the model.
1352
+ # @!attribute [r] latency_metrics
1353
+ # @return [::Google::Cloud::Ces::V1beta::LatencyReport::LatencyMetrics]
1354
+ # Output only. The latency metrics for the LLM call.
1355
+ class LlmCallLatency
1356
+ include ::Google::Protobuf::MessageExts
1357
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1358
+ end
1359
+ end
1360
+
1361
+ # An evaluation expectation represents a specific criteria to evaluate against.
1362
+ # @!attribute [rw] llm_criteria
1363
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationExpectation::LlmCriteria]
1364
+ # Optional. Evaluation criteria based on an LLM prompt.
1365
+ # @!attribute [rw] name
1366
+ # @return [::String]
1367
+ # Identifier. The unique identifier of this evaluation expectation.
1368
+ # Format:
1369
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluation_expectation}`
1370
+ # @!attribute [rw] display_name
1371
+ # @return [::String]
1372
+ # Required. User-defined display name. Must be unique within the app.
1373
+ # @!attribute [rw] tags
1374
+ # @return [::Array<::String>]
1375
+ # Optional. User-defined tags for expectations. Can be used to filter
1376
+ # expectations.
1377
+ # @!attribute [r] create_time
1378
+ # @return [::Google::Protobuf::Timestamp]
1379
+ # Output only. Timestamp when the evaluation expectation was created.
1380
+ # @!attribute [r] update_time
1381
+ # @return [::Google::Protobuf::Timestamp]
1382
+ # Output only. Timestamp when the evaluation expectation was last updated.
1383
+ # @!attribute [r] etag
1384
+ # @return [::String]
1385
+ # Output only. Etag used to ensure the object hasn't changed during a
1386
+ # read-modify-write operation. If the etag is empty, the update will
1387
+ # overwrite any concurrent changes.
1388
+ class EvaluationExpectation
1389
+ include ::Google::Protobuf::MessageExts
1390
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1391
+
1392
+ # Configuration for LLM-based evaluation criteria.
1393
+ # @!attribute [rw] prompt
1394
+ # @return [::String]
1395
+ # Required. The prompt/instructions provided to the LLM judge.
1396
+ class LlmCriteria
1397
+ include ::Google::Protobuf::MessageExts
1398
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1399
+ end
1400
+ end
1401
+
1402
+ # EvaluationConfig configures settings for running the evaluation.
1403
+ # @!attribute [rw] input_audio_config
1404
+ # @deprecated This field is deprecated and may be removed in the next major version update.
1405
+ # @return [::Google::Cloud::Ces::V1beta::InputAudioConfig]
1406
+ # Optional. Configuration for processing the input audio.
1407
+ # @!attribute [rw] output_audio_config
1408
+ # @deprecated This field is deprecated and may be removed in the next major version update.
1409
+ # @return [::Google::Cloud::Ces::V1beta::OutputAudioConfig]
1410
+ # Optional. Configuration for generating the output audio.
1411
+ # @!attribute [rw] evaluation_channel
1412
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationConfig::EvaluationChannel]
1413
+ # Optional. The channel to evaluate.
1414
+ # @!attribute [rw] tool_call_behaviour
1415
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationToolCallBehaviour]
1416
+ # Optional. Specifies whether the evaluation should use real tool calls or
1417
+ # fake tools.
1418
+ class EvaluationConfig
1419
+ include ::Google::Protobuf::MessageExts
1420
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1421
+
1422
+ # The channel to evaluate.
1423
+ module EvaluationChannel
1424
+ # Unspecified evaluation channel.
1425
+ EVALUATION_CHANNEL_UNSPECIFIED = 0
1426
+
1427
+ # Text-only evaluation channel.
1428
+ TEXT = 1
1429
+
1430
+ # Audio evaluation channel.
1431
+ AUDIO = 2
1432
+ end
1433
+ end
1434
+
1435
+ # Information about an error encountered during an evaluation execution.
1436
+ # @!attribute [r] error_type
1437
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationErrorInfo::ErrorType]
1438
+ # Output only. The type of error.
1439
+ # @!attribute [r] error_message
1440
+ # @return [::String]
1441
+ # Output only. The error message.
1442
+ # @!attribute [r] session_id
1443
+ # @return [::String]
1444
+ # Output only. The session ID for the conversation that caused the error.
1445
+ # @!attribute [r] user_facing_error_message
1446
+ # @return [::String]
1447
+ # Output only. The user facing error message.
1448
+ class EvaluationErrorInfo
1449
+ include ::Google::Protobuf::MessageExts
1450
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1451
+
1452
+ # The type of error
1453
+ module ErrorType
1454
+ # Unspecified error type.
1455
+ ERROR_TYPE_UNSPECIFIED = 0
1456
+
1457
+ # Failure during runtime execution.
1458
+ RUNTIME_FAILURE = 1
1459
+
1460
+ # Failure to retrieve conversation from CES Runtime.
1461
+ CONVERSATION_RETRIEVAL_FAILURE = 2
1462
+
1463
+ # Failure to calculate a metric / outcome.
1464
+ METRIC_CALCULATION_FAILURE = 3
1465
+
1466
+ # Failure to update the evaluation.
1467
+ EVALUATION_UPDATE_FAILURE = 4
1468
+
1469
+ # Ran out of quota.
1470
+ QUOTA_EXHAUSTED = 5
1471
+
1472
+ # Failure during user simulation.
1473
+ USER_SIMULATION_FAILURE = 6
1474
+ end
1475
+ end
1476
+
1477
+ # Request message for
1478
+ # {::Google::Cloud::Ces::V1beta::EvaluationService::Client#run_evaluation EvaluationService.RunEvaluation}.
1479
+ # @!attribute [rw] app
1480
+ # @return [::String]
1481
+ # Required. The app to evaluate.
1482
+ # Format:
1483
+ # `projects/{project}/locations/{location}/apps/{app}`
1484
+ # @!attribute [rw] evaluations
1485
+ # @return [::Array<::String>]
1486
+ # Optional. List of evaluations to run.
1487
+ # Format:
1488
+ # `projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}`
1489
+ # @!attribute [rw] evaluation_dataset
1490
+ # @return [::String]
1491
+ # Optional. An evaluation dataset to run.
1492
+ # Format:
1493
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}`
1494
+ # @!attribute [rw] display_name
1495
+ # @return [::String]
1496
+ # Optional. The display name of the evaluation run.
1497
+ # @!attribute [rw] app_version
1498
+ # @return [::String]
1499
+ # Optional. The app version to evaluate.
1500
+ # Format:
1501
+ # `projects/{project}/locations/{location}/apps/{app}/versions/{version}`
1502
+ # @!attribute [rw] config
1503
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationConfig]
1504
+ # Optional. The configuration to use for the run.
1505
+ # @!attribute [rw] run_count
1506
+ # @return [::Integer]
1507
+ # Optional. The number of times to run the evaluation. If not set, the
1508
+ # default value is 1 per golden, and 5 per scenario.
1509
+ # @!attribute [rw] persona_run_configs
1510
+ # @return [::Array<::Google::Cloud::Ces::V1beta::PersonaRunConfig>]
1511
+ # Optional. The configuration to use for the run per persona.
1512
+ # @!attribute [rw] optimization_config
1513
+ # @return [::Google::Cloud::Ces::V1beta::OptimizationConfig]
1514
+ # Optional. Configuration for running the optimization step after the
1515
+ # evaluation run. If not set, the optimization step will not be run.
1516
+ # @!attribute [rw] scheduled_evaluation_run
1517
+ # @return [::String]
1518
+ # Optional. The resource name of the `ScheduledEvaluationRun` that is
1519
+ # triggering this evaluation run.
1520
+ #
1521
+ # If this field is set, the `scheduled_evaluation_run` field on the created
1522
+ # `EvaluationRun` resource will be populated from this value.
1523
+ # Format:
1524
+ # `projects/{project}/locations/{location}/apps/{app}/scheduledEvaluationRuns/{scheduled_evaluation_run}`
1525
+ # @!attribute [rw] golden_run_method
1526
+ # @return [::Google::Cloud::Ces::V1beta::GoldenRunMethod]
1527
+ # Optional. The method to run the evaluation if it is a golden evaluation. If
1528
+ # not set, default to STABLE.
1529
+ # @!attribute [rw] generate_latency_report
1530
+ # @return [::Boolean]
1531
+ # Optional. Whether to generate a latency report for the evaluation run.
1532
+ class RunEvaluationRequest
1533
+ include ::Google::Protobuf::MessageExts
1534
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1535
+ end
1536
+
1537
+ # Represents a scheduled evaluation run configuration.
1538
+ # @!attribute [rw] name
1539
+ # @return [::String]
1540
+ # Identifier. The unique identifier of the scheduled evaluation run config.
1541
+ # Format:
1542
+ # projects/\\{projectId}/locations/\\{locationId}/apps/\\{appId}/scheduledEvaluationRuns/\\{scheduledEvaluationRunId}
1543
+ # @!attribute [rw] display_name
1544
+ # @return [::String]
1545
+ # Required. User-defined display name of the scheduled evaluation run config.
1546
+ # @!attribute [rw] request
1547
+ # @return [::Google::Cloud::Ces::V1beta::RunEvaluationRequest]
1548
+ # Required. The RunEvaluationRequest to schedule
1549
+ # @!attribute [rw] description
1550
+ # @return [::String]
1551
+ # Optional. User-defined description of the scheduled evaluation run.
1552
+ # @!attribute [rw] scheduling_config
1553
+ # @return [::Google::Cloud::Ces::V1beta::ScheduledEvaluationRun::SchedulingConfig]
1554
+ # Required. Configuration for the timing and frequency with which to execute
1555
+ # the evaluations.
1556
+ # @!attribute [rw] active
1557
+ # @return [::Boolean]
1558
+ # Optional. Whether this config is active
1559
+ # @!attribute [r] last_completed_run
1560
+ # @return [::String]
1561
+ # Output only. The last successful EvaluationRun of this scheduled execution.
1562
+ # Format:
1563
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationRuns/{evaluationRun}`
1564
+ # @!attribute [r] total_executions
1565
+ # @return [::Integer]
1566
+ # Output only. The total number of times this run has been executed
1567
+ # @!attribute [r] next_scheduled_execution_time
1568
+ # @return [::Google::Protobuf::Timestamp]
1569
+ # Output only. The next time this is scheduled to execute
1570
+ # @!attribute [r] create_time
1571
+ # @return [::Google::Protobuf::Timestamp]
1572
+ # Output only. Timestamp when the scheduled evaluation run was created.
1573
+ # @!attribute [r] created_by
1574
+ # @return [::String]
1575
+ # Output only. The user who created the scheduled evaluation run.
1576
+ # @!attribute [r] update_time
1577
+ # @return [::Google::Protobuf::Timestamp]
1578
+ # Output only. Timestamp when the evaluation was last updated.
1579
+ # @!attribute [r] last_updated_by
1580
+ # @return [::String]
1581
+ # Output only. The user who last updated the evaluation.
1582
+ # @!attribute [r] etag
1583
+ # @return [::String]
1584
+ # Output only. Etag used to ensure the object hasn't changed during a
1585
+ # read-modify-write operation. If the etag is empty, the update will
1586
+ # overwrite any concurrent changes.
1587
+ class ScheduledEvaluationRun
1588
+ include ::Google::Protobuf::MessageExts
1589
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1590
+
1591
+ # Eval scheduling configuration details
1592
+ # @!attribute [rw] frequency
1593
+ # @return [::Google::Cloud::Ces::V1beta::ScheduledEvaluationRun::SchedulingConfig::Frequency]
1594
+ # Required. The frequency with which to run the eval
1595
+ # @!attribute [rw] start_time
1596
+ # @return [::Google::Protobuf::Timestamp]
1597
+ # Required. Timestamp when the eval should start.
1598
+ # @!attribute [rw] days_of_week
1599
+ # @return [::Array<::Integer>]
1600
+ # Optional. The days of the week to run the eval. Applicable only for
1601
+ # Weekly and Biweekly frequencies. 1 is Monday, 2 is Tuesday, ..., 7 is
1602
+ # Sunday.
1603
+ class SchedulingConfig
1604
+ include ::Google::Protobuf::MessageExts
1605
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1606
+
1607
+ # The frequencies evals can be run at
1608
+ module Frequency
1609
+ # The frequency is unspecified.
1610
+ FREQUENCY_UNSPECIFIED = 0
1611
+
1612
+ # Indicates a one-time scheduled run that should not repeat
1613
+ NONE = 1
1614
+
1615
+ # Run the evaluation daily.
1616
+ DAILY = 2
1617
+
1618
+ # Run the evaluation weekly.
1619
+ WEEKLY = 3
1620
+
1621
+ # Run the evaluation biweekly.
1622
+ BIWEEKLY = 4
1623
+ end
1624
+ end
1625
+ end
1626
+
1627
+ # Configuration for running an evaluation for a specific persona.
1628
+ # @!attribute [rw] persona
1629
+ # @return [::String]
1630
+ # Optional. The persona to use for the evaluation.
1631
+ # Format:
1632
+ # `projects/{project}/locations/{location}/apps/{app}/evaluationPersonas/{evaluationPersona}`
1633
+ # @!attribute [rw] task_count
1634
+ # @return [::Integer]
1635
+ # Optional. The number of tasks to run for the persona.
1636
+ class PersonaRunConfig
1637
+ include ::Google::Protobuf::MessageExts
1638
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1639
+ end
1640
+
1641
+ # Configuration for running the optimization step after the evaluation run.
1642
+ # @!attribute [rw] generate_loss_report
1643
+ # @return [::Boolean]
1644
+ # Optional. Whether to generate a loss report.
1645
+ # @!attribute [r] assistant_session
1646
+ # @return [::String]
1647
+ # Output only. The assistant session to use for the optimization based on
1648
+ # this evaluation run. Format:
1649
+ # `projects/{project}/locations/{location}/apps/{app}/assistantSessions/{assistantSession}`
1650
+ # @!attribute [r] report_summary
1651
+ # @return [::String]
1652
+ # Output only. The summary of the loss report.
1653
+ # @!attribute [r] should_suggest_fix
1654
+ # @return [::Boolean]
1655
+ # Output only. Whether to suggest a fix for the losses.
1656
+ # @!attribute [r] status
1657
+ # @return [::Google::Cloud::Ces::V1beta::OptimizationConfig::OptimizationStatus]
1658
+ # Output only. The status of the optimization run.
1659
+ # @!attribute [r] error_message
1660
+ # @return [::String]
1661
+ # Output only. The error message if the optimization run failed.
1662
+ # @!attribute [r] loss_report
1663
+ # @return [::Google::Protobuf::Struct]
1664
+ # Output only. The generated loss report.
1665
+ class OptimizationConfig
1666
+ include ::Google::Protobuf::MessageExts
1667
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1668
+
1669
+ # The status of the optimization run.
1670
+ module OptimizationStatus
1671
+ # Optimization status is not specified.
1672
+ OPTIMIZATION_STATUS_UNSPECIFIED = 0
1673
+
1674
+ # Optimization is running.
1675
+ RUNNING = 1
1676
+
1677
+ # Optimization has completed.
1678
+ COMPLETED = 2
1679
+
1680
+ # Optimization failed due to an internal error.
1681
+ ERROR = 3
1682
+ end
1683
+ end
1684
+ end
1685
+ end
1686
+ end
1687
+ end