pub struct InvokeEndpointWithBidirectionalStreamFluentBuilder { /* private fields */ }Expand description
Fluent builder constructing a request to InvokeEndpointWithBidirectionalStream.
Invokes a model endpoint with bidirectional streaming capabilities. This operation establishes a persistent connection that allows you to send multiple requests and receive streaming responses from the model in real-time.
Bidirectional streaming is useful for interactive applications such as chatbots, real-time translation, or any scenario where you need to maintain a conversation-like interaction with the model. The connection remains open, allowing you to send additional input and receive responses without establishing a new connection for each request.
For an overview of Amazon SageMaker AI, see How It Works.
Amazon SageMaker AI strips all POST headers except those supported by the API. Amazon SageMaker AI might add additional headers. You should not rely on the behavior of headers outside those enumerated in the request syntax.
Calls to InvokeEndpointWithBidirectionalStream are authenticated by using Amazon Web Services Signature Version 4. For information, see Authenticating Requests (Amazon Web Services Signature Version 4) in the Amazon S3 API Reference.
The bidirectional stream maintains the connection until either the client closes it or the model indicates completion. Each request and response in the stream is sent as an event with optional headers for data type and completion state.
Endpoints are scoped to an individual account, and are not public. The URL does not contain the account ID, but Amazon SageMaker AI determines the account ID from the authentication token that is supplied by the caller.
Implementations§
Source§impl InvokeEndpointWithBidirectionalStreamFluentBuilder
impl InvokeEndpointWithBidirectionalStreamFluentBuilder
Sourcepub fn as_input(&self) -> &InvokeEndpointWithBidirectionalStreamInputBuilder
pub fn as_input(&self) -> &InvokeEndpointWithBidirectionalStreamInputBuilder
Access the InvokeEndpointWithBidirectionalStream as a reference.
Sourcepub async fn send(
self,
) -> Result<InvokeEndpointWithBidirectionalStreamOutput, SdkError<InvokeEndpointWithBidirectionalStreamError, HttpResponse>>
pub async fn send( self, ) -> Result<InvokeEndpointWithBidirectionalStreamOutput, SdkError<InvokeEndpointWithBidirectionalStreamError, HttpResponse>>
Sends the request and returns the response.
If an error occurs, an SdkError will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
Sourcepub fn customize(
self,
) -> CustomizableOperation<InvokeEndpointWithBidirectionalStreamOutput, InvokeEndpointWithBidirectionalStreamError, Self>
pub fn customize( self, ) -> CustomizableOperation<InvokeEndpointWithBidirectionalStreamOutput, InvokeEndpointWithBidirectionalStreamError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
Sourcepub fn endpoint_name(self, input: impl Into<String>) -> Self
pub fn endpoint_name(self, input: impl Into<String>) -> Self
The name of the endpoint to invoke.
Sourcepub fn set_endpoint_name(self, input: Option<String>) -> Self
pub fn set_endpoint_name(self, input: Option<String>) -> Self
The name of the endpoint to invoke.
Sourcepub fn get_endpoint_name(&self) -> &Option<String>
pub fn get_endpoint_name(&self) -> &Option<String>
The name of the endpoint to invoke.
Sourcepub fn body(
self,
input: EventStreamSender<RequestStreamEvent, RequestStreamEventError>,
) -> Self
pub fn body( self, input: EventStreamSender<RequestStreamEvent, RequestStreamEventError>, ) -> Self
The request payload stream.
Sourcepub fn set_body(
self,
input: Option<EventStreamSender<RequestStreamEvent, RequestStreamEventError>>,
) -> Self
pub fn set_body( self, input: Option<EventStreamSender<RequestStreamEvent, RequestStreamEventError>>, ) -> Self
The request payload stream.
Sourcepub fn get_body(
&self,
) -> &Option<EventStreamSender<RequestStreamEvent, RequestStreamEventError>>
pub fn get_body( &self, ) -> &Option<EventStreamSender<RequestStreamEvent, RequestStreamEventError>>
The request payload stream.
Sourcepub fn target_variant(self, input: impl Into<String>) -> Self
pub fn target_variant(self, input: impl Into<String>) -> Self
Target variant for the request.
Sourcepub fn set_target_variant(self, input: Option<String>) -> Self
pub fn set_target_variant(self, input: Option<String>) -> Self
Target variant for the request.
Sourcepub fn get_target_variant(&self) -> &Option<String>
pub fn get_target_variant(&self) -> &Option<String>
Target variant for the request.
Sourcepub fn model_invocation_path(self, input: impl Into<String>) -> Self
pub fn model_invocation_path(self, input: impl Into<String>) -> Self
Model invocation path.
Sourcepub fn set_model_invocation_path(self, input: Option<String>) -> Self
pub fn set_model_invocation_path(self, input: Option<String>) -> Self
Model invocation path.
Sourcepub fn get_model_invocation_path(&self) -> &Option<String>
pub fn get_model_invocation_path(&self) -> &Option<String>
Model invocation path.
Sourcepub fn model_query_string(self, input: impl Into<String>) -> Self
pub fn model_query_string(self, input: impl Into<String>) -> Self
Model query string.
Sourcepub fn set_model_query_string(self, input: Option<String>) -> Self
pub fn set_model_query_string(self, input: Option<String>) -> Self
Model query string.
Sourcepub fn get_model_query_string(&self) -> &Option<String>
pub fn get_model_query_string(&self) -> &Option<String>
Model query string.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for InvokeEndpointWithBidirectionalStreamFluentBuilder
impl !RefUnwindSafe for InvokeEndpointWithBidirectionalStreamFluentBuilder
impl Send for InvokeEndpointWithBidirectionalStreamFluentBuilder
impl Sync for InvokeEndpointWithBidirectionalStreamFluentBuilder
impl Unpin for InvokeEndpointWithBidirectionalStreamFluentBuilder
impl !UnwindSafe for InvokeEndpointWithBidirectionalStreamFluentBuilder
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
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> 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>
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>
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);