google-cloud-ces-v1beta 1.0.1 → 1.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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/ces/v1beta/agent_card_pb.rb +3 -1
  3. data/lib/google/cloud/ces/v1beta/agent_pb.rb +3 -1
  4. data/lib/google/cloud/ces/v1beta/agent_service/client.rb +105 -1
  5. data/lib/google/cloud/ces/v1beta/agent_service/paths.rb +54 -11
  6. data/lib/google/cloud/ces/v1beta/agent_service/rest/client.rb +98 -1
  7. data/lib/google/cloud/ces/v1beta/agent_service/rest/service_stub.rb +62 -0
  8. data/lib/google/cloud/ces/v1beta/agent_service_pb.rb +3 -1
  9. data/lib/google/cloud/ces/v1beta/agent_service_services_pb.rb +2 -0
  10. data/lib/google/cloud/ces/v1beta/agent_tool_pb.rb +1 -1
  11. data/lib/google/cloud/ces/v1beta/agent_transfers_pb.rb +1 -1
  12. data/lib/google/cloud/ces/v1beta/app_pb.rb +6 -1
  13. data/lib/google/cloud/ces/v1beta/app_version_pb.rb +1 -1
  14. data/lib/google/cloud/ces/v1beta/assistant_service/client.rb +1023 -0
  15. data/lib/google/cloud/ces/v1beta/assistant_service/credentials.rb +48 -0
  16. data/lib/google/cloud/ces/v1beta/assistant_service/paths.rb +73 -0
  17. data/lib/google/cloud/ces/v1beta/assistant_service/rest/client.rb +946 -0
  18. data/lib/google/cloud/ces/v1beta/assistant_service/rest/service_stub.rb +450 -0
  19. data/lib/google/cloud/ces/v1beta/assistant_service/rest.rb +55 -0
  20. data/lib/google/cloud/ces/v1beta/assistant_service.rb +57 -0
  21. data/lib/google/cloud/ces/v1beta/assistant_service_pb.rb +49 -0
  22. data/lib/google/cloud/ces/v1beta/assistant_service_services_pb.rb +57 -0
  23. data/lib/google/cloud/ces/v1beta/auth_pb.rb +1 -1
  24. data/lib/google/cloud/ces/v1beta/bigquery_export_pb.rb +1 -1
  25. data/lib/google/cloud/ces/v1beta/changelog_pb.rb +1 -1
  26. data/lib/google/cloud/ces/v1beta/client_function_pb.rb +1 -1
  27. data/lib/google/cloud/ces/v1beta/common_pb.rb +4 -1
  28. data/lib/google/cloud/ces/v1beta/connector_tool_pb.rb +1 -1
  29. data/lib/google/cloud/ces/v1beta/connector_toolset_pb.rb +1 -1
  30. data/lib/google/cloud/ces/v1beta/conversation_pb.rb +1 -1
  31. data/lib/google/cloud/ces/v1beta/data_store_pb.rb +1 -1
  32. data/lib/google/cloud/ces/v1beta/data_store_tool_pb.rb +2 -1
  33. data/lib/google/cloud/ces/v1beta/deployment_pb.rb +3 -1
  34. data/lib/google/cloud/ces/v1beta/evaluation_metrics_config_pb.rb +1 -1
  35. data/lib/google/cloud/ces/v1beta/evaluation_pb.rb +2 -1
  36. data/lib/google/cloud/ces/v1beta/evaluation_service/client.rb +2 -2
  37. data/lib/google/cloud/ces/v1beta/evaluation_service/rest/client.rb +2 -2
  38. data/lib/google/cloud/ces/v1beta/evaluation_service_pb.rb +1 -1
  39. data/lib/google/cloud/ces/v1beta/example_pb.rb +1 -1
  40. data/lib/google/cloud/ces/v1beta/fakes_pb.rb +1 -1
  41. data/lib/google/cloud/ces/v1beta/file_context_pb.rb +1 -1
  42. data/lib/google/cloud/ces/v1beta/file_search_tool_pb.rb +1 -1
  43. data/lib/google/cloud/ces/v1beta/google_search_tool_pb.rb +1 -1
  44. data/lib/google/cloud/ces/v1beta/guardrail_pb.rb +4 -1
  45. data/lib/google/cloud/ces/v1beta/mcp_tool_pb.rb +1 -1
  46. data/lib/google/cloud/ces/v1beta/mcp_toolset_pb.rb +1 -1
  47. data/lib/google/cloud/ces/v1beta/mocks_pb.rb +1 -1
  48. data/lib/google/cloud/ces/v1beta/omnichannel_pb.rb +1 -1
  49. data/lib/google/cloud/ces/v1beta/omnichannel_service_pb.rb +1 -1
  50. data/lib/google/cloud/ces/v1beta/open_api_tool_pb.rb +1 -1
  51. data/lib/google/cloud/ces/v1beta/open_api_toolset_pb.rb +1 -1
  52. data/lib/google/cloud/ces/v1beta/python_function_pb.rb +1 -1
  53. data/lib/google/cloud/ces/v1beta/rest.rb +1 -0
  54. data/lib/google/cloud/ces/v1beta/schema_pb.rb +1 -1
  55. data/lib/google/cloud/ces/v1beta/security_settings_pb.rb +1 -1
  56. data/lib/google/cloud/ces/v1beta/session_service/client.rb +333 -0
  57. data/lib/google/cloud/ces/v1beta/session_service/paths.rb +40 -0
  58. data/lib/google/cloud/ces/v1beta/session_service/rest/client.rb +314 -0
  59. data/lib/google/cloud/ces/v1beta/session_service/rest/service_stub.rb +180 -0
  60. data/lib/google/cloud/ces/v1beta/session_service_pb.rb +33 -1
  61. data/lib/google/cloud/ces/v1beta/session_service_services_pb.rb +14 -0
  62. data/lib/google/cloud/ces/v1beta/system_tool_pb.rb +1 -1
  63. data/lib/google/cloud/ces/v1beta/tool_pb.rb +1 -1
  64. data/lib/google/cloud/ces/v1beta/tool_service_pb.rb +1 -1
  65. data/lib/google/cloud/ces/v1beta/toolset_pb.rb +1 -1
  66. data/lib/google/cloud/ces/v1beta/toolset_tool_pb.rb +1 -1
  67. data/lib/google/cloud/ces/v1beta/version.rb +1 -1
  68. data/lib/google/cloud/ces/v1beta/widget_service_pb.rb +1 -1
  69. data/lib/google/cloud/ces/v1beta/widget_tool_pb.rb +1 -1
  70. data/lib/google/cloud/ces/v1beta.rb +1 -0
  71. data/proto_docs/google/api/field_info.rb +88 -0
  72. data/proto_docs/google/cloud/ces/v1beta/agent.rb +18 -2
  73. data/proto_docs/google/cloud/ces/v1beta/agent_card.rb +91 -0
  74. data/proto_docs/google/cloud/ces/v1beta/agent_service.rb +40 -0
  75. data/proto_docs/google/cloud/ces/v1beta/app.rb +113 -4
  76. data/proto_docs/google/cloud/ces/v1beta/app_version.rb +3 -0
  77. data/proto_docs/google/cloud/ces/v1beta/assistant_service.rb +452 -0
  78. data/proto_docs/google/cloud/ces/v1beta/common.rb +44 -0
  79. data/proto_docs/google/cloud/ces/v1beta/conversation.rb +4 -0
  80. data/proto_docs/google/cloud/ces/v1beta/data_store_tool.rb +16 -0
  81. data/proto_docs/google/cloud/ces/v1beta/deployment.rb +43 -2
  82. data/proto_docs/google/cloud/ces/v1beta/evaluation.rb +21 -5
  83. data/proto_docs/google/cloud/ces/v1beta/example.rb +23 -0
  84. data/proto_docs/google/cloud/ces/v1beta/guardrail.rb +88 -6
  85. data/proto_docs/google/cloud/ces/v1beta/session_service.rb +749 -11
  86. data/proto_docs/google/cloud/ces/v1beta/tool.rb +4 -0
  87. data/proto_docs/google/protobuf/timestamp.rb +7 -6
  88. metadata +14 -3
