pub struct ConversationContext {
pub messages: Vec<String>,
pub keywords: Vec<String>,
pub topic: Option<String>,
pub referenced_memories: Vec<i64>,
pub intent: Option<String>,
}Expand description
Context from conversation for generating suggestions
Fields§
§messages: Vec<String>Recent messages or text from conversation
keywords: Vec<String>Extracted keywords
topic: Option<String>Current topic (if identified)
referenced_memories: Vec<i64>IDs of memories already referenced
intent: Option<String>User’s apparent intent
Implementations§
Source§impl ConversationContext
impl ConversationContext
Sourcepub fn from_message(message: impl Into<String>) -> Self
pub fn from_message(message: impl Into<String>) -> Self
Create from a single message
Sourcepub fn from_messages(messages: Vec<String>) -> Self
pub fn from_messages(messages: Vec<String>) -> Self
Create from multiple messages
Sourcepub fn with_topic(self, topic: impl Into<String>) -> Self
pub fn with_topic(self, topic: impl Into<String>) -> Self
Set topic
Sourcepub fn with_referenced_memories(self, ids: Vec<i64>) -> Self
pub fn with_referenced_memories(self, ids: Vec<i64>) -> Self
Add referenced memory IDs
Sourcepub fn with_intent(self, intent: impl Into<String>) -> Self
pub fn with_intent(self, intent: impl Into<String>) -> Self
Set intent
Trait Implementations§
Source§impl Clone for ConversationContext
impl Clone for ConversationContext
Source§fn clone(&self) -> ConversationContext
fn clone(&self) -> ConversationContext
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 Debug for ConversationContext
impl Debug for ConversationContext
Source§impl<'de> Deserialize<'de> for ConversationContext
impl<'de> Deserialize<'de> for ConversationContext
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
Auto Trait Implementations§
impl Freeze for ConversationContext
impl RefUnwindSafe for ConversationContext
impl Send for ConversationContext
impl Sync for ConversationContext
impl Unpin for ConversationContext
impl UnsafeUnpin for ConversationContext
impl UnwindSafe for ConversationContext
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,
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 moreCreates a shared type from an unshared type.