Class: Google::Cloud::DiscoveryEngine::V1beta::Assistant

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb

Overview

Discovery Engine Assistant resource.

Defined Under Namespace

Modules: WebGroundingType Classes: CustomerPolicy, EnabledToolsEntry, GenerationConfig, ToolInfo, ToolList

Instance Attribute Summary collapse

Instance Attribute Details

#create_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. Represents the time when this Assistant was created.

Returns:



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#customer_policy::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy

Returns Optional. Customer policy for the assistant.

Returns:



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#default_web_grounding_toggle_off::Boolean

Returns Optional. This field controls the default web grounding toggle for end users if web_grounding_type is set to WEB_GROUNDING_TYPE_GOOGLE_SEARCH or WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH. By default, this field is set to false. If web_grounding_type is WEB_GROUNDING_TYPE_GOOGLE_SEARCH or WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH, end users will have web grounding enabled by default on UI. If true, grounding toggle will be disabled by default on UI. End users can still enable web grounding in the UI if web grounding is enabled.

Returns:

  • (::Boolean)

    Optional. This field controls the default web grounding toggle for end users if web_grounding_type is set to WEB_GROUNDING_TYPE_GOOGLE_SEARCH or WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH. By default, this field is set to false. If web_grounding_type is WEB_GROUNDING_TYPE_GOOGLE_SEARCH or WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH, end users will have web grounding enabled by default on UI. If true, grounding toggle will be disabled by default on UI. End users can still enable web grounding in the UI if web grounding is enabled.



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#description::String

Returns Optional. Description for additional information. Expected to be shown on the configuration UI, not to the users of the assistant.

Returns:

  • (::String)

    Optional. Description for additional information. Expected to be shown on the configuration UI, not to the users of the assistant.



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#display_name::String

Returns Required. The assistant display name.

It must be a UTF-8 encoded string with a length limit of 128 characters.

Returns:

  • (::String)

    Required. The assistant display name.

    It must be a UTF-8 encoded string with a length limit of 128 characters.



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#enabled_tools::Google::Protobuf::Map{::String => ::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList}

Returns Optional. Note: not implemented yet. Use [enabled_actions][google.cloud.discoveryengine.v1beta.Assistant.enabled_actions] instead. The enabled tools on this assistant. The keys are connector name, for example "projects/{projectId}/locations/{locationId}/collections/{collectionId}/dataconnector The values consist of admin enabled tools towards the connector instance. Admin can selectively enable multiple tools on any of the connector instances that they created in the project. For example {"jira1ConnectorName": [(toolId1, "createTicket"), (toolId2, "transferTicket")], "gmail1ConnectorName": [(toolId3, "sendEmail"),..] }.

Returns:

  • (::Google::Protobuf::Map{::String => ::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList})

    Optional. Note: not implemented yet. Use [enabled_actions][google.cloud.discoveryengine.v1beta.Assistant.enabled_actions] instead. The enabled tools on this assistant. The keys are connector name, for example "projects/{projectId}/locations/{locationId}/collections/{collectionId}/dataconnector The values consist of admin enabled tools towards the connector instance. Admin can selectively enable multiple tools on any of the connector instances that they created in the project. For example {"jira1ConnectorName": [(toolId1, "createTicket"), (toolId2, "transferTicket")], "gmail1ConnectorName": [(toolId3, "sendEmail"),..] }



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#generation_config::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig

Returns Optional. Configuration for the generation of the assistant response.

Returns:



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#name::String

Returns Immutable. Resource name of the assistant. Format: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}

It must be a UTF-8 encoded string with a length limit of 1024 characters.

Returns:

  • (::String)

    Immutable. Resource name of the assistant. Format: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}

    It must be a UTF-8 encoded string with a length limit of 1024 characters.



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#update_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. Represents the time when this Assistant was most recently updated.

Returns:



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end

#web_grounding_type::Google::Cloud::DiscoveryEngine::V1beta::Assistant::WebGroundingType

Returns Optional. The type of web grounding to use.

Returns:



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'proto_docs/google/cloud/discoveryengine/v1beta/assistant.rb', line 80

