pub struct Message {
pub role: Role,
pub content: String,
pub name: Option<String>,
pub tool_calls: Option<Vec<ToolCall>>,
pub tool_call_id: Option<String>,
}Expand description
A message in a conversation.
Represents a single message with role, content, and optional metadata. Supports different message types for conversation context.
§Example
let user_msg = Message::user("Hello, how are you?");
let assistant_msg = Message::assistant("I'm doing well, thank you!");
let system_msg = Message::system("You are a helpful assistant.");Fields§
§role: RoleRole of the message sender
content: StringContent of the message
name: Option<String>Optional name for the message sender
tool_calls: Option<Vec<ToolCall>>Tool calls made by the assistant
tool_call_id: Option<String>ID of the tool call being responded to
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Message
impl<'de> Deserialize<'de> for Message
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 Message
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnwindSafe for Message
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