pub enum ChatbotChatStreamEvent {
Delta {
text: String,
message_id: Uuid,
},
Reasoning {
finished: bool,
reasoning_id: String,
},
ToolCall {
tool_name: Option<String>,
arguments: Option<String>,
tool_call_id: String,
finished: bool,
},
Done,
Suspended,
ActionExecuted {
tool_call_id: String,
payload: Value,
},
Error(StreamEventError),
}Variants§
Delta
Reasoning
ToolCall
Done
Suspended
The turn stopped to wait for the client to answer a tool call, so it ends with neither an
answer nor an error. Terminal like Done: the client stops reading, answers the call
through the tool-response endpoint, and reads the stream that returns.
Carries nothing, because the call it waits on was already streamed as an unfinished
ToolCall event, and survives a reload only through the conversation’s messages anyway.
ActionExecuted
A confirmed action tool call executed, carrying data for the confirming admin’s browser
only (e.g. a reset link). Never persisted: it is not in payload again after a reload, and
the model never sees it either.
Error(StreamEventError)
Trait Implementations§
Source§impl Clone for ChatbotChatStreamEvent
impl Clone for ChatbotChatStreamEvent
Source§fn clone(&self) -> ChatbotChatStreamEvent
fn clone(&self) -> ChatbotChatStreamEvent
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ComposeSchema for ChatbotChatStreamEvent
impl ComposeSchema for ChatbotChatStreamEvent
Source§impl Debug for ChatbotChatStreamEvent
impl Debug for ChatbotChatStreamEvent
Source§impl<'de> Deserialize<'de> for ChatbotChatStreamEvent
impl<'de> Deserialize<'de> for ChatbotChatStreamEvent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for ChatbotChatStreamEvent
impl PartialEq for ChatbotChatStreamEvent
Source§impl Serialize for ChatbotChatStreamEvent
impl Serialize for ChatbotChatStreamEvent
Source§impl ToSchema for ChatbotChatStreamEvent
impl ToSchema for ChatbotChatStreamEvent
impl StructuralPartialEq for ChatbotChatStreamEvent
Auto Trait Implementations§
impl Freeze for ChatbotChatStreamEvent
impl RefUnwindSafe for ChatbotChatStreamEvent
impl Send for ChatbotChatStreamEvent
impl Sync for ChatbotChatStreamEvent
impl Unpin for ChatbotChatStreamEvent
impl UnsafeUnpin for ChatbotChatStreamEvent
impl UnwindSafe for ChatbotChatStreamEvent
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§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> ⓘ
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].§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ServiceExt for T
impl<T> ServiceExt for T
§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
Decompress response bodies. Read more
§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more