@@ -57,9 +57,30 @@ module Google
57
57
  # Temperature controls the randomness of the model's responses. Lower
58
58
  # temperatures produce responses that are more predictable. Higher
59
59
  # temperatures produce responses that are more creative.
60
+ # @!attribute [rw] thinking_level
61
+ # @return [::Google::Cloud::Ces::V1beta::ModelSettings::ThinkingLevel]
62
+ # Optional. The thinking level of the model.
60
63
  class ModelSettings
61
64
  include ::Google::Protobuf::MessageExts
62
65
  extend ::Google::Protobuf::MessageExts::ClassMethods
66
+
67
+ # Thinking level configuration for the model.
68
+ module ThinkingLevel
69
+ # Thinking level is unspecified.
70
+ THINKING_LEVEL_UNSPECIFIED = 0
71
+
72
+ # Default thinking level.
73
+ DEFAULT = 1
74
+
75
+ # Low thinking level.
76
+ LOW = 2
77
+
78
+ # Medium thinking level.
79
+ MEDIUM = 3
80
+
81
+ # High thinking level.
82
+ HIGH = 4
83
+ end
63
84
  end
64
85
 
65
86
  # Action that is taken when a certain precondition is met.
@@ -437,6 +458,29 @@ module Google
437
458
  end
438
459
  end
