pub struct SqliteShortTerm { /* private fields */ }Expand description
SQLite-backed short-term conversation memory.
Trait Implementations§
Source§impl ShortTermMemory for SqliteShortTerm
impl ShortTermMemory for SqliteShortTerm
Source§fn append<'life0, 'async_trait>(
&'life0 self,
thread: ThreadId,
msg: Message,
) -> Pin<Box<dyn Future<Output = Result<(), MemoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn append<'life0, 'async_trait>(
&'life0 self,
thread: ThreadId,
msg: Message,
) -> Pin<Box<dyn Future<Output = Result<(), MemoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Append a message to the thread’s history.
Source§fn append_batch<'life0, 'async_trait>(
&'life0 self,
thread: ThreadId,
messages: Vec<Message>,
) -> Pin<Box<dyn Future<Output = Result<(), MemoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn append_batch<'life0, 'async_trait>(
&'life0 self,
thread: ThreadId,
messages: Vec<Message>,
) -> Pin<Box<dyn Future<Output = Result<(), MemoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Append a batch of messages, oldest first. The default appends each in
turn; backends with bulk-insert support should override to collapse the
N writes into one round-trip (the resume path replays a full history).
Source§fn load<'life0, 'async_trait>(
&'life0 self,
thread: ThreadId,
max_tokens: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<Message>, MemoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn load<'life0, 'async_trait>(
&'life0 self,
thread: ThreadId,
max_tokens: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<Message>, MemoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Load up to
max_tokens of the most-recent messages, oldest first.
Implementations approximate token counts (provider-specific).Auto Trait Implementations§
impl !RefUnwindSafe for SqliteShortTerm
impl !UnwindSafe for SqliteShortTerm
impl Freeze for SqliteShortTerm
impl Send for SqliteShortTerm
impl Sync for SqliteShortTerm
impl Unpin for SqliteShortTerm
impl UnsafeUnpin for SqliteShortTerm
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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 more