pub struct ChatMessage {
pub id: MessageId,
pub role: String,
pub content: String,
pub context_items: Vec<ContextItem>,
pub created_at: DateTime<Utc>,
pub token_count: Option<u32>,
pub model: Option<String>,
}Fields§
§id: MessageIdUnique identifier for this message
role: StringRole of the message sender
content: StringThe message content
context_items: Vec<ContextItem>Context items associated with this message
created_at: DateTime<Utc>Timestamp when the message was created
token_count: Option<u32>Token count for this message (if available)
model: Option<String>Model used to generate this message (for assistant messages)
Implementations§
Source§impl ChatMessage
impl ChatMessage
Sourcepub fn assistant(content: String, model: Option<String>) -> Self
pub fn assistant(content: String, model: Option<String>) -> Self
Create a new assistant message
Sourcepub fn add_context(&mut self, context: ContextItem)
pub fn add_context(&mut self, context: ContextItem)
Add context item to this message
Sourcepub fn add_contexts(&mut self, contexts: Vec<ContextItem>)
pub fn add_contexts(&mut self, contexts: Vec<ContextItem>)
Add multiple context items to this message
Trait Implementations§
Source§impl Clone for ChatMessage
impl Clone for ChatMessage
Source§fn clone(&self) -> ChatMessage
fn clone(&self) -> ChatMessage
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 ChatMessage
impl Debug for ChatMessage
Source§impl<'de> Deserialize<'de> for ChatMessage
impl<'de> Deserialize<'de> for ChatMessage
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 ChatMessage
impl RefUnwindSafe for ChatMessage
impl Send for ChatMessage
impl Sync for ChatMessage
impl Unpin for ChatMessage
impl UnwindSafe for ChatMessage
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