439
460
 
461
+ # Represents a UI event payload.
462
+ # @!attribute [rw] mime_type
463
+ # @return [::String]
464
+ # The media type (MIME type) indicating the format of the UI event payload
465
+ # (e.g., "application/json+a2ui").
466
+ # @!attribute [rw] json_payload
467
+ # @return [::String]
468
+ # The JSON payload representing the A2UI surface.
469
+ class UiEvent
470
+ include ::Google::Protobuf::MessageExts
471
+ extend ::Google::Protobuf::MessageExts::ClassMethods
472
+ end
473
+
474
+ # Session checkpoint containing inferred user intent for session title and UI.
475
+ # @!attribute [rw] user_intent
476
+ # @return [::String]
477
+ # Inferred user goal or topic for the session (e.g. "Building E-Commerce
478
+ # Support Agent").
479
+ class SessionCheckpoint
480
+ include ::Google::Protobuf::MessageExts
481
+ extend ::Google::Protobuf::MessageExts::ClassMethods
482
+ end
483
+
440
484
  # The execution type of the tool or toolset.
441
485
  module ExecutionType
442
486
  # The execution type is unspecified. Defaults to `SYNCHRONOUS` if
@@ -84,6 +84,10 @@ module Google
84
84
  # @!attribute [rw] root_span
85
85
  # @return [::Google::Cloud::Ces::V1beta::Span]
86
86
  # Optional. The root span of the action processing.
87
+ # @!attribute [rw] user_intended_text
88
+ # @return [::String]
89
+ # Optional. The intended ground-truth text from the Simulated Caller
90
+ # (Polysynth). Only populated when word error rate metrics are enabled.
87
91
  class Turn
88
92
  include ::Google::Protobuf::MessageExts
89
93
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -275,6 +275,19 @@ module Google
275
275
  end
276
276
  end
277
277
 
278
+ # Snippets configuration.
279
+ # @!attribute [rw] enable_snippets
280
+ # @return [::Boolean]
281
+ # Optional. Whether snippets are enabled.
282
+ # @!attribute [rw] max_snippets
283
+ # @return [::Integer]
284
+ # Optional. Number of snippets to return per query.
285
+ # If unset, returns all snippets from the service by default.
286
+ class SnippetsConfig
287
+ include ::Google::Protobuf::MessageExts
288
+ extend ::Google::Protobuf::MessageExts::ClassMethods
289
+ end
290
+
278
291
  # If specified, will apply the given configuration for the specified
279
292
  # modality.
280
293
  # @!attribute [rw] modality_type
@@ -289,6 +302,9 @@ module Google
289
302
  # @!attribute [rw] grounding_config
290
303
  # @return [::Google::Cloud::Ces::V1beta::DataStoreTool::GroundingConfig]
291
304
  # Optional. The grounding configuration.
305
+ # @!attribute [rw] snippets_config
306
+ # @return [::Google::Cloud::Ces::V1beta::DataStoreTool::SnippetsConfig]
307
+ # Optional. The snippets configuration.
292
308
  class ModalityConfig
293
309
  include ::Google::Protobuf::MessageExts
294
310
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -121,9 +121,50 @@ module Google
121
121
  # @return [::Google::Cloud::Ces::V1beta::InstagramCredentials]
122
122
  # Optional. Input only. Ephemeral Instagram credentials required when
123
123
  # configuring a Instagram channel profile.
