#[non_exhaustive]pub struct ReasoningEngineSpec {
pub service_account: Option<String>,
pub package_spec: Option<PackageSpec>,
pub deployment_spec: Option<DeploymentSpec>,
pub class_methods: Vec<Struct>,
pub agent_framework: String,
pub identity_type: IdentityType,
pub deployment_source: Option<DeploymentSource>,
/* private fields */
}reasoning-engine-service only.Expand description
ReasoningEngine configurations
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.service_account: Option<String>Optional. The service account that the Reasoning Engine artifact runs as. It should have “roles/storage.objectViewer” for reading the user project’s Cloud Storage and “roles/aiplatform.user” for using Vertex extensions. If not specified, the Vertex AI Reasoning Engine Service Agent in the project will be used.
package_spec: Option<PackageSpec>Optional. User provided package spec of the ReasoningEngine.
Ignored when users directly specify a deployment image through
deployment_spec.first_party_image_override, but keeping the
field_behavior to avoid introducing breaking changes.
The deployment_source field should not be set if package_spec is
specified.
deployment_spec: Option<DeploymentSpec>Optional. The specification of a Reasoning Engine deployment.
class_methods: Vec<Struct>Optional. Declarations for object class methods in OpenAPI specification format.
agent_framework: StringOptional. The OSS agent framework used to develop the agent. Currently supported values: “google-adk”, “langchain”, “langgraph”, “ag2”, “llama-index”, “custom”.
identity_type: IdentityTypeOptional. The identity type to use for the Reasoning Engine. If not
specified, the service_account field will be used if set, otherwise the
default Vertex AI Reasoning Engine Service Agent in the project will be
used.
deployment_source: Option<DeploymentSource>Defines the source for the deployment.
The package_spec field should not be set if deployment_source is
specified.
Implementations§
Source§impl ReasoningEngineSpec
impl ReasoningEngineSpec
Sourcepub fn set_service_account<T>(self, v: T) -> Self
pub fn set_service_account<T>(self, v: T) -> Self
Sets the value of service_account.
§Example
let x = ReasoningEngineSpec::new().set_service_account("example");Sourcepub fn set_or_clear_service_account<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_service_account<T>(self, v: Option<T>) -> Self
Sets or clears the value of service_account.
§Example
let x = ReasoningEngineSpec::new().set_or_clear_service_account(Some("example"));
let x = ReasoningEngineSpec::new().set_or_clear_service_account(None::<String>);Sourcepub fn set_package_spec<T>(self, v: T) -> Selfwhere
T: Into<PackageSpec>,
pub fn set_package_spec<T>(self, v: T) -> Selfwhere
T: Into<PackageSpec>,
Sets the value of package_spec.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::PackageSpec;
let x = ReasoningEngineSpec::new().set_package_spec(PackageSpec::default()/* use setters */);Sourcepub fn set_or_clear_package_spec<T>(self, v: Option<T>) -> Selfwhere
T: Into<PackageSpec>,
pub fn set_or_clear_package_spec<T>(self, v: Option<T>) -> Selfwhere
T: Into<PackageSpec>,
Sets or clears the value of package_spec.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::PackageSpec;
let x = ReasoningEngineSpec::new().set_or_clear_package_spec(Some(PackageSpec::default()/* use setters */));
let x = ReasoningEngineSpec::new().set_or_clear_package_spec(None::<PackageSpec>);Sourcepub fn set_deployment_spec<T>(self, v: T) -> Selfwhere
T: Into<DeploymentSpec>,
pub fn set_deployment_spec<T>(self, v: T) -> Selfwhere
T: Into<DeploymentSpec>,
Sets the value of deployment_spec.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::DeploymentSpec;
let x = ReasoningEngineSpec::new().set_deployment_spec(DeploymentSpec::default()/* use setters */);Sourcepub fn set_or_clear_deployment_spec<T>(self, v: Option<T>) -> Selfwhere
T: Into<DeploymentSpec>,
pub fn set_or_clear_deployment_spec<T>(self, v: Option<T>) -> Selfwhere
T: Into<DeploymentSpec>,
Sets or clears the value of deployment_spec.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::DeploymentSpec;
let x = ReasoningEngineSpec::new().set_or_clear_deployment_spec(Some(DeploymentSpec::default()/* use setters */));
let x = ReasoningEngineSpec::new().set_or_clear_deployment_spec(None::<DeploymentSpec>);Sourcepub fn set_class_methods<T, V>(self, v: T) -> Self
pub fn set_class_methods<T, V>(self, v: T) -> Self
Sets the value of class_methods.
§Example
use wkt::Struct;
let x = ReasoningEngineSpec::new()
.set_class_methods([
Struct::default()/* use setters */,
Struct::default()/* use (different) setters */,
]);Sourcepub fn set_agent_framework<T: Into<String>>(self, v: T) -> Self
pub fn set_agent_framework<T: Into<String>>(self, v: T) -> Self
Sets the value of agent_framework.
§Example
let x = ReasoningEngineSpec::new().set_agent_framework("example");Sourcepub fn set_identity_type<T: Into<IdentityType>>(self, v: T) -> Self
pub fn set_identity_type<T: Into<IdentityType>>(self, v: T) -> Self
Sets the value of identity_type.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::IdentityType;
let x0 = ReasoningEngineSpec::new().set_identity_type(IdentityType::ServiceAccount);
let x1 = ReasoningEngineSpec::new().set_identity_type(IdentityType::AgentIdentity);Sourcepub fn set_deployment_source<T: Into<Option<DeploymentSource>>>(
self,
v: T,
) -> Self
pub fn set_deployment_source<T: Into<Option<DeploymentSource>>>( self, v: T, ) -> Self
Sets the value of deployment_source.
Note that all the setters affecting deployment_source are mutually
exclusive.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::SourceCodeSpec;
let x = ReasoningEngineSpec::new().set_deployment_source(Some(
google_cloud_aiplatform_v1::model::reasoning_engine_spec::DeploymentSource::SourceCodeSpec(SourceCodeSpec::default().into())));Sourcepub fn source_code_spec(&self) -> Option<&Box<SourceCodeSpec>>
pub fn source_code_spec(&self) -> Option<&Box<SourceCodeSpec>>
The value of deployment_source
if it holds a SourceCodeSpec, None if the field is not set or
holds a different branch.
Sourcepub fn set_source_code_spec<T: Into<Box<SourceCodeSpec>>>(self, v: T) -> Self
pub fn set_source_code_spec<T: Into<Box<SourceCodeSpec>>>(self, v: T) -> Self
Sets the value of deployment_source
to hold a SourceCodeSpec.
Note that all the setters affecting deployment_source are
mutually exclusive.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::SourceCodeSpec;
let x = ReasoningEngineSpec::new().set_source_code_spec(SourceCodeSpec::default()/* use setters */);
assert!(x.source_code_spec().is_some());
assert!(x.container_spec().is_none());Sourcepub fn container_spec(&self) -> Option<&Box<ContainerSpec>>
pub fn container_spec(&self) -> Option<&Box<ContainerSpec>>
The value of deployment_source
if it holds a ContainerSpec, None if the field is not set or
holds a different branch.
Sourcepub fn set_container_spec<T: Into<Box<ContainerSpec>>>(self, v: T) -> Self
pub fn set_container_spec<T: Into<Box<ContainerSpec>>>(self, v: T) -> Self
Sets the value of deployment_source
to hold a ContainerSpec.
Note that all the setters affecting deployment_source are
mutually exclusive.
§Example
use google_cloud_aiplatform_v1::model::reasoning_engine_spec::ContainerSpec;
let x = ReasoningEngineSpec::new().set_container_spec(ContainerSpec::default()/* use setters */);
assert!(x.container_spec().is_some());
assert!(x.source_code_spec().is_none());Trait Implementations§
Source§impl Clone for ReasoningEngineSpec
impl Clone for ReasoningEngineSpec
Source§fn clone(&self) -> ReasoningEngineSpec
fn clone(&self) -> ReasoningEngineSpec
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ReasoningEngineSpec
impl Debug for ReasoningEngineSpec
Source§impl Default for ReasoningEngineSpec
impl Default for ReasoningEngineSpec
Source§fn default() -> ReasoningEngineSpec
fn default() -> ReasoningEngineSpec
Source§impl Message for ReasoningEngineSpec
impl Message for ReasoningEngineSpec
Source§impl PartialEq for ReasoningEngineSpec
impl PartialEq for ReasoningEngineSpec
impl StructuralPartialEq for ReasoningEngineSpec
Auto Trait Implementations§
impl Freeze for ReasoningEngineSpec
impl RefUnwindSafe for ReasoningEngineSpec
impl Send for ReasoningEngineSpec
impl Sync for ReasoningEngineSpec
impl Unpin for ReasoningEngineSpec
impl UnsafeUnpin for ReasoningEngineSpec
impl UnwindSafe for ReasoningEngineSpec
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request