pub enum Message {
User(UserMessage),
Assistant(AssistantMessage),
ToolResult(ToolResultMessage),
}Expand description
统一消息枚举 — 对话历史中的一条消息。
使用角色特化的变体,编译期保证类型安全:
User— 用户输入(文本或多模态)Assistant— LLM 回复(文本、推理、工具调用)ToolResult— 工具执行结果
System prompt 不在此枚举中,它属于请求级别。
Variants§
Implementations§
Source§impl Message
impl Message
Sourcepub fn user(content: impl Into<UserContent>) -> Self
pub fn user(content: impl Into<UserContent>) -> Self
创建一个纯文本 User 消息。
Sourcepub fn tool_result(
tool_call_id: ToolCallId,
tool_name: impl Into<String>,
content: impl Into<String>,
is_error: bool,
) -> Self
pub fn tool_result( tool_call_id: ToolCallId, tool_name: impl Into<String>, content: impl Into<String>, is_error: bool, ) -> Self
创建一个工具结果消息。
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
impl StructuralPartialEq for Message
Auto Trait Implementations§
impl Freeze for Message
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnsafeUnpin 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