124
+ # @!attribute [rw] model_settings
125
+ # @return [::Google::Cloud::Ces::V1beta::ModelSettings]
126
+ # Optional. Model settings for the deployment.
127
+ # Overrides model settings configured at the app/agent levels.
128
+ # Note: Deployment-level model settings override is gated behind an
129
+ # allowlist. Contact the CXAS team to enable this field.
130
+ # @!attribute [rw] modality
131
+ # @return [::Google::Cloud::Ces::V1beta::Deployment::Modality]
132
+ # Optional. The modality of the deployment.
133
+ # Note: Deployment-level modality override is gated behind an allowlist.
134
+ # Contact the CXAS team to enable this field.
135
+ # @!attribute [rw] agent_registry_deployment
136
+ # @return [::Google::Cloud::Ces::V1beta::AgentRegistryDeployment]
137
+ # Optional. Configuration for deploying this deployment to Agent Registry.
138
+ # If present, this deployment will be published to Agent Registry.
124
139
  class Deployment
125
140
  include ::Google::Protobuf::MessageExts
126
141
  extend ::Google::Protobuf::MessageExts::ClassMethods
142
+
143
+ # The modality of the deployment.
144
+ module Modality
145
+ # Unknown modality.
146
+ MODALITY_UNSPECIFIED = 0
147
+
148
+ # Text modality.
149
+ MODALITY_TEXT = 1
150
+
151
+ # Voice modality.
152
+ MODALITY_VOICE = 2
153
+
154
+ # Video modality.
155
+ MODALITY_VIDEO = 3
156
+ end
157
+ end
158
+
159
+ # Configuration and status for Agent Registry deployment.
160
+ # @!attribute [r] agent_registry_service_name
161
+ # @return [::String]
162
+ # Optional. Output only. The resource name of the deployed Agent Registry
163
+ # service. Format:
164
+ # `projects/{project}/locations/{location}/services/{service}`
165
+ class AgentRegistryDeployment
166
+ include ::Google::Protobuf::MessageExts
167
+ extend ::Google::Protobuf::MessageExts::ClassMethods
127
168
  end
128
169
 
129
170
  # Ephemeral Meta credentials for WhatsApp native integration.
@@ -144,7 +185,7 @@ module Google
144
185
  # Required. The WhatsApp Business Account ID.
145
186
  # @!attribute [rw] conversation_profile_id
146
187
  # @return [::String]
147
- # Required. The Conversation Profile ID to use for the deployment.
188
+ # Optional. The Conversation Profile ID to use for the deployment.
148
189
  class WhatsAppCredentials
149
190
  include ::Google::Protobuf::MessageExts
150
191
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -156,7 +197,7 @@ module Google
156
197
  # Required. The Meta auth code provided by the embedded signup flow.
157
198
  # @!attribute [rw] conversation_profile_id
158
199
  # @return [::String]
159
- # Required. The Conversation Profile ID to use for the deployment.
200
+ # Optional. The Conversation Profile ID to use for the deployment.
160
201
  class InstagramCredentials
161
202
  include ::Google::Protobuf::MessageExts
162
203
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -584,6 +584,14 @@ module Google
584
584
  # @!attribute [r] golden_run_method
585
585
  # @return [::Google::Cloud::Ces::V1beta::GoldenRunMethod]
586
586
  # Output only. The method used to run the golden evaluation.
587
+ # @!attribute [r] root_span
588
+ # @return [::Google::Cloud::Ces::V1beta::Span]
589
+ # Output only. The root span of the evaluation execution, which includes
590
+ # information about each step of the evaluation.
591
+ # @!attribute [r] outcome_metadata
592
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationResult::OutcomeMetadata]
593
+ # Output only. The outcome metadata of the evaluation. Only populated if
594
+ # execution_state is COMPLETE.
587
595
  class EvaluationResult
588
596
  include ::Google::Protobuf::MessageExts
589
597
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -934,10 +942,11 @@ module Google
934
942
  # The result of a user goal satisfaction check for a conversation.
935
943
  # @!attribute [r] score
936
944
  # @return [::Integer]
937
- # Output only. The user task satisfaction score. Can be -1, 0, 1.
945
+ # Output only. The user task satisfaction score. Can be -1, 0, 1, 2.
938
946
  # @!attribute [r] label
939
947
  # @return [::String]
940
948
  # Output only. The label associated with each score.
949
+ # Score 2: Graceful Handoff
941
950
  # Score 1: User Task Satisfied
942
951
  # Score 0: User Task Not Satisfied
943
952
  # Score -1: User Task Unspecified