class Assistant
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for the generation of the assistant response.
  # @!attribute [rw] default_model_id
  #   @return [::String]
  #     Optional. The default model to use for assistant.
  # @!attribute [rw] allowed_model_ids
  #   @return [::Array<::String>]
  #     Optional. The list of models that are allowed to be used for assistant.
  # @!attribute [rw] system_instruction
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::GenerationConfig::SystemInstruction]
  #     System instruction, also known as the prompt preamble for LLM calls.
  #     See also
  #     https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions
  # @!attribute [rw] default_language
  #   @return [::String]
  #     The default language to use for the generation of the assistant
  #     response.
  #     Use an ISO 639-1 language code such as `en`.
  #     If not specified, the language will be automatically detected.
  class GenerationConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # System instruction, also known as the prompt preamble for LLM calls.
    # @!attribute [rw] additional_system_instruction
    #   @return [::String]
    #     Optional. Additional system instruction that will be added to the
    #     default system instruction.
    class SystemInstruction
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information to identify a tool.
  # @!attribute [rw] tool_name
  #   @return [::String]
  #     The name of the tool as defined by
  #     DataConnectorService.QueryAvailableActions.
  #     Note: it's using `action` in the DataConnectorService apis, but they are
  #     the same as the `tool` here.
  # @!attribute [rw] tool_display_name
  #   @return [::String]
  #     The display name of the tool.
  class ToolInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The enabled tools on a connector
  # @!attribute [rw] tool_info
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolInfo>]
  #     The list of tools with corresponding tool information.
  class ToolList
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Customer-defined policy for the assistant.
  # @!attribute [rw] banned_phrases
  #   @return [::Array<::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase>]
  #     Optional. List of banned phrases.
  # @!attribute [rw] model_armor_config
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig]
  #     Optional. Model Armor configuration to be used for sanitizing user
  #     prompts and assistant responses.
  class CustomerPolicy
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Definition of a customer-defined banned phrase. A banned phrase is not
    # allowed to appear in the user query or the LLM response, or else the
    # answer will be refused.
    # @!attribute [rw] phrase
    #   @return [::String]
    #     Required. The raw string content to be banned.
    # @!attribute [rw] match_type
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::BannedPhrase::BannedPhraseMatchType]
    #     Optional. Match type for the banned phrase.
    # @!attribute [rw] ignore_diacritics
    #   @return [::Boolean]
    #     Optional. If true, diacritical marks (e.g., accents, umlauts) are
    #     ignored when matching banned phrases. For example, "cafe" would match
    #     "café".
    class BannedPhrase
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # The matching method for the banned phrase.
      module BannedPhraseMatchType
        # Defaults to SIMPLE_STRING_MATCH.
        BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED = 0

        # The banned phrase matches if it is found anywhere in the text as an
        # exact substring.
        SIMPLE_STRING_MATCH = 1

        # Banned phrase only matches if the pattern found in the text is
        # surrounded by word delimiters. The phrase itself may still contain
        # word delimiters.
        WORD_BOUNDARY_STRING_MATCH = 2
      end
    end

    # Configuration for customer defined Model Armor templates to be used for
    # sanitizing user prompts and assistant responses.
    # @!attribute [rw] user_prompt_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     user prompts. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the user prompt.
    # @!attribute [rw] response_template
    #   @return [::String]
    #     Optional. The resource name of the Model Armor template for sanitizing
    #     assistant responses. Format:
    #     `projects/{project}/locations/{location}/templates/{template_id}`
    #
    #     If not specified, no sanitization will be applied to the assistant
    #     response.
    # @!attribute [rw] failure_mode
    #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::CustomerPolicy::ModelArmorConfig::FailureMode]
    #     Optional. Defines the failure mode for Model Armor sanitization.
    class ModelArmorConfig
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods

      # Determines the behavior when Model Armor fails to process a request.
      module FailureMode
        # Unspecified failure mode, default behavior is `FAIL_CLOSED`.
        FAILURE_MODE_UNSPECIFIED = 0

        # In case of a Model Armor processing failure, the request is allowed
        # to proceed without any changes.
        FAIL_OPEN = 1

        # In case of a Model Armor processing failure, the request is rejected.
        FAIL_CLOSED = 2
      end
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::DiscoveryEngine::V1beta::Assistant::ToolList]
  class EnabledToolsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The type of web grounding to use.
  module WebGroundingType
    # Default, unspecified setting. This is the same as disabled.
    WEB_GROUNDING_TYPE_UNSPECIFIED = 0

    # Web grounding is disabled.
    WEB_GROUNDING_TYPE_DISABLED = 1

    # Grounding with Google Search is enabled.
    WEB_GROUNDING_TYPE_GOOGLE_SEARCH = 2

    # Grounding with Enterprise Web Search is enabled.
    WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH = 3
  end
end