pub enum AiChatMessage {
System(String),
User(String),
Assistant {
content: Option<String>,
tool_calls: Vec<AiToolCall>,
},
ToolResult {
call_id: String,
name: String,
content: String,
},
}Expand description
Provider-neutral chat message used by agentic ASK calls.
Tool calls and results stay structured across rounds instead of being flattened into prompt text. Provider adapters translate this transcript to their native wire format.
Variants§
Trait Implementations§
Source§impl Clone for AiChatMessage
impl Clone for AiChatMessage
Source§impl Debug for AiChatMessage
impl Debug for AiChatMessage
Source§impl PartialEq for AiChatMessage
impl PartialEq for AiChatMessage
impl StructuralPartialEq for AiChatMessage
Auto Trait Implementations§
impl Forget for AiChatMessage
impl Freeze for AiChatMessage
impl Move for AiChatMessage
impl RefUnwindSafe for AiChatMessage
impl Send for AiChatMessage
impl Sync for AiChatMessage
impl Unpin for AiChatMessage
impl UnsafeUnpin for AiChatMessage
impl UnwindSafe for AiChatMessage
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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,
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> ⓘ
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 moreSource§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>
Wrap the input message
T in a tonic::Request