@@ -1049,6 +1058,15 @@ module Google
1049
1058
  # Evaluation result execution was cancelled.
1050
1059
  CANCELLED = 4
1051
1060
  end
1061
+
1062
+ # Metadata about the outcome of the evaluation.
1063
+ module OutcomeMetadata
1064
+ # Unspecified outcome metadata.
1065
+ OUTCOME_METADATA_UNSPECIFIED = 0
1066
+
1067
+ # The evaluation resulted in a graceful handoff to a human representative.
1068
+ GRACEFUL_HANDOFF = 1
1069
+ end
1052
1070
  end
1053
1071
 
1054
1072
  # An evaluation run represents an all the evaluation results from an
@@ -1401,11 +1419,9 @@ module Google
1401
1419
 
1402
1420
  # EvaluationConfig configures settings for running the evaluation.
1403
1421
  # @!attribute [rw] input_audio_config
1404
- # @deprecated This field is deprecated and may be removed in the next major version update.
1405
1422
  # @return [::Google::Cloud::Ces::V1beta::InputAudioConfig]
1406
1423
  # Optional. Configuration for processing the input audio.
1407
1424
  # @!attribute [rw] output_audio_config
1408
- # @deprecated This field is deprecated and may be removed in the next major version update.
1409
1425
  # @return [::Google::Cloud::Ces::V1beta::OutputAudioConfig]
1410
1426
  # Optional. Configuration for generating the output audio.
1411
1427
  # @!attribute [rw] evaluation_channel
@@ -1496,8 +1512,8 @@ module Google
1496
1512
  # Optional. The display name of the evaluation run.
1497
1513
  # @!attribute [rw] app_version
1498
1514
  # @return [::String]
1499
- # Optional. The app version to evaluate.
1500
- # Format:
1515
+ # Optional. The app version to evaluate. At most one of `app_version` or
1516
+ # `deployment` can be set. Format:
1501
1517
  # `projects/{project}/locations/{location}/apps/{app}/versions/{version}`
1502
1518
  # @!attribute [rw] config
1503
1519
  # @return [::Google::Cloud::Ces::V1beta::EvaluationConfig]
@@ -161,6 +161,9 @@ module Google
161
161
  # @!attribute [rw] data
162
162
  # @return [::String]
163
163
  # Required. Raw bytes of the image.
164
+ # @!attribute [rw] alt_text
165
+ # @return [::String]
166
+ # Optional. The alternative text for the image.
164
167
  class Image
165
168
  include ::Google::Protobuf::MessageExts
166
169
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -190,6 +193,16 @@ module Google
190
193
  # @return [::Google::Protobuf::Struct]
191
194
  # Optional. The input parameters and values for the tool in JSON object
192
195
  # format.
196
+ # @!attribute [r] parent_tool_call_id
197
+ # @return [::String]
198
+ # Output only. The id of the tool call that caused this one, when it was
199
+ # issued by a sub-agent working on behalf of a parent call. Empty for
200
+ # top-level calls. Lets a client group a sub-agent's work under the call that
201
+ # started it instead of rendering every step as a sibling.
202
+ # @!attribute [r] agent_name
203
+ # @return [::String]
204
+ # Output only. Human-readable name of the agent that issued this call, e.g.
205
+ # "Contract Architect". Empty when the root agent issued it.
193
206
  class ToolCall
194
207
  include ::Google::Protobuf::MessageExts
195
208
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -220,6 +233,16 @@ module Google
220
233
  # Use "output" key to specify tool response and "error" key to specify
221
234
  # error details (if any). If "output" and "error" keys are not specified,
222
235
  # then whole "response" is treated as tool execution result.
236
+ # @!attribute [r] parent_tool_call_id
237
+ # @return [::String]
238
+ # Output only. The id of the tool call that caused this one, when it was
239
+ # issued by a sub-agent working on behalf of a parent call. Empty for
240
+ # top-level calls. Lets a client group a sub-agent's work under the call that
241
+ # started it instead of rendering every step as a sibling.
242
+ # @!attribute [r] agent_name
243
+ # @return [::String]
244
+ # Output only. Human-readable name of the agent that issued this call, e.g.
245
+ # "Contract Architect". Empty when the root agent issued it.
223
246
  class ToolResponse
224
247
  include ::Google::Protobuf::MessageExts
225
248
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -28,31 +28,36 @@ module Google
28
28
  # Optional. Guardrail that bans certain content from being used in the
