pub struct MemoryHelper;Expand description
Helper for managing agent memory operations
Implementations§
Source§impl MemoryHelper
impl MemoryHelper
Sourcepub async fn store_message(
memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>,
message: ChatMessage,
)
pub async fn store_message( memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>, message: ChatMessage, )
Store a message in memory if available
Sourcepub async fn store_tool_interaction(
memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>,
tool_calls: &[ToolCall],
tool_results: &[ToolCallResult],
response_text: &str,
)
pub async fn store_tool_interaction( memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>, tool_calls: &[ToolCall], tool_results: &[ToolCallResult], response_text: &str, )
Store tool calls and results in memory
Sourcepub async fn store_user_message(
memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>,
content: String,
image: Option<(ImageMime, Vec<u8>)>,
)
pub async fn store_user_message( memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>, content: String, image: Option<(ImageMime, Vec<u8>)>, )
Store user message in memory
Sourcepub async fn store_assistant_response(
memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>,
response: String,
)
pub async fn store_assistant_response( memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>, response: String, )
Store assistant response in memory
Sourcepub async fn recall_messages(
memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>,
) -> Vec<ChatMessage>
pub async fn recall_messages( memory: &Option<Arc<Mutex<Box<dyn MemoryProvider>>>>, ) -> Vec<ChatMessage>
Recall messages from memory
Auto Trait Implementations§
impl Freeze for MemoryHelper
impl RefUnwindSafe for MemoryHelper
impl Send for MemoryHelper
impl Sync for MemoryHelper
impl Unpin for MemoryHelper
impl UnwindSafe for MemoryHelper
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> 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> Message for T
impl<T> Message for T
Source§fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
Convert a BoxedMessage to this concrete type
Source§fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
Convert this message to a BoxedMessage