pub struct VertexAiCodeExecutor { /* private fields */ }Expand description
Code executor that runs code via the Vertex AI Code Interpreter Extension.
Uses the Vertex AI Extension Execution REST API to run Python code in a
Google-managed sandboxed environment, mirroring ADK-Python’s
VertexAiCodeExecutor.
§Quick start
let executor = VertexAiCodeExecutor::new(
VertexAiCodeExecutorConfig::new("my-project", "us-central1"),
)
.with_token("ya29.my-access-token");Implementations§
Source§impl VertexAiCodeExecutor
impl VertexAiCodeExecutor
Sourcepub fn new(config: VertexAiCodeExecutorConfig) -> Self
pub fn new(config: VertexAiCodeExecutorConfig) -> Self
Create a new Vertex AI code executor.
No auth token is configured yet — call with_token
or with_token_refresher before issuing
requests.
Sourcepub fn with_token(self, token: impl Into<String>) -> Self
pub fn with_token(self, token: impl Into<String>) -> Self
Set a static bearer token for all requests.
Trait Implementations§
Source§impl CodeExecutor for VertexAiCodeExecutor
impl CodeExecutor for VertexAiCodeExecutor
Source§fn execute_code<'life0, 'async_trait>(
&'life0 self,
input: CodeExecutionInput,
) -> Pin<Box<dyn Future<Output = Result<CodeExecutionResult, CodeExecutorError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn execute_code<'life0, 'async_trait>(
&'life0 self,
input: CodeExecutionInput,
) -> Pin<Box<dyn Future<Output = Result<CodeExecutionResult, CodeExecutorError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Execute code and return the result.
Source§fn code_block_delimiters(&self) -> Vec<(String, String)>
fn code_block_delimiters(&self) -> Vec<(String, String)>
Delimiters for identifying code blocks in model output.
Source§fn execution_result_delimiters(&self) -> (String, String)
fn execution_result_delimiters(&self) -> (String, String)
Delimiters for wrapping execution results.
Source§fn error_retry_attempts(&self) -> u32
fn error_retry_attempts(&self) -> u32
Number of retry attempts on error.
Auto Trait Implementations§
impl !Freeze for VertexAiCodeExecutor
impl !RefUnwindSafe for VertexAiCodeExecutor
impl Send for VertexAiCodeExecutor
impl Sync for VertexAiCodeExecutor
impl Unpin for VertexAiCodeExecutor
impl !UnwindSafe for VertexAiCodeExecutor
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
Mutably borrows from an owned value. Read more
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].