29
29
  # conversation.
30
30
  #
31
- # Note: The following fields are mutually exclusive: `content_filter`, `llm_prompt_security`, `llm_policy`, `model_safety`, `code_callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
31
+ # Note: The following fields are mutually exclusive: `content_filter`, `llm_prompt_security`, `llm_policy`, `model_safety`, `code_callback`, `supervisor`. If a field in that set is populated, all other fields in the set will automatically be cleared.
32
32
  # @!attribute [rw] llm_prompt_security
33
33
  # @return [::Google::Cloud::Ces::V1beta::Guardrail::LlmPromptSecurity]
34
34
  # Optional. Guardrail that blocks the conversation if the prompt is
35
35
  # considered unsafe based on the LLM classification.
36
36
  #
37
- # Note: The following fields are mutually exclusive: `llm_prompt_security`, `content_filter`, `llm_policy`, `model_safety`, `code_callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
37
+ # Note: The following fields are mutually exclusive: `llm_prompt_security`, `content_filter`, `llm_policy`, `model_safety`, `code_callback`, `supervisor`. If a field in that set is populated, all other fields in the set will automatically be cleared.
38
38
  # @!attribute [rw] llm_policy
39
39
  # @return [::Google::Cloud::Ces::V1beta::Guardrail::LlmPolicy]
40
40
  # Optional. Guardrail that blocks the conversation if the LLM response is
41
41
  # considered violating the policy based on the LLM classification.
42
42
  #
43
- # Note: The following fields are mutually exclusive: `llm_policy`, `content_filter`, `llm_prompt_security`, `model_safety`, `code_callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
43
+ # Note: The following fields are mutually exclusive: `llm_policy`, `content_filter`, `llm_prompt_security`, `model_safety`, `code_callback`, `supervisor`. If a field in that set is populated, all other fields in the set will automatically be cleared.
44
44
  # @!attribute [rw] model_safety
45
45
  # @return [::Google::Cloud::Ces::V1beta::Guardrail::ModelSafety]
46
46
  # Optional. Guardrail that blocks the conversation if the LLM response is
47
47
  # considered unsafe based on the model safety settings.
48
48
  #
49
- # Note: The following fields are mutually exclusive: `model_safety`, `content_filter`, `llm_prompt_security`, `llm_policy`, `code_callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
49
+ # Note: The following fields are mutually exclusive: `model_safety`, `content_filter`, `llm_prompt_security`, `llm_policy`, `code_callback`, `supervisor`. If a field in that set is populated, all other fields in the set will automatically be cleared.
50
50
  # @!attribute [rw] code_callback
51
51
  # @return [::Google::Cloud::Ces::V1beta::Guardrail::CodeCallback]
52
52
  # Optional. Guardrail that potentially blocks the conversation based on the
53
53
  # result of the callback execution.
54
54
  #
55
- # Note: The following fields are mutually exclusive: `code_callback`, `content_filter`, `llm_prompt_security`, `llm_policy`, `model_safety`. If a field in that set is populated, all other fields in the set will automatically be cleared.
55
+ # Note: The following fields are mutually exclusive: `code_callback`, `content_filter`, `llm_prompt_security`, `llm_policy`, `model_safety`, `supervisor`. If a field in that set is populated, all other fields in the set will automatically be cleared.
56
+ # @!attribute [rw] supervisor
57
+ # @return [::Google::Cloud::Ces::V1beta::Guardrail::Supervisor]
58
+ # Optional. Guardrail that runs supervisor intervention.
59
+ #
60
+ # Note: The following fields are mutually exclusive: `supervisor`, `content_filter`, `llm_prompt_security`, `llm_policy`, `model_safety`, `code_callback`. If a field in that set is populated, all other fields in the set will automatically be cleared.
56
61
  # @!attribute [rw] name
57
62
  # @return [::String]
58
63
  # Identifier. The unique identifier of the guardrail.
@@ -102,6 +107,13 @@ module Google
102
107
  # @!attribute [rw] disregard_diacritics
103
108
  # @return [::Boolean]
104
109
  # Optional. If true, diacritics are ignored during matching.
110
+ # @!attribute [rw] sensitive_words_exemptions
111
+ # @return [::Array<::String>]
112
+ # Optional. Entries of the sensitive words list that this guardrail allows.
113
+ # Only valid when match_type is SENSITIVE_WORDS. Each value must equal a
114
+ # list entry (case-insensitive, surrounding whitespace ignored); other
115
+ # values have no effect. Applies to this guardrail only. At most 1000
116
+ # entries of up to 256 characters each.
105
117
  class ContentFilter
106
118
  include ::Google::Protobuf::MessageExts
107
119
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -121,6 +133,12 @@ module Google
121
133
 
122
134
  # Content is matched using regular expression syntax.
123
135
  REGEXP_MATCH = 3
136
+
137
+ # Content is matched against a system-managed list of sensitive words
138
+ # and phrases. Attaching a guardrail with this match type to an app or
139
+ # agent replaces the default sensitive words filter for the affected
140
+ # agents; disable the guardrail to opt out of the default filter.
141
+ SENSITIVE_WORDS = 4
124
142
  end
125
143
  end
126
144
 
@@ -176,7 +194,9 @@ module Google
176
194
  # Optional. Model settings.
177
195
  # @!attribute [rw] prompt
178
196
  # @return [::String]
179
- # Required. Policy prompt.
197
+ # Required. Policy prompt. Supports session variable placeholders (`{var}`)
198
+ # as well as `{agent_system_instruction}` to inject the agent's resolved
199
+ # system instructions.
180
200
  # @!attribute [rw] policy_scope
181
201
  # @return [::Google::Cloud::Ces::V1beta::Guardrail::LlmPolicy::PolicyScope]
182
202
  # Required. Defines when to apply the policy check during the conversation.
@@ -253,6 +273,12 @@ module Google
253
273
 
254
274
  # The harm category is sexually explicit content.
255
275
  HARM_CATEGORY_SEXUALLY_EXPLICIT = 4
276
+
277
+ # The harm category is profanity.
278
+ HARM_CATEGORY_PROFANITY = 5
279
+
280
+ # The harm category is toxic.
281
+ HARM_CATEGORY_TOXIC = 6
256
282
  end
257
283
 
258
284
  # Probability based thresholds levels for blocking.
@@ -317,6 +343,62 @@ module Google
317
343
  include ::Google::Protobuf::MessageExts
318
344
  extend ::Google::Protobuf::MessageExts::ClassMethods
319
345
  end
346
+
347
+ # Guardrail that runs supervisor intervention.
348
+ # @!attribute [rw] type
349
+ # @return [::Google::Cloud::Ces::V1beta::Guardrail::Supervisor::Type]
350
+ # Optional. The type of the supervisor.
351
+ # @!attribute [rw] detection_mode
352
+ # @return [::Google::Cloud::Ces::V1beta::Guardrail::Supervisor::DetectionMode]
353
+ # Optional. The detection mode of the supervisor.
354
+ class Supervisor
355
+ include ::Google::Protobuf::MessageExts
356
+ extend ::Google::Protobuf::MessageExts::ClassMethods
357
+
358
+ # Type of supervisor.
359
+ module Type
360
+ # Type is unspecified.
361
+ TYPE_UNSPECIFIED = 0
362
+
363
+ # Invalid text issue type.
364
+ INVALID_TEXT = 1
365
+
366
+ # Language shift issue type.
367
+ LANGUAGE_SHIFT = 2
368
+
369
+ # Speaker shift issue type.
370
+ SPEAKER_SHIFT = 3
371
+
372
+ # Audio mismatch issue type.
373
+ AUDIO_MISMATCH = 4
374
+
375
+ # Missing tool call issue type.
376
+ MISSING_TOOL_CALL = 5
377
+
378
+ # Custom issue type.
379
+ CUSTOM = 6
380
+
381
+ # Choppy audio issue type.
382
+ CHOPPY_AUDIO = 7
383
+
384
+ # Agent profanity issue type.
385
+ PROFANITY = 8
386
+ end
387
+
388
+ # Detection mode of the supervisor.
389
+ module DetectionMode
390
+ # Detection mode is unspecified. Default to NON_BLOCKING.
391
+ DETECTION_MODE_UNSPECIFIED = 0
392
+
393
+ # Non blocking detection mode.
394
+ # Response is not blocked when the supervisor detection is ongoing.
395
+ NON_BLOCKING = 1
396
+
397
+ # Blocking detection mode.
398
+ # Response is blocked when the supervisor detection is ongoing.
399
+ BLOCKING = 2
400
+ end
401
+ end
320
402
  end
321
403
  end
322
404
  end